geonetwork-ui 2.6.0-dev.502fa026d → 2.6.0-dev.531f5a239

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 (525) 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/distribution.mapper.mjs +3 -1
  4. package/esm2022/libs/api/metadata-converter/src/lib/common/resource-types.mjs +17 -15
  5. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +47 -6
  6. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
  7. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +8 -4
  8. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +5 -2
  9. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +6 -6
  10. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +5 -5
  11. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/constant.mjs +3 -1
  12. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +4 -12
  13. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +79 -16
  14. package/esm2022/libs/api/repository/src/lib/gn4/gn4.provider.mjs +7 -1
  15. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +7 -1
  16. package/esm2022/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.mjs +2 -1
  17. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  18. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  19. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +49 -9
  20. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +2 -2
  21. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +32 -2
  22. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +29 -6
  23. package/esm2022/libs/feature/editor/src/index.mjs +2 -1
  24. package/esm2022/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.mjs +273 -0
  25. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +2 -3
  26. package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +1 -1
  27. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +5 -5
  28. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +1 -1
  29. package/esm2022/libs/feature/record/src/index.mjs +2 -4
  30. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +3 -3
  31. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +5 -9
  32. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +3 -3
  33. package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +7 -11
  34. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +6 -3
  35. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +38 -7
  36. package/esm2022/libs/feature/record/src/lib/record-meta/record-meta.component.mjs +1 -1
  37. package/esm2022/libs/feature/record/src/lib/state/mdview.actions.mjs +3 -1
  38. package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +14 -5
  39. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +13 -15
  40. package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +7 -1
  41. package/esm2022/libs/feature/record/src/lib/state/mdview.selectors.mjs +3 -1
  42. package/esm2022/libs/feature/router/src/lib/default/constants.mjs +3 -1
  43. package/esm2022/libs/feature/router/src/lib/default/router.config.mjs +1 -1
  44. package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +10 -2
  45. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +9 -3
  46. package/esm2022/libs/feature/search/src/index.mjs +2 -2
  47. package/esm2022/libs/feature/search/src/lib/constants.mjs +4 -2
  48. package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +8 -7
  49. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +13 -19
  50. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +5 -3
  51. package/esm2022/libs/feature/search/src/lib/record-url.token.mjs +4 -2
  52. package/esm2022/libs/feature/search/src/lib/results-hits/results-hits.container.component.mjs +41 -0
  53. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +30 -10
  54. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +13 -10
  55. package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +70 -1
  56. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +4 -3
  57. package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +3 -3
  58. package/esm2022/libs/ui/dataviz/src/lib/chart/chart.component.mjs +5 -3
  59. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.component.mjs +11 -6
  60. package/esm2022/libs/ui/elements/src/index.mjs +6 -1
  61. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +27 -6
  62. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +22 -6
  63. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +18 -7
  64. package/esm2022/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.mjs +55 -0
  65. package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +3 -3
  66. package/esm2022/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.mjs +122 -0
  67. package/esm2022/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.mjs +59 -0
  68. package/esm2022/libs/ui/elements/src/lib/kind-badge/kind-badge.component.mjs +68 -0
  69. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +29 -7
  70. package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +3 -3
  71. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +3 -3
  72. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +8 -5
  73. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +37 -12
  74. package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +5 -1
  75. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +3 -2
  76. package/esm2022/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.mjs +72 -0
  77. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +17 -7
  78. package/esm2022/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.mjs +169 -0
  79. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +32 -4
  80. package/esm2022/libs/ui/inputs/src/index.mjs +3 -2
  81. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +3 -3
  82. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +2 -2
  83. package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +3 -3
  84. package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +3 -3
  85. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.mjs +42 -0
  86. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.mjs +2 -0
  87. package/esm2022/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.mjs +68 -0
  88. package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +4 -3
  89. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +8 -9
  90. package/esm2022/libs/ui/layout/src/index.mjs +3 -1
  91. package/esm2022/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.mjs +43 -3
  92. package/esm2022/libs/ui/layout/src/lib/block-list/block-list.component.mjs +48 -11
  93. package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +3 -3
  94. package/esm2022/libs/ui/layout/src/lib/cell-popin/cell-popin.component.mjs +110 -0
  95. package/esm2022/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.mjs +34 -13
  96. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +25 -3
  97. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +3 -3
  98. package/esm2022/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +6 -6
  99. package/esm2022/libs/ui/layout/src/lib/truncated-text/truncated-text.component.mjs +73 -0
  100. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +4 -12
  101. package/esm2022/libs/ui/map/src/index.mjs +2 -1
  102. package/esm2022/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.mjs +29 -4
  103. package/esm2022/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.mjs +80 -0
  104. package/esm2022/libs/ui/search/src/index.mjs +3 -1
  105. package/esm2022/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.mjs +4 -8
  106. package/esm2022/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.mjs +3 -3
  107. package/esm2022/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.mjs +53 -0
  108. package/esm2022/libs/ui/search/src/lib/results-list/results-layout.config.mjs +2 -2
  109. package/esm2022/libs/ui/search/src/lib/results-list/results-list.component.mjs +3 -3
  110. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +21 -12
  111. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +39 -17
  112. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +19 -5
  113. package/esm2022/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.mjs +3 -3
  114. package/esm2022/libs/util/app-config/src/lib/app-config.mjs +2 -1
  115. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +2 -1
  116. package/esm2022/libs/util/i18n/src/lib/i18n.constants.mjs +42 -1
  117. package/esm2022/libs/util/i18n/src/lib/language-codes.mjs +24 -2
  118. package/esm2022/libs/util/shared/src/index.mjs +2 -1
  119. package/esm2022/libs/util/shared/src/lib/gn-ui-version.mjs +6 -0
  120. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +5 -1
  121. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +36 -24
  122. package/esm2022/translations/de.json +84 -8
  123. package/esm2022/translations/en.json +85 -9
  124. package/esm2022/translations/es.json +83 -7
  125. package/esm2022/translations/fr.json +85 -9
  126. package/esm2022/translations/it.json +83 -8
  127. package/esm2022/translations/nl.json +83 -7
  128. package/esm2022/translations/pt.json +83 -7
  129. package/fesm2022/geonetwork-ui.mjs +3810 -1392
  130. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  131. package/libs/api/metadata-converter/src/index.d.ts +1 -0
  132. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  133. package/libs/api/metadata-converter/src/lib/base.converter.d.ts.map +1 -1
  134. package/libs/api/metadata-converter/src/lib/common/distribution.mapper.d.ts.map +1 -1
  135. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts +21 -0
  136. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts.map +1 -1
  137. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  138. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +0 -1
  139. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  140. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +1 -0
  141. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  142. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
  143. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  144. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  145. package/libs/api/repository/src/lib/gn4/elasticsearch/constant.d.ts.map +1 -1
  146. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +1 -1
  147. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
  148. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +13 -2
  149. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  150. package/libs/api/repository/src/lib/gn4/gn4.provider.d.ts.map +1 -1
  151. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +2 -0
  152. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  153. package/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.d.ts +1 -0
  154. package/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.d.ts.map +1 -1
  155. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +27 -17
  156. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  157. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +6 -0
  158. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  159. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +12 -8
  160. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  161. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +1 -0
  162. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  163. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +6 -3
  164. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  165. package/libs/feature/editor/src/index.d.ts +1 -0
  166. package/libs/feature/editor/src/index.d.ts.map +1 -1
  167. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts +52 -0
  168. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts.map +1 -0
  169. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -1
  170. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts +6 -6
  171. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts.map +1 -1
  172. 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
  173. package/libs/feature/record/src/index.d.ts +1 -3
  174. package/libs/feature/record/src/index.d.ts.map +1 -1
  175. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +9 -1
  176. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  177. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +2 -3
  178. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
  179. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +1 -2
  180. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
  181. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +2 -1
  182. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  183. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  184. package/libs/feature/record/src/lib/record-meta/record-meta.component.d.ts +2 -2
  185. package/libs/feature/record/src/lib/state/mdview.actions.d.ts +10 -0
  186. package/libs/feature/record/src/lib/state/mdview.actions.d.ts.map +1 -1
  187. package/libs/feature/record/src/lib/state/mdview.effects.d.ts +9 -1
  188. package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
  189. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +28 -21
  190. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  191. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts +2 -0
  192. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts.map +1 -1
  193. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts +2 -0
  194. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts.map +1 -1
  195. package/libs/feature/router/src/lib/default/constants.d.ts +2 -0
  196. package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
  197. package/libs/feature/router/src/lib/default/router.config.d.ts +2 -0
  198. package/libs/feature/router/src/lib/default/router.config.d.ts.map +1 -1
  199. package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
  200. package/libs/feature/router/src/lib/default/state/router.facade.d.ts +5 -0
  201. package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
  202. package/libs/feature/search/src/index.d.ts +1 -1
  203. package/libs/feature/search/src/index.d.ts.map +1 -1
  204. package/libs/feature/search/src/lib/constants.d.ts.map +1 -1
  205. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts.map +1 -1
  206. package/libs/feature/search/src/lib/feature-search.module.d.ts +4 -2
  207. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  208. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts +2 -1
  209. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
  210. package/libs/feature/search/src/lib/record-url.token.d.ts +3 -1
  211. package/libs/feature/search/src/lib/record-url.token.d.ts.map +1 -1
  212. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts +21 -0
  213. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts.map +1 -0
  214. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts +5 -3
  215. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts.map +1 -1
  216. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +6 -5
  217. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -1
  218. package/libs/feature/search/src/lib/utils/service/fields.d.ts +21 -0
  219. package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
  220. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  221. package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts +2 -1
  222. package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts.map +1 -1
  223. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts +6 -1
  224. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts.map +1 -1
  225. package/libs/ui/elements/src/index.d.ts +5 -0
  226. package/libs/ui/elements/src/index.d.ts.map +1 -1
  227. package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts +9 -1
  228. package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts.map +1 -1
  229. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +8 -1
  230. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  231. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -1
  232. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  233. package/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.d.ts +15 -0
  234. package/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.d.ts.map +1 -0
  235. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts +36 -0
  236. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts.map +1 -0
  237. package/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.d.ts +14 -0
  238. package/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.d.ts.map +1 -0
  239. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts +13 -0
  240. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts.map +1 -0
  241. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +10 -2
  242. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  243. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +2 -2
  244. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
  245. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +3 -0
  246. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
  247. package/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.d.ts.map +1 -1
  248. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
  249. package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts +27 -0
  250. package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts.map +1 -0
  251. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +8 -1
  252. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +1 -1
  253. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts +31 -0
  254. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts.map +1 -0
  255. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +6 -1
  256. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  257. package/libs/ui/inputs/src/index.d.ts +2 -1
  258. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  259. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  260. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  261. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts +14 -0
  262. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts.map +1 -0
  263. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts +6 -0
  264. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts.map +1 -0
  265. package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts +17 -0
  266. package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts.map +1 -0
  267. package/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.d.ts.map +1 -1
  268. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +25 -24
  269. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  270. package/libs/ui/layout/src/index.d.ts +2 -0
  271. package/libs/ui/layout/src/index.d.ts.map +1 -1
  272. package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts +10 -3
  273. package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts.map +1 -1
  274. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts +9 -2
  275. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts.map +1 -1
  276. package/libs/ui/layout/src/lib/cell-popin/cell-popin.component.d.ts +28 -0
  277. package/libs/ui/layout/src/lib/cell-popin/cell-popin.component.d.ts.map +1 -0
  278. package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts +15 -8
  279. package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts.map +1 -1
  280. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +5 -1
  281. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -1
  282. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts +22 -0
  283. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts.map +1 -0
  284. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
  285. package/libs/ui/map/src/index.d.ts +1 -0
  286. package/libs/ui/map/src/index.d.ts.map +1 -1
  287. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts +6 -2
  288. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts.map +1 -1
  289. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts +15 -0
  290. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts.map +1 -0
  291. package/libs/ui/search/src/index.d.ts +2 -0
  292. package/libs/ui/search/src/index.d.ts.map +1 -1
  293. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts +17 -0
  294. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts.map +1 -0
  295. package/libs/ui/search/src/lib/results-list/results-list.component.d.ts.map +1 -1
  296. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +4 -3
  297. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -1
  298. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +10 -4
  299. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  300. package/libs/ui/search/src/lib/ui-search.module.d.ts +22 -19
  301. package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
  302. package/libs/util/app-config/src/lib/app-config.d.ts.map +1 -1
  303. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  304. package/libs/util/i18n/src/lib/i18n.constants.d.ts +1 -0
  305. package/libs/util/i18n/src/lib/i18n.constants.d.ts.map +1 -1
  306. package/libs/util/i18n/src/lib/language-codes.d.ts +23 -1
  307. package/libs/util/i18n/src/lib/language-codes.d.ts.map +1 -1
  308. package/libs/util/shared/src/index.d.ts +1 -0
  309. package/libs/util/shared/src/index.d.ts.map +1 -1
  310. package/libs/util/shared/src/lib/gn-ui-version.d.ts +3 -0
  311. package/libs/util/shared/src/lib/gn-ui-version.d.ts.map +1 -0
  312. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  313. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  314. package/libs/util/shared/src/lib/links/link-utils.d.ts +30 -23
  315. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  316. package/package.json +2 -2
  317. package/src/libs/api/metadata-converter/src/index.ts +1 -0
  318. package/src/libs/api/metadata-converter/src/lib/base.converter.ts +1 -4
  319. package/src/libs/api/metadata-converter/src/lib/common/distribution.mapper.ts +1 -0
  320. package/src/libs/api/metadata-converter/src/lib/common/resource-types.ts +29 -15
  321. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.service+eaux-usees.ts +2 -2
  322. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +3 -3
  323. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +2 -2
  324. package/src/libs/api/metadata-converter/src/lib/fixtures/wallonie.records.service+napitswallonia.ts +2 -2
  325. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +70 -6
  326. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +0 -1
  327. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +13 -3
  328. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +5 -1
  329. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +10 -6
  330. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +7 -4
  331. package/src/libs/api/repository/src/lib/gn4/elasticsearch/constant.ts +2 -0
  332. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +3 -11
  333. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +118 -16
  334. package/src/libs/api/repository/src/lib/gn4/gn4.provider.ts +6 -0
  335. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +11 -0
  336. package/src/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.ts +3 -0
  337. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +28 -11
  338. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +6 -0
  339. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +36 -26
  340. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +16 -2
  341. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +5 -5
  342. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +64 -1
  343. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.html +12 -9
  344. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +58 -10
  345. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +37 -0
  346. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.html +1 -0
  347. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +31 -1
  348. package/src/libs/feature/editor/src/index.ts +1 -0
  349. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.html +120 -0
  350. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.ts +325 -0
  351. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +1 -2
  352. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +2 -2
  353. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +2 -2
  354. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +2 -2
  355. package/src/libs/feature/record/src/index.ts +1 -3
  356. package/src/libs/feature/record/src/lib/data-view/data-view.component.html +16 -10
  357. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +2 -3
  358. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +1 -1
  359. package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +4 -5
  360. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.html +2 -2
  361. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +1 -0
  362. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +25 -16
  363. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +40 -4
  364. package/src/libs/feature/record/src/lib/record-meta/record-meta.component.ts +2 -2
  365. package/src/libs/feature/record/src/lib/state/mdview.actions.ts +10 -0
  366. package/src/libs/feature/record/src/lib/state/mdview.effects.ts +27 -3
  367. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +21 -17
  368. package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +12 -0
  369. package/src/libs/feature/record/src/lib/state/mdview.selectors.ts +9 -0
  370. package/src/libs/feature/router/src/lib/default/constants.ts +2 -0
  371. package/src/libs/feature/router/src/lib/default/router.config.ts +2 -0
  372. package/src/libs/feature/router/src/lib/default/router.service.ts +10 -0
  373. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +10 -1
  374. package/src/libs/feature/search/src/index.ts +1 -1
  375. package/src/libs/feature/search/src/lib/constants.ts +3 -1
  376. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.html +1 -7
  377. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +16 -8
  378. package/src/libs/feature/search/src/lib/feature-search.module.ts +9 -10
  379. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +1 -1
  380. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +1 -0
  381. package/src/libs/feature/search/src/lib/record-url.token.ts +10 -1
  382. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.css +0 -0
  383. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.html +16 -0
  384. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.ts +59 -0
  385. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.css +6 -0
  386. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.html +1 -0
  387. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +26 -5
  388. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +1 -0
  389. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +13 -3
  390. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +4 -5
  391. package/src/libs/feature/search/src/lib/utils/service/fields.ts +99 -0
  392. package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html +1 -1
  393. package/src/libs/ui/dataviz/src/lib/chart/chart.component.ts +2 -1
  394. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.html +6 -3
  395. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.ts +5 -4
  396. package/src/libs/ui/elements/src/index.ts +5 -0
  397. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +64 -38
  398. package/src/libs/ui/elements/src/lib/api-card/api-card.component.ts +26 -2
  399. package/src/libs/ui/elements/src/lib/download-item/download-item.component.html +21 -18
  400. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +20 -2
  401. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +42 -10
  402. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +29 -2
  403. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.css +4 -0
  404. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.html +13 -0
  405. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.ts +54 -0
  406. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +1 -1
  407. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.css +0 -0
  408. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.html +83 -0
  409. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.ts +131 -0
  410. package/src/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.html +69 -0
  411. package/src/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.ts +61 -0
  412. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.css +6 -0
  413. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.html +11 -0
  414. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.ts +70 -0
  415. package/src/libs/ui/elements/src/lib/link-card/link-card.component.html +30 -29
  416. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +28 -2
  417. package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.html +3 -5
  418. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +12 -9
  419. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +9 -0
  420. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +24 -7
  421. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +12 -4
  422. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +3 -2
  423. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +48 -9
  424. package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.ts +4 -0
  425. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +2 -1
  426. package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.html +107 -0
  427. package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.ts +83 -0
  428. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +8 -29
  429. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +14 -1
  430. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.css +0 -0
  431. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.html +110 -0
  432. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.ts +191 -0
  433. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +14 -1
  434. package/src/libs/ui/inputs/src/index.ts +2 -1
  435. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +1 -1
  436. package/src/libs/ui/inputs/src/lib/button/button.component.ts +2 -2
  437. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +1 -1
  438. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +1 -1
  439. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.html +23 -0
  440. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.ts +44 -0
  441. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.ts +5 -0
  442. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.css +0 -0
  443. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.html +43 -0
  444. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.ts +77 -0
  445. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.html +7 -8
  446. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.ts +2 -1
  447. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +3 -3
  448. package/src/libs/ui/layout/src/index.ts +2 -0
  449. package/src/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.ts +46 -2
  450. package/src/libs/ui/layout/src/lib/block-list/block-list.component.css +22 -0
  451. package/src/libs/ui/layout/src/lib/block-list/block-list.component.html +2 -2
  452. package/src/libs/ui/layout/src/lib/block-list/block-list.component.ts +43 -5
  453. package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +0 -5
  454. package/src/libs/ui/layout/src/lib/carousel/carousel.component.html +1 -1
  455. package/src/libs/ui/layout/src/lib/cell-popin/cell-popin.component.html +40 -0
  456. package/src/libs/ui/layout/src/lib/cell-popin/cell-popin.component.ts +141 -0
  457. package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.html +24 -8
  458. package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.ts +36 -10
  459. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +4 -7
  460. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +20 -0
  461. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.html +1 -1
  462. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.html +17 -5
  463. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.ts +3 -3
  464. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.html +27 -0
  465. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.ts +91 -0
  466. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +2 -6
  467. package/src/libs/ui/map/src/index.ts +1 -0
  468. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.html +3 -3
  469. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.ts +27 -3
  470. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.css +0 -0
  471. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.html +4 -0
  472. 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
  473. package/src/libs/ui/search/src/index.ts +2 -0
  474. package/src/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.html +9 -81
  475. package/src/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.html +1 -1
  476. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.html +25 -0
  477. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.ts +53 -0
  478. package/src/libs/ui/search/src/lib/results-list/results-layout.config.ts +2 -2
  479. package/src/libs/ui/search/src/lib/results-list/results-list.component.html +1 -0
  480. package/src/libs/ui/search/src/lib/results-list/results-list.component.ts +0 -1
  481. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +16 -6
  482. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +15 -11
  483. package/src/libs/ui/search/src/lib/results-table/results-table.component.css +4 -0
  484. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +31 -24
  485. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +33 -14
  486. package/src/libs/ui/search/src/lib/ui-search.module.ts +8 -0
  487. package/src/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.html +4 -3
  488. package/src/libs/util/app-config/src/lib/app-config.ts +1 -0
  489. package/src/libs/util/app-config/src/lib/fixtures.ts +1 -0
  490. package/src/libs/util/i18n/src/lib/i18n.constants.ts +42 -0
  491. package/src/libs/util/i18n/src/lib/language-codes.ts +23 -1
  492. package/src/libs/util/shared/src/index.ts +1 -0
  493. package/src/libs/util/shared/src/lib/gn-ui-version.ts +8 -0
  494. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +15 -3
  495. package/src/libs/util/shared/src/lib/links/link-utils.ts +53 -30
  496. package/tailwind.base.config.js +3 -0
  497. package/tailwind.base.css +39 -13
  498. package/translations/de.json +84 -8
  499. package/translations/en.json +85 -9
  500. package/translations/es.json +83 -7
  501. package/translations/fr.json +85 -9
  502. package/translations/it.json +83 -8
  503. package/translations/nl.json +83 -7
  504. package/translations/pt.json +83 -7
  505. package/translations/sk.json +83 -7
  506. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +0 -79
  507. package/esm2022/libs/feature/record/src/lib/gn-ui-version.token.mjs +0 -3
  508. package/esm2022/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.mjs +0 -18
  509. package/esm2022/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.mjs +0 -16
  510. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +0 -15
  511. 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
  512. package/libs/feature/record/src/lib/gn-ui-version.token.d.ts +0 -3
  513. package/libs/feature/record/src/lib/gn-ui-version.token.d.ts.map +0 -1
  514. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts +0 -9
  515. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts.map +0 -1
  516. package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts +0 -8
  517. package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts.map +0 -1
  518. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +0 -1
  519. package/src/libs/feature/record/src/lib/gn-ui-version.token.ts +0 -3
  520. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.html +0 -4
  521. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.ts +0 -10
  522. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.css +0 -3
  523. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.html +0 -9
  524. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.ts +0 -15
  525. /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,8 +14,8 @@ import {
14
14
  import { PublicationVersionError } from '../../../../../../libs/common/domain/src/lib/model/error'
15
15
  import {
16
16
  CatalogRecord,
17
- DatasetFeatureType,
18
17
  DatasetFeatureCatalog,
18
+ DatasetFeatureType,
19
19
  } from '../../../../../../libs/common/domain/src/lib/model/record'
20
20
  import {
21
21
  Aggregations,
@@ -29,10 +29,11 @@ import {
29
29
  import { PlatformServiceInterface } from '../../../../../../libs/common/domain/src/lib/platform.service.interface'
30
30
  import { RecordsRepositoryInterface } from '../../../../../../libs/common/domain/src/lib/repository/records-repository.interface'
31
31
  import {
32
+ LanguagesApiService,
32
33
  RecordsApiService,
33
34
  SearchApiService,
34
- FeatureResponseApiModel,
35
35
  } from '../../../../../../libs/data-access/gn4/src'
36
+ import { LANG_3_TO_2_MAPPER } from '../../../../../../libs/util/i18n/src'
36
37
  import {
37
38
  combineLatest,
38
39
  exhaustMap,
@@ -47,6 +48,7 @@ import {
47
48
  import { catchError, map, tap } from 'rxjs/operators'
48
49
  import { lt } from 'semver'
49
50
  import { ElasticsearchService } from './elasticsearch'
51
+ import { Gn4SettingsService } from './settings/gn4-settings.service'
50
52
 
51
53
  const minPublicationApiVersion = '4.2.5'
52
54
 
@@ -65,7 +67,9 @@ export class Gn4Repository implements RecordsRepositoryInterface {
65
67
  private gn4SearchHelper: ElasticsearchService,
66
68
  private gn4Mapper: Gn4Converter,
67
69
  private gn4RecordsApi: RecordsApiService,
68
- private platformService: PlatformServiceInterface
70
+ private platformService: PlatformServiceInterface,
71
+ private gn4LanguagesApi: LanguagesApiService,
72
+ private settingsService: Gn4SettingsService
69
73
  ) {}
70
74
 
71
75
  search({
@@ -129,9 +133,9 @@ export class Gn4Repository implements RecordsRepositoryInterface {
129
133
  return this.gn4SearchApi
130
134
  .search(
131
135
  'bucket',
132
- ['fcats'],
136
+ ['fcats', 'hassources'],
133
137
  JSON.stringify(
134
- this.gn4SearchHelper.getMetadataByIdPayload(uniqueIdentifier)
138
+ this.gn4SearchHelper.getMetadataByIdsPayload([uniqueIdentifier])
135
139
  )
136
140
  )
137
141
  .pipe(
@@ -142,6 +146,27 @@ export class Gn4Repository implements RecordsRepositoryInterface {
142
146
  )
143
147
  }
144
148
 
149
+ getMultipleRecords(
150
+ uniqueIdentifiers: string[]
151
+ ): Observable<CatalogRecord[] | null> {
152
+ return this.gn4SearchApi
153
+ .search(
154
+ 'bucket',
155
+ undefined,
156
+ JSON.stringify(
157
+ this.gn4SearchHelper.getMetadataByIdsPayload(uniqueIdentifiers)
158
+ )
159
+ )
160
+ .pipe(
161
+ map((results: Gn4SearchResults) => results.hits.hits),
162
+ switchMap((records) =>
163
+ records && records.length > 0
164
+ ? this.gn4Mapper.readRecords(records)
165
+ : of(null)
166
+ )
167
+ )
168
+ }
169
+
145
170
  private mapEmbeddedFeatureCatalog(
146
171
  featureTypes: Array<DatasetFeatureType>
147
172
  ): DatasetFeatureCatalog {
@@ -150,10 +175,21 @@ export class Gn4Repository implements RecordsRepositoryInterface {
150
175
  name: featureType.typeName || '',
151
176
  definition: featureType.definition || '',
152
177
  attributes: Array.isArray(featureType.attributeTable)
153
- ? featureType.attributeTable.map((attr) => ({
154
- name: attr.name,
155
- title: attr.definition,
156
- }))
178
+ ? featureType.attributeTable.map((attr) => {
179
+ const values = attr.values
180
+ ?.filter((v) => v.code || v.label)
181
+ .map((v) => ({
182
+ code: v.code,
183
+ label: v.label,
184
+ }))
185
+ return {
186
+ name: attr.name,
187
+ code: attr.code,
188
+ definition: attr.definition,
189
+ type: attr.type,
190
+ ...(values?.length > 0 ? { values } : {}),
191
+ }
192
+ })
157
193
  : [],
158
194
  })),
159
195
  }
@@ -164,7 +200,8 @@ export class Gn4Repository implements RecordsRepositoryInterface {
164
200
  ): Observable<DatasetFeatureCatalog | null> {
165
201
  if (
166
202
  record.extras?.['featureTypes'] &&
167
- Array.isArray(record.extras['featureTypes'])
203
+ Array.isArray(record.extras['featureTypes']) &&
204
+ record.extras['featureTypes'].length > 0
168
205
  ) {
169
206
  return of(this.mapEmbeddedFeatureCatalog(record.extras['featureTypes']))
170
207
  }
@@ -200,6 +237,24 @@ export class Gn4Repository implements RecordsRepositoryInterface {
200
237
  )
201
238
  }
202
239
 
240
+ getSources(record: CatalogRecord): Observable<CatalogRecord[]> {
241
+ const sourcesIdentifiers = record.extras?.['sourcesIdentifiers'] as string[]
242
+ if (sourcesIdentifiers && sourcesIdentifiers.length > 0) {
243
+ return this.getMultipleRecords(sourcesIdentifiers)
244
+ }
245
+ return of(null)
246
+ }
247
+
248
+ getSourceOf(record: CatalogRecord): Observable<CatalogRecord[]> {
249
+ const sourceOfIdentifiers = record.extras?.[
250
+ 'sourceOfIdentifiers'
251
+ ] as string[]
252
+ if (sourceOfIdentifiers && sourceOfIdentifiers.length > 0) {
253
+ return this.getMultipleRecords(sourceOfIdentifiers)
254
+ }
255
+ return of(null)
256
+ }
257
+
203
258
  aggregate(params: AggregationsParams): Observable<Aggregations> {
204
259
  // if aggregations are empty, return an empty object right away
205
260
  if (Object.keys(params).length === 0) return of({})
@@ -252,14 +307,46 @@ export class Gn4Repository implements RecordsRepositoryInterface {
252
307
  : of(true)
253
308
  }
254
309
 
255
- canEditRecord(uniqueIdentifier: string): Observable<boolean> {
256
- return this.getRecord(uniqueIdentifier).pipe(
257
- map((record) => {
258
- return record.extras['edit'] as boolean
310
+ canDuplicate(record: CatalogRecord): boolean {
311
+ return record.kind === 'dataset'
312
+ }
313
+
314
+ canDelete(record: CatalogRecord): Observable<boolean> {
315
+ return this.settingsService.allowEditHarvested$.pipe(
316
+ map((allowEditHarvested) => {
317
+ return (
318
+ record.extras['edit'] &&
319
+ (!record.extras['isHarvested'] || allowEditHarvested)
320
+ )
259
321
  })
260
322
  )
261
323
  }
262
324
 
325
+ private canEdit(record: CatalogRecord, allowEditHarvested: boolean): boolean {
326
+ return (
327
+ record.kind === 'dataset' &&
328
+ record.extras['edit'] &&
329
+ (!record.extras['isHarvested'] || allowEditHarvested)
330
+ )
331
+ }
332
+
333
+ canEditRecord(uniqueIdentifier: string): Observable<boolean> {
334
+ return combineLatest([
335
+ this.getRecord(uniqueIdentifier),
336
+ this.settingsService.allowEditHarvested$,
337
+ ]).pipe(
338
+ map(([record, allowEditHarvested]) =>
339
+ record ? this.canEdit(record, allowEditHarvested) : false
340
+ )
341
+ )
342
+ }
343
+
344
+ canEditIndexedRecord(record: CatalogRecord): Observable<boolean> {
345
+ return this.settingsService.allowEditHarvested$.pipe(
346
+ map((allowEditHarvested) => this.canEdit(record, allowEditHarvested))
347
+ )
348
+ }
349
+
263
350
  openRecordForEdition(
264
351
  uniqueIdentifier: string
265
352
  ): Observable<[CatalogRecord, string, boolean] | null> {
@@ -362,9 +449,12 @@ export class Gn4Repository implements RecordsRepositoryInterface {
362
449
  const record = await converter.readRecord(fetchedRecordAsXml)
363
450
 
364
451
  record.title = `${record.title} (Copy)`
365
- await converter.writeRecord(record, fetchedRecordAsXml)
452
+ const recordAsXml = await converter.writeRecord(
453
+ record,
454
+ fetchedRecordAsXml
455
+ )
366
456
 
367
- return this.saveRecord(record, '', false)
457
+ return this.saveRecord(record, recordAsXml, false)
368
458
  }),
369
459
  exhaustMap((uuidObservable: Observable<string>) => uuidObservable),
370
460
  catchError((error: HttpErrorResponse) => {
@@ -465,6 +555,18 @@ export class Gn4Repository implements RecordsRepositoryInterface {
465
555
  )
466
556
  }
467
557
 
558
+ getApplicationLanguages(): Observable<string[]> {
559
+ return this.gn4LanguagesApi
560
+ .getApplicationLanguages()
561
+ .pipe(
562
+ map((languages) =>
563
+ languages
564
+ .map((lang) => LANG_3_TO_2_MAPPER[lang.id ?? ''])
565
+ .filter((code): code is string => !!code)
566
+ )
567
+ )
568
+ }
569
+
468
570
  private getRecordAsXml(uniqueIdentifier: string): Observable<string | null> {
469
571
  return this.gn4RecordsApi
470
572
  .getRecordAs(
@@ -2,6 +2,8 @@ import { Provider } from '@angular/core'
2
2
  import { PlatformServiceInterface } from '../../../../../../libs/common/domain/src/lib/platform.service.interface'
3
3
  import { Gn4PlatformService } from './platform/gn4-platform.service'
4
4
  import { Gn4PlatformMapper } from './platform/gn4-platform.mapper'
5
+ import { RecordsRepositoryInterface } from '../../../../../../libs/common/domain/src/lib/repository/records-repository.interface'
6
+ import { Gn4Repository } from './gn4-repository'
5
7
 
6
8
  export function provideGn4(): Provider[] {
7
9
  return [
@@ -9,6 +11,10 @@ export function provideGn4(): Provider[] {
9
11
  provide: PlatformServiceInterface,
10
12
  useClass: Gn4PlatformService,
11
13
  },
14
+ {
15
+ provide: RecordsRepositoryInterface,
16
+ useClass: Gn4Repository,
17
+ },
12
18
  Gn4PlatformMapper,
13
19
  ]
14
20
  }
@@ -82,6 +82,13 @@ export class Gn4PlatformService implements PlatformServiceInterface {
82
82
  shareReplay(1)
83
83
  )
84
84
 
85
+ private readonly allowEditHarvestedMd$ = this.settings$.pipe(
86
+ map((info) => {
87
+ return info['system/harvester/enableEditing'] as boolean
88
+ }),
89
+ shareReplay(1)
90
+ )
91
+
85
92
  /**
86
93
  * A map of already loaded thesauri (groups of keywords); the key is a URI
87
94
  * @private
@@ -123,6 +130,10 @@ export class Gn4PlatformService implements PlatformServiceInterface {
123
130
  return this.apiVersion$
124
131
  }
125
132
 
133
+ getAllowEditHarvestedMd(): Observable<boolean> {
134
+ return this.allowEditHarvestedMd$
135
+ }
136
+
126
137
  getMe(): Observable<UserModel> {
127
138
  return this.me$
128
139
  }
@@ -11,6 +11,9 @@ export class Gn4SettingsService {
11
11
  'system/users/identicon'
12
12
  )
13
13
 
14
+ public allowEditHarvested$: Observable<boolean> =
15
+ this.getSettingsSetValueByKey('system/harvester/enableEditing')
16
+
14
17
  constructor(private siteApiService: SiteApiService) {}
15
18
 
16
19
  private getSettingsSetValueByKey(key: string) {
@@ -152,6 +152,8 @@ export type ServiceProtocol =
152
152
  | 'esriRest'
153
153
  | 'ogcFeatures'
154
154
  | 'GPFDL'
155
+ | 'tms'
156
+ | 'maplibre-style'
155
157
  | 'other'
156
158
 
157
159
  export type OnlineResourceType = 'service' | 'download' | 'link' | 'endpoint'
@@ -164,6 +166,7 @@ export interface DatasetServiceDistribution {
164
166
  name?: string
165
167
  description?: string
166
168
  translations?: OnlineResourceTranslations
169
+ accessRestricted?: boolean
167
170
  }
168
171
 
169
172
  export interface DatasetDownloadDistribution {
@@ -178,6 +181,7 @@ export interface DatasetDownloadDistribution {
178
181
  description?: string
179
182
  accessServiceProtocol?: ServiceProtocol
180
183
  translations?: OnlineResourceTranslations
184
+ accessRestricted?: boolean
181
185
  }
182
186
 
183
187
  export interface OnlineLinkResource {
@@ -186,6 +190,8 @@ export interface OnlineLinkResource {
186
190
  name?: string
187
191
  description?: string
188
192
  translations?: OnlineResourceTranslations
193
+ mimeType?: string
194
+ accessRestricted?: boolean
189
195
  }
190
196
 
191
197
  export type DatasetOnlineResource = (
@@ -227,17 +233,9 @@ export interface DatasetRecord extends BaseRecord {
227
233
  spatialRepresentation?: SpatialRepresentationType
228
234
  }
229
235
 
230
- export type DatasetFeatureCatalog = {
231
- featureTypes: Array<{
232
- name: string
233
- definition: string
234
- attributes: Array<{ name: string; title: string }>
235
- }>
236
- }
237
-
238
236
  export interface ServiceEndpoint {
239
- endpointUrl: URL
240
- protocol: string
237
+ url: URL
238
+ accessServiceProtocol: ServiceProtocol
241
239
  type: 'endpoint'
242
240
  description?: string
243
241
  translations?: OnlineResourceTranslations
@@ -262,13 +260,32 @@ export interface ReuseRecord extends BaseRecord {
262
260
  temporalExtents: Array<DatasetTemporalExtent>
263
261
  }
264
262
 
263
+ export type DatasetFeatureCatalog = {
264
+ featureTypes: Array<{
265
+ name: string
266
+ definition: string
267
+ attributes: DatasetFeatureAttribute[]
268
+ }>
269
+ }
270
+ export interface DatasetFeatureAttributeValue {
271
+ code?: string
272
+ definition?: string
273
+ label?: string
274
+ }
275
+ export interface DatasetFeatureAttribute {
276
+ name: string
277
+ definition: string
278
+ type: string
279
+ code: string
280
+ values?: Array<DatasetFeatureAttributeValue>
281
+ }
265
282
  export interface DatasetFeatureType {
266
283
  aliases: string
267
284
  code: string
268
285
  isAbstract: string
269
286
  typeName: string
270
287
  definition: string
271
- attributeTable: Array<{ name: string; definition: string }>
288
+ attributeTable: Array<DatasetFeatureAttribute>
272
289
  }
273
290
 
274
291
  export type ReuseType = 'application' | 'map' | 'other'
@@ -19,8 +19,13 @@ export abstract class RecordsRepositoryInterface {
19
19
  abstract getSimilarRecords(
20
20
  similarTo: CatalogRecord
21
21
  ): Observable<CatalogRecord[]>
22
+ abstract getSources(record: CatalogRecord): Observable<CatalogRecord[]>
23
+ abstract getSourceOf(record: CatalogRecord): Observable<CatalogRecord[]>
22
24
  abstract fuzzySearch(query: string): Observable<SearchResults>
25
+ abstract canDuplicate(record: CatalogRecord): boolean
26
+ abstract canDelete(record: CatalogRecord): Observable<boolean>
23
27
  abstract canEditRecord(uniqueIdentifier: string): Observable<boolean>
28
+ abstract canEditIndexedRecord(record: CatalogRecord): Observable<boolean>
24
29
  /**
25
30
  * This emits once:
26
31
  * - record object; if a draft exists, this will return it
@@ -95,4 +100,5 @@ export abstract class RecordsRepositoryInterface {
95
100
  localRecord: CatalogRecord
96
101
  ): Observable<{ user: string; date: Date }>
97
102
  abstract getRecordPublicationStatus(uuid: string): Observable<boolean>
103
+ abstract getApplicationLanguages(): Observable<string[]>
98
104
  }
@@ -1,147 +1,157 @@
1
1
  export const elasticLinkFixture = (): Record<string, unknown> => ({
2
2
  readmeLink: {
3
- protocol: 'WWW:LINK',
3
+ accessServiceProtocol: 'WWW:LINK',
4
4
  description: 'Readme page',
5
5
  url: 'http://envlit.ifremer.fr/resultats/quadrige',
6
6
  },
7
7
  doiLink: {
8
- protocol: 'WWW:DOI',
8
+ accessServiceProtocol: 'WWW:DOI',
9
9
  description: 'DOI for the resource',
10
10
  url: 'http://doi.org/123-456-678',
11
11
  },
12
12
  dataCsv: {
13
- protocol: 'WWW:DOWNLOAD',
13
+ accessServiceProtocol: 'WWW:DOWNLOAD',
14
14
  description: 'Data in CSV format',
15
15
  name: 'abc.csv',
16
16
  url: 'http://my.server/files/abc.csv',
17
17
  },
18
18
  dataPdf: {
19
- protocol: 'WWW:DOWNLOAD',
19
+ accessServiceProtocol: 'WWW:DOWNLOAD',
20
20
  description: 'Data in PDF format',
21
21
  name: 'abc.pdf',
22
22
  url: 'https://my.server/files/abc.pdf',
23
23
  },
24
24
  dataJpg: {
25
- protocol: 'WWW:DOWNLOAD',
25
+ accessServiceProtocol: 'WWW:DOWNLOAD',
26
26
  description: 'Data in JPG format',
27
27
  name: 'abc.jpg',
28
28
  url: 'https://my.server/files/abc.jpg',
29
29
  },
30
30
  dataZip: {
31
- protocol: 'WWW:DOWNLOAD',
31
+ accessServiceProtocol: 'WWW:DOWNLOAD',
32
32
  description: 'Data in ZIP format',
33
33
  name: 'abc.zip',
34
34
  url: 'https://my.server/files/abc.zip',
35
35
  },
36
36
  dataXls: {
37
- protocol: 'WWW:DOWNLOAD',
37
+ accessServiceProtocol: 'WWW:DOWNLOAD',
38
38
  description: 'Data in XLS format',
39
39
  name: 'abc.xls',
40
40
  url: 'https://my.server/files/abc.xls',
41
41
  },
42
42
  dataXlsx: {
43
- protocol: 'WWW:DOWNLOAD',
43
+ accessServiceProtocol: 'WWW:DOWNLOAD',
44
44
  description: 'Data in XLSX format',
45
45
  name: 'abc.XLSX',
46
46
  url: 'https://my.server/files/abc.XLSX',
47
47
  },
48
48
  dataJson: {
49
- protocol: 'WWW:DOWNLOAD',
49
+ accessServiceProtocol: 'WWW:DOWNLOAD',
50
50
  description: 'Data in JSON format',
51
51
  name: 'abc.json',
52
52
  url: 'https://my.server/files/abc.json',
53
53
  },
54
54
  geodataJson: {
55
- protocol: 'WWW:DOWNLOAD',
55
+ accessServiceProtocol: 'WWW:DOWNLOAD',
56
56
  description: 'Geographic data in GeoJSON format',
57
57
  name: 'dataset.geojson',
58
58
  url: 'http://my.server/files/geographic/dataset.geojson',
59
59
  },
60
60
  geodataJsonWithMimeType: {
61
- protocol: 'WWW:DOWNLOAD:application/vnd.geo+json',
61
+ accessServiceProtocol: 'WWW:DOWNLOAD:application/vnd.geo+json',
62
62
  description: 'Geographic data in GeoJSON format',
63
63
  name: 'dataset.geojson',
64
64
  url: 'http://my.server/files/geographic/dataset',
65
65
  mimeType: 'application/vnd.geo+json',
66
66
  },
67
67
  geodataKml: {
68
- protocol: 'WWW:DOWNLOAD',
68
+ accessServiceProtocol: 'WWW:DOWNLOAD',
69
69
  description: 'Geographic data in KML format',
70
70
  name: 'dataset.kml',
71
71
  url: 'http://my.server/files/geographic/dataset.kml',
72
72
  },
73
73
  geodataGpkg: {
74
- protocol: 'WWW:DOWNLOAD',
74
+ accessServiceProtocol: 'WWW:DOWNLOAD',
75
75
  description: 'Geographic data in geopackage format',
76
76
  name: 'dataset.gpkg',
77
77
  url: 'http://my.server/files/geographic/dataset.gpkg',
78
78
  },
79
79
  geodataShp: {
80
- protocol: 'WWW:DOWNLOAD',
80
+ accessServiceProtocol: 'WWW:DOWNLOAD',
81
81
  description: 'Geographic data in shapefile format',
82
82
  name: 'dataset.shp',
83
83
  url: 'http://my.server/files/geographic/dataset.zip',
84
84
  },
85
85
  geodataShpWithMimeType: {
86
- protocol: 'WWW:DOWNLOAD:x-gis/x-shapefile',
86
+ accessServiceProtocol: 'WWW:DOWNLOAD:x-gis/x-shapefile',
87
87
  description: 'Geographic data in shapefile format',
88
88
  name: 'dataset',
89
89
  url: 'http://my.server/files/geographic/dataset.zip',
90
90
  mimeType: 'x-gis/x-shapefile',
91
91
  },
92
92
  geodataWms: {
93
- protocol: 'OGC:WMS',
93
+ accessServiceProtocol: 'OGC:WMS',
94
94
  name: 'mylayer',
95
95
  url: 'https://my.ogc.server/wms',
96
96
  },
97
97
  geodataWmts: {
98
- protocol: 'OGC:WMTS',
98
+ accessServiceProtocol: 'OGC:WMTS',
99
99
  name: 'mylayer',
100
100
  url: 'https://my.ogc.server/wmts',
101
101
  },
102
102
  geodataWfs: {
103
- protocol: 'OGC:WFS',
103
+ accessServiceProtocol: 'OGC:WFS',
104
104
  name: 'mylayer',
105
105
  url: 'https://my.ogc.server/wfs',
106
106
  },
107
107
  geodataWms2: {
108
- protocol: 'OGC:WMS',
108
+ accessServiceProtocol: 'OGC:WMS',
109
109
  name: 'myotherlayer',
110
110
  url: 'https://my.ogc.server/wms',
111
111
  },
112
112
  geodataWfs2: {
113
- protocol: 'OGC:WFS',
113
+ accessServiceProtocol: 'OGC:WFS',
114
114
  name: 'myotherlayer',
115
115
  url: 'https://my.ogc.server/wfs',
116
116
  },
117
117
  geodataRest: {
118
- protocol: 'ESRI:REST',
118
+ accessServiceProtocol: 'ESRI:REST',
119
119
  name: 'myrestlayer',
120
120
  url: 'https://my.esri.server/FeatureServer',
121
121
  },
122
122
  geodataRestWfs: {
123
- protocol: 'OGC:WFS',
123
+ accessServiceProtocol: 'OGC:WFS',
124
124
  name: 'mywfsrestlayer',
125
125
  url: 'https://my.esri.server/WFSServer',
126
126
  },
127
127
  maplayerRest: {
128
- protocol: 'ESRI:REST',
128
+ accessServiceProtocol: 'ESRI:REST',
129
129
  name: 'myotherrestlayer',
130
130
  url: 'https://my.esri.server/MapServer',
131
131
  },
132
132
  landingPage: {
133
- protocol: 'WWW:LINK:LANDING_PAGE',
133
+ accessServiceProtocol: 'WWW:LINK:LANDING_PAGE',
134
134
  name: 'landingpage link',
135
135
  url: 'https://landing.page',
136
136
  },
137
137
  unknownFormat: {
138
- protocol: 'WWW:DOWNLOAD-1.0-http--download',
138
+ accessServiceProtocol: 'WWW:DOWNLOAD-1.0-http--download',
139
139
  name: 'Vue HTML des métadonnées sur internet',
140
140
  url: 'http://catalogue.geo-ide.developpement-durable.gouv.fr/catalogue/srv/fre/catalog.search#/metadata/fr-120066022-jdd-199fd14c-2abb-4c14-b0f8-6c8d92e7b480',
141
141
  },
142
142
  geodataogcfeatures: {
143
- protocol: 'OGC API - Features',
143
+ accessServiceProtocol: 'OGC API - Features',
144
144
  name: 'ogcapi features layer',
145
145
  url: 'https://mel.integration.apps.gs-fr-prod.camptocamp.com/data/ogcapi/collections/comptages_velo/items?',
146
146
  },
147
+ maplayerTms: {
148
+ accessServiceProtocol: 'TMS',
149
+ name: 'mytmslayer',
150
+ url: 'https://my.tms.server/MapServer',
151
+ },
152
+ maplayerTms2: {
153
+ accessServiceProtocol: 'OSGeo:TMS',
154
+ name: 'myothertmslayer',
155
+ url: 'https://my.tms.server/MapServer',
156
+ },
147
157
  })
@@ -185,6 +185,20 @@ export const aSetOfLinksFixture = () => ({
185
185
  url: new URL('https://my.ogc.server/wms'),
186
186
  accessServiceProtocol: 'wms',
187
187
  }) as DatasetServiceDistribution,
188
+ geodataTms: () =>
189
+ ({
190
+ name: 'mytmslayer',
191
+ type: 'service',
192
+ url: new URL('https://my.ogc.server/tms'),
193
+ accessServiceProtocol: 'tms',
194
+ }) as DatasetServiceDistribution,
195
+ geodataAsMaplibreStyle: () =>
196
+ ({
197
+ name: 'mytmslayerAsMaplibreJson',
198
+ type: 'service',
199
+ url: new URL('https://my.ogc.server/tms/layer/style.json'),
200
+ accessServiceProtocol: 'maplibre-style',
201
+ }) as DatasetServiceDistribution,
188
202
  geodataWfs2: () =>
189
203
  ({
190
204
  name: 'myotherlayer',
@@ -239,10 +253,10 @@ export const aSetOfLinksFixture = () => ({
239
253
  ({
240
254
  description:
241
255
  'https://services.geo.sg.ch/wss/service/SG00170_WMS/guest?request=GetCapabilities&service=WMS',
242
- endpointUrl: new URL(
256
+ url: new URL(
243
257
  'https://services.geo.sg.ch/wss/service/SG00170_WMS/guest?request=GetCapabilities&service=WMS'
244
258
  ),
245
- protocol: 'wms',
259
+ accessServiceProtocol: 'wms',
246
260
  type: 'endpoint',
247
261
  }) as ServiceEndpoint,
248
262
  })
@@ -1,26 +1,26 @@
1
1
  export const wmsRecordLinkFixture = () => ({
2
2
  description: 'Lieu de surveillance (point)',
3
3
  name: 'surval_parametre_point',
4
- protocol: 'OGC:WMS',
4
+ accessServiceProtocol: 'OGC:WMS',
5
5
  url: 'https://www.ifremer.fr/services/wms/surveillance_littorale',
6
6
  })
7
7
 
8
8
  export const wpsRecordLinkFixture = () => ({
9
9
  description: "Extraction des données d'observation",
10
10
  name: 'r:survalextraction',
11
- protocol: 'OGC:WPS',
11
+ accessServiceProtocol: 'OGC:WPS',
12
12
  url: 'https://www.ifremer.fr/services/wps/surval',
13
13
  })
14
14
 
15
15
  export const wwwRecordLinkFixture = () => ({
16
16
  description: '',
17
17
  name: 'La base de données Quadrige',
18
- protocol: 'WWW:LINK',
18
+ praccessServiceProtocolotocol: 'WWW:LINK',
19
19
  url: 'http://envlit.ifremer.fr/resultats/quadrige',
20
20
  })
21
21
 
22
22
  export const doiRecordLinkFixture = () => ({
23
- protocol: 'WWW:DOI',
23
+ accessServiceProtocol: 'WWW:DOI',
24
24
  description: 'DOI for the resource',
25
25
  url: 'http://doi.org/123-456-678',
26
26
  })
@@ -28,6 +28,6 @@ export const doiRecordLinkFixture = () => ({
28
28
  export const wfsRecordLinkFixture = () => ({
29
29
  description: 'Lieu de surveillance (point)',
30
30
  name: 'surval_parametre_point',
31
- protocol: 'OGC:WFS',
31
+ accessServiceProtocol: 'OGC:WFS',
32
32
  url: 'https://www.ifremer.fr/services/wfs/surveillance_littorale',
33
33
  })