geonetwork-ui 2.4.0-dev.e97caaf2 → 2.4.0-dev.f5019723

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 (671) hide show
  1. package/esm2022/libs/api/metadata-converter/src/index.mjs +4 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/common/license.mjs +64 -0
  3. package/esm2022/libs/api/metadata-converter/src/lib/common/url.mjs +14 -0
  4. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.mjs +254 -0
  5. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/index.mjs +2 -0
  6. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.mjs +17 -0
  7. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.mjs +196 -0
  8. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.mjs +46 -0
  9. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.mjs +74 -0
  10. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.mjs +2 -0
  11. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.mjs +27 -0
  12. package/esm2022/libs/api/metadata-converter/src/lib/find-converter.mjs +11 -1
  13. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +10 -3
  14. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.mjs +6 -6
  15. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +7 -4
  16. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +17 -29
  17. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +8 -15
  18. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +6 -6
  19. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +54 -54
  20. package/esm2022/libs/api/metadata-converter/src/lib/xml-utils.mjs +35 -3
  21. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +78 -39
  22. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +41 -7
  23. package/esm2022/libs/common/domain/src/lib/model/record/contact.model.mjs +1 -1
  24. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  25. package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
  26. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  27. package/esm2022/libs/data-access/gn4/src/fixtures/site.fixtures.mjs +5 -5
  28. package/esm2022/libs/data-access/gn4/src/fixtures/ui.fixtures.mjs +3 -3
  29. package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +7 -4
  30. package/esm2022/libs/feature/catalog/src/lib/organisations/organisations.component.mjs +6 -6
  31. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +1 -1
  32. package/esm2022/libs/feature/dataviz/src/lib/feature-dataviz.module.mjs +10 -7
  33. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +40 -50
  34. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +1 -1
  35. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +1 -1
  36. package/esm2022/libs/feature/editor/src/index.mjs +2 -1
  37. package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +5 -5
  38. package/esm2022/libs/feature/editor/src/lib/components/contact-card/contact-card.component.mjs +4 -16
  39. package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +4 -2
  40. package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +95 -0
  41. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +71 -0
  42. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.mjs +109 -0
  43. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.mjs +15 -32
  44. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.mjs +19 -0
  45. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +23 -10
  46. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.mjs +3 -3
  47. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +38 -60
  48. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.mjs +148 -0
  49. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.mjs +86 -11
  50. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.mjs +4 -8
  51. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +36 -7
  52. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +35 -59
  53. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +4 -4
  54. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +14 -5
  55. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +2 -2
  56. package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +3 -3
  57. package/esm2022/libs/feature/editor/src/lib/components/wizard/wizard.component.mjs +3 -3
  58. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +41 -7
  59. package/esm2022/libs/feature/editor/src/lib/models/editor-config.model.mjs +1 -1
  60. package/esm2022/libs/feature/editor/src/lib/services/editor.service.mjs +5 -5
  61. package/esm2022/libs/feature/map/src/index.mjs +2 -9
  62. package/esm2022/libs/feature/map/src/lib/+state/map.actions.mjs +4 -7
  63. package/esm2022/libs/feature/map/src/lib/+state/map.facade.mjs +9 -15
  64. package/esm2022/libs/feature/map/src/lib/+state/map.reducer.mjs +13 -44
  65. package/esm2022/libs/feature/map/src/lib/+state/map.selectors.mjs +3 -2
  66. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.mjs +16 -16
  67. package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +16 -10
  68. package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +10 -8
  69. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +11 -7
  70. package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +10 -6
  71. package/esm2022/libs/feature/map/src/lib/constant/index.mjs +1 -2
  72. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +4 -44
  73. package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +43 -29
  74. package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +17 -8
  75. package/esm2022/libs/feature/map/src/lib/map-state-container/map-state-container.component.mjs +27 -0
  76. package/esm2022/libs/feature/map/src/lib/style/map-style.fixtures.mjs +3 -3
  77. package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +4 -168
  78. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +1 -1
  79. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +21 -17
  80. package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +14 -8
  81. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +40 -52
  82. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +4 -2
  83. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +1 -1
  84. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +3 -3
  85. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +12 -6
  86. package/esm2022/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.mjs +7 -7
  87. package/esm2022/libs/ui/catalog/src/lib/ui-catalog.module.mjs +1 -6
  88. package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +3 -3
  89. package/esm2022/libs/ui/elements/src/index.mjs +2 -2
  90. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +2 -2
  91. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +1 -1
  92. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +2 -2
  93. package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +6 -6
  94. package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +2 -2
  95. package/esm2022/libs/ui/inputs/src/index.mjs +5 -1
  96. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +7 -4
  97. package/esm2022/libs/ui/inputs/src/lib/badge/badge.component.mjs +5 -3
  98. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +8 -1
  99. package/esm2022/libs/ui/inputs/src/lib/date-picker/date-picker.component.mjs +11 -4
  100. package/esm2022/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.mjs +9 -3
  101. package/esm2022/libs/ui/inputs/src/lib/file-input/file-input.component.mjs +87 -0
  102. package/esm2022/libs/ui/inputs/src/lib/image-input/image-input.component.mjs +5 -4
  103. package/esm2022/libs/ui/inputs/src/lib/search-input/search-input.component.mjs +6 -4
  104. package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +4 -4
  105. package/esm2022/libs/ui/inputs/src/lib/text-area/text-area.component.mjs +4 -3
  106. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +2 -7
  107. package/esm2022/libs/ui/inputs/src/lib/url-input/url-input.component.mjs +3 -3
  108. package/esm2022/libs/ui/layout/src/index.mjs +3 -1
  109. package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +5 -3
  110. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +3 -3
  111. package/esm2022/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.mjs +29 -0
  112. package/esm2022/libs/ui/layout/src/lib/sortable-list/sortable-list.component.mjs +43 -0
  113. package/esm2022/libs/ui/map/src/index.mjs +4 -3
  114. package/esm2022/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.mjs +8 -6
  115. package/esm2022/libs/ui/map/src/lib/components/map-container/map-container.component.mjs +137 -0
  116. package/esm2022/libs/ui/map/src/lib/components/map-container/map-settings.token.mjs +13 -0
  117. package/esm2022/libs/ui/map/src/lib/map-utils.mjs +37 -0
  118. package/esm2022/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.mjs +7 -7
  119. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +8 -8
  120. package/esm2022/libs/util/app-config/src/index.mjs +2 -1
  121. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +10 -10
  122. package/esm2022/libs/util/app-config/src/lib/map-layers.mjs +27 -0
  123. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +1 -1
  124. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +1 -1
  125. package/esm2022/libs/util/shared/src/lib/services/theme.service.mjs +2 -1
  126. package/esm2022/libs/util/shared/src/lib/utils/bytes-convert.mjs +4 -1
  127. package/esm2022/translations/de.json +28 -2
  128. package/esm2022/translations/en.json +59 -33
  129. package/esm2022/translations/es.json +26 -0
  130. package/esm2022/translations/fr.json +90 -64
  131. package/esm2022/translations/it.json +28 -2
  132. package/esm2022/translations/nl.json +26 -0
  133. package/esm2022/translations/pt.json +26 -0
  134. package/fesm2022/geonetwork-ui.mjs +9462 -8515
  135. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  136. package/libs/api/metadata-converter/src/index.d.ts +3 -0
  137. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  138. package/libs/api/metadata-converter/src/lib/common/license.d.ts +3 -0
  139. package/libs/api/metadata-converter/src/lib/common/license.d.ts.map +1 -0
  140. package/libs/api/metadata-converter/src/lib/common/url.d.ts +7 -0
  141. package/libs/api/metadata-converter/src/lib/common/url.d.ts.map +1 -0
  142. package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts +13 -0
  143. package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts.map +1 -0
  144. package/libs/api/metadata-converter/src/lib/dcat-ap/index.d.ts +2 -0
  145. package/libs/api/metadata-converter/src/lib/dcat-ap/index.d.ts.map +1 -0
  146. package/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.d.ts +16 -0
  147. package/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.d.ts.map +1 -0
  148. package/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.d.ts +20 -0
  149. package/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.d.ts.map +1 -0
  150. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.d.ts +9 -0
  151. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.d.ts.map +1 -0
  152. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.d.ts +8 -0
  153. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.d.ts.map +1 -0
  154. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.d.ts +2 -0
  155. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.d.ts.map +1 -0
  156. package/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.d.ts +6 -0
  157. package/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.d.ts.map +1 -0
  158. package/libs/api/metadata-converter/src/lib/find-converter.d.ts.map +1 -1
  159. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +3 -3
  160. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  161. package/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.d.ts.map +1 -1
  162. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +2 -2
  163. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  164. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts +1 -2
  165. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
  166. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -1
  167. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts +4 -5
  168. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  169. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +10 -11
  170. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  171. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts +58 -0
  172. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts.map +1 -1
  173. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +12 -7
  174. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  175. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +21 -2
  176. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  177. package/libs/common/domain/src/lib/model/record/contact.model.d.ts +1 -1
  178. package/libs/common/domain/src/lib/model/record/contact.model.d.ts.map +1 -1
  179. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +6 -6
  180. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  181. package/libs/common/domain/src/lib/platform.service.interface.d.ts +15 -0
  182. package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
  183. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +7 -0
  184. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  185. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts +2 -2
  186. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts.map +1 -1
  187. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts +1 -1
  188. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts.map +1 -1
  189. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts +2 -1
  190. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts.map +1 -1
  191. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +2 -2
  192. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  193. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts +10 -9
  194. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts.map +1 -1
  195. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts +13 -20
  196. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts.map +1 -1
  197. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +6 -6
  198. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  199. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +3 -3
  200. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  201. package/libs/feature/editor/src/index.d.ts +1 -0
  202. package/libs/feature/editor/src/index.d.ts.map +1 -1
  203. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -1
  204. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts +1 -5
  205. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts.map +1 -1
  206. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts +2 -1
  207. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts.map +1 -1
  208. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts +34 -0
  209. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts.map +1 -0
  210. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts +15 -0
  211. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -0
  212. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts +38 -0
  213. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts.map +1 -0
  214. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts +2 -5
  215. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts.map +1 -1
  216. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.d.ts +9 -0
  217. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.d.ts.map +1 -0
  218. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts +5 -2
  219. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -1
  220. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +6 -13
  221. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts.map +1 -1
  222. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.d.ts +35 -0
  223. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.d.ts.map +1 -0
  224. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts +20 -2
  225. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts.map +1 -1
  226. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts +1 -3
  227. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts.map +1 -1
  228. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts +7 -2
  229. 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
  230. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts +9 -15
  231. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts.map +1 -1
  232. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +5 -3
  233. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  234. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts +1 -1
  235. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts.map +1 -1
  236. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts +3 -2
  237. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts.map +1 -1
  238. package/libs/feature/editor/src/lib/fields.config.d.ts +10 -1
  239. package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
  240. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts +6 -0
  241. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts.map +1 -1
  242. package/libs/feature/editor/src/lib/services/editor.service.d.ts +2 -2
  243. package/libs/feature/editor/src/lib/services/editor.service.d.ts.map +1 -1
  244. package/libs/feature/map/src/index.d.ts +1 -8
  245. package/libs/feature/map/src/index.d.ts.map +1 -1
  246. package/libs/feature/map/src/lib/+state/map.actions.d.ts +13 -39
  247. package/libs/feature/map/src/lib/+state/map.actions.d.ts.map +1 -1
  248. package/libs/feature/map/src/lib/+state/map.facade.d.ts +9 -10
  249. package/libs/feature/map/src/lib/+state/map.facade.d.ts.map +1 -1
  250. package/libs/feature/map/src/lib/+state/map.reducer.d.ts +4 -2
  251. package/libs/feature/map/src/lib/+state/map.reducer.d.ts.map +1 -1
  252. package/libs/feature/map/src/lib/+state/map.selectors.d.ts +6 -1
  253. package/libs/feature/map/src/lib/+state/map.selectors.d.ts.map +1 -1
  254. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts +7 -9
  255. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts.map +1 -1
  256. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -1
  257. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts +2 -2
  258. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
  259. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts +1 -1
  260. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -1
  261. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts +1 -1
  262. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts.map +1 -1
  263. package/libs/feature/map/src/lib/constant/index.d.ts +0 -1
  264. package/libs/feature/map/src/lib/constant/index.d.ts.map +1 -1
  265. package/libs/feature/map/src/lib/feature-map.module.d.ts +12 -18
  266. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  267. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts +7 -7
  268. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts.map +1 -1
  269. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts +4 -3
  270. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
  271. package/libs/feature/map/src/lib/map-state-container/map-state-container.component.d.ts +14 -0
  272. package/libs/feature/map/src/lib/map-state-container/map-state-container.component.d.ts.map +1 -0
  273. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts +2 -2
  274. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts.map +1 -1
  275. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts +0 -30
  276. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
  277. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +3 -3
  278. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  279. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +10 -7
  280. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  281. package/libs/feature/record/src/lib/feature-record.module.d.ts +13 -11
  282. package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
  283. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +14 -20
  284. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  285. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +7 -7
  286. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  287. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +5 -3
  288. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -1
  289. package/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.d.ts +1 -1
  290. package/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.d.ts.map +1 -1
  291. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts +9 -10
  292. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts.map +1 -1
  293. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts +2 -2
  294. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts.map +1 -1
  295. package/libs/ui/elements/src/index.d.ts +1 -1
  296. package/libs/ui/elements/src/index.d.ts.map +1 -1
  297. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +2 -2
  298. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  299. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -7
  300. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  301. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +2 -2
  302. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  303. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts +2 -2
  304. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts.map +1 -1
  305. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +1 -1
  306. package/libs/ui/inputs/src/index.d.ts +4 -0
  307. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  308. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
  309. package/libs/ui/inputs/src/lib/badge/badge.component.d.ts.map +1 -1
  310. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  311. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  312. package/libs/ui/inputs/src/lib/date-picker/date-picker.component.d.ts.map +1 -1
  313. package/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.d.ts.map +1 -1
  314. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts +24 -0
  315. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts.map +1 -0
  316. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts +1 -1
  317. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts.map +1 -1
  318. package/libs/ui/inputs/src/lib/search-input/search-input.component.d.ts +1 -1
  319. package/libs/ui/inputs/src/lib/search-input/search-input.component.d.ts.map +1 -1
  320. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts +0 -1
  321. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts.map +1 -1
  322. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts.map +1 -1
  323. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +25 -26
  324. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  325. package/libs/ui/layout/src/index.d.ts +2 -0
  326. package/libs/ui/layout/src/index.d.ts.map +1 -1
  327. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts +2 -2
  328. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts.map +1 -1
  329. package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts +1 -1
  330. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts +20 -0
  331. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts.map +1 -0
  332. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts +14 -0
  333. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts.map +1 -0
  334. package/libs/ui/map/src/index.d.ts +3 -2
  335. package/libs/ui/map/src/index.d.ts.map +1 -1
  336. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts +3 -4
  337. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts.map +1 -1
  338. package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts +37 -0
  339. package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts.map +1 -0
  340. package/libs/ui/map/src/lib/components/map-container/map-settings.token.d.ts +18 -0
  341. package/libs/ui/map/src/lib/components/map-container/map-settings.token.d.ts.map +1 -0
  342. package/libs/ui/map/src/lib/map-utils.d.ts +7 -0
  343. package/libs/ui/map/src/lib/map-utils.d.ts.map +1 -0
  344. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts +3 -3
  345. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts.map +1 -1
  346. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +3 -3
  347. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  348. package/libs/util/app-config/src/index.d.ts +1 -0
  349. package/libs/util/app-config/src/index.d.ts.map +1 -1
  350. package/libs/util/app-config/src/lib/fixtures.d.ts +8 -8
  351. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  352. package/libs/util/app-config/src/lib/map-layers.d.ts +4 -0
  353. package/libs/util/app-config/src/lib/map-layers.d.ts.map +1 -0
  354. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  355. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  356. package/libs/util/shared/src/lib/links/link-utils.d.ts +6 -6
  357. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  358. package/libs/util/shared/src/lib/services/theme.service.d.ts.map +1 -1
  359. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts +2 -1
  360. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts.map +1 -1
  361. package/package.json +5 -3
  362. package/src/libs/api/metadata-converter/src/index.ts +3 -0
  363. package/src/libs/api/metadata-converter/src/lib/common/license.ts +66 -0
  364. package/src/libs/api/metadata-converter/src/lib/common/url.ts +15 -0
  365. package/src/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.ts +378 -0
  366. package/src/libs/api/metadata-converter/src/lib/dcat-ap/index.ts +1 -0
  367. package/src/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.ts +17 -0
  368. package/src/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.ts +370 -0
  369. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.ts +95 -0
  370. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/individual-name.ts +20 -0
  371. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/keyword.mapper.ts +16 -0
  372. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/role.mapper.ts +48 -0
  373. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.ts +97 -0
  374. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/status.mapper.ts +19 -0
  375. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/update-frequency.mapper.ts +67 -0
  376. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.ts +1 -0
  377. package/src/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.ts +68 -0
  378. package/src/libs/api/metadata-converter/src/lib/find-converter.ts +13 -0
  379. package/src/libs/api/metadata-converter/src/lib/fixtures/eu.dcat-ap.records.ts +272 -0
  380. package/src/libs/api/metadata-converter/src/lib/fixtures/generic.records.ts +1 -1
  381. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +1 -1
  382. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +1 -1
  383. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +1 -1
  384. package/src/libs/api/metadata-converter/src/lib/fixtures/opendataswiss.records.ts +110 -0
  385. package/src/libs/api/metadata-converter/src/lib/fixtures/sextant.records.ts +85 -0
  386. package/src/libs/api/metadata-converter/src/lib/fixtures/vlaanderen.dcat-ap.records.ts +73 -0
  387. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +18 -16
  388. package/src/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.ts +5 -6
  389. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +12 -4
  390. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +21 -43
  391. package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +5 -14
  392. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +13 -15
  393. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +133 -156
  394. package/src/libs/api/metadata-converter/src/lib/xml-utils.ts +37 -2
  395. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +132 -68
  396. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +47 -3
  397. package/src/libs/common/domain/src/lib/model/record/contact.model.ts +1 -1
  398. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +7 -7
  399. package/src/libs/common/domain/src/lib/platform.service.interface.ts +26 -0
  400. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +10 -0
  401. package/src/libs/common/fixtures/src/index.ts +4 -1
  402. package/src/libs/common/fixtures/src/lib/editor/editor.fixtures.ts +37 -37
  403. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-request.ts → aggregations-request.fixtures.ts} +1 -3
  404. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-response.ts → aggregations-response.fixtures.ts} +6 -8
  405. package/src/libs/common/fixtures/src/lib/elasticsearch/{full-response.ts → full-response.fixtures.ts} +1 -3
  406. package/src/libs/common/fixtures/src/lib/elasticsearch/index.ts +5 -5
  407. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +1 -3
  408. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata.fixtures.ts +1739 -1742
  409. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-requests.ts → search-requests.fixtures.ts} +1 -3
  410. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-responses.ts → search-responses.fixtures.ts} +4 -6
  411. package/src/libs/common/fixtures/src/lib/geojson.fixtures.ts +57178 -57195
  412. package/src/libs/common/fixtures/src/lib/gn4/groups.fixtures.ts +2 -4
  413. package/src/libs/common/fixtures/src/lib/individual.fixtures.ts +61 -0
  414. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +233 -164
  415. package/src/libs/common/fixtures/src/lib/map/index.ts +1 -0
  416. package/src/libs/common/fixtures/src/lib/map/map-context.fixtures.ts +53 -0
  417. package/src/libs/common/fixtures/src/lib/ol-feature.fixtures.ts +10 -0
  418. package/src/libs/common/fixtures/src/lib/organisations.fixture.ts +35 -11
  419. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +9 -7
  420. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +9 -9
  421. package/src/libs/common/fixtures/src/lib/repository.fixtures.ts +4 -4
  422. package/src/libs/common/fixtures/src/lib/search/aggregations.ts +2 -3
  423. package/src/libs/common/fixtures/src/lib/user-feedbacks.fixtures.ts +14 -15
  424. package/src/libs/common/fixtures/src/lib/user.fixtures.ts +45 -15
  425. package/src/libs/data-access/gn4/src/fixtures/site.fixtures.ts +4 -4
  426. package/src/libs/data-access/gn4/src/fixtures/ui.fixtures.ts +2 -2
  427. package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +5 -1
  428. package/src/libs/feature/catalog/src/lib/sources/sources.fixture.ts +1 -1
  429. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +3 -3
  430. package/src/libs/feature/dataviz/src/lib/feature-dataviz.module.ts +6 -2
  431. package/src/libs/feature/dataviz/src/lib/figure/figure.fixtures.ts +2 -2
  432. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.html +5 -2
  433. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.ts +38 -78
  434. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +6 -6
  435. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +4 -4
  436. package/src/libs/feature/editor/src/index.ts +1 -0
  437. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +11 -4
  438. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.html +12 -24
  439. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.ts +1 -13
  440. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +1 -0
  441. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.html +47 -0
  442. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +132 -0
  443. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.html +35 -0
  444. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +79 -0
  445. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.html +40 -0
  446. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.ts +170 -0
  447. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.css +4 -0
  448. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.html +13 -23
  449. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +11 -50
  450. package/src/libs/feature/editor/src/lib/components/record-form/form-field/{form-field-resource-updated/form-field-resource-updated.component.ts → form-field-date-updated/form-field-date-updated.component.ts} +4 -4
  451. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.html +3 -2
  452. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +35 -3
  453. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.css +8 -0
  454. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +1 -4
  455. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.ts +41 -83
  456. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.html +34 -0
  457. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.ts +182 -0
  458. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.html +11 -5
  459. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +93 -4
  460. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.html +13 -6
  461. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.ts +0 -9
  462. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +7 -2
  463. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +62 -6
  464. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.css +4 -0
  465. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.html +23 -3
  466. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +37 -69
  467. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.css +4 -0
  468. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.html +16 -14
  469. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +1 -1
  470. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +34 -20
  471. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +12 -3
  472. package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +1 -1
  473. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.html +31 -29
  474. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +2 -1
  475. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.html +2 -6
  476. package/src/libs/feature/editor/src/lib/fields.config.ts +45 -6
  477. package/src/libs/feature/editor/src/lib/models/editor-config.model.ts +12 -0
  478. package/src/libs/feature/editor/src/lib/services/editor.service.ts +7 -3
  479. package/src/libs/feature/map/src/index.ts +1 -8
  480. package/src/libs/feature/map/src/lib/+state/map.actions.ts +10 -25
  481. package/src/libs/feature/map/src/lib/+state/map.facade.ts +11 -15
  482. package/src/libs/feature/map/src/lib/+state/map.reducer.ts +16 -53
  483. package/src/libs/feature/map/src/lib/+state/map.selectors.ts +7 -2
  484. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.ts +18 -21
  485. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +17 -11
  486. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +11 -12
  487. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +12 -10
  488. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.ts +11 -9
  489. package/src/libs/feature/map/src/lib/constant/index.ts +0 -1
  490. package/src/libs/feature/map/src/lib/feature-map.module.ts +0 -26
  491. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +38 -20
  492. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.html +2 -2
  493. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +15 -5
  494. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.html +4 -0
  495. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.ts +29 -0
  496. package/src/libs/feature/map/src/lib/style/map-style.fixtures.ts +29 -27
  497. package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +1 -229
  498. package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +3 -3
  499. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +29 -20
  500. package/src/libs/feature/record/src/lib/feature-record.module.ts +11 -3
  501. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +4 -4
  502. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +45 -72
  503. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +5 -1
  504. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +1 -1
  505. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +1 -0
  506. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +5 -1
  507. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +14 -3
  508. package/src/libs/feature/search/src/lib/state/fixtures/search-state.fixtures.ts +2 -2
  509. package/src/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.ts +8 -1
  510. package/src/libs/ui/catalog/src/lib/ui-catalog.module.ts +0 -3
  511. package/src/libs/ui/dataviz/src/lib/chart/chart.fixtures.ts +2 -2
  512. package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +2 -2
  513. package/src/libs/ui/elements/src/index.ts +1 -1
  514. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +4 -4
  515. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +7 -7
  516. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +3 -3
  517. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.html +13 -20
  518. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +1 -1
  519. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.css +5 -0
  520. package/src/libs/ui/inputs/src/index.ts +4 -0
  521. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.css +25 -18
  522. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +38 -24
  523. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +4 -1
  524. package/src/libs/ui/inputs/src/lib/badge/badge.component.html +11 -3
  525. package/src/libs/ui/inputs/src/lib/badge/badge.component.ts +2 -1
  526. package/src/libs/ui/inputs/src/lib/button/button.component.ts +15 -1
  527. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.css +7 -2
  528. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.html +14 -6
  529. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.ts +7 -1
  530. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.css +7 -2
  531. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.html +28 -23
  532. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.ts +7 -1
  533. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.css +4 -0
  534. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.html +7 -3
  535. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +2 -1
  536. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.css +4 -0
  537. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.html +30 -22
  538. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.ts +2 -1
  539. package/src/libs/ui/inputs/src/lib/search-input/search-input.component.ts +5 -1
  540. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.css +4 -3
  541. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.html +0 -1
  542. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +1 -2
  543. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.html +1 -1
  544. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.ts +1 -1
  545. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +0 -3
  546. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.html +1 -1
  547. package/src/libs/ui/layout/src/index.ts +2 -0
  548. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.html +8 -3
  549. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +4 -3
  550. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.css +1 -1
  551. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +2 -2
  552. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.html +15 -0
  553. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.ts +44 -0
  554. package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.html +37 -0
  555. package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.ts +13 -16
  556. package/src/libs/ui/map/src/index.ts +3 -2
  557. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.html +1 -1
  558. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.ts +8 -5
  559. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.css +0 -0
  560. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +203 -0
  561. package/src/libs/ui/map/src/lib/components/map-container/map-settings.token.ts +23 -0
  562. package/src/libs/ui/map/src/lib/map-utils.ts +54 -0
  563. package/src/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.ts +7 -6
  564. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +20 -9
  565. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +5 -6
  566. package/src/libs/util/app-config/src/index.ts +1 -0
  567. package/src/libs/util/app-config/src/lib/fixtures.ts +9 -9
  568. package/src/libs/util/app-config/src/lib/map-layers.ts +31 -0
  569. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +4 -3
  570. package/src/libs/util/shared/src/lib/links/link-utils.ts +6 -6
  571. package/src/libs/util/shared/src/lib/services/theme.service.ts +1 -0
  572. package/src/libs/util/shared/src/lib/utils/bytes-convert.ts +4 -1
  573. package/tailwind.base.config.js +1 -0
  574. package/tailwind.base.css +38 -6
  575. package/translations/de.json +28 -2
  576. package/translations/en.json +59 -33
  577. package/translations/es.json +26 -0
  578. package/translations/fr.json +90 -64
  579. package/translations/it.json +28 -2
  580. package/translations/nl.json +26 -0
  581. package/translations/pt.json +26 -0
  582. package/translations/sk.json +26 -0
  583. package/esm2022/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.mjs +0 -96
  584. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.mjs +0 -19
  585. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.mjs +0 -17
  586. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.mjs +0 -17
  587. package/esm2022/libs/feature/map/src/lib/+state/map.effects.mjs +0 -15
  588. package/esm2022/libs/feature/map/src/lib/+state/map.models.mjs +0 -2
  589. package/esm2022/libs/feature/map/src/lib/constant/map-options.mjs +0 -8
  590. package/esm2022/libs/feature/map/src/lib/constant/style.constant.mjs +0 -17
  591. package/esm2022/libs/feature/map/src/lib/feature-info/feature-info.service.mjs +0 -38
  592. package/esm2022/libs/feature/map/src/lib/manager/map-instance.directive.mjs +0 -19
  593. package/esm2022/libs/feature/map/src/lib/manager/map-manager.service.mjs +0 -19
  594. package/esm2022/libs/feature/map/src/lib/map-container/map-container.component.mjs +0 -27
  595. package/esm2022/libs/feature/map/src/lib/map-context/component/map-context.component.mjs +0 -46
  596. package/esm2022/libs/feature/map/src/lib/map-context/map-context.model.mjs +0 -10
  597. package/esm2022/libs/feature/map/src/lib/map-context/map-context.service.mjs +0 -289
  598. package/esm2022/libs/ui/elements/src/lib/sortable-list/sortable-list.component.mjs +0 -39
  599. package/esm2022/libs/ui/map/src/lib/components/map/map.component.mjs +0 -40
  600. package/esm2022/libs/ui/map/src/lib/ui-map.module.mjs +0 -33
  601. package/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.d.ts +0 -27
  602. package/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.d.ts.map +0 -1
  603. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts +0 -9
  604. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts.map +0 -1
  605. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts +0 -8
  606. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts.map +0 -1
  607. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.d.ts +0 -8
  608. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.d.ts.map +0 -1
  609. package/libs/feature/map/src/lib/+state/map.effects.d.ts +0 -9
  610. package/libs/feature/map/src/lib/+state/map.effects.d.ts.map +0 -1
  611. package/libs/feature/map/src/lib/+state/map.models.d.ts +0 -9
  612. package/libs/feature/map/src/lib/+state/map.models.d.ts.map +0 -1
  613. package/libs/feature/map/src/lib/constant/map-options.d.ts +0 -9
  614. package/libs/feature/map/src/lib/constant/map-options.d.ts.map +0 -1
  615. package/libs/feature/map/src/lib/constant/style.constant.d.ts +0 -4
  616. package/libs/feature/map/src/lib/constant/style.constant.d.ts.map +0 -1
  617. package/libs/feature/map/src/lib/feature-info/feature-info.service.d.ts +0 -16
  618. package/libs/feature/map/src/lib/feature-info/feature-info.service.d.ts.map +0 -1
  619. package/libs/feature/map/src/lib/manager/map-instance.directive.d.ts +0 -9
  620. package/libs/feature/map/src/lib/manager/map-instance.directive.d.ts.map +0 -1
  621. package/libs/feature/map/src/lib/manager/map-manager.service.d.ts +0 -11
  622. package/libs/feature/map/src/lib/manager/map-manager.service.d.ts.map +0 -1
  623. package/libs/feature/map/src/lib/map-container/map-container.component.d.ts +0 -12
  624. package/libs/feature/map/src/lib/map-container/map-container.component.d.ts.map +0 -1
  625. package/libs/feature/map/src/lib/map-context/component/map-context.component.d.ts +0 -26
  626. package/libs/feature/map/src/lib/map-context/component/map-context.component.d.ts.map +0 -1
  627. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts +0 -77
  628. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts.map +0 -1
  629. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts +0 -26
  630. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts.map +0 -1
  631. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts +0 -17
  632. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts.map +0 -1
  633. package/libs/ui/map/src/lib/components/map/map.component.d.ts +0 -19
  634. package/libs/ui/map/src/lib/components/map/map.component.d.ts.map +0 -1
  635. package/libs/ui/map/src/lib/ui-map.module.d.ts +0 -13
  636. package/libs/ui/map/src/lib/ui-map.module.d.ts.map +0 -1
  637. package/src/libs/common/fixtures/src/lib/ol-feature.fixture.ts +0 -7
  638. package/src/libs/common/fixtures/src/lib/utils/freeze.ts +0 -10
  639. package/src/libs/common/fixtures/src/lib/utils/index.ts +0 -1
  640. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.html +0 -9
  641. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.ts +0 -113
  642. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.html +0 -7
  643. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.ts +0 -16
  644. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.html +0 -13
  645. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.ts +0 -16
  646. package/src/libs/feature/map/src/lib/+state/map.effects.ts +0 -7
  647. package/src/libs/feature/map/src/lib/+state/map.models.ts +0 -9
  648. package/src/libs/feature/map/src/lib/constant/map-options.ts +0 -17
  649. package/src/libs/feature/map/src/lib/feature-info/feature-info.service.ts +0 -42
  650. package/src/libs/feature/map/src/lib/manager/map-instance.directive.ts +0 -10
  651. package/src/libs/feature/map/src/lib/manager/map-manager.service.ts +0 -13
  652. package/src/libs/feature/map/src/lib/map-container/map-container.component.html +0 -1
  653. package/src/libs/feature/map/src/lib/map-container/map-container.component.ts +0 -26
  654. package/src/libs/feature/map/src/lib/map-context/component/map-context.component.html +0 -1
  655. package/src/libs/feature/map/src/lib/map-context/component/map-context.component.ts +0 -57
  656. package/src/libs/feature/map/src/lib/map-context/map-context.fixtures.ts +0 -51
  657. package/src/libs/feature/map/src/lib/map-context/map-context.model.ts +0 -95
  658. package/src/libs/feature/map/src/lib/map-context/map-context.service.ts +0 -318
  659. package/src/libs/ui/elements/src/lib/sortable-list/sortable-list.component.html +0 -29
  660. package/src/libs/ui/map/src/lib/components/map/map.component.ts +0 -57
  661. package/src/libs/ui/map/src/lib/ui-map.module.ts +0 -19
  662. /package/src/libs/feature/editor/src/lib/components/{overview-upload/overview-upload.component.css → import-record/import-record.component.css} +0 -0
  663. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.css → online-resource-card/online-resource-card.component.css} +0 -0
  664. /package/src/libs/feature/editor/src/lib/components/record-form/form-field/{form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.css → form-field-contacts/form-field-contacts.component.css} +0 -0
  665. /package/src/libs/feature/editor/src/lib/components/record-form/form-field/{form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.css → form-field-date-updated/form-field-date-updated.component.css} +0 -0
  666. /package/src/libs/feature/editor/src/lib/components/record-form/form-field/{form-field-resource-updated/form-field-resource-updated.component.html → form-field-date-updated/form-field-date-updated.component.html} +0 -0
  667. /package/src/libs/feature/{map/src/lib/map-container/map-container.component.css → editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.css} +0 -0
  668. /package/src/libs/feature/map/src/lib/{map-context/component/map-context.component.css → map-state-container/map-state-container.component.css} +0 -0
  669. /package/src/libs/ui/{map/src/lib/components/map/map.component.css → layout/src/lib/modal-dialog/modal-dialog.component.css} +0 -0
  670. /package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.css +0 -0
  671. /package/src/libs/ui/map/src/lib/components/{map/map.component.html → map-container/map-container.component.html} +0 -0
@@ -1,289 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { MapStyleService } from '../style/map-style.service';
3
- import { MapContextLayerTypeEnum, } from './map-context.model';
4
- import View from 'ol/View';
5
- import VectorLayer from 'ol/layer/Vector';
6
- import TileWMS from 'ol/source/TileWMS';
7
- import TileLayer from 'ol/layer/Tile';
8
- import XYZ from 'ol/source/XYZ';
9
- import VectorSource from 'ol/source/Vector';
10
- import GeoJSON from 'ol/format/GeoJSON';
11
- import { MapUtilsService } from '../utils/map-utils.service';
12
- import { bbox as bboxStrategy } from 'ol/loadingstrategy';
13
- import { fromLonLat } from 'ol/proj';
14
- import WMTS from 'ol/source/WMTS';
15
- import { WfsEndpoint, WmtsEndpoint } from '@camptocamp/ogc-client';
16
- import OGCVectorTile from 'ol/source/OGCVectorTile.js';
17
- import { MVT } from 'ol/format';
18
- import VectorTileLayer from 'ol/layer/VectorTile';
19
- import OGCMapTile from 'ol/source/OGCMapTile.js';
20
- import ImageLayer from 'ol/layer/Image';
21
- import ImageWMS from 'ol/source/ImageWMS';
22
- import * as i0 from "@angular/core";
23
- import * as i1 from "../utils/map-utils.service";
24
- import * as i2 from "../style/map-style.service";
25
- export const DEFAULT_BASELAYER_CONTEXT = {
26
- type: MapContextLayerTypeEnum.XYZ,
27
- urls: [
28
- `https://a.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}.png`,
29
- `https://b.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}.png`,
30
- `https://c.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}.png`,
31
- ],
32
- attributions: `<span>© <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, © <a href="https://carto.com/">Carto</a></span>`,
33
- };
34
- export const DEFAULT_VIEW = {
35
- center: [0, 15],
36
- zoom: 2,
37
- };
38
- export const WFS_MAX_FEATURES = 10000;
39
- export class MapContextService {
40
- constructor(mapUtils, styleService) {
41
- this.mapUtils = mapUtils;
42
- this.styleService = styleService;
43
- }
44
- resetMapFromContext(map, mapContext, mapConfig) {
45
- if (mapConfig) {
46
- mapContext = this.mergeMapConfigWithContext(mapContext, mapConfig);
47
- }
48
- else {
49
- mapContext.layers = this.addDefaultBaselayerContext(mapContext.layers);
50
- }
51
- if (!mapContext.view?.extent &&
52
- (!mapContext.view?.center || !mapContext.view?.zoom)) {
53
- mapContext.view = this.getFallbackView(mapConfig);
54
- }
55
- map.setView(this.createView(mapContext.view, map));
56
- map.getLayers().clear();
57
- mapContext.layers.forEach((layer) => map.addLayer(this.createLayer(layer, mapConfig)));
58
- return map;
59
- }
60
- createLayer(layerModel, mapConfig) {
61
- const { type } = layerModel;
62
- const style = this.styleService.styles.default;
63
- switch (type) {
64
- case MapContextLayerTypeEnum.OGCAPI:
65
- if (layerModel.layerType === 'vectorTiles') {
66
- return new VectorTileLayer({
67
- source: new OGCVectorTile({
68
- url: layerModel.url,
69
- format: new MVT(),
70
- attributions: layerModel.attributions,
71
- }),
72
- });
73
- }
74
- else if (layerModel.layerType === 'mapTiles') {
75
- return new TileLayer({
76
- source: new OGCMapTile({
77
- url: layerModel.url,
78
- attributions: layerModel.attributions,
79
- }),
80
- });
81
- }
82
- else {
83
- return new VectorLayer({
84
- source: new VectorSource({
85
- format: new GeoJSON(),
86
- url: layerModel.url,
87
- attributions: layerModel.attributions,
88
- }),
89
- style,
90
- });
91
- }
92
- case MapContextLayerTypeEnum.XYZ:
93
- return new TileLayer({
94
- source: new XYZ({
95
- url: 'url' in layerModel ? layerModel.url : undefined,
96
- urls: 'urls' in layerModel ? layerModel.urls : undefined,
97
- attributions: layerModel.attributions,
98
- }),
99
- });
100
- case MapContextLayerTypeEnum.WMS:
101
- if (mapConfig?.DO_NOT_TILE_WMS) {
102
- return new ImageLayer({
103
- source: new ImageWMS({
104
- url: layerModel.url,
105
- params: { LAYERS: layerModel.name },
106
- attributions: layerModel.attributions,
107
- }),
108
- });
109
- }
110
- else {
111
- return new TileLayer({
112
- source: new TileWMS({
113
- url: layerModel.url,
114
- params: { LAYERS: layerModel.name, TILED: true },
115
- attributions: layerModel.attributions,
116
- }),
117
- });
118
- }
119
- case MapContextLayerTypeEnum.WMTS: {
120
- // TODO: isolate this in utils service
121
- const olLayer = new TileLayer({});
122
- const endpoint = new WmtsEndpoint(layerModel.url);
123
- endpoint.isReady().then(async (endpoint) => {
124
- const layerName = endpoint.getSingleLayerName() ?? layerModel.name;
125
- const layer = endpoint.getLayerByName(layerName);
126
- const matrixSet = layer.matrixSets[0];
127
- const tileGrid = await endpoint.getOpenLayersTileGrid(layer.name);
128
- const resourceUrl = layer.resourceLinks[0];
129
- const dimensions = endpoint.getDefaultDimensions(layer.name);
130
- olLayer.setSource(new WMTS({
131
- layer: layer.name,
132
- style: layer.defaultStyle,
133
- matrixSet: matrixSet.identifier,
134
- format: resourceUrl.format,
135
- url: resourceUrl.url,
136
- requestEncoding: resourceUrl.encoding,
137
- tileGrid,
138
- projection: matrixSet.crs,
139
- dimensions,
140
- attributions: layerModel.attributions,
141
- }));
142
- });
143
- return olLayer;
144
- }
145
- case MapContextLayerTypeEnum.WFS: {
146
- const olLayer = new VectorLayer({
147
- style,
148
- });
149
- new WfsEndpoint(layerModel.url).isReady().then((endpoint) => {
150
- const featureType = endpoint.getSingleFeatureTypeName() ?? layerModel.name;
151
- olLayer.setSource(new VectorSource({
152
- format: new GeoJSON(),
153
- url: function (extent) {
154
- return endpoint.getFeatureUrl(featureType, {
155
- maxFeatures: WFS_MAX_FEATURES,
156
- asJson: true,
157
- outputCrs: 'EPSG:3857',
158
- extent,
159
- extentCrs: 'EPSG:3857',
160
- });
161
- },
162
- strategy: bboxStrategy,
163
- attributions: layerModel.attributions,
164
- }));
165
- });
166
- return olLayer;
167
- }
168
- case MapContextLayerTypeEnum.GEOJSON: {
169
- if ('url' in layerModel) {
170
- return new VectorLayer({
171
- source: new VectorSource({
172
- format: new GeoJSON(),
173
- url: layerModel.url,
174
- }),
175
- style,
176
- });
177
- }
178
- else {
179
- let geojson = layerModel.data;
180
- if (typeof geojson === 'string') {
181
- try {
182
- geojson = JSON.parse(geojson);
183
- }
184
- catch (e) {
185
- console.warn('A layer could not be created', layerModel, e);
186
- geojson = { type: 'FeatureCollection', features: [] };
187
- }
188
- }
189
- const features = this.mapUtils.readFeatureCollection(geojson);
190
- return new VectorLayer({
191
- source: new VectorSource({
192
- features,
193
- }),
194
- style,
195
- });
196
- }
197
- }
198
- default:
199
- throw new Error(`Unrecognized layer type: ${layerModel.type}`);
200
- }
201
- }
202
- createView(viewModel, map) {
203
- const { center: centerInViewProj, zoom, maxZoom, maxExtent } = viewModel;
204
- const center = centerInViewProj
205
- ? fromLonLat(centerInViewProj, 'EPSG:3857')
206
- : [0, 0];
207
- const view = new View({
208
- center,
209
- zoom,
210
- maxZoom,
211
- extent: maxExtent,
212
- multiWorld: false,
213
- constrainResolution: true,
214
- });
215
- if (viewModel.extent && map) {
216
- view.fit(viewModel.extent, {
217
- size: map.getSize(),
218
- });
219
- }
220
- return view;
221
- }
222
- addDefaultBaselayerContext(layers) {
223
- return layers.includes(DEFAULT_BASELAYER_CONTEXT)
224
- ? layers
225
- : [DEFAULT_BASELAYER_CONTEXT, ...layers];
226
- }
227
- mergeMapConfigWithContext(mapContext, mapConfig) {
228
- return {
229
- ...mapContext,
230
- view: {
231
- ...mapContext.view,
232
- ...(mapConfig.MAX_ZOOM && {
233
- maxZoom: mapConfig.MAX_ZOOM,
234
- }),
235
- ...(mapConfig.MAX_EXTENT && {
236
- maxExtent: mapConfig.MAX_EXTENT,
237
- }),
238
- },
239
- layers: [
240
- ...(mapConfig.DO_NOT_USE_DEFAULT_BASEMAP
241
- ? []
242
- : [DEFAULT_BASELAYER_CONTEXT]),
243
- ...mapConfig.MAP_LAYERS.map(this.getContextLayerFromConfig),
244
- ...mapContext.layers,
245
- ],
246
- };
247
- }
248
- getFallbackView(mapConfig) {
249
- return mapConfig?.MAX_EXTENT
250
- ? { extent: mapConfig.MAX_EXTENT }
251
- : DEFAULT_VIEW;
252
- }
253
- getContextLayerFromConfig(config) {
254
- switch (config.TYPE) {
255
- case 'wms':
256
- return {
257
- type: 'wms',
258
- url: config.URL,
259
- name: config.NAME,
260
- };
261
- case 'wfs':
262
- return {
263
- type: 'wfs',
264
- url: config.URL,
265
- name: config.NAME,
266
- };
267
- case 'xyz':
268
- return {
269
- type: config.TYPE,
270
- url: config.URL,
271
- name: config.NAME,
272
- };
273
- case 'geojson':
274
- return {
275
- type: config.TYPE,
276
- ...(config.DATA ? { data: config.DATA } : { url: config.URL }),
277
- };
278
- }
279
- }
280
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapContextService, deps: [{ token: i1.MapUtilsService }, { token: i2.MapStyleService }], target: i0.ɵɵFactoryTarget.Injectable }); }
281
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapContextService, providedIn: 'root' }); }
282
- }
283
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapContextService, decorators: [{
284
- type: Injectable,
285
- args: [{
286
- providedIn: 'root',
287
- }]
288
- }], ctorParameters: function () { return [{ type: i1.MapUtilsService }, { type: i2.MapStyleService }]; } });
289
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLWNvbnRleHQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9tYXAtY29udGV4dC9tYXAtY29udGV4dC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQzVELE9BQU8sRUFFTCx1QkFBdUIsR0FJeEIsTUFBTSxxQkFBcUIsQ0FBQTtBQUU1QixPQUFPLElBQUksTUFBTSxTQUFTLENBQUE7QUFFMUIsT0FBTyxXQUFXLE1BQU0saUJBQWlCLENBQUE7QUFDekMsT0FBTyxPQUFPLE1BQU0sbUJBQW1CLENBQUE7QUFDdkMsT0FBTyxTQUFTLE1BQU0sZUFBZSxDQUFBO0FBQ3JDLE9BQU8sR0FBRyxNQUFNLGVBQWUsQ0FBQTtBQUMvQixPQUFPLFlBQVksTUFBTSxrQkFBa0IsQ0FBQTtBQUMzQyxPQUFPLE9BQU8sTUFBTSxtQkFBbUIsQ0FBQTtBQUN2QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUE7QUFDNUQsT0FBTyxFQUFFLElBQUksSUFBSSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUd6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFBO0FBQ3BDLE9BQU8sSUFBSSxNQUFNLGdCQUFnQixDQUFBO0FBR2pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDbEUsT0FBTyxhQUFhLE1BQU0sNEJBQTRCLENBQUE7QUFDdEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUMvQixPQUFPLGVBQWUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNqRCxPQUFPLFVBQVUsTUFBTSx5QkFBeUIsQ0FBQTtB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TUFBTSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUM7aUJBQy9ELENBQUE7U0FDSjtJQUNILENBQUM7K0dBdFFVLGlCQUFpQjttSEFBakIsaUJBQWlCLGNBRmhCLE1BQU07OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE1hcFN0eWxlU2VydmljZSB9IGZyb20gJy4uL3N0eWxlL21hcC1zdHlsZS5zZXJ2aWNlJ1xuaW1wb3J0IHtcbiAgTWFwQ29udGV4dExheWVyTW9kZWwsXG4gIE1hcENvbnRleHRMYXllclR5cGVFbnVtLFxuICBNYXBDb250ZXh0TGF5ZXJYeXpNb2RlbCxcbiAgTWFwQ29udGV4dE1vZGVsLFxuICBNYXBDb250ZXh0Vmlld01vZGVsLFxufSBmcm9tICcuL21hcC1jb250ZXh0Lm1vZGVsJ1xuaW1wb3J0IE1hcCBmcm9tICdvbC9NYXAnXG5pbXBvcnQgVmlldyBmcm9tICdvbC9WaWV3J1xuaW1wb3J0IExheWVyIGZyb20gJ29sL2xheWVyL0Jhc2UnXG5pbXBvcnQgVmVjdG9yTGF5ZXIgZnJvbSAnb2wvbGF5ZXIvVmVjdG9yJ1xuaW1wb3J0IFRpbGVXTVMgZnJvbSAnb2wvc291cmNlL1RpbGVXTVMnXG5pbXBvcnQgVGlsZUxheWVyIGZyb20gJ29sL2xheWVyL1RpbGUnXG5pbXBvcnQgWFlaIGZyb20gJ29sL3NvdXJjZS9YWVonXG5pbXBvcnQgVmVjdG9yU291cmNlIGZyb20gJ29sL3NvdXJjZS9WZWN0b3InXG5pbXBvcnQgR2VvSlNPTiBmcm9tICdvbC9mb3JtYXQvR2VvSlNPTidcbmltcG9ydCB7IE1hcFV0aWxzU2VydmljZSB9IGZyb20gJy4uL3V0aWxzL21hcC11dGlscy5zZXJ2aWNlJ1xuaW1wb3J0IHsgYmJveCBhcyBiYm94U3RyYXRlZ3kgfSBmcm9tICdvbC9sb2FkaW5nc3RyYXRlZ3knXG5pbXBvcnQgeyBMYXllckNvbmZpZywgTWFwQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2FwcC1jb25maWcvc3JjJ1xuaW1wb3J0IHsgRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICdnZW9qc29uJ1xuaW1wb3J0IHsgZnJvbUxvbkxhdCB9IGZyb20gJ29sL3Byb2onXG5pbXBvcnQgV01UUyBmcm9tICdvbC9zb3VyY2UvV01UUydcbmltcG9ydCB7IEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbSdcbmltcG9ydCBGZWF0dXJlIGZyb20gJ29sL0ZlYXR1cmUnXG5pbXBvcnQgeyBXZnNFbmRwb2ludCwgV210c0VuZHBvaW50IH0gZnJvbSAnQGNhbXB0b2NhbXAvb2djLWNsaWVudCdcbmltcG9ydCBPR0NWZWN0b3JUaWxlIGZyb20gJ29sL3NvdXJjZS9PR0NWZWN0b3JUaWxlLmpzJ1xuaW1wb3J0IHsgTVZUIH0gZnJvbSAnb2wvZm9ybWF0J1xuaW1wb3J0IFZlY3RvclRpbGVMYXllciBmcm9tICdvbC9sYXllci9WZWN0b3JUaWxlJ1xuaW1wb3J0IE9HQ01hcFRpbGUgZnJvbSAnb2wvc291cmNlL09HQ01hcFRpbGUuanMnXG5pbXBvcnQgSW1hZ2VMYXllciBmcm9tICdvbC9sYXllci9JbWFnZSdcbmltcG9ydCBJbWFnZVdNUyBmcm9tICdvbC9zb3VyY2UvSW1hZ2VXTVMnXG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0JBU0VMQVlFUl9DT05URVhUOiBNYXBDb250ZXh0TGF5ZXJYeXpNb2RlbCA9IHtcbiAgdHlwZTogTWFwQ29udGV4dExheWVyVHlwZUVudW0uWFlaLFxuICB1cmxzOiBbXG4gICAgYGh0dHBzOi8vYS5iYXNlbWFwcy5jYXJ0b2Nkbi5jb20vcmFzdGVydGlsZXMvdm95YWdlci97en0ve3h9L3t5fS5wbmdgLFxuICAgIGBodHRwczovL2IuYmFzZW1hcHMuY2FydG9jZG4uY29tL3Jhc3RlcnRpbGVzL3ZveWFnZXIve3p9L3t4fS97eX0ucG5nYCxcbiAgICBgaHR0cHM6Ly9jLmJhc2VtYXBzLmNhcnRvY2RuLmNvbS9yYXN0ZXJ0aWxlcy92b3lhZ2VyL3t6fS97eH0ve3l9LnBuZ2AsXG4gIF0sXG4gIGF0dHJpYnV0aW9uczogYDxzcGFuPsKpIDxhIGhyZWY9XCJodHRwOi8vd3d3Lm9wZW5zdHJlZXRtYXAub3JnL2NvcHlyaWdodFwiPk9wZW5TdHJlZXRNYXA8L2E+IGNvbnRyaWJ1dG9ycywgwqkgPGEgaHJlZj1cImh0dHBzOi8vY2FydG8uY29tL1wiPkNhcnRvPC9hPjwvc3Bhbj5gLFxufVxuXG5leHBvcnQgY29uc3QgREVGQVVMVF9WSUVXOiBNYXBDb250ZXh0Vmlld01vZGVsID0ge1xuICBjZW50ZXI6IFswLCAxNV0sXG4gIHpvb206IDIsXG59XG5cbmV4cG9ydCBjb25zdCBXRlNfTUFYX0ZFQVRVUkVTID0gMTAwMDBcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIE1hcENvbnRleHRTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBtYXBVdGlsczogTWFwVXRpbHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3R5bGVTZXJ2aWNlOiBNYXBTdHlsZVNlcnZpY2VcbiAgKSB7fVxuXG4gIHJlc2V0TWFwRnJvbUNvbnRleHQoXG4gICAgbWFwOiBNYXAsXG4gICAgbWFwQ29udGV4dDogTWFwQ29udGV4dE1vZGVsLFxuICAgIG1hcENvbmZpZz86IE1hcENvbmZpZ1xuICApOiBNYXAge1xuICAgIGlmIChtYXBDb25maWcpIHtcbiAgICAgIG1hcENvbnRleHQgPSB0aGlzLm1lcmdlTWFwQ29uZmlnV2l0aENvbnRleHQobWFwQ29udGV4dCwgbWFwQ29uZmlnKVxuICAgIH0gZWxzZSB7XG4gICAgICBtYXBDb250ZXh0LmxheWVycyA9IHRoaXMuYWRkRGVmYXVsdEJhc2VsYXllckNvbnRleHQobWFwQ29udGV4dC5sYXllcnMpXG4gICAgfVxuICAgIGlmIChcbiAgICAgICFtYXBDb250ZXh0LnZpZXc/LmV4dGVudCAmJlxuICAgICAgKCFtYXBDb250ZXh0LnZpZXc/LmNlbnRlciB8fCAhbWFwQ29udGV4dC52aWV3Py56b29tKVxuICAgICkge1xuICAgICAgbWFwQ29udGV4dC52aWV3ID0gdGhpcy5nZXRGYWxsYmFja1ZpZXcobWFwQ29uZmlnKVxuICAgIH1cbiAgICBtYXAuc2V0Vmlldyh0aGlzLmNyZWF0ZVZpZXcobWFwQ29udGV4dC52aWV3LCBtYXApKVxuICAgIG1hcC5nZXRMYXllcnMoKS5jbGVhcigpXG4gICAgbWFwQ29udGV4dC5sYXllcnMuZm9yRWFjaCgobGF5ZXIpID0+XG4gICAgICBtYXAuYWRkTGF5ZXIodGhpcy5jcmVhdGVMYXllcihsYXllciwgbWFwQ29uZmlnKSlcbiAgICApXG4gICAgcmV0dXJuIG1hcFxuICB9XG5cbiAgY3JlYXRlTGF5ZXIobGF5ZXJNb2RlbDogTWFwQ29udGV4dExheWVyTW9kZWwsIG1hcENvbmZpZz86IE1hcENvbmZpZyk6IExheWVyIHtcbiAgICBjb25zdCB7IHR5cGUgfSA9IGxheWVyTW9kZWxcbiAgICBjb25zdCBzdHlsZSA9IHRoaXMuc3R5bGVTZXJ2aWNlLnN0eWxlcy5kZWZhdWx0XG4gICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICBjYXNlIE1hcENvbnRleHRMYXllclR5cGVFbnVtLk9HQ0FQSTpcbiAgICAgICAgaWYgKGxheWVyTW9kZWwubGF5ZXJUeXBlID09PSAndmVjdG9yVGlsZXMnKSB7XG4gICAgICAgICAgcmV0dXJuIG5ldyBWZWN0b3JUaWxlTGF5ZXIoe1xuICAgICAgICAgICAgc291cmNlOiBuZXcgT0dDVmVjdG9yVGlsZSh7XG4gICAgICAgICAgICAgIHVybDogbGF5ZXJNb2RlbC51cmwsXG4gICAgICAgICAgICAgIGZvcm1hdDogbmV3IE1WVCgpLFxuICAgICAgICAgICAgICBhdHRyaWJ1dGlvbnM6IGxheWVyTW9kZWwuYXR0cmlidXRpb25zLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgfSlcbiAgICAgICAgfSBlbHNlIGlmIChsYXllck1vZGVsLmxheWVyVHlwZSA9PT0gJ21hcFRpbGVzJykge1xuICAgICAgICAgIHJldHVybiBuZXcgVGlsZUxheWVyKHtcbiAgICAgICAgICAgIHNvdXJjZTogbmV3IE9HQ01hcFRpbGUoe1xuICAgICAgICAgICAgICB1cmw6IGxheWVyTW9kZWwudXJsLFxuICAgICAgICAgICAgICBhdHRyaWJ1dGlvbnM6IGxheWVyTW9kZWwuYXR0cmlidXRpb25zLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgfSlcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gbmV3IFZlY3RvckxheWVyKHtcbiAgICAgICAgICAgIHNvdXJjZTogbmV3IFZlY3RvclNvdXJjZSh7XG4gICAgICAgICAgICAgIGZvcm1hdDogbmV3IEdlb0pTT04oKSxcbiAgICAgICAgICAgICAgdXJsOiBsYXllck1vZGVsLnVybCxcbiAgICAgICAgICAgICAgYXR0cmlidXRpb25zOiBsYXllck1vZGVsLmF0dHJpYnV0aW9ucyxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgc3R5bGUsXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgY2FzZSBNYXBDb250ZXh0TGF5ZXJUeXBlRW51bS5YWVo6XG4gICAgICAgIHJldHVybiBuZXcgVGlsZUxheWVyKHtcbiAgICAgICAgICBzb3VyY2U6IG5ldyBYWVooe1xuICAgICAgICAgICAgdXJsOiAndXJsJyBpbiBsYXllck1vZGVsID8gbGF5ZXJNb2RlbC51cmwgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICB1cmxzOiAndXJscycgaW4gbGF5ZXJNb2RlbCA/IGxheWVyTW9kZWwudXJscyA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGF0dHJpYnV0aW9uczogbGF5ZXJNb2RlbC5hdHRyaWJ1dGlvbnMsXG4gICAgICAgICAgfSksXG4gICAgICAgIH0pXG4gICAgICBjYXNlIE1hcENvbnRleHRMYXllclR5cGVFbnVtLldNUzpcbiAgICAgICAgaWYgKG1hcENvbmZpZz8uRE9fTk9UX1RJTEVfV01TKSB7XG4gICAgICAgICAgcmV0dXJuIG5ldyBJbWFnZUxheWVyKHtcbiAgICAgICAgICAgIHNvdXJjZTogbmV3IEltYWdlV01TKHtcbiAgICAgICAgICAgICAgdXJsOiBsYXllck1vZGVsLnVybCxcbiAgICAgICAgICAgICAgcGFyYW1zOiB7IExBWUVSUzogbGF5ZXJNb2RlbC5uYW1lIH0sXG4gICAgICAgICAgICAgIGF0dHJpYnV0aW9uczogbGF5ZXJNb2RlbC5hdHRyaWJ1dGlvbnMsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICB9KVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBuZXcgVGlsZUxheWVyKHtcbiAgICAgICAgICAgIHNvdXJjZTogbmV3IFRpbGVXTVMoe1xuICAgICAgICAgICAgICB1cmw6IGxheWVyTW9kZWwudXJsLFxuICAgICAgICAgICAgICBwYXJhbXM6IHsgTEFZRVJTOiBsYXllck1vZGVsLm5hbWUsIFRJTEVEOiB0cnVlIH0sXG4gICAgICAgICAgICAgIGF0dHJpYnV0aW9uczogbGF5ZXJNb2RlbC5hdHRyaWJ1dGlvbnMsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG5cbiAgICAgIGNhc2UgTWFwQ29udGV4dExheWVyVHlwZUVudW0uV01UUzoge1xuICAgICAgICAvLyBUT0RPOiBpc29sYXRlIHRoaXMgaW4gdXRpbHMgc2VydmljZVxuICAgICAgICBjb25zdCBvbExheWVyID0gbmV3IFRpbGVMYXllcih7fSlcbiAgICAgICAgY29uc3QgZW5kcG9pbnQgPSBuZXcgV210c0VuZHBvaW50KGxheWVyTW9kZWwudXJsKVxuICAgICAgICBlbmRwb2ludC5pc1JlYWR5KCkudGhlbihhc3luYyAoZW5kcG9pbnQpID0+IHtcbiAgICAgICAgICBjb25zdCBsYXllck5hbWUgPSBlbmRwb2ludC5nZXRTaW5nbGVMYXllck5hbWUoKSA/PyBsYXllck1vZGVsLm5hbWVcbiAgICAgICAgICBjb25zdCBsYXllciA9IGVuZHBvaW50LmdldExheWVyQnlOYW1lKGxheWVyTmFtZSlcbiAgICAgICAgICBjb25zdCBtYXRyaXhTZXQgPSBsYXllci5tYXRyaXhTZXRzWzBdXG4gICAgICAgICAgY29uc3QgdGlsZUdyaWQgPSBhd2FpdCBlbmRwb2ludC5nZXRPcGVuTGF5ZXJzVGlsZUdyaWQobGF5ZXIubmFtZSlcbiAgICAgICAgICBjb25zdCByZXNvdXJjZVVybCA9IGxheWVyLnJlc291cmNlTGlua3NbMF1cbiAgICAgICAgICBjb25zdCBkaW1lbnNpb25zID0gZW5kcG9pbnQuZ2V0RGVmYXVsdERpbWVuc2lvbnMobGF5ZXIubmFtZSlcbiAgICAgICAgICBvbExheWVyLnNldFNvdXJjZShcbiAgICAgICAgICAgIG5ldyBXTVRTKHtcbiAgICAgICAgICAgICAgbGF5ZXI6IGxheWVyLm5hbWUsXG4gICAgICAgICAgICAgIHN0eWxlOiBsYXllci5kZWZhdWx0U3R5bGUsXG4gICAgICAgICAgICAgIG1hdHJpeFNldDogbWF0cml4U2V0LmlkZW50aWZpZXIsXG4gICAgICAgICAgICAgIGZvcm1hdDogcmVzb3VyY2VVcmwuZm9ybWF0LFxuICAgICAgICAgICAgICB1cmw6IHJlc291cmNlVXJsLnVybCxcbiAgICAgICAgICAgICAgcmVxdWVzdEVuY29kaW5nOiByZXNvdXJjZVVybC5lbmNvZGluZyxcbiAgICAgICAgICAgICAgdGlsZUdyaWQsXG4gICAgICAgICAgICAgIHByb2plY3Rpb246IG1hdHJpeFNldC5jcnMsXG4gICAgICAgICAgICAgIGRpbWVuc2lvbnMsXG4gICAgICAgICAgICAgIGF0dHJpYnV0aW9uczogbGF5ZXJNb2RlbC5hdHRyaWJ1dGlvbnMsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuIG9sTGF5ZXJcbiAgICAgIH1cbiAgICAgIGNhc2UgTWFwQ29udGV4dExheWVyVHlwZUVudW0uV0ZTOiB7XG4gICAgICAgIGNvbnN0IG9sTGF5ZXIgPSBuZXcgVmVjdG9yTGF5ZXIoe1xuICAgICAgICAgIHN0eWxlLFxuICAgICAgICB9KVxuICAgICAgICBuZXcgV2ZzRW5kcG9pbnQobGF5ZXJNb2RlbC51cmwpLmlzUmVhZHkoKS50aGVuKChlbmRwb2ludCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGZlYXR1cmVUeXBlID1cbiAgICAgICAgICAgIGVuZHBvaW50LmdldFNpbmdsZUZlYXR1cmVUeXBlTmFtZSgpID8/IGxheWVyTW9kZWwubmFtZVxuICAgICAgICAgIG9sTGF5ZXIuc2V0U291cmNlKFxuICAgICAgICAgICAgbmV3IFZlY3RvclNvdXJjZSh7XG4gICAgICAgICAgICAgIGZvcm1hdDogbmV3IEdlb0pTT04oKSxcbiAgICAgICAgICAgICAgdXJsOiBmdW5jdGlvbiAoZXh0ZW50OiBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBlbmRwb2ludC5nZXRGZWF0dXJlVXJsKGZlYXR1cmVUeXBlLCB7XG4gICAgICAgICAgICAgICAgICBtYXhGZWF0dXJlczogV0ZTX01BWF9GRUFUVVJFUyxcbiAgICAgICAgICAgICAgICAgIGFzSnNvbjogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgIG91dHB1dENyczogJ0VQU0c6Mzg1NycsXG4gICAgICAgICAgICAgICAgICBleHRlbnQsXG4gICAgICAgICAgICAgICAgICBleHRlbnRDcnM6ICdFUFNHOjM4NTcnLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHN0cmF0ZWd5OiBiYm94U3RyYXRlZ3ksXG4gICAgICAgICAgICAgIGF0dHJpYnV0aW9uczogbGF5ZXJNb2RlbC5hdHRyaWJ1dGlvbnMsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuIG9sTGF5ZXJcbiAgICAgIH1cbiAgICAgIGNhc2UgTWFwQ29udGV4dExheWVyVHlwZUVudW0uR0VPSlNPTjoge1xuICAgICAgICBpZiAoJ3VybCcgaW4gbGF5ZXJNb2RlbCkge1xuICAgICAgICAgIHJldHVybiBuZXcgVmVjdG9yTGF5ZXIoe1xuICAgICAgICAgICAgc291cmNlOiBuZXcgVmVjdG9yU291cmNlKHtcbiAgICAgICAgICAgICAgZm9ybWF0OiBuZXcgR2VvSlNPTigpLFxuICAgICAgICAgICAgICB1cmw6IGxheWVyTW9kZWwudXJsLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBzdHlsZSxcbiAgICAgICAgICB9KVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxldCBnZW9qc29uID0gbGF5ZXJNb2RlbC5kYXRhXG4gICAgICAgICAgaWYgKHR5cGVvZiBnZW9qc29uID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgZ2VvanNvbiA9IEpTT04ucGFyc2UoZ2VvanNvbilcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgY29uc29sZS53YXJuKCdBIGxheWVyIGNvdWxkIG5vdCBiZSBjcmVhdGVkJywgbGF5ZXJNb2RlbCwgZSlcbiAgICAgICAgICAgICAgZ2VvanNvbiA9IHsgdHlwZTogJ0ZlYXR1cmVDb2xsZWN0aW9uJywgZmVhdHVyZXM6IFtdIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgY29uc3QgZmVhdHVyZXMgPSB0aGlzLm1hcFV0aWxzLnJlYWRGZWF0dXJlQ29sbGVjdGlvbihcbiAgICAgICAgICAgIGdlb2pzb24gYXMgRmVhdHVyZUNvbGxlY3Rpb25cbiAgICAgICAgICApIGFzIEZlYXR1cmU8R2VvbWV0cnk+W11cbiAgICAgICAgICByZXR1cm4gbmV3IFZlY3RvckxheWVyKHtcbiAgICAgICAgICAgIHNvdXJjZTogbmV3IFZlY3RvclNvdXJjZSh7XG4gICAgICAgICAgICAgIGZlYXR1cmVzLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBzdHlsZSxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVucmVjb2duaXplZCBsYXllciB0eXBlOiAke2xheWVyTW9kZWwudHlwZX1gKVxuICAgIH1cbiAgfVxuXG4gIGNyZWF0ZVZpZXcodmlld01vZGVsOiBNYXBDb250ZXh0Vmlld01vZGVsLCBtYXA/OiBNYXApOiBWaWV3IHtcbiAgICBjb25zdCB7IGNlbnRlcjogY2VudGVySW5WaWV3UHJvaiwgem9vbSwgbWF4Wm9vbSwgbWF4RXh0ZW50IH0gPSB2aWV3TW9kZWxcbiAgICBjb25zdCBjZW50ZXIgPSBjZW50ZXJJblZpZXdQcm9qXG4gICAgICA/IGZyb21Mb25MYXQoY2VudGVySW5WaWV3UHJvaiwgJ0VQU0c6Mzg1NycpXG4gICAgICA6IFswLCAwXVxuICAgIGNvbnN0IHZpZXcgPSBuZXcgVmlldyh7XG4gICAgICBjZW50ZXIsXG4gICAgICB6b29tLFxuICAgICAgbWF4Wm9vbSxcbiAgICAgIGV4dGVudDogbWF4RXh0ZW50LFxuICAgICAgbXVsdGlXb3JsZDogZmFsc2UsXG4gICAgICBjb25zdHJhaW5SZXNvbHV0aW9uOiB0cnVlLFxuICAgIH0pXG4gICAgaWYgKHZpZXdNb2RlbC5leHRlbnQgJiYgbWFwKSB7XG4gICAgICB2aWV3LmZpdCh2aWV3TW9kZWwuZXh0ZW50LCB7XG4gICAgICAgIHNpemU6IG1hcC5nZXRTaXplKCksXG4gICAgICB9KVxuICAgIH1cbiAgICByZXR1cm4gdmlld1xuICB9XG5cbiAgYWRkRGVmYXVsdEJhc2VsYXllckNvbnRleHQoXG4gICAgbGF5ZXJzOiBNYXBDb250ZXh0TGF5ZXJNb2RlbFtdXG4gICk6IE1hcENvbnRleHRMYXllck1vZGVsW10ge1xuICAgIHJldHVybiBsYXllcnMuaW5jbHVkZXMoREVGQVVMVF9CQVNFTEFZRVJfQ09OVEVYVClcbiAgICAgID8gbGF5ZXJzXG4gICAgICA6IFtERUZBVUxUX0JBU0VMQVlFUl9DT05URVhULCAuLi5sYXllcnNdXG4gIH1cblxuICBtZXJnZU1hcENvbmZpZ1dpdGhDb250ZXh0KFxuICAgIG1hcENvbnRleHQ6IE1hcENvbnRleHRNb2RlbCxcbiAgICBtYXBDb25maWc6IE1hcENvbmZpZ1xuICApOiBNYXBDb250ZXh0TW9kZWwge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5tYXBDb250ZXh0LFxuICAgICAgdmlldzoge1xuICAgICAgICAuLi5tYXBDb250ZXh0LnZpZXcsXG4gICAgICAgIC4uLihtYXBDb25maWcuTUFYX1pPT00gJiYge1xuICAgICAgICAgIG1heFpvb206IG1hcENvbmZpZy5NQVhfWk9PTSxcbiAgICAgICAgfSksXG4gICAgICAgIC4uLihtYXBDb25maWcuTUFYX0VYVEVOVCAmJiB7XG4gICAgICAgICAgbWF4RXh0ZW50OiBtYXBDb25maWcuTUFYX0VYVEVOVCxcbiAgICAgICAgfSksXG4gICAgICB9LFxuICAgICAgbGF5ZXJzOiBbXG4gICAgICAgIC4uLihtYXBDb25maWcuRE9fTk9UX1VTRV9ERUZBVUxUX0JBU0VNQVBcbiAgICAgICAgICA/IFtdXG4gICAgICAgICAgOiBbREVGQVVMVF9CQVNFTEFZRVJfQ09OVEVYVF0pLFxuICAgICAgICAuLi5tYXBDb25maWcuTUFQX0xBWUVSUy5tYXAodGhpcy5nZXRDb250ZXh0TGF5ZXJGcm9tQ29uZmlnKSxcbiAgICAgICAgLi4ubWFwQ29udGV4dC5sYXllcnMsXG4gICAgICBdLFxuICAgIH1cbiAgfVxuXG4gIGdldEZhbGxiYWNrVmlldyhtYXBDb25maWc6IE1hcENvbmZpZyk6IE1hcENvbnRleHRWaWV3TW9kZWwge1xuICAgIHJldHVybiBtYXBDb25maWc/Lk1BWF9FWFRFTlRcbiAgICAgID8geyBleHRlbnQ6IG1hcENvbmZpZy5NQVhfRVhURU5UIH1cbiAgICAgIDogREVGQVVMVF9WSUVXXG4gIH1cblxuICBnZXRDb250ZXh0TGF5ZXJGcm9tQ29uZmlnKGNvbmZpZzogTGF5ZXJDb25maWcpOiBNYXBDb250ZXh0TGF5ZXJNb2RlbCB7XG4gICAgc3dpdGNoIChjb25maWcuVFlQRSkge1xuICAgICAgY2FzZSAnd21zJzpcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB0eXBlOiAnd21zJyxcbiAgICAgICAgICB1cmw6IGNvbmZpZy5VUkwsXG4gICAgICAgICAgbmFtZTogY29uZmlnLk5BTUUsXG4gICAgICAgIH1cbiAgICAgIGNhc2UgJ3dmcyc6XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgdHlwZTogJ3dmcycsXG4gICAgICAgICAgdXJsOiBjb25maWcuVVJMLFxuICAgICAgICAgIG5hbWU6IGNvbmZpZy5OQU1FLFxuICAgICAgICB9XG4gICAgICBjYXNlICd4eXonOlxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHR5cGU6IGNvbmZpZy5UWVBFLFxuICAgICAgICAgIHVybDogY29uZmlnLlVSTCxcbiAgICAgICAgICBuYW1lOiBjb25maWcuTkFNRSxcbiAgICAgICAgfVxuICAgICAgY2FzZSAnZ2VvanNvbic6XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgdHlwZTogY29uZmlnLlRZUEUsXG4gICAgICAgICAgLi4uKGNvbmZpZy5EQVRBID8geyBkYXRhOiBjb25maWcuREFUQSB9IDogeyB1cmw6IGNvbmZpZy5VUkwgfSksXG4gICAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,39 +0,0 @@
1
- import { CdkDrag, CdkDragHandle, CdkDropList, moveItemInArray, } from '@angular/cdk/drag-drop';
2
- import { NgComponentOutlet, NgFor } from '@angular/common';
3
- import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
4
- import { MatIconModule } from '@angular/material/icon';
5
- import * as i0 from "@angular/core";
6
- export class SortableListComponent {
7
- constructor() {
8
- this.elementsChange = new EventEmitter();
9
- }
10
- drop(event) {
11
- moveItemInArray(this.elements, event.previousIndex, event.currentIndex);
12
- this.elementsChange.emit(this.elements);
13
- }
14
- removeElement(index) {
15
- this.elements = this.elements.filter((_, i) => i !== index);
16
- this.elementsChange.emit(this.elements);
17
- }
18
- trackByFn(index) {
19
- return index;
20
- }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SortableListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SortableListComponent, isStandalone: true, selector: "gn-ui-sortable-list", inputs: { elements: "elements" }, outputs: { elementsChange: "elementsChange" }, ngImport: i0, template: "<div\n cdkDropList\n class=\"sortable-list flex flex-col gap-3 p-2\"\n (cdkDropListDropped)=\"drop($event)\"\n>\n <ng-container\n *ngFor=\"let element of elements; index as index; trackBy: trackByFn\"\n >\n <div class=\"sortable-box bg-white flex items-center\" cdkDrag>\n <span\n cdkDragHandle\n class=\"material-symbols-outlined mx-[10px] cursor-grab gn-ui-icon-medium flex-none\"\n >\n drag_handle\n </span>\n <div class=\"flex-1\">\n <ng-container\n *ngComponentOutlet=\"element.component; inputs: element.inputs\"\n ></ng-container>\n </div>\n <span\n (click)=\"removeElement(index)\"\n class=\"material-symbols-outlined mx-[10px] cursor-pointer gn-ui-icon-medium flex-none\"\n >\n close\n </span>\n </div>\n </ng-container>\n</div>\n", styles: [".cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.sortable-list.cdk-drop-list-dragging .sortable-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "ngmodule", type: MatIconModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
23
- }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SortableListComponent, decorators: [{
25
- type: Component,
26
- args: [{ selector: 'gn-ui-sortable-list', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
27
- NgFor,
28
- NgComponentOutlet,
29
- CdkDropList,
30
- CdkDrag,
31
- CdkDragHandle,
32
- MatIconModule,
33
- ], template: "<div\n cdkDropList\n class=\"sortable-list flex flex-col gap-3 p-2\"\n (cdkDropListDropped)=\"drop($event)\"\n>\n <ng-container\n *ngFor=\"let element of elements; index as index; trackBy: trackByFn\"\n >\n <div class=\"sortable-box bg-white flex items-center\" cdkDrag>\n <span\n cdkDragHandle\n class=\"material-symbols-outlined mx-[10px] cursor-grab gn-ui-icon-medium flex-none\"\n >\n drag_handle\n </span>\n <div class=\"flex-1\">\n <ng-container\n *ngComponentOutlet=\"element.component; inputs: element.inputs\"\n ></ng-container>\n </div>\n <span\n (click)=\"removeElement(index)\"\n class=\"material-symbols-outlined mx-[10px] cursor-pointer gn-ui-icon-medium flex-none\"\n >\n close\n </span>\n </div>\n </ng-container>\n</div>\n", styles: [".cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.sortable-list.cdk-drop-list-dragging .sortable-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
34
- }], propDecorators: { elements: [{
35
- type: Input
36
- }], elementsChange: [{
37
- type: Output
38
- }] } });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydGFibGUtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvc29ydGFibGUtbGlzdC9zb3J0YWJsZS1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9zb3J0YWJsZS1saXN0L3NvcnRhYmxlLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLE9BQU8sRUFFUCxhQUFhLEVBQ2IsV0FBVyxFQUNYLGVBQWUsR0FDaEIsTUFBTSx3QkFBd0IsQ0FBQTtBQUMvQixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDMUQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBOztBQXNCdEQsTUFBTSxPQUFPLHFCQUFxQjtJQWZsQztRQWlCWSxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUF5QixDQUFBO0tBZXJFO0lBYkMsSUFBSSxDQUFDLEtBQTRCO1FBQy9CLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFBO1FBQ3ZFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUN6QyxDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQWE7UUFDekIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQTtRQUMzRCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDekMsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFhO1FBQ3JCLE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQzsrR0FoQlUscUJBQXFCO21HQUFyQixxQkFBcUIsZ0tDdENsQyw2MUJBNkJBLDZhRENJLEtBQUssbUhBQ0wsaUJBQWlCLG9QQUNqQixXQUFXLCtkQUNYLE9BQU8sd2JBQ1AsYUFBYSw4RkFDYixhQUFhOzs0RkFHSixxQkFBcUI7a0JBZmpDLFNBQVM7K0JBQ0UscUJBQXFCLG1CQUdkLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLEtBQUs7d0JBQ0wsaUJBQWlCO3dCQUNqQixXQUFXO3dCQUNYLE9BQU87d0JBQ1AsYUFBYTt3QkFDYixhQUFhO3FCQUNkOzhCQUdRLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksY0FBYztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENka0RyYWcsXG4gIENka0RyYWdEcm9wLFxuICBDZGtEcmFnSGFuZGxlLFxuICBDZGtEcm9wTGlzdCxcbiAgbW92ZUl0ZW1JbkFycmF5LFxufSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJ1xuaW1wb3J0IHsgTmdDb21wb25lbnRPdXRsZXQsIE5nRm9yIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBUeXBlLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nXG5cbmV4cG9ydCB0eXBlIER5bmFtaWNFbGVtZW50ID0ge1xuICBjb21wb25lbnQ6IFR5cGU8dW5rbm93bj5cbiAgaW5wdXRzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1zb3J0YWJsZS1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICdzb3J0YWJsZS1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ3NvcnRhYmxlLWxpc3QuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nRm9yLFxuICAgIE5nQ29tcG9uZW50T3V0bGV0LFxuICAgIENka0Ryb3BMaXN0LFxuICAgIENka0RyYWcsXG4gICAgQ2RrRHJhZ0hhbmRsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTb3J0YWJsZUxpc3RDb21wb25lbnQge1xuICBASW5wdXQoKSBlbGVtZW50czogQXJyYXk8RHluYW1pY0VsZW1lbnQ+XG4gIEBPdXRwdXQoKSBlbGVtZW50c0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8QXJyYXk8RHluYW1pY0VsZW1lbnQ+PigpXG5cbiAgZHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8c3RyaW5nW10+KSB7XG4gICAgbW92ZUl0ZW1JbkFycmF5KHRoaXMuZWxlbWVudHMsIGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleClcbiAgICB0aGlzLmVsZW1lbnRzQ2hhbmdlLmVtaXQodGhpcy5lbGVtZW50cylcbiAgfVxuXG4gIHJlbW92ZUVsZW1lbnQoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuZWxlbWVudHMgPSB0aGlzLmVsZW1lbnRzLmZpbHRlcigoXywgaSkgPT4gaSAhPT0gaW5kZXgpXG4gICAgdGhpcy5lbGVtZW50c0NoYW5nZS5lbWl0KHRoaXMuZWxlbWVudHMpXG4gIH1cblxuICB0cmFja0J5Rm4oaW5kZXg6IG51bWJlcikge1xuICAgIHJldHVybiBpbmRleFxuICB9XG59XG4iLCI8ZGl2XG4gIGNka0Ryb3BMaXN0XG4gIGNsYXNzPVwic29ydGFibGUtbGlzdCBmbGV4IGZsZXgtY29sIGdhcC0zIHAtMlwiXG4gIChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQpXCJcbj5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0Zvcj1cImxldCBlbGVtZW50IG9mIGVsZW1lbnRzOyBpbmRleCBhcyBpbmRleDsgdHJhY2tCeTogdHJhY2tCeUZuXCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJzb3J0YWJsZS1ib3ggYmctd2hpdGUgZmxleCBpdGVtcy1jZW50ZXJcIiBjZGtEcmFnPlxuICAgICAgPHNwYW5cbiAgICAgICAgY2RrRHJhZ0hhbmRsZVxuICAgICAgICBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgbXgtWzEwcHhdIGN1cnNvci1ncmFiIGduLXVpLWljb24tbWVkaXVtIGZsZXgtbm9uZVwiXG4gICAgICA+XG4gICAgICAgIGRyYWdfaGFuZGxlXG4gICAgICA8L3NwYW4+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleC0xXCI+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdDb21wb25lbnRPdXRsZXQ9XCJlbGVtZW50LmNvbXBvbmVudDsgaW5wdXRzOiBlbGVtZW50LmlucHV0c1wiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPHNwYW5cbiAgICAgICAgKGNsaWNrKT1cInJlbW92ZUVsZW1lbnQoaW5kZXgpXCJcbiAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIG14LVsxMHB4XSBjdXJzb3ItcG9pbnRlciBnbi11aS1pY29uLW1lZGl1bSBmbGV4LW5vbmVcIlxuICAgICAgPlxuICAgICAgICBjbG9zZVxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
@@ -1,40 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, ElementRef, Input, ViewChild, } from '@angular/core';
2
- import Map from 'ol/Map';
3
- import { fromEvent, merge, of, timer } from 'rxjs';
4
- import { delay, map, startWith, switchMap } from 'rxjs/operators';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
- import * as i2 from "@angular/material/icon";
8
- import * as i3 from "@ngx-translate/core";
9
- export class MapComponent {
10
- constructor(_element) {
11
- this._element = _element;
12
- this.resizeObserver = new ResizeObserver(() => {
13
- this.map.updateSize();
14
- this.resizeObserver.unobserve(this.container.nativeElement);
15
- });
16
- }
17
- ngOnInit() {
18
- // this will show the message when a 'mapmuted' event is received and hide it a few seconds later
19
- // 'movestart' and 'singleclick' will cancel displaying the message in particular for two finger interactions on mobile
20
- this.displayMessage$ = merge(fromEvent(this.map, 'mapmuted').pipe(map(() => true)), fromEvent(this.map, 'movestart').pipe(map(() => false)), fromEvent(this.map, 'singleclick').pipe(map(() => false))).pipe(switchMap((muted) => muted
21
- ? timer(2000).pipe(map(() => false), startWith(true), delay(400))
22
- : of(false)));
23
- }
24
- ngAfterViewInit() {
25
- this.map.setTarget(this.container.nativeElement);
26
- this.resizeObserver.observe(this.container.nativeElement);
27
- }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
29
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MapComponent, selector: "gn-ui-map", inputs: { map: "map" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["map"], descendants: true }], ngImport: i0, template: "<div class=\"h-full w-full\" #map></div>\n<div\n class=\"absolute inset-0 p-2 rounded z-40 transition-all flex flex-col justify-center items-center text-primary font-sans pointer-events-none\"\n [ngClass]=\"\n (displayMessage$ | async) ? 'visible opacity-100' : 'invisible opacity-0'\n \"\n>\n <div\n class=\"absolute z-[-1] inset-0 bg-gradient-to-b from-white to-primary-lightest opacity-60\"\n ></div>\n <mat-icon class=\"material-symbols-outlined !w-16 !h-16 text-[64px] mb-4\"\n >swipe</mat-icon\n >\n <p translate>map.navigation.message</p>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
30
- }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapComponent, decorators: [{
32
- type: Component,
33
- args: [{ selector: 'gn-ui-map', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"h-full w-full\" #map></div>\n<div\n class=\"absolute inset-0 p-2 rounded z-40 transition-all flex flex-col justify-center items-center text-primary font-sans pointer-events-none\"\n [ngClass]=\"\n (displayMessage$ | async) ? 'visible opacity-100' : 'invisible opacity-0'\n \"\n>\n <div\n class=\"absolute z-[-1] inset-0 bg-gradient-to-b from-white to-primary-lightest opacity-60\"\n ></div>\n <mat-icon class=\"material-symbols-outlined !w-16 !h-16 text-[64px] mb-4\"\n >swipe</mat-icon\n >\n <p translate>map.navigation.message</p>\n</div>\n" }]
34
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { map: [{
35
- type: Input
36
- }], container: [{
37
- type: ViewChild,
38
- args: ['map']
39
- }] } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbWFwL3NyYy9saWIvY29tcG9uZW50cy9tYXAvbWFwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbWFwL3NyYy9saWIvY29tcG9uZW50cy9tYXAvbWFwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sR0FBRyxNQUFNLFFBQVEsQ0FBQTtBQUN4QixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYyxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlELE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTs7Ozs7QUFRakUsTUFBTSxPQUFPLFlBQVk7SUFXdkIsWUFBb0IsUUFBb0I7UUFBcEIsYUFBUSxHQUFSLFFBQVEsQ0FBWTtRQVJ4QyxtQkFBYyxHQUFHLElBQUksY0FBYyxDQUFDLEdBQUcsRUFBRTtZQUN2QyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxDQUFBO1lBQ3JCLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDN0QsQ0FBQyxDQUFDLENBQUE7SUFLeUMsQ0FBQztJQUU1QyxRQUFRO1FBQ04saUdBQWlHO1FBQ2pHLHVIQUF1SDtRQUN2SCxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FDMUIsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUNyRCxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQ3ZELFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDMUQsQ0FBQyxJQUFJLENBQ0osU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDbEIsS0FBSztZQUNILENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUNkLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFDaEIsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUNmLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FDWDtZQUNILENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQ2QsQ0FDRixDQUFBO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFBO1FBQ2hELElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUE7SUFDM0QsQ0FBQzsrR0FwQ1UsWUFBWTttR0FBWixZQUFZLDJLQ25CekIsOGpCQWVBOzs0RkRJYSxZQUFZO2tCQU54QixTQUFTOytCQUNFLFdBQVcsbUJBR0osdUJBQXVCLENBQUMsTUFBTTtpR0FHdEMsR0FBRztzQkFBWCxLQUFLO2dCQUNZLFNBQVM7c0JBQTFCLFNBQVM7dUJBQUMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCBNYXAgZnJvbSAnb2wvTWFwJ1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBtZXJnZSwgT2JzZXJ2YWJsZSwgb2YsIHRpbWVyIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGRlbGF5LCBtYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLW1hcCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tYXAuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTWFwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgbWFwOiBNYXBcbiAgQFZpZXdDaGlsZCgnbWFwJykgY29udGFpbmVyOiBFbGVtZW50UmVmXG4gIHJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZU9ic2VydmVyKCgpID0+IHtcbiAgICB0aGlzLm1hcC51cGRhdGVTaXplKClcbiAgICB0aGlzLnJlc2l6ZU9ic2VydmVyLnVub2JzZXJ2ZSh0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50KVxuICB9KVxuICBtYXBNdXRlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj5cbiAgY2FuY2VsTWFwbXV0ZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+XG4gIGRpc3BsYXlNZXNzYWdlJDogT2JzZXJ2YWJsZTxib29sZWFuPlxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2VsZW1lbnQ6IEVsZW1lbnRSZWYpIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgLy8gdGhpcyB3aWxsIHNob3cgdGhlIG1lc3NhZ2Ugd2hlbiBhICdtYXBtdXRlZCcgZXZlbnQgaXMgcmVjZWl2ZWQgYW5kIGhpZGUgaXQgYSBmZXcgc2Vjb25kcyBsYXRlclxuICAgIC8vICdtb3Zlc3RhcnQnIGFuZCAnc2luZ2xlY2xpY2snIHdpbGwgY2FuY2VsIGRpc3BsYXlpbmcgdGhlIG1lc3NhZ2UgaW4gcGFydGljdWxhciBmb3IgdHdvIGZpbmdlciBpbnRlcmFjdGlvbnMgb24gbW9iaWxlXG4gICAgdGhpcy5kaXNwbGF5TWVzc2FnZSQgPSBtZXJnZShcbiAgICAgIGZyb21FdmVudCh0aGlzLm1hcCwgJ21hcG11dGVkJykucGlwZShtYXAoKCkgPT4gdHJ1ZSkpLFxuICAgICAgZnJvbUV2ZW50KHRoaXMubWFwLCAnbW92ZXN0YXJ0JykucGlwZShtYXAoKCkgPT4gZmFsc2UpKSxcbiAgICAgIGZyb21FdmVudCh0aGlzLm1hcCwgJ3NpbmdsZWNsaWNrJykucGlwZShtYXAoKCkgPT4gZmFsc2UpKVxuICAgICkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgobXV0ZWQpID0+XG4gICAgICAgIG11dGVkXG4gICAgICAgICAgPyB0aW1lcigyMDAwKS5waXBlKFxuICAgICAgICAgICAgICBtYXAoKCkgPT4gZmFsc2UpLFxuICAgICAgICAgICAgICBzdGFydFdpdGgodHJ1ZSksXG4gICAgICAgICAgICAgIGRlbGF5KDQwMClcbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IG9mKGZhbHNlKVxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLm1hcC5zZXRUYXJnZXQodGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudClcbiAgICB0aGlzLnJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudClcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImgtZnVsbCB3LWZ1bGxcIiAjbWFwPjwvZGl2PlxuPGRpdlxuICBjbGFzcz1cImFic29sdXRlIGluc2V0LTAgcC0yIHJvdW5kZWQgei00MCB0cmFuc2l0aW9uLWFsbCBmbGV4IGZsZXgtY29sIGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlciB0ZXh0LXByaW1hcnkgZm9udC1zYW5zIHBvaW50ZXItZXZlbnRzLW5vbmVcIlxuICBbbmdDbGFzc109XCJcbiAgICAoZGlzcGxheU1lc3NhZ2UkIHwgYXN5bmMpID8gJ3Zpc2libGUgb3BhY2l0eS0xMDAnIDogJ2ludmlzaWJsZSBvcGFjaXR5LTAnXG4gIFwiXG4+XG4gIDxkaXZcbiAgICBjbGFzcz1cImFic29sdXRlIHotWy0xXSBpbnNldC0wIGJnLWdyYWRpZW50LXRvLWIgZnJvbS13aGl0ZSB0by1wcmltYXJ5LWxpZ2h0ZXN0IG9wYWNpdHktNjBcIlxuICA+PC9kaXY+XG4gIDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgIXctMTYgIWgtMTYgdGV4dC1bNjRweF0gbWItNFwiXG4gICAgPnN3aXBlPC9tYXQtaWNvblxuICA+XG4gIDxwIHRyYW5zbGF0ZT5tYXAubmF2aWdhdGlvbi5tZXNzYWdlPC9wPlxuPC9kaXY+XG4iXX0=
@@ -1,33 +0,0 @@
1
- import { HttpClientModule } from '@angular/common/http';
2
- import { NgModule } from '@angular/core';
3
- import { CommonModule } from '@angular/common';
4
- import { MapComponent } from './components/map/map.component';
5
- import { FeatureDetailComponent } from './components/feature-detail/feature-detail.component';
6
- import { TranslateModule } from '@ngx-translate/core';
7
- import { MatIconModule } from '@angular/material/icon';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "@ngx-translate/core";
10
- export class UiMapModule {
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UiMapModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
12
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: UiMapModule, declarations: [MapComponent, FeatureDetailComponent], imports: [CommonModule,
13
- HttpClientModule,
14
- MatIconModule, i1.TranslateModule], exports: [MapComponent, FeatureDetailComponent] }); }
15
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UiMapModule, imports: [CommonModule,
16
- HttpClientModule,
17
- MatIconModule,
18
- TranslateModule.forChild()] }); }
19
- }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UiMapModule, decorators: [{
21
- type: NgModule,
22
- args: [{
23
- declarations: [MapComponent, FeatureDetailComponent],
24
- imports: [
25
- CommonModule,
26
- HttpClientModule,
27
- MatIconModule,
28
- TranslateModule.forChild(),
29
- ],
30
- exports: [MapComponent, FeatureDetailComponent],
31
- }]
32
- }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbWFwLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbWFwL3NyYy9saWIvdWktbWFwLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUN2RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFDN0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0RBQXNELENBQUE7QUFDN0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTs7O0FBWXRELE1BQU0sT0FBTyxXQUFXOytHQUFYLFdBQVc7Z0hBQVgsV0FBVyxpQkFUUCxZQUFZLEVBQUUsc0JBQXNCLGFBRWpELFlBQVk7WUFDWixnQkFBZ0I7WUFDaEIsYUFBYSxpQ0FHTCxZQUFZLEVBQUUsc0JBQXNCO2dIQUVuQyxXQUFXLFlBUHBCLFlBQVk7WUFDWixnQkFBZ0I7WUFDaEIsYUFBYTtZQUNiLGVBQWUsQ0FBQyxRQUFRLEVBQUU7OzRGQUlqQixXQUFXO2tCQVZ2QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLFlBQVksRUFBRSxzQkFBc0IsQ0FBQztvQkFDcEQsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLGVBQWUsQ0FBQyxRQUFRLEVBQUU7cUJBQzNCO29CQUNELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxzQkFBc0IsQ0FBQztpQkFDaEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBNYXBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWFwL21hcC5jb21wb25lbnQnXG5pbXBvcnQgeyBGZWF0dXJlRGV0YWlsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2ZlYXR1cmUtZGV0YWlsL2ZlYXR1cmUtZGV0YWlsLmNvbXBvbmVudCdcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTWFwQ29tcG9uZW50LCBGZWF0dXJlRGV0YWlsQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBIdHRwQ2xpZW50TW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLmZvckNoaWxkKCksXG4gIF0sXG4gIGV4cG9ydHM6IFtNYXBDb21wb25lbnQsIEZlYXR1cmVEZXRhaWxDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBVaU1hcE1vZHVsZSB7fVxuIl19
@@ -1,27 +0,0 @@
1
- import { EventEmitter } from '@angular/core';
2
- import { GraphicOverview } from '../../../../../../../libs/common/domain/src/lib/model/record';
3
- import { RecordsApiService } from '../../../../../../../libs/data-access/gn4/src';
4
- import { NotificationsService } from '../../../../../../../libs/feature/notifications/src';
5
- import { TranslateService } from '@ngx-translate/core';
6
- import * as i0 from "@angular/core";
7
- export declare class OverviewUploadComponent {
8
- private recordsApiService;
9
- private notificationsService;
10
- private translateService;
11
- metadataUuid: string;
12
- _overview: GraphicOverview | null;
13
- set overview(value: GraphicOverview | null);
14
- overviewChange: EventEmitter<GraphicOverview>;
15
- resourceUrl: string;
16
- resourceFileName: string;
17
- altText: string;
18
- constructor(recordsApiService: RecordsApiService, notificationsService: NotificationsService, translateService: TranslateService);
19
- handleFileChange(file: File): void;
20
- handleUrlChange(url: string): void;
21
- handleAltTextChange(newAltText: string): void;
22
- handleDelete(): void;
23
- private errorHandle;
24
- static ɵfac: i0.ɵɵFactoryDeclaration<OverviewUploadComponent, never>;
25
- static ɵcmp: i0.ɵɵComponentDeclaration<OverviewUploadComponent, "gn-ui-overview-upload", never, { "metadataUuid": { "alias": "metadataUuid"; "required": false; }; "overview": { "alias": "overview"; "required": false; }; }, { "overviewChange": "overviewChange"; }, never, never, true, never>;
26
- }
27
- //# sourceMappingURL=overview-upload.component.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"overview-upload.component.d.ts","sourceRoot":"","sources":["../../../../../../../src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,YAAY,EAGb,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,8DAA8D,CAAA;AAC9F,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAA;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAA;AAE1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;;AAEtD,qBAQa,uBAAuB;IAkChC,OAAO,CAAC,iBAAiB;IACzB,OAAO,CAAC,oBAAoB;IAC5B,OAAO,CAAC,gBAAgB;IAnCjB,YAAY,EAAE,MAAM,CAAA;IAC7B,SAAS,EAAE,eAAe,GAAG,IAAI,CAAA;IACjC,IACI,QAAQ,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,EAqBzC;IAES,cAAc,gCAA6C;IAErE,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;gBAGL,iBAAiB,EAAE,iBAAiB,EACpC,oBAAoB,EAAE,oBAAoB,EAC1C,gBAAgB,EAAE,gBAAgB;IAG5C,gBAAgB,CAAC,IAAI,EAAE,IAAI;IAc3B,eAAe,CAAC,GAAG,EAAE,MAAM;IAc3B,mBAAmB,CAAC,UAAU,EAAE,MAAM;IAOtC,YAAY;IAIZ,OAAO,CAAC,WAAW,CAWlB;yCAzFU,uBAAuB;2CAAvB,uBAAuB;CA0FnC"}
@@ -1,9 +0,0 @@
1
- import { EventEmitter } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export declare class FormFieldResourceUpdatedComponent {
4
- value: Date;
5
- valueChange: EventEmitter<Date>;
6
- static ɵfac: i0.ɵɵFactoryDeclaration<FormFieldResourceUpdatedComponent, never>;
7
- static ɵcmp: i0.ɵɵComponentDeclaration<FormFieldResourceUpdatedComponent, "gn-ui-form-field-resource-updated", never, { "value": { "alias": "value"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
8
- }
9
- //# sourceMappingURL=form-field-resource-updated.component.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"form-field-resource-updated.component.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,YAAY,EAGb,MAAM,eAAe,CAAA;;AAGtB,qBAQa,iCAAiC;IACnC,KAAK,EAAE,IAAI,CAAA;IACV,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,CAAqB;yCAFnD,iCAAiC;2CAAjC,iCAAiC;CAG7C"}
@@ -1,8 +0,0 @@
1
- import { FormControl } from '@angular/forms';
2
- import * as i0 from "@angular/core";
3
- export declare class FormFieldTemporalExtentsDateComponent {
4
- control: FormControl;
5
- static ɵfac: i0.ɵɵFactoryDeclaration<FormFieldTemporalExtentsDateComponent, never>;
6
- static ɵcmp: i0.ɵɵComponentDeclaration<FormFieldTemporalExtentsDateComponent, "gn-ui-form-field-temporal-extents-date", never, { "control": { "alias": "control"; "required": false; }; }, {}, never, never, true, never>;
7
- }
8
- //# sourceMappingURL=form-field-temporal-extents-date.component.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"form-field-temporal-extents-date.component.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;;AAI5C,qBAQa,qCAAqC;IACvC,OAAO,EAAG,WAAW,CAAA;yCADnB,qCAAqC;2CAArC,qCAAqC;CAEjD"}
@@ -1,8 +0,0 @@
1
- import { FormControl } from '@angular/forms';
2
- import * as i0 from "@angular/core";
3
- export declare class FormFieldTemporalExtentsRangeComponent {
4
- control: FormControl;
5
- static ɵfac: i0.ɵɵFactoryDeclaration<FormFieldTemporalExtentsRangeComponent, never>;
6
- static ɵcmp: i0.ɵɵComponentDeclaration<FormFieldTemporalExtentsRangeComponent, "gn-ui-form-field-temporal-extents-range", never, { "control": { "alias": "control"; "required": false; }; }, {}, never, never, true, never>;
7
- }
8
- //# sourceMappingURL=form-field-temporal-extents-range.component.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"form-field-temporal-extents-range.component.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;;AAI5C,qBAQa,sCAAsC;IACxC,OAAO,EAAG,WAAW,CAAA;yCADnB,sCAAsC;2CAAtC,sCAAsC;CAElD"}
@@ -1,9 +0,0 @@
1
- import { Actions } from '@ngrx/effects';
2
- import * as i0 from "@angular/core";
3
- export declare class MapEffects {
4
- private readonly actions$;
5
- constructor(actions$: Actions);
6
- static ɵfac: i0.ɵɵFactoryDeclaration<MapEffects, never>;
7
- static ɵprov: i0.ɵɵInjectableDeclaration<MapEffects>;
8
- }
9
- //# sourceMappingURL=map.effects.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"map.effects.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/feature/map/src/lib/+state/map.effects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;;AAEvC,qBACa,UAAU;IACT,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,OAAO;yCADnC,UAAU;6CAAV,UAAU;CAEtB"}
@@ -1,9 +0,0 @@
1
- import { MapContextLayerModel } from '../map-context/map-context.model';
2
- export type MapLayer = MapContextLayerModel & {
3
- title: string;
4
- };
5
- export type MapLayerWithInfo = MapLayer & {
6
- error: string | null;
7
- loading: boolean;
8
- };
9
- //# sourceMappingURL=map.models.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"map.models.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/feature/map/src/lib/+state/map.models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAA;AAEvE,MAAM,MAAM,QAAQ,GAAG,oBAAoB,GAAG;IAC5C,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AACD,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG;IACxC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA"}
@@ -1,9 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- import { StyleFunction } from 'ol/style/Style';
3
- export interface MapOptionsModel {
4
- defaultStyle: StyleFunction;
5
- hlStyle: StyleFunction;
6
- }
7
- export declare const defaultMapOptions: MapOptionsModel;
8
- export declare const FEATURE_MAP_OPTIONS: InjectionToken<MapOptionsModel>;
9
- //# sourceMappingURL=map-options.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"map-options.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/feature/map/src/lib/constant/map-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAG9C,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,aAAa,CAAA;IAC3B,OAAO,EAAE,aAAa,CAAA;CACvB;AAED,eAAO,MAAM,iBAAiB,EAAE,eAG/B,CAAA;AAED,eAAO,MAAM,mBAAmB,iCAE/B,CAAA"}
@@ -1,4 +0,0 @@
1
- import { StyleFunction } from 'ol/style/Style';
2
- export declare const defaultStyle: StyleFunction;
3
- export declare const hlStyle: StyleFunction;
4
- //# sourceMappingURL=style.constant.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"style.constant.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/feature/map/src/lib/constant/style.constant.ts"],"names":[],"mappings":"AACA,OAAc,EAAsB,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAEzE,eAAO,MAAM,YAAY,EAAE,aAAkC,CAAA;AAc7D,eAAO,MAAM,OAAO,EAAE,aAA8B,CAAA"}