geonetwork-ui 2.4.0-dev.fe59f179 → 2.4.1-dev.1d2ade24e

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 (1522) hide show
  1. package/README.md +1 -7
  2. package/esm2022/libs/api/metadata-converter/src/index.mjs +4 -1
  3. package/esm2022/libs/api/metadata-converter/src/lib/common/distribution.mapper.mjs +3 -1
  4. package/esm2022/libs/api/metadata-converter/src/lib/common/license.mjs +64 -0
  5. package/esm2022/libs/api/metadata-converter/src/lib/common/resource-types.mjs +38 -0
  6. package/esm2022/libs/api/metadata-converter/src/lib/common/url.mjs +14 -0
  7. package/esm2022/libs/api/metadata-converter/src/lib/convert-utils.mjs +1 -1
  8. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.mjs +270 -0
  9. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/index.mjs +2 -0
  10. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.mjs +17 -0
  11. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.mjs +227 -0
  12. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.mjs +57 -0
  13. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.mjs +96 -0
  14. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.mjs +2 -0
  15. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.mjs +47 -0
  16. package/esm2022/libs/api/metadata-converter/src/lib/find-converter.mjs +11 -1
  17. package/esm2022/libs/api/metadata-converter/src/lib/function-utils.mjs +1 -1
  18. package/esm2022/libs/api/metadata-converter/src/lib/gn4/atomic-operations.mjs +2 -1
  19. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.converter.mjs +10 -8
  20. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +44 -21
  21. package/esm2022/libs/api/metadata-converter/src/lib/gn4/metadata-url.service.mjs +5 -5
  22. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/elasticsearch.model.mjs +1 -1
  23. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.mjs +1 -1
  24. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
  25. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.mjs +14 -8
  26. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +39 -12
  27. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +58 -43
  28. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +156 -98
  29. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +143 -29
  30. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.mjs +31 -0
  31. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.mjs +1 -1
  32. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/role.mapper.mjs +1 -1
  33. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/status.mapper.mjs +1 -1
  34. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/update-frequency.mapper.mjs +6 -62
  35. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +198 -105
  36. package/esm2022/libs/api/metadata-converter/src/lib/xml-utils.mjs +118 -24
  37. package/esm2022/libs/api/repository/src/lib/gn4/auth/auth.service.mjs +36 -9
  38. package/esm2022/libs/api/repository/src/lib/gn4/auth/gravatar.service.mjs +5 -5
  39. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/date-range.utils.mjs +12 -0
  40. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +50 -25
  41. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/index.mjs +2 -1
  42. package/esm2022/libs/api/repository/src/lib/gn4/favorites/favorites.service.mjs +4 -4
  43. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +163 -39
  44. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.mjs +4 -4
  45. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +5 -5
  46. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.mjs +15 -5
  47. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +82 -10
  48. package/esm2022/libs/api/repository/src/lib/gn4/selection/selection.service.mjs +4 -4
  49. package/esm2022/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.mjs +4 -4
  50. package/esm2022/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.mjs +1 -1
  51. package/esm2022/libs/common/domain/src/lib/model/error/index.mjs +2 -0
  52. package/esm2022/libs/common/domain/src/lib/model/error/publication-version.error.mjs +8 -0
  53. package/esm2022/libs/common/domain/src/lib/model/record/contact.model.mjs +46 -19
  54. package/esm2022/libs/common/domain/src/lib/model/record/index.mjs +2 -1
  55. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +27 -1
  56. package/esm2022/libs/common/domain/src/lib/model/record/organization.model.mjs +1 -1
  57. package/esm2022/libs/common/domain/src/lib/model/record/translation.model.mjs +2 -0
  58. package/esm2022/libs/common/domain/src/lib/model/search/filter.model.mjs +1 -1
  59. package/esm2022/libs/common/domain/src/lib/model/search/sort-by.model.mjs +2 -1
  60. package/esm2022/libs/common/domain/src/lib/model/user/user.model.mjs +1 -1
  61. package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
  62. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  63. package/esm2022/libs/data-access/gn4/src/fixtures/site.fixtures.mjs +5 -5
  64. package/esm2022/libs/data-access/gn4/src/fixtures/ui.fixtures.mjs +3 -3
  65. package/esm2022/libs/data-access/gn4/src/openapi/api/atom.api.service.mjs +6 -6
  66. package/esm2022/libs/data-access/gn4/src/openapi/api/customstyle.api.service.mjs +6 -6
  67. package/esm2022/libs/data-access/gn4/src/openapi/api/formatters.api.service.mjs +6 -6
  68. package/esm2022/libs/data-access/gn4/src/openapi/api/groups.api.service.mjs +6 -6
  69. package/esm2022/libs/data-access/gn4/src/openapi/api/harvesters.api.service.mjs +6 -6
  70. package/esm2022/libs/data-access/gn4/src/openapi/api/identifiers.api.service.mjs +6 -6
  71. package/esm2022/libs/data-access/gn4/src/openapi/api/languages.api.service.mjs +6 -6
  72. package/esm2022/libs/data-access/gn4/src/openapi/api/links.api.service.mjs +6 -6
  73. package/esm2022/libs/data-access/gn4/src/openapi/api/logos.api.service.mjs +6 -6
  74. package/esm2022/libs/data-access/gn4/src/openapi/api/mapservers.api.service.mjs +6 -6
  75. package/esm2022/libs/data-access/gn4/src/openapi/api/mapservices.api.service.mjs +6 -6
  76. package/esm2022/libs/data-access/gn4/src/openapi/api/me.api.service.mjs +6 -6
  77. package/esm2022/libs/data-access/gn4/src/openapi/api/operations.api.service.mjs +6 -6
  78. package/esm2022/libs/data-access/gn4/src/openapi/api/pages.api.service.mjs +6 -6
  79. package/esm2022/libs/data-access/gn4/src/openapi/api/processes.api.service.mjs +6 -6
  80. package/esm2022/libs/data-access/gn4/src/openapi/api/records.api.service.mjs +13 -11
  81. package/esm2022/libs/data-access/gn4/src/openapi/api/regions.api.service.mjs +6 -6
  82. package/esm2022/libs/data-access/gn4/src/openapi/api/registries.api.service.mjs +6 -6
  83. package/esm2022/libs/data-access/gn4/src/openapi/api/related.api.service.mjs +6 -6
  84. package/esm2022/libs/data-access/gn4/src/openapi/api/search.api.service.mjs +6 -6
  85. package/esm2022/libs/data-access/gn4/src/openapi/api/selections.api.service.mjs +6 -6
  86. package/esm2022/libs/data-access/gn4/src/openapi/api/site.api.service.mjs +6 -6
  87. package/esm2022/libs/data-access/gn4/src/openapi/api/sources.api.service.mjs +6 -6
  88. package/esm2022/libs/data-access/gn4/src/openapi/api/standards.api.service.mjs +6 -6
  89. package/esm2022/libs/data-access/gn4/src/openapi/api/status.api.service.mjs +6 -6
  90. package/esm2022/libs/data-access/gn4/src/openapi/api/tags.api.service.mjs +6 -6
  91. package/esm2022/libs/data-access/gn4/src/openapi/api/tools.api.service.mjs +6 -6
  92. package/esm2022/libs/data-access/gn4/src/openapi/api/ui.api.service.mjs +6 -6
  93. package/esm2022/libs/data-access/gn4/src/openapi/api/userfeedback.api.service.mjs +6 -6
  94. package/esm2022/libs/data-access/gn4/src/openapi/api/users.api.service.mjs +6 -6
  95. package/esm2022/libs/data-access/gn4/src/openapi/api/usersearches.api.service.mjs +6 -6
  96. package/esm2022/libs/data-access/gn4/src/openapi/api/userselections.api.service.mjs +6 -6
  97. package/esm2022/libs/data-access/gn4/src/openapi/api.module.mjs +7 -7
  98. package/esm2022/libs/data-access/gn4/src/openapi/configuration.mjs +1 -1
  99. package/esm2022/libs/feature/auth/src/lib/feature-auth.module.mjs +4 -4
  100. package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +17 -21
  101. package/esm2022/libs/feature/catalog/src/lib/my-org/my-org.service.mjs +4 -4
  102. package/esm2022/libs/feature/catalog/src/lib/organisations/organisations.component.mjs +41 -16
  103. package/esm2022/libs/feature/catalog/src/lib/records/records.service.mjs +4 -4
  104. package/esm2022/libs/feature/catalog/src/lib/site-title/site-title.component.mjs +6 -6
  105. package/esm2022/libs/feature/catalog/src/lib/source-label/source-label.component.mjs +5 -5
  106. package/esm2022/libs/feature/catalog/src/lib/sources/sources.service.mjs +4 -4
  107. package/esm2022/libs/feature/dataviz/src/index.mjs +1 -2
  108. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +18 -11
  109. package/esm2022/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.mjs +7 -6
  110. package/esm2022/libs/feature/dataviz/src/lib/figure/figure.service.mjs +4 -4
  111. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +38 -51
  112. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +20 -9
  113. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +16 -10
  114. package/esm2022/libs/feature/editor/src/index.mjs +2 -1
  115. package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +8 -1
  116. package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +38 -12
  117. package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +34 -8
  118. package/esm2022/libs/feature/editor/src/lib/+state/editor.models.mjs +1 -1
  119. package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +40 -6
  120. package/esm2022/libs/feature/editor/src/lib/+state/editor.selectors.mjs +19 -7
  121. package/esm2022/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.mjs +68 -0
  122. package/esm2022/libs/feature/editor/src/lib/components/contact-card/contact-card.component.mjs +16 -0
  123. package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +88 -0
  124. package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +113 -0
  125. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +85 -0
  126. package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +179 -0
  127. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-array/form-field-array.component.mjs +3 -3
  128. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.mjs +76 -0
  129. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/constraints.utils.mjs +35 -0
  130. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.mjs +130 -0
  131. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.mjs +109 -0
  132. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.mjs +157 -0
  133. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date/form-field-date.component.mjs +19 -0
  134. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-file/form-field-file.component.mjs +5 -5
  135. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +32 -41
  136. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.mjs +47 -51
  137. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +79 -0
  138. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-object/form-field-object.component.mjs +3 -3
  139. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.mjs +152 -0
  140. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.mjs +201 -0
  141. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.mjs +44 -0
  142. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.mjs +104 -0
  143. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.mjs +14 -18
  144. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.mjs +12 -30
  145. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +117 -6
  146. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-toggle/form-field-spatial-toggle.component.mjs +44 -0
  147. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +53 -70
  148. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +50 -72
  149. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +71 -49
  150. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +2 -3
  151. package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +16 -10
  152. package/esm2022/libs/feature/editor/src/lib/components/wizard/wizard.component.mjs +6 -6
  153. package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +12 -12
  154. package/esm2022/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.mjs +5 -5
  155. package/esm2022/libs/feature/editor/src/lib/expressions.mjs +1 -1
  156. package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +10 -8
  157. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +275 -57
  158. package/esm2022/libs/feature/editor/src/lib/models/editor-config.model.mjs +2 -0
  159. package/esm2022/libs/feature/editor/src/lib/models/index.mjs +2 -1
  160. package/esm2022/libs/feature/editor/src/lib/services/editor.service.mjs +26 -13
  161. package/esm2022/libs/feature/editor/src/lib/services/wizard.service.mjs +5 -5
  162. package/esm2022/libs/feature/map/src/index.mjs +2 -9
  163. package/esm2022/libs/feature/map/src/lib/+state/map.actions.mjs +4 -7
  164. package/esm2022/libs/feature/map/src/lib/+state/map.facade.mjs +13 -19
  165. package/esm2022/libs/feature/map/src/lib/+state/map.reducer.mjs +13 -44
  166. package/esm2022/libs/feature/map/src/lib/+state/map.selectors.mjs +3 -2
  167. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +9 -9
  168. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.mjs +21 -20
  169. package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +26 -17
  170. package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +18 -17
  171. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +21 -16
  172. package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +19 -14
  173. package/esm2022/libs/feature/map/src/lib/constant/index.mjs +1 -2
  174. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +12 -75
  175. package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +44 -30
  176. package/esm2022/libs/feature/map/src/lib/geocoding.service.mjs +6 -6
  177. package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +65 -22
  178. package/esm2022/libs/feature/map/src/lib/map-state-container/map-state-container.component.mjs +27 -0
  179. package/esm2022/libs/feature/map/src/lib/style/map-style.fixtures.mjs +3 -3
  180. package/esm2022/libs/feature/map/src/lib/style/map-style.service.mjs +4 -4
  181. package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +14 -173
  182. package/esm2022/libs/feature/notifications/src/lib/feature-notifications.module.mjs +4 -4
  183. package/esm2022/libs/feature/notifications/src/lib/notifications-container/notifications-container.component.mjs +4 -4
  184. package/esm2022/libs/feature/notifications/src/lib/notifications.service.mjs +6 -5
  185. package/esm2022/libs/feature/record/src/index.mjs +4 -1
  186. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +17 -10
  187. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +51 -30
  188. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +27 -11
  189. package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +59 -23
  190. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +28 -22
  191. package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +24 -51
  192. package/esm2022/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.mjs +169 -0
  193. package/esm2022/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.mjs +45 -0
  194. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +81 -57
  195. package/esm2022/libs/feature/record/src/lib/record-meta/record-meta.component.mjs +45 -0
  196. package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +5 -5
  197. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +17 -7
  198. package/esm2022/libs/feature/router/src/lib/default/constants.mjs +1 -1
  199. package/esm2022/libs/feature/router/src/lib/default/container/search-router.container.directive.mjs +6 -6
  200. package/esm2022/libs/feature/router/src/lib/default/router.module.mjs +5 -5
  201. package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +5 -5
  202. package/esm2022/libs/feature/router/src/lib/default/services/router-search.service.mjs +4 -4
  203. package/esm2022/libs/feature/router/src/lib/default/state/query-params.utils.mjs +50 -0
  204. package/esm2022/libs/feature/router/src/lib/default/state/router.effects.mjs +8 -8
  205. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +9 -8
  206. package/esm2022/libs/feature/search/src/index.mjs +3 -1
  207. package/esm2022/libs/feature/search/src/lib/constants.mjs +2 -2
  208. package/esm2022/libs/feature/search/src/lib/facets/facets-container/facets-container.component.mjs +4 -4
  209. package/esm2022/libs/feature/search/src/lib/facets/facets.module.mjs +4 -4
  210. package/esm2022/libs/feature/search/src/lib/facets/facets.service.mjs +5 -5
  211. package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +7 -7
  212. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +22 -19
  213. package/esm2022/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.mjs +30 -8
  214. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +6 -6
  215. package/esm2022/libs/feature/search/src/lib/records-metrics/records-metrics.component.mjs +5 -5
  216. package/esm2022/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.mjs +4 -4
  217. package/esm2022/libs/feature/search/src/lib/results-layout/results-layout.component.mjs +5 -5
  218. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +15 -10
  219. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +54 -10
  220. package/esm2022/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.mjs +67 -0
  221. package/esm2022/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.mjs +84 -0
  222. package/esm2022/libs/feature/search/src/lib/sort-by/sort-by.component.mjs +9 -5
  223. package/esm2022/libs/feature/search/src/lib/state/actions.mjs +1 -1
  224. package/esm2022/libs/feature/search/src/lib/state/container/search-state.container.directive.mjs +6 -6
  225. package/esm2022/libs/feature/search/src/lib/state/effects.mjs +6 -6
  226. package/esm2022/libs/feature/search/src/lib/state/reducer.mjs +1 -1
  227. package/esm2022/libs/feature/search/src/lib/state/search.facade.mjs +12 -10
  228. package/esm2022/libs/feature/search/src/lib/state/selectors.mjs +1 -9
  229. package/esm2022/libs/feature/search/src/lib/utils/operators/search.operator.mjs +1 -1
  230. package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +63 -8
  231. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +19 -8
  232. package/esm2022/libs/feature/search/src/lib/utils/service/search.service.mjs +4 -4
  233. package/esm2022/libs/ui/catalog/src/index.mjs +1 -2
  234. package/esm2022/libs/ui/catalog/src/lib/catalog-title/catalog-title.component.mjs +6 -5
  235. package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +15 -19
  236. package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +17 -7
  237. package/esm2022/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.mjs +9 -9
  238. package/esm2022/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.mjs +6 -5
  239. package/esm2022/libs/ui/dataviz/src/lib/chart/chart.component.mjs +6 -6
  240. package/esm2022/libs/ui/dataviz/src/lib/figure/figure.component.mjs +7 -7
  241. package/esm2022/libs/ui/dataviz/src/lib/table/table.component.mjs +6 -6
  242. package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +3 -3
  243. package/esm2022/libs/ui/dataviz/src/lib/ui-dataviz.module.mjs +33 -7
  244. package/esm2022/libs/ui/elements/src/index.mjs +4 -4
  245. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +28 -9
  246. package/esm2022/libs/ui/elements/src/lib/avatar/avatar.component.mjs +3 -3
  247. package/esm2022/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.mjs +27 -0
  248. package/esm2022/libs/ui/elements/src/lib/content-ghost/content-ghost.component.mjs +6 -5
  249. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +20 -9
  250. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +40 -12
  251. package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +25 -7
  252. package/esm2022/libs/ui/elements/src/lib/image-input/image-input.component.mjs +213 -0
  253. package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +17 -9
  254. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +18 -8
  255. package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +8 -9
  256. package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +7 -5
  257. package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +7 -6
  258. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +28 -8
  259. package/esm2022/libs/ui/elements/src/lib/metadata-info/linkify.directive.mjs +7 -6
  260. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +43 -15
  261. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +16 -15
  262. package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +10 -8
  263. package/esm2022/libs/ui/elements/src/lib/notification/notification.component.mjs +38 -7
  264. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +40 -35
  265. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +20 -11
  266. package/esm2022/libs/ui/elements/src/lib/thumbnail/thumbnail.component.mjs +6 -6
  267. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +40 -106
  268. package/esm2022/libs/ui/elements/src/lib/user-feedback-item/time-since.pipe.mjs +6 -6
  269. package/esm2022/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.mjs +29 -11
  270. package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +5 -5
  271. package/esm2022/libs/ui/inputs/src/index.mjs +6 -2
  272. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +53 -18
  273. package/esm2022/libs/ui/inputs/src/lib/badge/badge.component.mjs +21 -5
  274. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +12 -4
  275. package/esm2022/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.mjs +7 -7
  276. package/esm2022/libs/ui/inputs/src/lib/checkbox/checkbox.component.mjs +3 -3
  277. package/esm2022/libs/ui/inputs/src/lib/chips-input/chips-input.component.mjs +5 -5
  278. package/esm2022/libs/ui/inputs/src/lib/copy-text-button/copy-text-button.component.mjs +10 -7
  279. package/esm2022/libs/ui/inputs/src/lib/date-picker/date-picker.component.mjs +23 -6
  280. package/esm2022/libs/ui/inputs/src/lib/date-range-dropdown/date-range-dropdown.component.mjs +65 -0
  281. package/esm2022/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.mjs +24 -8
  282. package/esm2022/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.mjs +3 -3
  283. package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +8 -8
  284. package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +25 -9
  285. package/esm2022/libs/ui/inputs/src/lib/editable-label/editable-label.directive.mjs +28 -26
  286. package/esm2022/libs/ui/inputs/src/lib/file-input/file-input.component.mjs +108 -0
  287. package/esm2022/libs/ui/inputs/src/lib/files-drop/files-drop.directive.mjs +4 -4
  288. package/esm2022/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.mjs +7 -7
  289. package/esm2022/libs/ui/inputs/src/lib/search-input/search-input.component.mjs +19 -7
  290. package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +8 -6
  291. package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +37 -0
  292. package/esm2022/libs/ui/inputs/src/lib/text-area/text-area.component.mjs +9 -23
  293. package/esm2022/libs/ui/inputs/src/lib/text-input/text-input.component.mjs +8 -19
  294. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +49 -59
  295. package/esm2022/libs/ui/inputs/src/lib/url-input/url-input.component.mjs +93 -0
  296. package/esm2022/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.mjs +5 -5
  297. package/esm2022/libs/ui/layout/src/index.mjs +8 -1
  298. package/esm2022/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.mjs +5 -5
  299. package/esm2022/libs/ui/layout/src/lib/block-list/block-list.component.mjs +20 -15
  300. package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +27 -22
  301. package/esm2022/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.mjs +9 -7
  302. package/esm2022/libs/ui/layout/src/lib/expandable-panel-button/expandable-panel-button.component.mjs +8 -6
  303. package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +9 -6
  304. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.mjs +6 -4
  305. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +17 -8
  306. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +6 -6
  307. package/esm2022/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.mjs +29 -0
  308. package/esm2022/libs/ui/layout/src/lib/paginable.interface.mjs +2 -0
  309. package/esm2022/libs/ui/layout/src/lib/pagination/pagination.component.mjs +52 -0
  310. package/esm2022/libs/ui/layout/src/lib/pagination-buttons/pagination-buttons.component.mjs +52 -0
  311. package/esm2022/libs/ui/layout/src/lib/pagination-dots/pagination-dots.component.mjs +36 -0
  312. package/esm2022/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +26 -0
  313. package/esm2022/libs/ui/layout/src/lib/sortable-list/sortable-list.component.mjs +35 -0
  314. package/esm2022/libs/ui/layout/src/lib/sticky-header/sticky-header.component.mjs +6 -6
  315. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +17 -26
  316. package/esm2022/libs/ui/map/src/index.mjs +5 -3
  317. package/esm2022/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.mjs +10 -8
  318. package/esm2022/libs/ui/map/src/lib/components/map-container/map-container.component.mjs +147 -0
  319. package/esm2022/libs/ui/map/src/lib/components/map-container/map-settings.token.mjs +13 -0
  320. package/esm2022/libs/ui/map/src/lib/components/map-legend/map-legend.component.mjs +32 -0
  321. package/esm2022/libs/ui/map/src/lib/map-utils.mjs +37 -0
  322. package/esm2022/libs/ui/search/src/lib/facets/facet-block/facet-block.component.mjs +7 -7
  323. package/esm2022/libs/ui/search/src/lib/facets/facet-item/facet-item.component.mjs +6 -6
  324. package/esm2022/libs/ui/search/src/lib/facets/facet-list/facet-list.component.mjs +3 -3
  325. package/esm2022/libs/ui/search/src/lib/facets/facets.module.mjs +4 -4
  326. package/esm2022/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.mjs +7 -7
  327. package/esm2022/libs/ui/search/src/lib/record-metric/record-metric.component.mjs +3 -3
  328. package/esm2022/libs/ui/search/src/lib/record-preview/record-preview.component.mjs +5 -5
  329. package/esm2022/libs/ui/search/src/lib/record-preview-card/record-preview-card.component.mjs +3 -3
  330. package/esm2022/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.mjs +8 -7
  331. package/esm2022/libs/ui/search/src/lib/record-preview-list/record-preview-list.component.mjs +3 -3
  332. package/esm2022/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.mjs +10 -9
  333. package/esm2022/libs/ui/search/src/lib/record-preview-text/record-preview-text.component.mjs +3 -3
  334. package/esm2022/libs/ui/search/src/lib/record-preview-title/record-preview-title.component.mjs +3 -3
  335. package/esm2022/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.mjs +3 -3
  336. package/esm2022/libs/ui/search/src/lib/results-list/results-layout.config.mjs +1 -1
  337. package/esm2022/libs/ui/search/src/lib/results-list/results-list.component.mjs +3 -3
  338. package/esm2022/libs/ui/search/src/lib/results-list-item/results-list-item.component.mjs +5 -5
  339. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +59 -0
  340. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +103 -41
  341. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +34 -12
  342. package/esm2022/libs/ui/widgets/src/index.mjs +2 -1
  343. package/esm2022/libs/ui/widgets/src/lib/color-scale/color-scale.component.mjs +3 -3
  344. package/esm2022/libs/ui/widgets/src/lib/loading-mask/loading-mask.component.mjs +7 -6
  345. package/esm2022/libs/ui/widgets/src/lib/popover/popover.component.mjs +68 -0
  346. package/esm2022/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.mjs +8 -8
  347. package/esm2022/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.mjs +5 -5
  348. package/esm2022/libs/ui/widgets/src/lib/spinning-loader/spinning-loader.component.mjs +5 -5
  349. package/esm2022/libs/ui/widgets/src/lib/step-bar/step-bar.component.mjs +5 -5
  350. package/esm2022/libs/ui/widgets/src/lib/ui-widgets.module.mjs +9 -34
  351. package/esm2022/libs/util/app-config/src/index.mjs +2 -1
  352. package/esm2022/libs/util/app-config/src/lib/app-config.mjs +9 -2
  353. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +11 -10
  354. package/esm2022/libs/util/app-config/src/lib/map-layers.mjs +33 -0
  355. package/esm2022/libs/util/app-config/src/lib/model.mjs +1 -1
  356. package/esm2022/libs/util/app-config/src/lib/parse-utils.mjs +1 -1
  357. package/esm2022/libs/util/data-fetcher/src/lib/data-fetcher.mjs +1 -1
  358. package/esm2022/libs/util/data-fetcher/src/lib/headers.mjs +1 -1
  359. package/esm2022/libs/util/data-fetcher/src/lib/model.mjs +3 -3
  360. package/esm2022/libs/util/data-fetcher/src/lib/readers/base-file.mjs +1 -1
  361. package/esm2022/libs/util/data-fetcher/src/lib/readers/csv.mjs +1 -1
  362. package/esm2022/libs/util/data-fetcher/src/lib/readers/excel.mjs +1 -1
  363. package/esm2022/libs/util/data-fetcher/src/lib/readers/geojson.mjs +1 -1
  364. package/esm2022/libs/util/data-fetcher/src/lib/readers/gml.mjs +1 -1
  365. package/esm2022/libs/util/data-fetcher/src/lib/readers/json.mjs +1 -1
  366. package/esm2022/libs/util/data-fetcher/src/lib/sql-utils.mjs +1 -1
  367. package/esm2022/libs/util/data-fetcher/src/lib/utils.mjs +13 -11
  368. package/esm2022/libs/util/i18n/src/index.mjs +2 -1
  369. package/esm2022/libs/util/i18n/src/lib/i18n.constants.mjs +1 -38
  370. package/esm2022/libs/util/i18n/src/lib/i18n.interceptor.mjs +4 -4
  371. package/esm2022/libs/util/i18n/src/lib/lang.service.mjs +6 -6
  372. package/esm2022/libs/util/i18n/src/lib/language-codes.mjs +40 -0
  373. package/esm2022/libs/util/i18n/src/lib/util-i18n.module.mjs +6 -6
  374. package/esm2022/libs/util/shared/src/lib/image-fallback.directive.mjs +5 -5
  375. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +6 -4
  376. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +53 -17
  377. package/esm2022/libs/util/shared/src/lib/services/log.service.mjs +3 -3
  378. package/esm2022/libs/util/shared/src/lib/services/proxy.service.mjs +12 -9
  379. package/esm2022/libs/util/shared/src/lib/services/theme.service.mjs +5 -4
  380. package/esm2022/libs/util/shared/src/lib/util-shared.module.mjs +4 -4
  381. package/esm2022/libs/util/shared/src/lib/utils/bytes-convert.mjs +4 -1
  382. package/esm2022/libs/util/shared/src/lib/utils/format-fields.mjs +9 -0
  383. package/esm2022/libs/util/shared/src/lib/utils/geojson.mjs +1 -1
  384. package/esm2022/libs/util/shared/src/lib/utils/image-resize.mjs +1 -1
  385. package/esm2022/libs/util/shared/src/lib/utils/index.mjs +3 -1
  386. package/esm2022/libs/util/shared/src/lib/utils/no-duplicate-file-name.mjs +19 -0
  387. package/esm2022/libs/util/shared/src/lib/utils/parse.mjs +1 -1
  388. package/esm2022/libs/util/shared/src/lib/utils/temporal-extent-union.mjs +1 -1
  389. package/esm2022/libs/util/shared/src/lib/utils/url.mjs +1 -1
  390. package/esm2022/translations/de.json +224 -49
  391. package/esm2022/translations/en.json +252 -80
  392. package/esm2022/translations/es.json +202 -27
  393. package/esm2022/translations/fr.json +278 -106
  394. package/esm2022/translations/it.json +273 -96
  395. package/esm2022/translations/nl.json +202 -27
  396. package/esm2022/translations/pt.json +202 -27
  397. package/fesm2022/geonetwork-ui.mjs +13662 -8015
  398. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  399. package/libs/api/metadata-converter/src/index.d.ts +3 -0
  400. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  401. package/libs/api/metadata-converter/src/lib/common/distribution.mapper.d.ts.map +1 -1
  402. package/libs/api/metadata-converter/src/lib/common/license.d.ts +3 -0
  403. package/libs/api/metadata-converter/src/lib/common/license.d.ts.map +1 -0
  404. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts +5 -0
  405. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts.map +1 -0
  406. package/libs/api/metadata-converter/src/lib/common/url.d.ts +7 -0
  407. package/libs/api/metadata-converter/src/lib/common/url.d.ts.map +1 -0
  408. package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts +13 -0
  409. package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts.map +1 -0
  410. package/libs/api/metadata-converter/src/lib/dcat-ap/index.d.ts +2 -0
  411. package/libs/api/metadata-converter/src/lib/dcat-ap/index.d.ts.map +1 -0
  412. package/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.d.ts +16 -0
  413. package/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.d.ts.map +1 -0
  414. package/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.d.ts +21 -0
  415. package/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.d.ts.map +1 -0
  416. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.d.ts +15 -0
  417. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.d.ts.map +1 -0
  418. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.d.ts +8 -0
  419. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.d.ts.map +1 -0
  420. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.d.ts +2 -0
  421. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.d.ts.map +1 -0
  422. package/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.d.ts +6 -0
  423. package/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.d.ts.map +1 -0
  424. package/libs/api/metadata-converter/src/lib/find-converter.d.ts.map +1 -1
  425. package/libs/api/metadata-converter/src/lib/function-utils.d.ts +1 -1
  426. package/libs/api/metadata-converter/src/lib/function-utils.d.ts.map +1 -1
  427. package/libs/api/metadata-converter/src/lib/gn4/atomic-operations.d.ts +4 -4
  428. package/libs/api/metadata-converter/src/lib/gn4/atomic-operations.d.ts.map +1 -1
  429. package/libs/api/metadata-converter/src/lib/gn4/gn4.converter.d.ts.map +1 -1
  430. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +3 -3
  431. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  432. package/libs/api/metadata-converter/src/lib/gn4/types/elasticsearch.model.d.ts +1 -1
  433. package/libs/api/metadata-converter/src/lib/gn4/types/elasticsearch.model.d.ts.map +1 -1
  434. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts +2 -6
  435. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts.map +1 -1
  436. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +13 -10
  437. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  438. package/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.d.ts.map +1 -1
  439. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +7 -4
  440. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  441. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts +6 -4
  442. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
  443. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts +4 -2
  444. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -1
  445. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts +25 -9
  446. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  447. package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts +5 -0
  448. package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts.map +1 -0
  449. package/libs/api/metadata-converter/src/lib/iso19139/utils/update-frequency.mapper.d.ts.map +1 -1
  450. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +26 -18
  451. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  452. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts +106 -4
  453. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts.map +1 -1
  454. package/libs/api/repository/src/lib/gn4/auth/auth.service.d.ts +14 -2
  455. package/libs/api/repository/src/lib/gn4/auth/auth.service.d.ts.map +1 -1
  456. package/libs/api/repository/src/lib/gn4/elasticsearch/date-range.utils.d.ts +4 -0
  457. package/libs/api/repository/src/lib/gn4/elasticsearch/date-range.utils.d.ts.map +1 -0
  458. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +5 -1
  459. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
  460. package/libs/api/repository/src/lib/gn4/elasticsearch/index.d.ts +1 -0
  461. package/libs/api/repository/src/lib/gn4/elasticsearch/index.d.ts.map +1 -1
  462. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +33 -14
  463. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  464. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts.map +1 -1
  465. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +13 -5
  466. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  467. package/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.d.ts +1 -1
  468. package/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.d.ts.map +1 -1
  469. package/libs/common/domain/src/lib/model/error/index.d.ts +2 -0
  470. package/libs/common/domain/src/lib/model/error/index.d.ts.map +1 -0
  471. package/libs/common/domain/src/lib/model/error/publication-version.error.d.ts +5 -0
  472. package/libs/common/domain/src/lib/model/error/publication-version.error.d.ts.map +1 -0
  473. package/libs/common/domain/src/lib/model/record/contact.model.d.ts +3 -2
  474. package/libs/common/domain/src/lib/model/record/contact.model.d.ts.map +1 -1
  475. package/libs/common/domain/src/lib/model/record/index.d.ts +1 -0
  476. package/libs/common/domain/src/lib/model/record/index.d.ts.map +1 -1
  477. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +38 -15
  478. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  479. package/libs/common/domain/src/lib/model/record/organization.model.d.ts +2 -0
  480. package/libs/common/domain/src/lib/model/record/organization.model.d.ts.map +1 -1
  481. package/libs/common/domain/src/lib/model/record/translation.model.d.ts +26 -0
  482. package/libs/common/domain/src/lib/model/record/translation.model.d.ts.map +1 -0
  483. package/libs/common/domain/src/lib/model/search/filter.model.d.ts +16 -1
  484. package/libs/common/domain/src/lib/model/search/filter.model.d.ts.map +1 -1
  485. package/libs/common/domain/src/lib/model/search/sort-by.model.d.ts.map +1 -1
  486. package/libs/common/domain/src/lib/model/user/user.model.d.ts +1 -1
  487. package/libs/common/domain/src/lib/model/user/user.model.d.ts.map +1 -1
  488. package/libs/common/domain/src/lib/platform.service.interface.d.ts +17 -1
  489. package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
  490. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +31 -1
  491. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  492. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts +2 -2
  493. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts.map +1 -1
  494. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts +1 -1
  495. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts.map +1 -1
  496. package/libs/data-access/gn4/src/openapi/api/records.api.service.d.ts +3 -0
  497. package/libs/data-access/gn4/src/openapi/api/records.api.service.d.ts.map +1 -1
  498. package/libs/data-access/gn4/src/openapi/model/groupPrivilege.api.model.d.ts.map +1 -1
  499. package/libs/data-access/gn4/src/openapi/model/jsonNode.api.model.d.ts.map +1 -1
  500. package/libs/data-access/gn4/src/openapi/model/link.api.model.d.ts.map +1 -1
  501. package/libs/data-access/gn4/src/openapi/model/metadataResource.api.model.d.ts.map +1 -1
  502. package/libs/data-access/gn4/src/openapi/model/metadataResourceExternalManagementProperties.api.model.d.ts.map +1 -1
  503. package/libs/data-access/gn4/src/openapi/model/metadataStatusParameter.api.model.d.ts.map +1 -1
  504. package/libs/data-access/gn4/src/openapi/model/operation.api.model.d.ts.map +1 -1
  505. package/libs/data-access/gn4/src/openapi/model/pageProperties.api.model.d.ts.map +1 -1
  506. package/libs/data-access/gn4/src/openapi/model/publicationOption.api.model.d.ts.map +1 -1
  507. package/libs/data-access/gn4/src/openapi/model/setting.api.model.d.ts.map +1 -1
  508. package/libs/data-access/gn4/src/openapi/model/status.api.model.d.ts.map +1 -1
  509. package/libs/data-access/gn4/src/openapi/model/statusValue.api.model.d.ts.map +1 -1
  510. package/libs/data-access/gn4/src/openapi/model/user.api.model.d.ts.map +1 -1
  511. package/libs/data-access/gn4/src/openapi/model/userGroup.api.model.d.ts.map +1 -1
  512. package/libs/data-access/gn4/src/openapi/model/userGroupId.api.model.d.ts.map +1 -1
  513. package/libs/data-access/gn4/src/openapi/model/userSecurity.api.model.d.ts.map +1 -1
  514. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts +8 -8
  515. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts.map +1 -1
  516. package/libs/feature/catalog/src/lib/organisations/organisations.component.d.ts +10 -3
  517. package/libs/feature/catalog/src/lib/organisations/organisations.component.d.ts.map +1 -1
  518. package/libs/feature/dataviz/src/index.d.ts +0 -1
  519. package/libs/feature/dataviz/src/index.d.ts.map +1 -1
  520. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +3 -3
  521. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  522. package/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.d.ts +1 -1
  523. package/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.d.ts.map +1 -1
  524. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts +14 -21
  525. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts.map +1 -1
  526. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +9 -7
  527. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  528. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +4 -4
  529. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  530. package/libs/feature/editor/src/index.d.ts +1 -0
  531. package/libs/feature/editor/src/index.d.ts.map +1 -1
  532. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +47 -9
  533. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -1
  534. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts +26 -9
  535. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -1
  536. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +20 -9
  537. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -1
  538. package/libs/feature/editor/src/lib/+state/editor.models.d.ts +9 -1
  539. package/libs/feature/editor/src/lib/+state/editor.models.d.ts.map +1 -1
  540. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts +10 -4
  541. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -1
  542. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +14 -10
  543. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -1
  544. package/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.d.ts +16 -0
  545. package/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.d.ts.map +1 -0
  546. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts +8 -0
  547. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts.map +1 -0
  548. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts +33 -0
  549. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts.map +1 -0
  550. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts +34 -0
  551. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts.map +1 -0
  552. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts +15 -0
  553. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -0
  554. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts +65 -0
  555. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts.map +1 -0
  556. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.d.ts +18 -0
  557. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.d.ts.map +1 -0
  558. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/constraints.utils.d.ts +6 -0
  559. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/constraints.utils.d.ts.map +1 -0
  560. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.d.ts +32 -0
  561. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.d.ts.map +1 -0
  562. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts +38 -0
  563. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts.map +1 -0
  564. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts +41 -0
  565. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts.map +1 -0
  566. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date/form-field-date.component.d.ts +9 -0
  567. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date/form-field-date.component.d.ts.map +1 -0
  568. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts +11 -19
  569. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -1
  570. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts +15 -34
  571. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts.map +1 -1
  572. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +15 -0
  573. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts.map +1 -0
  574. 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
  575. 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
  576. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.d.ts +48 -0
  577. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.d.ts.map +1 -0
  578. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts +14 -0
  579. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts.map +1 -0
  580. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts +31 -0
  581. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts.map +1 -0
  582. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts +4 -6
  583. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts.map +1 -1
  584. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts +5 -10
  585. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts.map +1 -1
  586. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts +24 -0
  587. 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
  588. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-toggle/form-field-spatial-toggle.component.d.ts +14 -0
  589. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-toggle/form-field-spatial-toggle.component.d.ts.map +1 -0
  590. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts +10 -16
  591. 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
  592. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts +6 -6
  593. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts.map +1 -1
  594. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +20 -20
  595. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  596. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts +1 -2
  597. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts.map +1 -1
  598. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts +7 -7
  599. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts.map +1 -1
  600. package/libs/feature/editor/src/lib/expressions.d.ts +1 -1
  601. package/libs/feature/editor/src/lib/expressions.d.ts.map +1 -1
  602. package/libs/feature/editor/src/lib/feature-editor.module.d.ts +2 -1
  603. package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
  604. package/libs/feature/editor/src/lib/fields.config.d.ts +64 -2
  605. package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
  606. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts +45 -0
  607. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts.map +1 -0
  608. package/libs/feature/editor/src/lib/models/index.d.ts +1 -0
  609. package/libs/feature/editor/src/lib/models/index.d.ts.map +1 -1
  610. package/libs/feature/editor/src/lib/services/editor.service.d.ts +8 -3
  611. package/libs/feature/editor/src/lib/services/editor.service.d.ts.map +1 -1
  612. package/libs/feature/map/src/index.d.ts +1 -8
  613. package/libs/feature/map/src/index.d.ts.map +1 -1
  614. package/libs/feature/map/src/lib/+state/map.actions.d.ts +13 -39
  615. package/libs/feature/map/src/lib/+state/map.actions.d.ts.map +1 -1
  616. package/libs/feature/map/src/lib/+state/map.facade.d.ts +9 -10
  617. package/libs/feature/map/src/lib/+state/map.facade.d.ts.map +1 -1
  618. package/libs/feature/map/src/lib/+state/map.reducer.d.ts +4 -2
  619. package/libs/feature/map/src/lib/+state/map.reducer.d.ts.map +1 -1
  620. package/libs/feature/map/src/lib/+state/map.selectors.d.ts +6 -1
  621. package/libs/feature/map/src/lib/+state/map.selectors.d.ts.map +1 -1
  622. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts +1 -1
  623. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts.map +1 -1
  624. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts +8 -10
  625. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts.map +1 -1
  626. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts +1 -1
  627. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -1
  628. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts +3 -3
  629. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
  630. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts +2 -2
  631. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -1
  632. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts +2 -2
  633. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts.map +1 -1
  634. package/libs/feature/map/src/lib/constant/index.d.ts +0 -1
  635. package/libs/feature/map/src/lib/constant/index.d.ts.map +1 -1
  636. package/libs/feature/map/src/lib/feature-map.module.d.ts +11 -23
  637. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  638. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts +7 -7
  639. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts.map +1 -1
  640. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts +5 -4
  641. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
  642. package/libs/feature/map/src/lib/map-state-container/map-state-container.component.d.ts +14 -0
  643. package/libs/feature/map/src/lib/map-state-container/map-state-container.component.d.ts.map +1 -0
  644. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts +2 -2
  645. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts.map +1 -1
  646. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts +0 -30
  647. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
  648. package/libs/feature/notifications/src/lib/notifications.service.d.ts +1 -1
  649. package/libs/feature/notifications/src/lib/notifications.service.d.ts.map +1 -1
  650. package/libs/feature/record/src/index.d.ts +3 -0
  651. package/libs/feature/record/src/index.d.ts.map +1 -1
  652. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +4 -4
  653. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  654. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +4 -1
  655. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
  656. package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts +4 -1
  657. package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts.map +1 -1
  658. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +4 -1
  659. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
  660. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +10 -7
  661. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  662. package/libs/feature/record/src/lib/feature-record.module.d.ts +15 -23
  663. package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
  664. package/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.d.ts +74 -0
  665. package/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.d.ts.map +1 -0
  666. package/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.d.ts +19 -0
  667. package/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.d.ts.map +1 -0
  668. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +21 -21
  669. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  670. package/libs/feature/record/src/lib/record-meta/record-meta.component.d.ts +14 -0
  671. package/libs/feature/record/src/lib/record-meta/record-meta.component.d.ts.map +1 -0
  672. package/libs/feature/record/src/lib/state/mdview.actions.d.ts +13 -13
  673. package/libs/feature/record/src/lib/state/mdview.actions.d.ts.map +1 -1
  674. package/libs/feature/record/src/lib/state/mdview.effects.d.ts +9 -9
  675. package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
  676. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +7 -7
  677. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  678. package/libs/feature/router/src/lib/default/constants.d.ts +3 -2
  679. package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
  680. package/libs/feature/router/src/lib/default/state/query-params.utils.d.ts +4 -0
  681. package/libs/feature/router/src/lib/default/state/query-params.utils.d.ts.map +1 -0
  682. package/libs/feature/router/src/lib/default/state/router.actions.d.ts +3 -3
  683. package/libs/feature/router/src/lib/default/state/router.actions.d.ts.map +1 -1
  684. package/libs/feature/router/src/lib/default/state/router.effects.d.ts +5 -5
  685. package/libs/feature/router/src/lib/default/state/router.effects.d.ts.map +1 -1
  686. package/libs/feature/router/src/lib/default/state/router.facade.d.ts +1 -1
  687. package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
  688. package/libs/feature/router/src/lib/default/state/router.selectors.d.ts +1 -1
  689. package/libs/feature/router/src/lib/default/state/router.selectors.d.ts.map +1 -1
  690. package/libs/feature/search/src/index.d.ts +2 -0
  691. package/libs/feature/search/src/index.d.ts.map +1 -1
  692. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts +1 -1
  693. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts.map +1 -1
  694. package/libs/feature/search/src/lib/feature-search.module.d.ts +17 -15
  695. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  696. package/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.d.ts +7 -1
  697. package/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.d.ts.map +1 -1
  698. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts +1 -0
  699. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts.map +1 -1
  700. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +17 -6
  701. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -1
  702. package/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.d.ts +22 -0
  703. package/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.d.ts.map +1 -0
  704. package/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.d.ts +34 -0
  705. package/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.d.ts.map +1 -0
  706. package/libs/feature/search/src/lib/sort-by/sort-by.component.d.ts.map +1 -1
  707. package/libs/feature/search/src/lib/state/actions.d.ts.map +1 -1
  708. package/libs/feature/search/src/lib/state/search.facade.d.ts +1 -2
  709. package/libs/feature/search/src/lib/state/search.facade.d.ts.map +1 -1
  710. package/libs/feature/search/src/lib/state/selectors.d.ts +0 -2
  711. package/libs/feature/search/src/lib/state/selectors.d.ts.map +1 -1
  712. package/libs/feature/search/src/lib/utils/operators/search.operator.d.ts.map +1 -1
  713. package/libs/feature/search/src/lib/utils/service/fields.d.ts +24 -6
  714. package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
  715. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts +4 -2
  716. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  717. package/libs/ui/catalog/src/index.d.ts +0 -1
  718. package/libs/ui/catalog/src/index.d.ts.map +1 -1
  719. package/libs/ui/catalog/src/lib/catalog-title/catalog-title.component.d.ts +1 -1
  720. package/libs/ui/catalog/src/lib/catalog-title/catalog-title.component.d.ts.map +1 -1
  721. package/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.d.ts +10 -8
  722. package/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.d.ts.map +1 -1
  723. package/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.d.ts +1 -1
  724. package/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.d.ts.map +1 -1
  725. package/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.d.ts +1 -1
  726. package/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.d.ts.map +1 -1
  727. package/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.d.ts +1 -1
  728. package/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.d.ts.map +1 -1
  729. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts +2 -2
  730. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts.map +1 -1
  731. package/libs/ui/dataviz/src/lib/ui-dataviz.module.d.ts +3 -3
  732. package/libs/ui/dataviz/src/lib/ui-dataviz.module.d.ts.map +1 -1
  733. package/libs/ui/elements/src/index.d.ts +3 -3
  734. package/libs/ui/elements/src/index.d.ts.map +1 -1
  735. package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts +1 -1
  736. package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts.map +1 -1
  737. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts +18 -0
  738. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts.map +1 -0
  739. package/libs/ui/elements/src/lib/content-ghost/content-ghost.component.d.ts +1 -1
  740. package/libs/ui/elements/src/lib/content-ghost/content-ghost.component.d.ts.map +1 -1
  741. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +4 -4
  742. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  743. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +10 -9
  744. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  745. package/libs/ui/elements/src/lib/error/error.component.d.ts +1 -1
  746. package/libs/ui/elements/src/lib/error/error.component.d.ts.map +1 -1
  747. package/libs/ui/{inputs → elements}/src/lib/image-input/image-input.component.d.ts +6 -6
  748. package/libs/ui/elements/src/lib/image-input/image-input.component.d.ts.map +1 -0
  749. package/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.d.ts +1 -1
  750. package/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.d.ts.map +1 -1
  751. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +2 -2
  752. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  753. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts +2 -2
  754. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts.map +1 -1
  755. package/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.d.ts +2 -1
  756. package/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.d.ts.map +1 -1
  757. package/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.d.ts +1 -1
  758. package/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.d.ts.map +1 -1
  759. package/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.d.ts +1 -1
  760. package/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.d.ts.map +1 -1
  761. package/libs/ui/elements/src/lib/metadata-info/linkify.directive.d.ts +2 -2
  762. package/libs/ui/elements/src/lib/metadata-info/linkify.directive.d.ts.map +1 -1
  763. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +1 -1
  764. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
  765. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +1 -4
  766. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
  767. package/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.d.ts +2 -2
  768. package/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.d.ts.map +1 -1
  769. package/libs/ui/elements/src/lib/notification/notification.component.d.ts +1 -0
  770. package/libs/ui/elements/src/lib/notification/notification.component.d.ts.map +1 -1
  771. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +7 -18
  772. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
  773. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +1 -1
  774. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +1 -1
  775. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +20 -34
  776. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  777. package/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.d.ts +1 -1
  778. package/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.d.ts.map +1 -1
  779. package/libs/ui/inputs/src/index.d.ts +5 -1
  780. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  781. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts +9 -1
  782. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
  783. package/libs/ui/inputs/src/lib/badge/badge.component.d.ts.map +1 -1
  784. package/libs/ui/inputs/src/lib/button/button.component.d.ts +2 -2
  785. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  786. package/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.d.ts +2 -2
  787. package/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.d.ts.map +1 -1
  788. package/libs/ui/inputs/src/lib/chips-input/chips-input.component.d.ts.map +1 -1
  789. package/libs/ui/inputs/src/lib/copy-text-button/copy-text-button.component.d.ts +1 -1
  790. package/libs/ui/inputs/src/lib/copy-text-button/copy-text-button.component.d.ts.map +1 -1
  791. package/libs/ui/inputs/src/lib/date-picker/date-picker.component.d.ts.map +1 -1
  792. package/libs/ui/inputs/src/lib/date-range-dropdown/date-range-dropdown.component.d.ts +20 -0
  793. package/libs/ui/inputs/src/lib/date-range-dropdown/date-range-dropdown.component.d.ts.map +1 -0
  794. package/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.d.ts.map +1 -1
  795. package/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.d.ts.map +1 -1
  796. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts +5 -3
  797. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts.map +1 -1
  798. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts +25 -0
  799. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts.map +1 -0
  800. package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts +1 -1
  801. package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts.map +1 -1
  802. package/libs/ui/inputs/src/lib/search-input/search-input.component.d.ts +1 -1
  803. package/libs/ui/inputs/src/lib/search-input/search-input.component.d.ts.map +1 -1
  804. package/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.d.ts +1 -1
  805. package/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.d.ts.map +1 -1
  806. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts +18 -0
  807. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts.map +1 -0
  808. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts +0 -4
  809. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts.map +1 -1
  810. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts +2 -4
  811. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts.map +1 -1
  812. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +29 -35
  813. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  814. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts +24 -0
  815. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts.map +1 -0
  816. package/libs/ui/layout/src/index.d.ts +7 -0
  817. package/libs/ui/layout/src/index.d.ts.map +1 -1
  818. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts +7 -5
  819. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts.map +1 -1
  820. package/libs/ui/layout/src/lib/carousel/carousel.component.d.ts +9 -7
  821. package/libs/ui/layout/src/lib/carousel/carousel.component.d.ts.map +1 -1
  822. package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts +1 -1
  823. package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts.map +1 -1
  824. package/libs/ui/layout/src/lib/expandable-panel-button/expandable-panel-button.component.d.ts +1 -1
  825. package/libs/ui/layout/src/lib/expandable-panel-button/expandable-panel-button.component.d.ts.map +1 -1
  826. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts +2 -2
  827. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts.map +1 -1
  828. package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts +3 -2
  829. package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts.map +1 -1
  830. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +2 -1
  831. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -1
  832. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts +20 -0
  833. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts.map +1 -0
  834. package/libs/ui/layout/src/lib/paginable.interface.d.ts +15 -0
  835. package/libs/ui/layout/src/lib/paginable.interface.d.ts.map +1 -0
  836. package/libs/ui/layout/src/lib/pagination/pagination.component.d.ts +11 -0
  837. package/libs/ui/layout/src/lib/pagination/pagination.component.d.ts.map +1 -0
  838. package/libs/ui/layout/src/lib/pagination-buttons/pagination-buttons.component.d.ts +9 -0
  839. package/libs/ui/layout/src/lib/pagination-buttons/pagination-buttons.component.d.ts.map +1 -0
  840. package/libs/ui/layout/src/lib/pagination-dots/pagination-dots.component.d.ts +10 -0
  841. package/libs/ui/layout/src/lib/pagination-dots/pagination-dots.component.d.ts.map +1 -0
  842. package/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.d.ts +8 -0
  843. package/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.d.ts.map +1 -0
  844. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts +14 -0
  845. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts.map +1 -0
  846. package/libs/ui/layout/src/lib/ui-layout.module.d.ts +6 -8
  847. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
  848. package/libs/ui/map/src/index.d.ts +4 -2
  849. package/libs/ui/map/src/index.d.ts.map +1 -1
  850. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts +3 -4
  851. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts.map +1 -1
  852. package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts +37 -0
  853. package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts.map +1 -0
  854. package/libs/ui/map/src/lib/components/map-container/map-settings.token.d.ts +18 -0
  855. package/libs/ui/map/src/lib/components/map-container/map-settings.token.d.ts.map +1 -0
  856. package/libs/ui/map/src/lib/components/map-legend/map-legend.component.d.ts +12 -0
  857. package/libs/ui/map/src/lib/components/map-legend/map-legend.component.d.ts.map +1 -0
  858. package/libs/ui/map/src/lib/map-utils.d.ts +7 -0
  859. package/libs/ui/map/src/lib/map-utils.d.ts.map +1 -0
  860. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts +3 -3
  861. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts.map +1 -1
  862. package/libs/ui/search/src/lib/results-list/results-layout.config.d.ts.map +1 -1
  863. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +24 -0
  864. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -0
  865. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +23 -10
  866. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  867. package/libs/ui/search/src/lib/ui-search.module.d.ts +6 -5
  868. package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
  869. package/libs/ui/widgets/src/index.d.ts +1 -0
  870. package/libs/ui/widgets/src/index.d.ts.map +1 -1
  871. package/libs/ui/widgets/src/lib/loading-mask/loading-mask.component.d.ts +1 -1
  872. package/libs/ui/widgets/src/lib/loading-mask/loading-mask.component.d.ts.map +1 -1
  873. package/libs/ui/widgets/src/lib/popover/popover.component.d.ts +19 -0
  874. package/libs/ui/widgets/src/lib/popover/popover.component.d.ts.map +1 -0
  875. package/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.d.ts.map +1 -1
  876. package/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.d.ts +1 -1
  877. package/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.d.ts.map +1 -1
  878. package/libs/ui/widgets/src/lib/spinning-loader/spinning-loader.component.d.ts +1 -1
  879. package/libs/ui/widgets/src/lib/spinning-loader/spinning-loader.component.d.ts.map +1 -1
  880. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts +9 -13
  881. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts.map +1 -1
  882. package/libs/util/app-config/src/index.d.ts +1 -0
  883. package/libs/util/app-config/src/index.d.ts.map +1 -1
  884. package/libs/util/app-config/src/lib/app-config.d.ts.map +1 -1
  885. package/libs/util/app-config/src/lib/fixtures.d.ts +8 -8
  886. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  887. package/libs/util/app-config/src/lib/map-layers.d.ts +4 -0
  888. package/libs/util/app-config/src/lib/map-layers.d.ts.map +1 -0
  889. package/libs/util/app-config/src/lib/model.d.ts +6 -1
  890. package/libs/util/app-config/src/lib/model.d.ts.map +1 -1
  891. package/libs/util/data-fetcher/src/lib/model.d.ts +2 -2
  892. package/libs/util/data-fetcher/src/lib/model.d.ts.map +1 -1
  893. package/libs/util/data-fetcher/src/lib/readers/csv.d.ts.map +1 -1
  894. package/libs/util/data-fetcher/src/lib/readers/excel.d.ts.map +1 -1
  895. package/libs/util/data-fetcher/src/lib/readers/geojson.d.ts.map +1 -1
  896. package/libs/util/data-fetcher/src/lib/readers/gml.d.ts.map +1 -1
  897. package/libs/util/data-fetcher/src/lib/readers/json.d.ts.map +1 -1
  898. package/libs/util/data-fetcher/src/lib/utils.d.ts +1 -1
  899. package/libs/util/data-fetcher/src/lib/utils.d.ts.map +1 -1
  900. package/libs/util/i18n/src/index.d.ts +1 -0
  901. package/libs/util/i18n/src/index.d.ts.map +1 -1
  902. package/libs/util/i18n/src/lib/i18n.constants.d.ts +0 -35
  903. package/libs/util/i18n/src/lib/i18n.constants.d.ts.map +1 -1
  904. package/libs/util/i18n/src/lib/language-codes.d.ts +38 -0
  905. package/libs/util/i18n/src/lib/language-codes.d.ts.map +1 -0
  906. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  907. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  908. package/libs/util/shared/src/lib/links/link-utils.d.ts +23 -22
  909. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  910. package/libs/util/shared/src/lib/services/proxy.service.d.ts +4 -2
  911. package/libs/util/shared/src/lib/services/proxy.service.d.ts.map +1 -1
  912. package/libs/util/shared/src/lib/services/theme.service.d.ts.map +1 -1
  913. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts +2 -1
  914. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts.map +1 -1
  915. package/libs/util/shared/src/lib/utils/format-fields.d.ts +2 -0
  916. package/libs/util/shared/src/lib/utils/format-fields.d.ts.map +1 -0
  917. package/libs/util/shared/src/lib/utils/index.d.ts +2 -0
  918. package/libs/util/shared/src/lib/utils/index.d.ts.map +1 -1
  919. package/libs/util/shared/src/lib/utils/no-duplicate-file-name.d.ts +2 -0
  920. package/libs/util/shared/src/lib/utils/no-duplicate-file-name.d.ts.map +1 -0
  921. package/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts +4 -1
  922. package/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts.map +1 -1
  923. package/package.json +50 -41
  924. package/src/libs/api/metadata-converter/src/index.ts +3 -0
  925. package/src/libs/api/metadata-converter/src/lib/common/distribution.mapper.ts +1 -0
  926. package/src/libs/api/metadata-converter/src/lib/common/license.ts +66 -0
  927. package/src/libs/api/metadata-converter/src/lib/common/resource-types.ts +50 -0
  928. package/src/libs/api/metadata-converter/src/lib/common/url.ts +15 -0
  929. package/src/libs/api/metadata-converter/src/lib/convert-utils.ts +1 -1
  930. package/src/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.ts +504 -0
  931. package/src/libs/api/metadata-converter/src/lib/dcat-ap/index.ts +1 -0
  932. package/src/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.ts +17 -0
  933. package/src/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.ts +463 -0
  934. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.ts +110 -0
  935. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/individual-name.ts +20 -0
  936. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/keyword.mapper.ts +16 -0
  937. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/role.mapper.ts +48 -0
  938. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.ts +127 -0
  939. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/status.mapper.ts +19 -0
  940. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.ts +1 -0
  941. package/src/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.ts +101 -0
  942. package/src/libs/api/metadata-converter/src/lib/find-converter.ts +13 -0
  943. package/src/libs/api/metadata-converter/src/lib/fixtures/eu.dcat-ap.records.ts +743 -0
  944. package/src/libs/api/metadata-converter/src/lib/fixtures/generic.records.ts +43 -5
  945. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.reuse+ongules.ts +246 -0
  946. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.reuse+roilaye.ts +101 -0
  947. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.service+eaux-usees.ts +187 -0
  948. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +26 -5
  949. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +374 -18
  950. package/src/libs/api/metadata-converter/src/lib/fixtures/georhena.records.ts +216 -0
  951. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +90 -4
  952. package/src/libs/api/metadata-converter/src/lib/fixtures/opendataswiss.records.ts +437 -0
  953. package/src/libs/api/metadata-converter/src/lib/fixtures/sextant.records.ts +487 -0
  954. package/src/libs/api/metadata-converter/src/lib/fixtures/vlaanderen.dcat-ap.records.ts +76 -0
  955. package/src/libs/api/metadata-converter/src/lib/fixtures/wallonie.records.reuse.ts +451 -0
  956. package/src/libs/api/metadata-converter/src/lib/fixtures/wallonie.records.service+napitswallonia.ts +289 -0
  957. package/src/libs/api/metadata-converter/src/lib/function-utils.ts +1 -1
  958. package/src/libs/api/metadata-converter/src/lib/gn4/atomic-operations.ts +1 -0
  959. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.converter.ts +6 -4
  960. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +55 -40
  961. package/src/libs/api/metadata-converter/src/lib/gn4/types/elasticsearch.model.ts +1 -1
  962. package/src/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.ts +2 -6
  963. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +13 -10
  964. package/src/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.ts +20 -9
  965. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +75 -18
  966. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +118 -65
  967. package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +174 -95
  968. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +354 -56
  969. package/src/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.ts +39 -0
  970. package/src/libs/api/metadata-converter/src/lib/iso19139/utils/update-frequency.mapper.ts +9 -62
  971. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +632 -312
  972. package/src/libs/api/metadata-converter/src/lib/xml-utils.ts +145 -29
  973. package/src/libs/api/repository/src/lib/gn4/auth/auth.service.ts +35 -6
  974. package/src/libs/api/repository/src/lib/gn4/elasticsearch/date-range.utils.ts +13 -0
  975. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +58 -23
  976. package/src/libs/api/repository/src/lib/gn4/elasticsearch/index.ts +1 -0
  977. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +290 -101
  978. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.ts +13 -2
  979. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +173 -16
  980. package/src/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.ts +1 -1
  981. package/src/libs/common/domain/src/lib/model/error/index.ts +1 -0
  982. package/src/libs/common/domain/src/lib/model/error/publication-version.error.ts +9 -0
  983. package/src/libs/common/domain/src/lib/model/record/contact.model.ts +30 -2
  984. package/src/libs/common/domain/src/lib/model/record/index.ts +1 -0
  985. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +83 -22
  986. package/src/libs/common/domain/src/lib/model/record/organization.model.ts +4 -0
  987. package/src/libs/common/domain/src/lib/model/record/translation.model.ts +49 -0
  988. package/src/libs/common/domain/src/lib/model/search/filter.model.ts +17 -1
  989. package/src/libs/common/domain/src/lib/model/search/sort-by.model.ts +1 -0
  990. package/src/libs/common/domain/src/lib/model/user/user.model.ts +1 -1
  991. package/src/libs/common/domain/src/lib/platform.service.interface.ts +32 -1
  992. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +39 -2
  993. package/src/libs/common/fixtures/src/index.ts +6 -1
  994. package/src/libs/common/fixtures/src/lib/editor/editor.fixtures.ts +163 -0
  995. package/src/libs/common/fixtures/src/lib/editor/index.ts +1 -0
  996. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-request.ts → aggregations-request.fixtures.ts} +1 -3
  997. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-response.ts → aggregations-response.fixtures.ts} +6 -8
  998. package/src/libs/common/fixtures/src/lib/elasticsearch/{full-response.ts → full-response.fixtures.ts} +1675 -4
  999. package/src/libs/common/fixtures/src/lib/elasticsearch/index.ts +5 -5
  1000. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +1 -3
  1001. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata.fixtures.ts +1739 -1742
  1002. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-requests.ts → search-requests.fixtures.ts} +1 -3
  1003. package/src/libs/common/fixtures/src/lib/elasticsearch/search-responses.fixtures.ts +13374 -0
  1004. package/src/libs/common/fixtures/src/lib/geojson.fixtures.ts +57178 -57195
  1005. package/src/libs/common/fixtures/src/lib/gn4/groups.fixtures.ts +2 -4
  1006. package/src/libs/common/fixtures/src/lib/individual.fixtures.ts +61 -0
  1007. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +242 -164
  1008. package/src/libs/common/fixtures/src/lib/map/index.ts +1 -0
  1009. package/src/libs/common/fixtures/src/lib/map/map-context.fixtures.ts +53 -0
  1010. package/src/libs/common/fixtures/src/lib/ol-feature.fixtures.ts +10 -0
  1011. package/src/libs/common/fixtures/src/lib/organisations.fixture.ts +37 -3
  1012. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +9 -7
  1013. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +288 -23
  1014. package/src/libs/common/fixtures/src/lib/repository.fixtures.ts +4 -4
  1015. package/src/libs/common/fixtures/src/lib/search/aggregations.ts +2 -3
  1016. package/src/libs/common/fixtures/src/lib/user-feedbacks.fixtures.ts +14 -15
  1017. package/src/libs/common/fixtures/src/lib/user.fixtures.ts +45 -15
  1018. package/src/libs/data-access/gn4/src/fixtures/site.fixtures.ts +4 -4
  1019. package/src/libs/data-access/gn4/src/fixtures/ui.fixtures.ts +2 -2
  1020. package/src/libs/data-access/gn4/src/openapi/api/records.api.service.ts +25 -9
  1021. package/src/libs/data-access/gn4/src/spec.yaml +0 -8
  1022. package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +8 -9
  1023. package/src/libs/feature/catalog/src/lib/organisations/organisations.component.html +1 -5
  1024. package/src/libs/feature/catalog/src/lib/organisations/organisations.component.ts +41 -5
  1025. package/src/libs/feature/catalog/src/lib/sources/sources.fixture.ts +1 -1
  1026. package/src/libs/feature/dataviz/src/index.ts +0 -1
  1027. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.html +1 -1
  1028. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +23 -5
  1029. package/src/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.ts +3 -1
  1030. package/src/libs/feature/dataviz/src/lib/figure/figure.fixtures.ts +2 -2
  1031. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.html +5 -2
  1032. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.ts +43 -78
  1033. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +36 -13
  1034. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.html +1 -1
  1035. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +19 -6
  1036. package/src/libs/feature/editor/src/index.ts +1 -0
  1037. package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +33 -1
  1038. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +114 -27
  1039. package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +41 -10
  1040. package/src/libs/feature/editor/src/lib/+state/editor.models.ts +12 -1
  1041. package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +56 -17
  1042. package/src/libs/feature/editor/src/lib/+state/editor.selectors.ts +34 -10
  1043. package/src/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.css +4 -0
  1044. package/src/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.html +28 -0
  1045. package/src/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.ts +71 -0
  1046. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.html +15 -0
  1047. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.ts +17 -0
  1048. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.css +3 -0
  1049. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.html +27 -0
  1050. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +100 -0
  1051. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.html +46 -0
  1052. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +153 -0
  1053. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.html +35 -0
  1054. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +92 -0
  1055. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.html +90 -0
  1056. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +222 -0
  1057. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.css +4 -0
  1058. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.html +24 -0
  1059. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.ts +85 -0
  1060. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/constraints.utils.ts +42 -0
  1061. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.css +4 -0
  1062. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.html +34 -0
  1063. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.ts +210 -0
  1064. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.html +40 -0
  1065. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.ts +170 -0
  1066. 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
  1067. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.html +66 -0
  1068. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +221 -0
  1069. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date/form-field-date.component.html +4 -0
  1070. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date/form-field-date.component.ts +21 -0
  1071. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-file/form-field-file.component.html +1 -1
  1072. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.html +7 -16
  1073. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +44 -45
  1074. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.css +8 -0
  1075. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.html +11 -8
  1076. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.ts +55 -47
  1077. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +1 -0
  1078. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.ts +86 -0
  1079. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.html +49 -0
  1080. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.ts +190 -0
  1081. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.html +75 -0
  1082. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.ts +256 -0
  1083. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.html +6 -0
  1084. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.ts +51 -0
  1085. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.css +0 -0
  1086. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.html +13 -0
  1087. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +129 -0
  1088. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.html +16 -9
  1089. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.ts +11 -14
  1090. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.html +4 -23
  1091. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.ts +12 -25
  1092. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +15 -1
  1093. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +172 -1
  1094. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-toggle/form-field-spatial-toggle.component.css +0 -0
  1095. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-toggle/form-field-spatial-toggle.component.html +5 -0
  1096. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-toggle/form-field-spatial-toggle.component.ts +60 -0
  1097. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.css +4 -0
  1098. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.html +32 -4
  1099. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +54 -86
  1100. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.css +4 -0
  1101. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.html +17 -14
  1102. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +59 -85
  1103. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +162 -68
  1104. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +83 -46
  1105. package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +1 -2
  1106. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.html +54 -9
  1107. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +20 -7
  1108. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.html +2 -6
  1109. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +1 -1
  1110. package/src/libs/feature/editor/src/lib/expressions.ts +1 -1
  1111. package/src/libs/feature/editor/src/lib/feature-editor.module.ts +2 -1
  1112. package/src/libs/feature/editor/src/lib/fields.config.ts +323 -57
  1113. package/src/libs/feature/editor/src/lib/models/editor-config.model.ts +73 -0
  1114. package/src/libs/feature/editor/src/lib/models/index.ts +1 -0
  1115. package/src/libs/feature/editor/src/lib/services/editor.service.ts +45 -21
  1116. package/src/libs/feature/map/src/index.ts +1 -8
  1117. package/src/libs/feature/map/src/lib/+state/map.actions.ts +10 -25
  1118. package/src/libs/feature/map/src/lib/+state/map.facade.ts +11 -15
  1119. package/src/libs/feature/map/src/lib/+state/map.reducer.ts +16 -53
  1120. package/src/libs/feature/map/src/lib/+state/map.selectors.ts +7 -2
  1121. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.ts +3 -0
  1122. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.ts +23 -22
  1123. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +22 -11
  1124. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.html +1 -1
  1125. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +21 -19
  1126. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.html +1 -1
  1127. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +17 -10
  1128. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.html +3 -3
  1129. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.ts +17 -10
  1130. package/src/libs/feature/map/src/lib/constant/index.ts +0 -1
  1131. package/src/libs/feature/map/src/lib/feature-map.module.ts +2 -43
  1132. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +38 -20
  1133. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.html +5 -7
  1134. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +58 -6
  1135. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.css +0 -0
  1136. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.html +4 -0
  1137. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.ts +29 -0
  1138. package/src/libs/feature/map/src/lib/style/map-style.fixtures.ts +29 -27
  1139. package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +8 -232
  1140. package/src/libs/feature/notifications/src/lib/notifications.service.ts +6 -1
  1141. package/src/libs/feature/record/src/index.ts +3 -0
  1142. package/src/libs/feature/record/src/lib/data-view/data-view.component.html +1 -1
  1143. package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +18 -3
  1144. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +41 -19
  1145. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +6 -2
  1146. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.ts +27 -1
  1147. package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +64 -12
  1148. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.html +1 -1
  1149. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +37 -21
  1150. package/src/libs/feature/record/src/lib/feature-record.module.ts +10 -29
  1151. package/src/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.css +22 -0
  1152. package/src/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.html +132 -0
  1153. package/src/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.ts +253 -0
  1154. package/src/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.css +0 -0
  1155. package/src/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.html +37 -0
  1156. package/src/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.ts +43 -0
  1157. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +54 -16
  1158. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +107 -76
  1159. package/src/libs/feature/record/src/lib/record-meta/record-meta.component.ts +45 -0
  1160. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +15 -2
  1161. package/src/libs/feature/router/src/lib/default/constants.ts +6 -1
  1162. package/src/libs/feature/router/src/lib/default/state/query-params.utils.ts +61 -0
  1163. package/src/libs/feature/router/src/lib/default/state/router.effects.ts +2 -2
  1164. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +6 -4
  1165. package/src/libs/feature/search/src/index.ts +2 -0
  1166. package/src/libs/feature/search/src/lib/constants.ts +1 -1
  1167. package/src/libs/feature/search/src/lib/facets/facets.service.ts +4 -4
  1168. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +3 -0
  1169. package/src/libs/feature/search/src/lib/feature-search.module.ts +15 -8
  1170. package/src/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.html +20 -10
  1171. package/src/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.ts +32 -1
  1172. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +2 -1
  1173. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.html +1 -6
  1174. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +12 -1
  1175. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +7 -2
  1176. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +71 -5
  1177. package/src/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.css +0 -0
  1178. package/src/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.html +17 -0
  1179. package/src/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.ts +78 -0
  1180. package/src/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.css +0 -0
  1181. package/src/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.html +20 -0
  1182. package/src/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.ts +118 -0
  1183. package/src/libs/feature/search/src/lib/sort-by/sort-by.component.ts +4 -0
  1184. package/src/libs/feature/search/src/lib/state/actions.ts +69 -17
  1185. package/src/libs/feature/search/src/lib/state/effects.ts +1 -1
  1186. package/src/libs/feature/search/src/lib/state/fixtures/search-state.fixtures.ts +2 -2
  1187. package/src/libs/feature/search/src/lib/state/search.facade.ts +6 -8
  1188. package/src/libs/feature/search/src/lib/state/selectors.ts +0 -18
  1189. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +36 -5
  1190. package/src/libs/feature/search/src/lib/utils/service/fields.ts +91 -12
  1191. package/src/libs/ui/catalog/src/index.ts +0 -1
  1192. package/src/libs/ui/catalog/src/lib/catalog-title/catalog-title.component.ts +3 -0
  1193. package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html +1 -1
  1194. package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.ts +15 -21
  1195. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.html +2 -3
  1196. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.ts +11 -0
  1197. package/src/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.ts +8 -1
  1198. package/src/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.ts +3 -0
  1199. package/src/libs/ui/dataviz/src/lib/chart/chart.component.ts +1 -1
  1200. package/src/libs/ui/dataviz/src/lib/chart/chart.fixtures.ts +2 -2
  1201. package/src/libs/ui/dataviz/src/lib/figure/figure.component.html +7 -5
  1202. package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +2 -2
  1203. package/src/libs/ui/dataviz/src/lib/ui-dataviz.module.ts +17 -2
  1204. package/src/libs/ui/elements/src/index.ts +3 -3
  1205. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +37 -27
  1206. package/src/libs/ui/elements/src/lib/api-card/api-card.component.ts +21 -1
  1207. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.css +0 -0
  1208. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.html +12 -0
  1209. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.ts +37 -0
  1210. package/src/libs/ui/elements/src/lib/content-ghost/content-ghost.component.ts +3 -0
  1211. package/src/libs/ui/elements/src/lib/download-item/download-item.component.html +7 -5
  1212. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +16 -5
  1213. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +1 -1
  1214. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +57 -11
  1215. package/src/libs/ui/elements/src/lib/error/error.component.css +24 -19
  1216. package/src/libs/ui/elements/src/lib/error/error.component.html +11 -21
  1217. package/src/libs/ui/elements/src/lib/error/error.component.ts +19 -0
  1218. package/src/libs/ui/elements/src/lib/image-input/image-input.component.css +4 -0
  1219. package/src/libs/ui/elements/src/lib/image-input/image-input.component.html +143 -0
  1220. package/src/libs/ui/{inputs → elements}/src/lib/image-input/image-input.component.ts +57 -21
  1221. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +3 -6
  1222. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.ts +15 -0
  1223. package/src/libs/ui/elements/src/lib/link-card/link-card.component.html +2 -6
  1224. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +16 -5
  1225. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.html +13 -17
  1226. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +1 -3
  1227. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.css +7 -1
  1228. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.html +4 -1
  1229. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.ts +1 -0
  1230. package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.ts +4 -1
  1231. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +20 -22
  1232. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.ts +24 -0
  1233. package/src/libs/ui/elements/src/lib/metadata-info/linkify.directive.ts +7 -3
  1234. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +1 -1
  1235. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +59 -34
  1236. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +43 -1
  1237. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +14 -20
  1238. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +18 -11
  1239. package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.html +1 -1
  1240. package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.ts +7 -1
  1241. package/src/libs/ui/elements/src/lib/notification/notification.component.html +10 -14
  1242. package/src/libs/ui/elements/src/lib/notification/notification.component.ts +33 -2
  1243. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.css +2 -2
  1244. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +2 -2
  1245. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +44 -35
  1246. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +4 -4
  1247. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +15 -0
  1248. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +24 -63
  1249. package/src/libs/ui/elements/src/lib/user-feedback-item/time-since.pipe.ts +2 -2
  1250. package/src/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.html +2 -6
  1251. package/src/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.ts +22 -0
  1252. package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.html +1 -4
  1253. package/src/libs/ui/inputs/src/index.ts +5 -1
  1254. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.css +20 -20
  1255. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +39 -25
  1256. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +37 -6
  1257. package/src/libs/ui/inputs/src/lib/badge/badge.component.html +11 -3
  1258. package/src/libs/ui/inputs/src/lib/badge/badge.component.ts +15 -1
  1259. package/src/libs/ui/inputs/src/lib/button/button.component.ts +17 -2
  1260. package/src/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.html +4 -1
  1261. package/src/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.ts +3 -3
  1262. package/src/libs/ui/inputs/src/lib/chips-input/chips-input.component.ts +4 -1
  1263. package/src/libs/ui/inputs/src/lib/copy-text-button/copy-text-button.component.html +5 -6
  1264. package/src/libs/ui/inputs/src/lib/copy-text-button/copy-text-button.component.ts +7 -0
  1265. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.css +7 -2
  1266. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.html +12 -6
  1267. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.ts +19 -2
  1268. package/src/libs/ui/inputs/src/lib/date-range-dropdown/date-range-dropdown.component.css +5 -0
  1269. package/src/libs/ui/inputs/src/lib/date-range-dropdown/date-range-dropdown.component.html +30 -0
  1270. package/src/libs/ui/inputs/src/lib/date-range-dropdown/date-range-dropdown.component.ts +63 -0
  1271. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.css +7 -2
  1272. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.html +26 -23
  1273. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.ts +19 -2
  1274. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +16 -20
  1275. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +7 -7
  1276. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.ts +16 -2
  1277. package/src/libs/ui/inputs/src/lib/editable-label/editable-label.directive.ts +44 -27
  1278. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.css +4 -0
  1279. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.html +90 -0
  1280. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +108 -0
  1281. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.html +1 -3
  1282. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.ts +4 -1
  1283. package/src/libs/ui/inputs/src/lib/search-input/search-input.component.html +2 -2
  1284. package/src/libs/ui/inputs/src/lib/search-input/search-input.component.ts +16 -1
  1285. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.css +0 -9
  1286. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.html +2 -6
  1287. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.ts +6 -0
  1288. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.css +32 -0
  1289. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.html +15 -0
  1290. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +40 -0
  1291. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.html +3 -2
  1292. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.ts +3 -28
  1293. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.html +4 -3
  1294. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.ts +4 -16
  1295. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +37 -36
  1296. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.css +9 -0
  1297. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.html +34 -0
  1298. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.ts +93 -0
  1299. package/src/libs/ui/layout/src/index.ts +7 -0
  1300. package/src/libs/ui/layout/src/lib/block-list/block-list.component.css +0 -16
  1301. package/src/libs/ui/layout/src/lib/block-list/block-list.component.html +4 -12
  1302. package/src/libs/ui/layout/src/lib/block-list/block-list.component.ts +20 -11
  1303. package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +0 -16
  1304. package/src/libs/ui/layout/src/lib/carousel/carousel.component.html +4 -12
  1305. package/src/libs/ui/layout/src/lib/carousel/carousel.component.ts +22 -19
  1306. package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.html +2 -4
  1307. package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.ts +8 -2
  1308. package/src/libs/ui/layout/src/lib/expandable-panel-button/expandable-panel-button.component.html +2 -6
  1309. package/src/libs/ui/layout/src/lib/expandable-panel-button/expandable-panel-button.component.ts +6 -0
  1310. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.html +9 -4
  1311. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +5 -4
  1312. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.ts +1 -0
  1313. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.css +5 -9
  1314. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +23 -11
  1315. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +11 -3
  1316. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.html +2 -1
  1317. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.css +0 -0
  1318. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.html +15 -0
  1319. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.ts +44 -0
  1320. package/src/libs/ui/layout/src/lib/paginable.interface.ts +14 -0
  1321. package/src/libs/ui/layout/src/lib/pagination/pagination.component.css +0 -0
  1322. package/src/libs/ui/{elements → layout}/src/lib/pagination/pagination.component.html +12 -13
  1323. package/src/libs/ui/layout/src/lib/pagination/pagination.component.ts +45 -0
  1324. package/src/libs/ui/layout/src/lib/pagination-buttons/pagination-buttons.component.css +0 -0
  1325. package/src/libs/ui/layout/src/lib/pagination-buttons/pagination-buttons.component.html +51 -0
  1326. package/src/libs/ui/layout/src/lib/pagination-buttons/pagination-buttons.component.ts +50 -0
  1327. package/src/libs/ui/layout/src/lib/pagination-dots/pagination-dots.component.css +16 -0
  1328. package/src/libs/ui/layout/src/lib/pagination-dots/pagination-dots.component.html +15 -0
  1329. package/src/libs/ui/layout/src/lib/pagination-dots/pagination-dots.component.ts +31 -0
  1330. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.html +18 -0
  1331. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.ts +29 -0
  1332. package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.css +4 -2
  1333. package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.html +37 -0
  1334. package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.ts +45 -0
  1335. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +8 -15
  1336. package/src/libs/ui/map/src/index.ts +4 -2
  1337. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.html +1 -1
  1338. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.ts +8 -5
  1339. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.css +0 -0
  1340. package/src/libs/ui/map/src/lib/components/{map/map.component.html → map-container/map-container.component.html} +4 -3
  1341. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +214 -0
  1342. package/src/libs/ui/map/src/lib/components/map-container/map-settings.token.ts +23 -0
  1343. package/src/libs/ui/map/src/lib/components/map-legend/map-legend.component.css +5 -0
  1344. package/src/libs/ui/map/src/lib/components/map-legend/map-legend.component.html +1 -0
  1345. package/src/libs/ui/map/src/lib/components/map-legend/map-legend.component.ts +39 -0
  1346. package/src/libs/ui/map/src/lib/map-utils.ts +54 -0
  1347. package/src/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.ts +7 -6
  1348. package/src/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.html +17 -13
  1349. package/src/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.html +16 -10
  1350. package/src/libs/ui/search/src/lib/results-list/results-layout.config.ts +1 -1
  1351. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.css +0 -0
  1352. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +59 -0
  1353. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +61 -0
  1354. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +78 -28
  1355. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +120 -46
  1356. package/src/libs/ui/search/src/lib/ui-search.module.ts +22 -3
  1357. package/src/libs/ui/widgets/src/index.ts +1 -0
  1358. package/src/libs/ui/widgets/src/lib/loading-mask/loading-mask.component.ts +4 -6
  1359. package/src/libs/ui/widgets/src/lib/popover/popover.component.css +0 -0
  1360. package/src/libs/ui/widgets/src/lib/popover/popover.component.html +3 -0
  1361. package/src/libs/ui/widgets/src/lib/popover/popover.component.ts +85 -0
  1362. package/src/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.html +2 -4
  1363. package/src/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.ts +8 -2
  1364. package/src/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.ts +1 -0
  1365. package/src/libs/ui/widgets/src/lib/spinning-loader/spinning-loader.component.ts +1 -0
  1366. package/src/libs/ui/widgets/src/lib/step-bar/step-bar.component.ts +2 -2
  1367. package/src/libs/ui/widgets/src/lib/ui-widgets.module.ts +2 -18
  1368. package/src/libs/util/app-config/src/index.ts +1 -0
  1369. package/src/libs/util/app-config/src/lib/app-config.ts +9 -2
  1370. package/src/libs/util/app-config/src/lib/fixtures.ts +10 -9
  1371. package/src/libs/util/app-config/src/lib/map-layers.ts +37 -0
  1372. package/src/libs/util/app-config/src/lib/model.ts +6 -1
  1373. package/src/libs/util/data-fetcher/src/lib/model.ts +6 -6
  1374. package/src/libs/util/data-fetcher/src/lib/readers/base-file.ts +1 -1
  1375. package/src/libs/util/data-fetcher/src/lib/utils.ts +13 -11
  1376. package/src/libs/util/i18n/src/index.ts +1 -0
  1377. package/src/libs/util/i18n/src/lib/i18n.constants.ts +0 -43
  1378. package/src/libs/util/i18n/src/lib/lang.service.ts +1 -1
  1379. package/src/libs/util/i18n/src/lib/language-codes.ts +44 -0
  1380. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +6 -3
  1381. package/src/libs/util/shared/src/lib/links/link-utils.ts +70 -23
  1382. package/src/libs/util/shared/src/lib/services/proxy.service.ts +7 -3
  1383. package/src/libs/util/shared/src/lib/services/theme.service.ts +1 -0
  1384. package/src/libs/util/shared/src/lib/utils/bytes-convert.ts +4 -1
  1385. package/src/libs/util/shared/src/lib/utils/format-fields.ts +11 -0
  1386. package/src/libs/util/shared/src/lib/utils/index.ts +2 -0
  1387. package/src/libs/util/shared/src/lib/utils/no-duplicate-file-name.ts +23 -0
  1388. package/src/libs/util/shared/src/lib/utils/temporal-extent-union.ts +6 -1
  1389. package/tailwind.base.config.js +3 -0
  1390. package/tailwind.base.css +69 -13
  1391. package/translations/de.json +224 -49
  1392. package/translations/en.json +252 -80
  1393. package/translations/es.json +202 -27
  1394. package/translations/fr.json +278 -106
  1395. package/translations/it.json +273 -96
  1396. package/translations/nl.json +202 -27
  1397. package/translations/pt.json +202 -27
  1398. package/translations/sk.json +205 -30
  1399. package/esm2022/libs/feature/dataviz/src/lib/feature-dataviz.module.mjs +0 -71
  1400. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.mjs +0 -15
  1401. 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
  1402. 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
  1403. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.mjs +0 -2
  1404. package/esm2022/libs/feature/editor/src/lib/models/fields.model.mjs +0 -2
  1405. package/esm2022/libs/feature/map/src/lib/+state/map.effects.mjs +0 -15
  1406. package/esm2022/libs/feature/map/src/lib/+state/map.models.mjs +0 -2
  1407. package/esm2022/libs/feature/map/src/lib/constant/map-options.mjs +0 -8
  1408. package/esm2022/libs/feature/map/src/lib/constant/style.constant.mjs +0 -17
  1409. package/esm2022/libs/feature/map/src/lib/feature-info/feature-info.service.mjs +0 -38
  1410. package/esm2022/libs/feature/map/src/lib/manager/map-instance.directive.mjs +0 -19
  1411. package/esm2022/libs/feature/map/src/lib/manager/map-manager.service.mjs +0 -19
  1412. package/esm2022/libs/feature/map/src/lib/map-container/map-container.component.mjs +0 -27
  1413. package/esm2022/libs/feature/map/src/lib/map-context/component/map-context.component.mjs +0 -46
  1414. package/esm2022/libs/feature/map/src/lib/map-context/map-context.model.mjs +0 -10
  1415. package/esm2022/libs/feature/map/src/lib/map-context/map-context.service.mjs +0 -289
  1416. package/esm2022/libs/ui/catalog/src/lib/ui-catalog.module.mjs +0 -62
  1417. package/esm2022/libs/ui/elements/src/lib/pagination/pagination.component.mjs +0 -54
  1418. package/esm2022/libs/ui/elements/src/lib/pagination-buttons/pagination-buttons.component.mjs +0 -66
  1419. package/esm2022/libs/ui/elements/src/lib/sortable-list/sortable-list.component.mjs +0 -43
  1420. package/esm2022/libs/ui/inputs/src/lib/image-input/image-input.component.mjs +0 -183
  1421. package/esm2022/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +0 -29
  1422. package/esm2022/libs/ui/map/src/lib/components/map/map.component.mjs +0 -40
  1423. package/esm2022/libs/ui/map/src/lib/ui-map.module.mjs +0 -33
  1424. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts +0 -21
  1425. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts.map +0 -1
  1426. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts +0 -8
  1427. 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
  1428. 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
  1429. 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
  1430. 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
  1431. 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
  1432. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts +0 -26
  1433. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts.map +0 -1
  1434. package/libs/feature/editor/src/lib/models/fields.model.d.ts +0 -15
  1435. package/libs/feature/editor/src/lib/models/fields.model.d.ts.map +0 -1
  1436. package/libs/feature/map/src/lib/+state/map.effects.d.ts +0 -9
  1437. package/libs/feature/map/src/lib/+state/map.effects.d.ts.map +0 -1
  1438. package/libs/feature/map/src/lib/+state/map.models.d.ts +0 -9
  1439. package/libs/feature/map/src/lib/+state/map.models.d.ts.map +0 -1
  1440. package/libs/feature/map/src/lib/constant/map-options.d.ts +0 -9
  1441. package/libs/feature/map/src/lib/constant/map-options.d.ts.map +0 -1
  1442. package/libs/feature/map/src/lib/constant/style.constant.d.ts +0 -4
  1443. package/libs/feature/map/src/lib/constant/style.constant.d.ts.map +0 -1
  1444. package/libs/feature/map/src/lib/feature-info/feature-info.service.d.ts +0 -16
  1445. package/libs/feature/map/src/lib/feature-info/feature-info.service.d.ts.map +0 -1
  1446. package/libs/feature/map/src/lib/manager/map-instance.directive.d.ts +0 -9
  1447. package/libs/feature/map/src/lib/manager/map-instance.directive.d.ts.map +0 -1
  1448. package/libs/feature/map/src/lib/manager/map-manager.service.d.ts +0 -11
  1449. package/libs/feature/map/src/lib/manager/map-manager.service.d.ts.map +0 -1
  1450. package/libs/feature/map/src/lib/map-container/map-container.component.d.ts +0 -12
  1451. package/libs/feature/map/src/lib/map-container/map-container.component.d.ts.map +0 -1
  1452. package/libs/feature/map/src/lib/map-context/component/map-context.component.d.ts +0 -26
  1453. package/libs/feature/map/src/lib/map-context/component/map-context.component.d.ts.map +0 -1
  1454. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts +0 -77
  1455. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts.map +0 -1
  1456. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts +0 -26
  1457. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts.map +0 -1
  1458. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts +0 -18
  1459. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts.map +0 -1
  1460. package/libs/ui/elements/src/lib/pagination/pagination.component.d.ts +0 -16
  1461. package/libs/ui/elements/src/lib/pagination/pagination.component.d.ts.map +0 -1
  1462. package/libs/ui/elements/src/lib/pagination-buttons/pagination-buttons.component.d.ts +0 -17
  1463. package/libs/ui/elements/src/lib/pagination-buttons/pagination-buttons.component.d.ts.map +0 -1
  1464. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts +0 -22
  1465. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts.map +0 -1
  1466. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts.map +0 -1
  1467. package/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.d.ts +0 -12
  1468. package/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.d.ts.map +0 -1
  1469. package/libs/ui/map/src/lib/components/map/map.component.d.ts +0 -19
  1470. package/libs/ui/map/src/lib/components/map/map.component.d.ts.map +0 -1
  1471. package/libs/ui/map/src/lib/ui-map.module.d.ts +0 -13
  1472. package/libs/ui/map/src/lib/ui-map.module.d.ts.map +0 -1
  1473. package/src/libs/common/fixtures/src/lib/elasticsearch/search-responses.ts +0 -445
  1474. package/src/libs/common/fixtures/src/lib/ol-feature.fixture.ts +0 -7
  1475. package/src/libs/common/fixtures/src/lib/utils/freeze.ts +0 -10
  1476. package/src/libs/common/fixtures/src/lib/utils/index.ts +0 -1
  1477. package/src/libs/feature/dataviz/src/lib/feature-dataviz.module.ts +0 -44
  1478. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.html +0 -8
  1479. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.ts +0 -70
  1480. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.html +0 -4
  1481. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.ts +0 -15
  1482. 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
  1483. 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
  1484. 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
  1485. 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
  1486. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.ts +0 -43
  1487. package/src/libs/feature/editor/src/lib/models/fields.model.ts +0 -29
  1488. package/src/libs/feature/map/src/lib/+state/map.effects.ts +0 -7
  1489. package/src/libs/feature/map/src/lib/+state/map.models.ts +0 -9
  1490. package/src/libs/feature/map/src/lib/constant/map-options.ts +0 -17
  1491. package/src/libs/feature/map/src/lib/feature-info/feature-info.service.ts +0 -42
  1492. package/src/libs/feature/map/src/lib/manager/map-instance.directive.ts +0 -10
  1493. package/src/libs/feature/map/src/lib/manager/map-manager.service.ts +0 -13
  1494. package/src/libs/feature/map/src/lib/map-container/map-container.component.html +0 -1
  1495. package/src/libs/feature/map/src/lib/map-container/map-container.component.ts +0 -26
  1496. package/src/libs/feature/map/src/lib/map-context/component/map-context.component.html +0 -1
  1497. package/src/libs/feature/map/src/lib/map-context/component/map-context.component.ts +0 -57
  1498. package/src/libs/feature/map/src/lib/map-context/map-context.fixtures.ts +0 -51
  1499. package/src/libs/feature/map/src/lib/map-context/map-context.model.ts +0 -95
  1500. package/src/libs/feature/map/src/lib/map-context/map-context.service.ts +0 -318
  1501. package/src/libs/ui/catalog/src/lib/ui-catalog.module.ts +0 -38
  1502. package/src/libs/ui/elements/src/lib/pagination/pagination.component.ts +0 -50
  1503. package/src/libs/ui/elements/src/lib/pagination-buttons/pagination-buttons.component.html +0 -33
  1504. package/src/libs/ui/elements/src/lib/pagination-buttons/pagination-buttons.component.ts +0 -68
  1505. package/src/libs/ui/elements/src/lib/sortable-list/sortable-list.component.html +0 -36
  1506. package/src/libs/ui/elements/src/lib/sortable-list/sortable-list.component.ts +0 -56
  1507. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.html +0 -146
  1508. package/src/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.html +0 -26
  1509. package/src/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.ts +0 -32
  1510. package/src/libs/ui/map/src/lib/components/map/map.component.ts +0 -57
  1511. package/src/libs/ui/map/src/lib/ui-map.module.ts +0 -19
  1512. /package/src/libs/feature/editor/src/lib/components/{overview-upload/overview-upload.component.css → contact-card/contact-card.component.css} +0 -0
  1513. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.css → import-record/import-record.component.css} +0 -0
  1514. /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 → online-resource-card/online-resource-card.component.css} +0 -0
  1515. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.css → online-service-resource-input/online-service-resource-input.component.css} +0 -0
  1516. /package/src/libs/feature/{map/src/lib/map-container/map-container.component.css → editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.css} +0 -0
  1517. /package/src/libs/feature/{map/src/lib/map-context/component/map-context.component.css → editor/src/lib/components/record-form/form-field/form-field-date/form-field-date.component.css} +0 -0
  1518. /package/src/libs/{ui/elements/src/lib/pagination-buttons/pagination-buttons.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.css} +0 -0
  1519. /package/src/libs/{ui/elements/src/lib/pagination/pagination.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.css} +0 -0
  1520. /package/src/libs/{ui/inputs/src/lib/image-input/image-input.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.css} +0 -0
  1521. /package/src/libs/{ui/map/src/lib/components/map/map.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.css} +0 -0
  1522. /package/src/libs/ui/{inputs → layout}/src/lib/previous-next-buttons/previous-next-buttons.component.css +0 -0
@@ -1,14 +1,15 @@
1
- import { Component, ChangeDetectionStrategy, Input } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ import { TranslateModule } from '@ngx-translate/core';
2
3
  import * as i0 from "@angular/core";
3
4
  import * as i1 from "@ngx-translate/core";
4
5
  export class MetadataCatalogComponent {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MetadataCatalogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MetadataCatalogComponent, selector: "gn-ui-metadata-catalog", inputs: { sourceLabel: "sourceLabel" }, ngImport: i0, template: "<div>\n <p class=\"text-gray-700 text-xs mb-3 uppercase\" translate>\n record.metadata.catalog\n </p>\n <p class=\"text-primary font-title text-21 mb-1\">\n {{ sourceLabel }}\n </p>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MetadataCatalogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MetadataCatalogComponent, isStandalone: true, selector: "gn-ui-metadata-catalog", inputs: { sourceLabel: "sourceLabel" }, ngImport: i0, template: "<div>\n <p class=\"text-gray-700 text-xs mb-3 uppercase\" translate>\n record.metadata.catalog\n </p>\n <p class=\"text-primary font-title text-21 mb-1\">\n {{ sourceLabel }}\n </p>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7
8
  }
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MetadataCatalogComponent, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MetadataCatalogComponent, decorators: [{
9
10
  type: Component,
10
- args: [{ selector: 'gn-ui-metadata-catalog', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div>\n <p class=\"text-gray-700 text-xs mb-3 uppercase\" translate>\n record.metadata.catalog\n </p>\n <p class=\"text-primary font-title text-21 mb-1\">\n {{ sourceLabel }}\n </p>\n</div>\n" }]
11
+ args: [{ selector: 'gn-ui-metadata-catalog', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [TranslateModule], template: "<div>\n <p class=\"text-gray-700 text-xs mb-3 uppercase\" translate>\n record.metadata.catalog\n </p>\n <p class=\"text-primary font-title text-21 mb-1\">\n {{ sourceLabel }}\n </p>\n</div>\n" }]
11
12
  }], propDecorators: { sourceLabel: [{
12
13
  type: Input
13
14
  }] } });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtY2F0YWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvbWV0YWRhdGEtY2F0YWxvZy9tZXRhZGF0YS1jYXRhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9tZXRhZGF0YS1jYXRhbG9nL21ldGFkYXRhLWNhdGFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUE7OztBQVF6RSxNQUFNLE9BQU8sd0JBQXdCOytHQUF4Qix3QkFBd0I7bUdBQXhCLHdCQUF3QixzR0NSckMsMk1BUUE7OzRGREFhLHdCQUF3QjtrQkFOcEMsU0FBUzsrQkFDRSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLW1ldGFkYXRhLWNhdGFsb2cnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWV0YWRhdGEtY2F0YWxvZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21ldGFkYXRhLWNhdGFsb2cuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTWV0YWRhdGFDYXRhbG9nQ29tcG9uZW50IHtcbiAgQElucHV0KCkgc291cmNlTGFiZWw6IHN0cmluZ1xufVxuIiwiPGRpdj5cbiAgPHAgY2xhc3M9XCJ0ZXh0LWdyYXktNzAwIHRleHQteHMgbWItMyB1cHBlcmNhc2VcIiB0cmFuc2xhdGU+XG4gICAgcmVjb3JkLm1ldGFkYXRhLmNhdGFsb2dcbiAgPC9wPlxuICA8cCBjbGFzcz1cInRleHQtcHJpbWFyeSBmb250LXRpdGxlIHRleHQtMjEgbWItMVwiPlxuICAgIHt7IHNvdXJjZUxhYmVsIH19XG4gIDwvcD5cbjwvZGl2PlxuIl19
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtY2F0YWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvbWV0YWRhdGEtY2F0YWxvZy9tZXRhZGF0YS1jYXRhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9tZXRhZGF0YS1jYXRhbG9nL21ldGFkYXRhLWNhdGFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBOzs7QUFVckQsTUFBTSxPQUFPLHdCQUF3QjsrR0FBeEIsd0JBQXdCO21HQUF4Qix3QkFBd0IsMEhDWHJDLDJNQVFBLHlERENZLGVBQWU7OzRGQUVkLHdCQUF3QjtrQkFScEMsU0FBUzsrQkFDRSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsZUFBZSxDQUFDOzhCQUdqQixXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktbWV0YWRhdGEtY2F0YWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZXRhZGF0YS1jYXRhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWV0YWRhdGEtY2F0YWxvZy5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbVHJhbnNsYXRlTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgTWV0YWRhdGFDYXRhbG9nQ29tcG9uZW50IHtcbiAgQElucHV0KCkgc291cmNlTGFiZWw6IHN0cmluZ1xufVxuIiwiPGRpdj5cbiAgPHAgY2xhc3M9XCJ0ZXh0LWdyYXktNzAwIHRleHQteHMgbWItMyB1cHBlcmNhc2VcIiB0cmFuc2xhdGU+XG4gICAgcmVjb3JkLm1ldGFkYXRhLmNhdGFsb2dcbiAgPC9wPlxuICA8cCBjbGFzcz1cInRleHQtcHJpbWFyeSBmb250LXRpdGxlIHRleHQtMjEgbWItMVwiPlxuICAgIHt7IHNvdXJjZUxhYmVsIH19XG4gIDwvcD5cbjwvZGl2PlxuIl19
@@ -1,9 +1,13 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
2
+ import { ThumbnailComponent } from '../thumbnail/thumbnail.component';
3
+ import { NgIcon, provideIcons } from '@ng-icons/core';
4
+ import { matMailOutline, matOpenInNew, matPersonOutline, } from '@ng-icons/material-icons/baseline';
5
+ import { matCallOutline, matLocationOnOutline, } from '@ng-icons/material-icons/outline';
6
+ import { CommonModule } from '@angular/common';
7
+ import { TranslateModule } from '@ngx-translate/core';
2
8
  import * as i0 from "@angular/core";
3
9
  import * as i1 from "@angular/common";
4
- import * as i2 from "@angular/material/icon";
5
- import * as i3 from "@ngx-translate/core";
6
- import * as i4 from "../thumbnail/thumbnail.component";
10
+ import * as i2 from "@ngx-translate/core";
7
11
  export class MetadataContactComponent {
8
12
  constructor() {
9
13
  this.organizationClick = new EventEmitter();
@@ -26,12 +30,28 @@ export class MetadataContactComponent {
26
30
  onOrganizationClick() {
27
31
  this.organizationClick.emit(this.shownOrganization);
28
32
  }
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MetadataContactComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MetadataContactComponent, selector: "gn-ui-metadata-contact", inputs: { metadata: "metadata" }, outputs: { organizationClick: "organizationClick", contactClick: "contactClick" }, ngImport: i0, template: "<div class=\"py-5 px-5 rounded bg-gray-100 text-black mb-6\">\n <div class=\"grid gap-3 overflow-hidden\">\n <div>\n <p class=\"text-sm font-medium\" translate>record.metadata.contact</p>\n </div>\n <div\n *ngIf=\"shownOrganization?.logoUrl?.href\"\n class=\"flex items-center justify-center border-solid border border-gray-300 rounded-md bg-white h-32 overflow-hidden\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"shownOrganization.logoUrl.href\"\n fit=\"contain\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"grid gap-1\">\n <div class=\"flex\">\n <div\n class=\"text-primary font-title text-21 mr-2 cursor-pointer hover:underline\"\n (click)=\"onOrganizationClick()\"\n data-cy=\"organization-name\"\n >\n {{ shownOrganization?.name }}\n </div>\n </div>\n <div *ngIf=\"shownOrganization?.website\">\n <a\n [href]=\"shownOrganization.website\"\n target=\"_blank\"\n class=\"contact-website text-primary text-sm cursor-pointer hover:underline transition-all\"\n >{{ shownOrganization.website }}\n <mat-icon\n class=\"material-symbols-outlined !w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n >open_in_new</mat-icon\n >\n </a>\n </div>\n </div>\n <div class=\"grid gap-5 py-3 overflow-hidden\">\n <div *ngIf=\"contacts[0]?.phone\">\n <div class=\"flex\">\n <mat-icon\n class=\"material-symbols-outlined !w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n >call_outline</mat-icon\n >\n <div class=\"flex flex-col ml-2\">\n <p class=\"text-sm\">{{ contacts[0].phone }}</p>\n </div>\n </div>\n </div>\n <div *ngIf=\"contacts[0]?.email\">\n <div class=\"flex\">\n <mat-icon\n class=\"material-symbols-outlined !w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n >\n mail_outline</mat-icon\n >\n <a\n *ngIf=\"contacts.length\"\n [href]=\"'mailto:' + contacts[0].email\"\n class=\"text-sm hover:underline ml-2\"\n target=\"_blank\"\n data-cy=\"contact-email\"\n >{{ contacts[0].email }}</a\n >\n </div>\n </div>\n <div *ngIf=\"contacts[0]?.firstName || contacts[0]?.lastName\">\n <div class=\"flex\">\n <mat-icon\n class=\"material-symbols-outlined !w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n >person_outline</mat-icon\n >\n <div class=\"flex flex-col ml-2\">\n <p class=\"text-sm\">\n {{ contacts[0]?.firstName || '' }}\n {{ contacts[0]?.lastName || '' }}\n </p>\n </div>\n </div>\n </div>\n <div *ngIf=\"contacts[0]?.address\">\n <div class=\"flex\">\n <mat-icon\n class=\"material-symbols-outlined !w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n >\n location_on</mat-icon\n >\n <div class=\"flex flex-col ml-2\">\n <p *ngFor=\"let addressPart of address\" class=\"text-sm\">\n {{ addressPart }}\n </p>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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: "component", type: i4.ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"], outputs: ["placeholderShown"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MetadataContactComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
34
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MetadataContactComponent, isStandalone: true, selector: "gn-ui-metadata-contact", inputs: { metadata: "metadata" }, outputs: { organizationClick: "organizationClick", contactClick: "contactClick" }, ngImport: i0, template: "<div class=\"py-5 px-5 rounded bg-gray-100 text-black mb-6\">\n <div class=\"grid gap-3 overflow-hidden\">\n <div>\n <p class=\"text-sm font-medium\" translate>record.metadata.contact</p>\n </div>\n <div\n *ngIf=\"shownOrganization?.logoUrl?.href\"\n class=\"flex items-center justify-center border-solid border border-gray-300 rounded-md bg-white h-32 overflow-hidden\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"shownOrganization.logoUrl.href\"\n fit=\"contain\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"grid gap-1\">\n <div class=\"flex\">\n <div\n class=\"text-primary font-title text-21 mr-2 cursor-pointer hover:underline\"\n (click)=\"onOrganizationClick()\"\n data-cy=\"organization-name\"\n >\n {{ shownOrganization?.name }}\n </div>\n </div>\n <div *ngIf=\"shownOrganization?.website\">\n <a\n [href]=\"shownOrganization.website\"\n target=\"_blank\"\n class=\"contact-website text-primary text-sm cursor-pointer hover:underline transition-all\"\n >{{ shownOrganization.website }}\n <ng-icon\n class=\"!w-[12px] !h-[12px] opacity-75 shrink-0\"\n name=\"matOpenInNew\"\n ></ng-icon>\n </a>\n </div>\n </div>\n <div class=\"grid gap-5 py-3 overflow-hidden\">\n <div *ngIf=\"contacts[0]?.phone\">\n <div class=\"flex\">\n <ng-icon\n class=\"!w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n name=\"matCallOutline\"\n ></ng-icon>\n <div class=\"flex flex-col ml-2\">\n <p class=\"text-sm\">{{ contacts[0].phone }}</p>\n </div>\n </div>\n </div>\n <div *ngIf=\"contacts[0]?.email\">\n <div class=\"flex\">\n <ng-icon\n class=\"!w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n name=\"matMailOutline\"\n ></ng-icon>\n <a\n *ngIf=\"contacts.length\"\n [href]=\"'mailto:' + contacts[0].email\"\n class=\"text-sm hover:underline ml-2\"\n target=\"_blank\"\n data-cy=\"contact-email\"\n >{{ contacts[0].email }}</a\n >\n </div>\n </div>\n <div *ngIf=\"contacts[0]?.firstName || contacts[0]?.lastName\">\n <div class=\"flex\">\n <ng-icon\n class=\"!w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n name=\"matPersonOutline\"\n ></ng-icon>\n <div class=\"flex flex-col ml-2\">\n <p class=\"text-sm\">\n {{ contacts[0]?.firstName || '' }}\n {{ contacts[0]?.lastName || '' }}\n </p>\n </div>\n </div>\n </div>\n <div *ngIf=\"contacts[0]?.address\">\n <div class=\"flex\">\n <ng-icon\n class=\"!w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n name=\"matLocationOnOutline\"\n ></ng-icon>\n <div class=\"flex flex-col ml-2\">\n <p *ngFor=\"let addressPart of address\" class=\"text-sm\">\n {{ addressPart }}\n </p>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"], outputs: ["placeholderShown"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], viewProviders: [
35
+ provideIcons({
36
+ matOpenInNew,
37
+ matCallOutline,
38
+ matMailOutline,
39
+ matPersonOutline,
40
+ matLocationOnOutline,
41
+ }),
42
+ ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
31
43
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MetadataContactComponent, decorators: [{
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MetadataContactComponent, decorators: [{
33
45
  type: Component,
34
- args: [{ selector: 'gn-ui-metadata-contact', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"py-5 px-5 rounded bg-gray-100 text-black mb-6\">\n <div class=\"grid gap-3 overflow-hidden\">\n <div>\n <p class=\"text-sm font-medium\" translate>record.metadata.contact</p>\n </div>\n <div\n *ngIf=\"shownOrganization?.logoUrl?.href\"\n class=\"flex items-center justify-center border-solid border border-gray-300 rounded-md bg-white h-32 overflow-hidden\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"shownOrganization.logoUrl.href\"\n fit=\"contain\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"grid gap-1\">\n <div class=\"flex\">\n <div\n class=\"text-primary font-title text-21 mr-2 cursor-pointer hover:underline\"\n (click)=\"onOrganizationClick()\"\n data-cy=\"organization-name\"\n >\n {{ shownOrganization?.name }}\n </div>\n </div>\n <div *ngIf=\"shownOrganization?.website\">\n <a\n [href]=\"shownOrganization.website\"\n target=\"_blank\"\n class=\"contact-website text-primary text-sm cursor-pointer hover:underline transition-all\"\n >{{ shownOrganization.website }}\n <mat-icon\n class=\"material-symbols-outlined !w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n >open_in_new</mat-icon\n >\n </a>\n </div>\n </div>\n <div class=\"grid gap-5 py-3 overflow-hidden\">\n <div *ngIf=\"contacts[0]?.phone\">\n <div class=\"flex\">\n <mat-icon\n class=\"material-symbols-outlined !w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n >call_outline</mat-icon\n >\n <div class=\"flex flex-col ml-2\">\n <p class=\"text-sm\">{{ contacts[0].phone }}</p>\n </div>\n </div>\n </div>\n <div *ngIf=\"contacts[0]?.email\">\n <div class=\"flex\">\n <mat-icon\n class=\"material-symbols-outlined !w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n >\n mail_outline</mat-icon\n >\n <a\n *ngIf=\"contacts.length\"\n [href]=\"'mailto:' + contacts[0].email\"\n class=\"text-sm hover:underline ml-2\"\n target=\"_blank\"\n data-cy=\"contact-email\"\n >{{ contacts[0].email }}</a\n >\n </div>\n </div>\n <div *ngIf=\"contacts[0]?.firstName || contacts[0]?.lastName\">\n <div class=\"flex\">\n <mat-icon\n class=\"material-symbols-outlined !w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n >person_outline</mat-icon\n >\n <div class=\"flex flex-col ml-2\">\n <p class=\"text-sm\">\n {{ contacts[0]?.firstName || '' }}\n {{ contacts[0]?.lastName || '' }}\n </p>\n </div>\n </div>\n </div>\n <div *ngIf=\"contacts[0]?.address\">\n <div class=\"flex\">\n <mat-icon\n class=\"material-symbols-outlined !w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n >\n location_on</mat-icon\n >\n <div class=\"flex flex-col ml-2\">\n <p *ngFor=\"let addressPart of address\" class=\"text-sm\">\n {{ addressPart }}\n </p>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n" }]
46
+ args: [{ selector: 'gn-ui-metadata-contact', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, ThumbnailComponent, NgIcon, TranslateModule], viewProviders: [
47
+ provideIcons({
48
+ matOpenInNew,
49
+ matCallOutline,
50
+ matMailOutline,
51
+ matPersonOutline,
52
+ matLocationOnOutline,
53
+ }),
54
+ ], template: "<div class=\"py-5 px-5 rounded bg-gray-100 text-black mb-6\">\n <div class=\"grid gap-3 overflow-hidden\">\n <div>\n <p class=\"text-sm font-medium\" translate>record.metadata.contact</p>\n </div>\n <div\n *ngIf=\"shownOrganization?.logoUrl?.href\"\n class=\"flex items-center justify-center border-solid border border-gray-300 rounded-md bg-white h-32 overflow-hidden\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"shownOrganization.logoUrl.href\"\n fit=\"contain\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"grid gap-1\">\n <div class=\"flex\">\n <div\n class=\"text-primary font-title text-21 mr-2 cursor-pointer hover:underline\"\n (click)=\"onOrganizationClick()\"\n data-cy=\"organization-name\"\n >\n {{ shownOrganization?.name }}\n </div>\n </div>\n <div *ngIf=\"shownOrganization?.website\">\n <a\n [href]=\"shownOrganization.website\"\n target=\"_blank\"\n class=\"contact-website text-primary text-sm cursor-pointer hover:underline transition-all\"\n >{{ shownOrganization.website }}\n <ng-icon\n class=\"!w-[12px] !h-[12px] opacity-75 shrink-0\"\n name=\"matOpenInNew\"\n ></ng-icon>\n </a>\n </div>\n </div>\n <div class=\"grid gap-5 py-3 overflow-hidden\">\n <div *ngIf=\"contacts[0]?.phone\">\n <div class=\"flex\">\n <ng-icon\n class=\"!w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n name=\"matCallOutline\"\n ></ng-icon>\n <div class=\"flex flex-col ml-2\">\n <p class=\"text-sm\">{{ contacts[0].phone }}</p>\n </div>\n </div>\n </div>\n <div *ngIf=\"contacts[0]?.email\">\n <div class=\"flex\">\n <ng-icon\n class=\"!w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n name=\"matMailOutline\"\n ></ng-icon>\n <a\n *ngIf=\"contacts.length\"\n [href]=\"'mailto:' + contacts[0].email\"\n class=\"text-sm hover:underline ml-2\"\n target=\"_blank\"\n data-cy=\"contact-email\"\n >{{ contacts[0].email }}</a\n >\n </div>\n </div>\n <div *ngIf=\"contacts[0]?.firstName || contacts[0]?.lastName\">\n <div class=\"flex\">\n <ng-icon\n class=\"!w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n name=\"matPersonOutline\"\n ></ng-icon>\n <div class=\"flex flex-col ml-2\">\n <p class=\"text-sm\">\n {{ contacts[0]?.firstName || '' }}\n {{ contacts[0]?.lastName || '' }}\n </p>\n </div>\n </div>\n </div>\n <div *ngIf=\"contacts[0]?.address\">\n <div class=\"flex\">\n <ng-icon\n class=\"!w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n name=\"matLocationOnOutline\"\n ></ng-icon>\n <div class=\"flex flex-col ml-2\">\n <p *ngFor=\"let addressPart of address\" class=\"text-sm\">\n {{ addressPart }}\n </p>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n" }]
35
55
  }], propDecorators: { metadata: [{
36
56
  type: Input
37
57
  }], organizationClick: [{
@@ -39,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
39
59
  }], contactClick: [{
40
60
  type: Output
41
61
  }] } });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtY29udGFjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvbWV0YWRhdGEtY29udGFjdC9tZXRhZGF0YS1jb250YWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9tZXRhZGF0YS1jb250YWN0L21ldGFkYXRhLWNvbnRhY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUE7Ozs7OztBQWF0QixNQUFNLE9BQU8sd0JBQXdCO0lBTnJDO1FBUVksc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUE7UUFDcEQsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFBO0tBd0J4RDtJQXRCQyxJQUFJLGlCQUFpQjtRQUNuQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUE7SUFDeEMsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sQ0FDTCxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxLQUFLLFNBQVM7WUFDL0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsbUJBQW1CO1lBQ25DLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FDbEMsQ0FBQTtJQUNILENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU87YUFDMUMsS0FBSyxDQUFDLEdBQUcsQ0FBQzthQUNWLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUE7UUFDN0IsT0FBTyxZQUFZLENBQUE7SUFDckIsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0lBQ3JELENBQUM7K0dBMUJVLHdCQUF3QjttR0FBeEIsd0JBQXdCLG1MQ25CckMsNjJHQWtHQTs7NEZEL0VhLHdCQUF3QjtrQkFOcEMsU0FBUzsrQkFDRSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksaUJBQWlCO3NCQUExQixNQUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBDYXRhbG9nUmVjb3JkLFxuICBJbmRpdmlkdWFsLFxuICBPcmdhbml6YXRpb24sXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktbWV0YWRhdGEtY29udGFjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZXRhZGF0YS1jb250YWN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWV0YWRhdGEtY29udGFjdC5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBNZXRhZGF0YUNvbnRhY3RDb21wb25lbnQge1xuICBASW5wdXQoKSBtZXRhZGF0YTogUGFydGlhbDxDYXRhbG9nUmVjb3JkPlxuICBAT3V0cHV0KCkgb3JnYW5pemF0aW9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE9yZ2FuaXphdGlvbj4oKVxuICBAT3V0cHV0KCkgY29udGFjdENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxJbmRpdmlkdWFsPigpXG5cbiAgZ2V0IHNob3duT3JnYW5pemF0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLm1ldGFkYXRhLm93bmVyT3JnYW5pemF0aW9uXG4gIH1cblxuICBnZXQgY29udGFjdHMoKSB7XG4gICAgcmV0dXJuIChcbiAgICAgICh0aGlzLm1ldGFkYXRhLmtpbmQgPT09ICdkYXRhc2V0J1xuICAgICAgICA/IHRoaXMubWV0YWRhdGEuY29udGFjdHNGb3JSZXNvdXJjZVxuICAgICAgICA6IHRoaXMubWV0YWRhdGEuY29udGFjdHMpIHx8IFtdXG4gICAgKVxuICB9XG5cbiAgZ2V0IGFkZHJlc3MoKSB7XG4gICAgY29uc3QgYWRkcmVzc1BhcnRzID0gdGhpcy5jb250YWN0c1swXS5hZGRyZXNzXG4gICAgICAuc3BsaXQoJywnKVxuICAgICAgLm1hcCgocGFydCkgPT4gcGFydC50cmltKCkpXG4gICAgcmV0dXJuIGFkZHJlc3NQYXJ0c1xuICB9XG5cbiAgb25Pcmdhbml6YXRpb25DbGljaygpIHtcbiAgICB0aGlzLm9yZ2FuaXphdGlvbkNsaWNrLmVtaXQodGhpcy5zaG93bk9yZ2FuaXphdGlvbilcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInB5LTUgcHgtNSByb3VuZGVkIGJnLWdyYXktMTAwIHRleHQtYmxhY2sgbWItNlwiPlxuICA8ZGl2IGNsYXNzPVwiZ3JpZCBnYXAtMyBvdmVyZmxvdy1oaWRkZW5cIj5cbiAgICA8ZGl2PlxuICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXNtIGZvbnQtbWVkaXVtXCIgdHJhbnNsYXRlPnJlY29yZC5tZXRhZGF0YS5jb250YWN0PC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwic2hvd25Pcmdhbml6YXRpb24/LmxvZ29Vcmw/LmhyZWZcIlxuICAgICAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBib3JkZXItc29saWQgYm9yZGVyIGJvcmRlci1ncmF5LTMwMCByb3VuZGVkLW1kIGJnLXdoaXRlIGgtMzIgb3ZlcmZsb3ctaGlkZGVuXCJcbiAgICA+XG4gICAgICA8Z24tdWktdGh1bWJuYWlsXG4gICAgICAgIGNsYXNzPVwicmVsYXRpdmUgaC1mdWxsIHctZnVsbFwiXG4gICAgICAgIFt0aHVtYm5haWxVcmxdPVwic2hvd25Pcmdhbml6YXRpb24ubG9nb1VybC5ocmVmXCJcbiAgICAgICAgZml0PVwiY29udGFpblwiXG4gICAgICA+PC9nbi11aS10aHVtYm5haWw+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImdyaWQgZ2FwLTFcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4XCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInRleHQtcHJpbWFyeSBmb250LXRpdGxlIHRleHQtMjEgbXItMiBjdXJzb3ItcG9pbnRlciBob3Zlcjp1bmRlcmxpbmVcIlxuICAgICAgICAgIChjbGljayk9XCJvbk9yZ2FuaXphdGlvbkNsaWNrKClcIlxuICAgICAgICAgIGRhdGEtY3k9XCJvcmdhbml6YXRpb24tbmFtZVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBzaG93bk9yZ2FuaXphdGlvbj8ubmFtZSB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cInNob3duT3JnYW5pemF0aW9uPy53ZWJzaXRlXCI+XG4gICAgICAgIDxhXG4gICAgICAgICAgW2hyZWZdPVwic2hvd25Pcmdhbml6YXRpb24ud2Vic2l0ZVwiXG4gICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICBjbGFzcz1cImNvbnRhY3Qtd2Vic2l0ZSB0ZXh0LXByaW1hcnkgdGV4dC1zbSBjdXJzb3ItcG9pbnRlciBob3Zlcjp1bmRlcmxpbmUgdHJhbnNpdGlvbi1hbGxcIlxuICAgICAgICAgID57eyBzaG93bk9yZ2FuaXphdGlvbi53ZWJzaXRlIH19XG4gICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgIXctWzEycHhdICFoLVsxMnB4XSAhdGV4dC1bMTJweF0gb3BhY2l0eS03NSBzaHJpbmstMFwiXG4gICAgICAgICAgICA+b3Blbl9pbl9uZXc8L21hdC1pY29uXG4gICAgICAgICAgPlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBnYXAtNSBweS0zIG92ZXJmbG93LWhpZGRlblwiPlxuICAgICAgPGRpdiAqbmdJZj1cImNvbnRhY3RzWzBdPy5waG9uZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleFwiPlxuICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkICF3LTUgIWgtNSAhdGV4dC1bMjBweF0gb3BhY2l0eS03NSBzaHJpbmstMFwiXG4gICAgICAgICAgICA+Y2FsbF9vdXRsaW5lPC9tYXQtaWNvblxuICAgICAgICAgID5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBtbC0yXCI+XG4gICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtc21cIj57eyBjb250YWN0c1swXS5waG9uZSB9fTwvcD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJjb250YWN0c1swXT8uZW1haWxcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXhcIj5cbiAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCAhdy01ICFoLTUgIXRleHQtWzIwcHhdIG9wYWNpdHktNzUgc2hyaW5rLTBcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIG1haWxfb3V0bGluZTwvbWF0LWljb25cbiAgICAgICAgICA+XG4gICAgICAgICAgPGFcbiAgICAgICAgICAgICpuZ0lmPVwiY29udGFjdHMubGVuZ3RoXCJcbiAgICAgICAgICAgIFtocmVmXT1cIidtYWlsdG86JyArIGNvbnRhY3RzWzBdLmVtYWlsXCJcbiAgICAgICAgICAgIGNsYXNzPVwidGV4dC1zbSBob3Zlcjp1bmRlcmxpbmUgbWwtMlwiXG4gICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgZGF0YS1jeT1cImNvbnRhY3QtZW1haWxcIlxuICAgICAgICAgICAgPnt7IGNvbnRhY3RzWzBdLmVtYWlsIH19PC9hXG4gICAgICAgICAgPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNvbnRhY3RzWzBdPy5maXJzdE5hbWUgfHwgY29udGFjdHNbMF0/Lmxhc3ROYW1lXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4XCI+XG4gICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgIXctNSAhaC01ICF0ZXh0LVsyMHB4XSBvcGFjaXR5LTc1IHNocmluay0wXCJcbiAgICAgICAgICAgID5wZXJzb25fb3V0bGluZTwvbWF0LWljb25cbiAgICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgbWwtMlwiPlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXNtXCI+XG4gICAgICAgICAgICAgIHt7IGNvbnRhY3RzWzBdPy5maXJzdE5hbWUgfHwgJycgfX1cbiAgICAgICAgICAgICAge3sgY29udGFjdHNbMF0/Lmxhc3ROYW1lIHx8ICcnIH19XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiY29udGFjdHNbMF0/LmFkZHJlc3NcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXhcIj5cbiAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCAhdy01ICFoLTUgIXRleHQtWzIwcHhdIG9wYWNpdHktNzUgc2hyaW5rLTBcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIGxvY2F0aW9uX29uPC9tYXQtaWNvblxuICAgICAgICAgID5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBtbC0yXCI+XG4gICAgICAgICAgICA8cCAqbmdGb3I9XCJsZXQgYWRkcmVzc1BhcnQgb2YgYWRkcmVzc1wiIGNsYXNzPVwidGV4dC1zbVwiPlxuICAgICAgICAgICAgICB7eyBhZGRyZXNzUGFydCB9fVxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtY29udGFjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvbWV0YWRhdGEtY29udGFjdC9tZXRhZGF0YS1jb250YWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9tZXRhZGF0YS1jb250YWN0L21ldGFkYXRhLWNvbnRhY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUE7QUFNdEIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDckUsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNyRCxPQUFPLEVBQ0wsY0FBYyxFQUNkLFlBQVksRUFDWixnQkFBZ0IsR0FDakIsTUFBTSxtQ0FBbUMsQ0FBQTtBQUMxQyxPQUFPLEVBQ0wsY0FBYyxFQUNkLG9CQUFvQixHQUNyQixNQUFNLGtDQUFrQyxDQUFBO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7Ozs7QUFtQnJELE1BQU0sT0FBTyx3QkFBd0I7SUFqQnJDO1FBbUJZLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFnQixDQUFBO1FBQ3BELGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQTtLQXdCeEQ7SUF0QkMsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFBO0lBQ3hDLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLENBQ0wsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxTQUFTO1lBQy9CLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLG1CQUFtQjtZQUNuQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQ2xDLENBQUE7SUFDSCxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPO2FBQzFDLEtBQUssQ0FBQyxHQUFHLENBQUM7YUFDVixHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFBO1FBQzdCLE9BQU8sWUFBWSxDQUFBO0lBQ3JCLENBQUM7SUFFRCxtQkFBbUI7UUFDakIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUNyRCxDQUFDOytHQTFCVSx3QkFBd0I7bUdBQXhCLHdCQUF3Qix1TUMzQ3JDLHl2R0FnR0EseUREaEVZLFlBQVksZ1FBQUUsa0JBQWtCLDRIQUFFLE1BQU0sNEdBQUUsZUFBZSwySkFDcEQ7WUFDYixZQUFZLENBQUM7Z0JBQ1gsWUFBWTtnQkFDWixjQUFjO2dCQUNkLGNBQWM7Z0JBQ2QsZ0JBQWdCO2dCQUNoQixvQkFBb0I7YUFDckIsQ0FBQztTQUNIOzs0RkFFVSx3QkFBd0I7a0JBakJwQyxTQUFTOytCQUNFLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLGVBQWUsQ0FBQyxpQkFDckQ7d0JBQ2IsWUFBWSxDQUFDOzRCQUNYLFlBQVk7NEJBQ1osY0FBYzs0QkFDZCxjQUFjOzRCQUNkLGdCQUFnQjs0QkFDaEIsb0JBQW9CO3lCQUNyQixDQUFDO3FCQUNIOzhCQUdRLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksaUJBQWlCO3NCQUExQixNQUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBDYXRhbG9nUmVjb3JkLFxuICBJbmRpdmlkdWFsLFxuICBPcmdhbml6YXRpb24sXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IFRodW1ibmFpbENvbXBvbmVudCB9IGZyb20gJy4uL3RodW1ibmFpbC90aHVtYm5haWwuY29tcG9uZW50J1xuaW1wb3J0IHsgTmdJY29uLCBwcm92aWRlSWNvbnMgfSBmcm9tICdAbmctaWNvbnMvY29yZSdcbmltcG9ydCB7XG4gIG1hdE1haWxPdXRsaW5lLFxuICBtYXRPcGVuSW5OZXcsXG4gIG1hdFBlcnNvbk91dGxpbmUsXG59IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9iYXNlbGluZSdcbmltcG9ydCB7XG4gIG1hdENhbGxPdXRsaW5lLFxuICBtYXRMb2NhdGlvbk9uT3V0bGluZSxcbn0gZnJvbSAnQG5nLWljb25zL21hdGVyaWFsLWljb25zL291dGxpbmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1tZXRhZGF0YS1jb250YWN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL21ldGFkYXRhLWNvbnRhY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tZXRhZGF0YS1jb250YWN0LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRodW1ibmFpbENvbXBvbmVudCwgTmdJY29uLCBUcmFuc2xhdGVNb2R1bGVdLFxuICB2aWV3UHJvdmlkZXJzOiBbXG4gICAgcHJvdmlkZUljb25zKHtcbiAgICAgIG1hdE9wZW5Jbk5ldyxcbiAgICAgIG1hdENhbGxPdXRsaW5lLFxuICAgICAgbWF0TWFpbE91dGxpbmUsXG4gICAgICBtYXRQZXJzb25PdXRsaW5lLFxuICAgICAgbWF0TG9jYXRpb25Pbk91dGxpbmUsXG4gICAgfSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE1ldGFkYXRhQ29udGFjdENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIG1ldGFkYXRhOiBQYXJ0aWFsPENhdGFsb2dSZWNvcmQ+XG4gIEBPdXRwdXQoKSBvcmdhbml6YXRpb25DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8T3JnYW5pemF0aW9uPigpXG4gIEBPdXRwdXQoKSBjb250YWN0Q2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPEluZGl2aWR1YWw+KClcblxuICBnZXQgc2hvd25Pcmdhbml6YXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0YWRhdGEub3duZXJPcmdhbml6YXRpb25cbiAgfVxuXG4gIGdldCBjb250YWN0cygpIHtcbiAgICByZXR1cm4gKFxuICAgICAgKHRoaXMubWV0YWRhdGEua2luZCA9PT0gJ2RhdGFzZXQnXG4gICAgICAgID8gdGhpcy5tZXRhZGF0YS5jb250YWN0c0ZvclJlc291cmNlXG4gICAgICAgIDogdGhpcy5tZXRhZGF0YS5jb250YWN0cykgfHwgW11cbiAgICApXG4gIH1cblxuICBnZXQgYWRkcmVzcygpIHtcbiAgICBjb25zdCBhZGRyZXNzUGFydHMgPSB0aGlzLmNvbnRhY3RzWzBdLmFkZHJlc3NcbiAgICAgIC5zcGxpdCgnLCcpXG4gICAgICAubWFwKChwYXJ0KSA9PiBwYXJ0LnRyaW0oKSlcbiAgICByZXR1cm4gYWRkcmVzc1BhcnRzXG4gIH1cblxuICBvbk9yZ2FuaXphdGlvbkNsaWNrKCkge1xuICAgIHRoaXMub3JnYW5pemF0aW9uQ2xpY2suZW1pdCh0aGlzLnNob3duT3JnYW5pemF0aW9uKVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicHktNSBweC01IHJvdW5kZWQgYmctZ3JheS0xMDAgdGV4dC1ibGFjayBtYi02XCI+XG4gIDxkaXYgY2xhc3M9XCJncmlkIGdhcC0zIG92ZXJmbG93LWhpZGRlblwiPlxuICAgIDxkaXY+XG4gICAgICA8cCBjbGFzcz1cInRleHQtc20gZm9udC1tZWRpdW1cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLmNvbnRhY3Q8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCJzaG93bk9yZ2FuaXphdGlvbj8ubG9nb1VybD8uaHJlZlwiXG4gICAgICBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGJvcmRlci1zb2xpZCBib3JkZXIgYm9yZGVyLWdyYXktMzAwIHJvdW5kZWQtbWQgYmctd2hpdGUgaC0zMiBvdmVyZmxvdy1oaWRkZW5cIlxuICAgID5cbiAgICAgIDxnbi11aS10aHVtYm5haWxcbiAgICAgICAgY2xhc3M9XCJyZWxhdGl2ZSBoLWZ1bGwgdy1mdWxsXCJcbiAgICAgICAgW3RodW1ibmFpbFVybF09XCJzaG93bk9yZ2FuaXphdGlvbi5sb2dvVXJsLmhyZWZcIlxuICAgICAgICBmaXQ9XCJjb250YWluXCJcbiAgICAgID48L2duLXVpLXRodW1ibmFpbD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBnYXAtMVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXhcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwidGV4dC1wcmltYXJ5IGZvbnQtdGl0bGUgdGV4dC0yMSBtci0yIGN1cnNvci1wb2ludGVyIGhvdmVyOnVuZGVybGluZVwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uT3JnYW5pemF0aW9uQ2xpY2soKVwiXG4gICAgICAgICAgZGF0YS1jeT1cIm9yZ2FuaXphdGlvbi1uYW1lXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IHNob3duT3JnYW5pemF0aW9uPy5uYW1lIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwic2hvd25Pcmdhbml6YXRpb24/LndlYnNpdGVcIj5cbiAgICAgICAgPGFcbiAgICAgICAgICBbaHJlZl09XCJzaG93bk9yZ2FuaXphdGlvbi53ZWJzaXRlXCJcbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIGNsYXNzPVwiY29udGFjdC13ZWJzaXRlIHRleHQtcHJpbWFyeSB0ZXh0LXNtIGN1cnNvci1wb2ludGVyIGhvdmVyOnVuZGVybGluZSB0cmFuc2l0aW9uLWFsbFwiXG4gICAgICAgICAgPnt7IHNob3duT3JnYW5pemF0aW9uLndlYnNpdGUgfX1cbiAgICAgICAgICA8bmctaWNvblxuICAgICAgICAgICAgY2xhc3M9XCIhdy1bMTJweF0gIWgtWzEycHhdIG9wYWNpdHktNzUgc2hyaW5rLTBcIlxuICAgICAgICAgICAgbmFtZT1cIm1hdE9wZW5Jbk5ld1wiXG4gICAgICAgICAgPjwvbmctaWNvbj5cbiAgICAgICAgPC9hPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImdyaWQgZ2FwLTUgcHktMyBvdmVyZmxvdy1oaWRkZW5cIj5cbiAgICAgIDxkaXYgKm5nSWY9XCJjb250YWN0c1swXT8ucGhvbmVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXhcIj5cbiAgICAgICAgICA8bmctaWNvblxuICAgICAgICAgICAgY2xhc3M9XCIhdy01ICFoLTUgIXRleHQtWzIwcHhdIG9wYWNpdHktNzUgc2hyaW5rLTBcIlxuICAgICAgICAgICAgbmFtZT1cIm1hdENhbGxPdXRsaW5lXCJcbiAgICAgICAgICA+PC9uZy1pY29uPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIG1sLTJcIj5cbiAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC1zbVwiPnt7IGNvbnRhY3RzWzBdLnBob25lIH19PC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNvbnRhY3RzWzBdPy5lbWFpbFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleFwiPlxuICAgICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgICBjbGFzcz1cIiF3LTUgIWgtNSAhdGV4dC1bMjBweF0gb3BhY2l0eS03NSBzaHJpbmstMFwiXG4gICAgICAgICAgICBuYW1lPVwibWF0TWFpbE91dGxpbmVcIlxuICAgICAgICAgID48L25nLWljb24+XG4gICAgICAgICAgPGFcbiAgICAgICAgICAgICpuZ0lmPVwiY29udGFjdHMubGVuZ3RoXCJcbiAgICAgICAgICAgIFtocmVmXT1cIidtYWlsdG86JyArIGNvbnRhY3RzWzBdLmVtYWlsXCJcbiAgICAgICAgICAgIGNsYXNzPVwidGV4dC1zbSBob3Zlcjp1bmRlcmxpbmUgbWwtMlwiXG4gICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgZGF0YS1jeT1cImNvbnRhY3QtZW1haWxcIlxuICAgICAgICAgICAgPnt7IGNvbnRhY3RzWzBdLmVtYWlsIH19PC9hXG4gICAgICAgICAgPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNvbnRhY3RzWzBdPy5maXJzdE5hbWUgfHwgY29udGFjdHNbMF0/Lmxhc3ROYW1lXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4XCI+XG4gICAgICAgICAgPG5nLWljb25cbiAgICAgICAgICAgIGNsYXNzPVwiIXctNSAhaC01ICF0ZXh0LVsyMHB4XSBvcGFjaXR5LTc1IHNocmluay0wXCJcbiAgICAgICAgICAgIG5hbWU9XCJtYXRQZXJzb25PdXRsaW5lXCJcbiAgICAgICAgICA+PC9uZy1pY29uPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIG1sLTJcIj5cbiAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC1zbVwiPlxuICAgICAgICAgICAgICB7eyBjb250YWN0c1swXT8uZmlyc3ROYW1lIHx8ICcnIH19XG4gICAgICAgICAgICAgIHt7IGNvbnRhY3RzWzBdPy5sYXN0TmFtZSB8fCAnJyB9fVxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNvbnRhY3RzWzBdPy5hZGRyZXNzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4XCI+XG4gICAgICAgICAgPG5nLWljb25cbiAgICAgICAgICAgIGNsYXNzPVwiIXctNSAhaC01ICF0ZXh0LVsyMHB4XSBvcGFjaXR5LTc1IHNocmluay0wXCJcbiAgICAgICAgICAgIG5hbWU9XCJtYXRMb2NhdGlvbk9uT3V0bGluZVwiXG4gICAgICAgICAgPjwvbmctaWNvbj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBtbC0yXCI+XG4gICAgICAgICAgICA8cCAqbmdGb3I9XCJsZXQgYWRkcmVzc1BhcnQgb2YgYWRkcmVzc1wiIGNsYXNzPVwidGV4dC1zbVwiPlxuICAgICAgICAgICAgICB7eyBhZGRyZXNzUGFydCB9fVxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -63,15 +63,16 @@ export class GnUiLinkifyDirective {
63
63
  container.removeChild(node);
64
64
  }
65
65
  createLink(displayValue, url) {
66
- return `<a href="${url}" target="_blank" class="text-primary cursor-pointer hover:underline">${displayValue} <mat-icon class="material-symbols-outlined !w-[12px] !h-[14px] !text-[14px] opacity-75">open_in_new</mat-icon></a>`;
66
+ return `<a href="${url}" target="_blank" class="text-primary cursor-pointer hover:underline">${displayValue} <ng-icon class="!w-[12px] !h-[14px] !text-[14px] opacity-75" name="matOpenInNew"></ng-icon></a>`;
67
67
  }
68
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GnUiLinkifyDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
69
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: GnUiLinkifyDirective, selector: "[gnUiLinkify]", ngImport: i0 }); }
68
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GnUiLinkifyDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
69
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: GnUiLinkifyDirective, isStandalone: true, selector: "[gnUiLinkify]", ngImport: i0 }); }
70
70
  }
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GnUiLinkifyDirective, decorators: [{
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GnUiLinkifyDirective, decorators: [{
72
72
  type: Directive,
73
73
  args: [{
74
74
  selector: '[gnUiLinkify]',
75
+ standalone: true,
75
76
  }]
76
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; } });
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2lmeS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvbWV0YWRhdGEtaW5mby9saW5raWZ5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFBOztBQUt4RSxNQUFNLE9BQU8sb0JBQW9CO0lBQy9CLFlBQW9CLEVBQWMsRUFBVSxRQUFtQjtRQUEzQyxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVztJQUFHLENBQUM7SUFFbkUsUUFBUTtRQUNOLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDMUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ1AsQ0FBQztJQUVPLFlBQVksQ0FBQyxTQUFrQztRQUNyRCxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUU5QyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDckIsSUFBSSxJQUFJLFlBQVksSUFBSSxFQUFFO2dCQUN4QixNQUFNLFFBQVEsR0FBRyxJQUFZLENBQUE7Z0JBQzdCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFBO2dCQUN0RCxJQUFJLFNBQVMsRUFBRTtvQkFDYixJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQTtpQkFDcEQ7YUFDRjtpQkFBTSxJQUFJLElBQUksWUFBWSxpQkFBaUIsRUFBRTtnQkFDNUMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQTtnQkFDckIsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQTtnQkFDbkMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsR0FBRyxDQUFDLENBQUE7Z0JBQ3JELElBQUksU0FBUyxFQUFFO29CQUNiLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFBO2lCQUNwRDthQUNGO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUE7YUFDeEI7UUFDSCxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFTyxXQUFXLENBQUMsWUFBb0IsRUFBRSxHQUFZO1FBQ3BELElBQUksR0FBRyxFQUFFO1lBQ1AsWUFBWSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLEdBQUcsQ0FBQyxDQUFBO1NBQ2xEO2FBQU07WUFDTCxNQUFNLFFBQVEsR0FBRywwQ0FBMEMsQ0FBQTtZQUUzRCxNQUFNLE9BQU8sR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1lBQzVDLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNqQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7b0JBQ3hCLEdBQUcsR0FBRyxLQUFLLENBQUE7b0JBRVgsWUFBWSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7d0JBQ25ELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUE7b0JBQ3BDLENBQUMsQ0FBQyxDQUFBO2dCQUNKLENBQUMsQ0FBQyxDQUFBO2FBQ0g7U0FDRjtRQUVELE9BQU8sWUFBWSxDQUFBO0lBQ3JCLENBQUM7SUFFTyxrQkFBa0IsQ0FDeEIsU0FBa0MsRUFDbEMsV0FBbUIsRUFDbkIsSUFBZTtRQUVmLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQzlDLEdBQUcsQ0FBQyxTQUFTLEdBQUcsV0FBVyxDQUFBO1FBRTNCLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxzQkFBc0IsRUFBRSxDQUFBO1FBQ2xELEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQW9CLEVBQUUsRUFBRTtZQUMxRCxRQUFRLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ2pDLENBQUMsQ0FBQyxDQUFBO1FBRUYsU0FBUyxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDdEMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUM3QixDQUFDO0lBRU8sVUFBVSxDQUFDLFlBQW9CLEVBQUUsR0FBVztRQUNsRCxPQUFPLFlBQVksR0FBRyx5RUFBeUUsWUFBWSxxSEFBcUgsQ0FBQTtJQUNsTyxDQUFDOytHQXhFVSxvQkFBb0I7bUdBQXBCLG9CQUFvQjs7NEZBQXBCLG9CQUFvQjtrQkFIaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZUFBZTtpQkFDMUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yICovXG5pbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIFJlbmRlcmVyMiwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2duVWlMaW5raWZ5XScsXG59KVxuZXhwb3J0IGNsYXNzIEduVWlMaW5raWZ5RGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5wcm9jZXNzTGlua3ModGhpcy5lbC5uYXRpdmVFbGVtZW50KVxuICAgIH0sIDApXG4gIH1cblxuICBwcml2YXRlIHByb2Nlc3NMaW5rcyhjb250YWluZXI6IEhUTUxFbGVtZW50IHwgQ2hpbGROb2RlKSB7XG4gICAgY29uc3Qgbm9kZXMgPSBBcnJheS5mcm9tKGNvbnRhaW5lci5jaGlsZE5vZGVzKVxuXG4gICAgbm9kZXMuZm9yRWFjaCgobm9kZSkgPT4ge1xuICAgICAgaWYgKG5vZGUgaW5zdGFuY2VvZiBUZXh0KSB7XG4gICAgICAgIGNvbnN0IHRleHROb2RlID0gbm9kZSBhcyBUZXh0XG4gICAgICAgIGNvbnN0IGxpbmtpZmllZCA9IHRoaXMubGlua2lmeU5vZGUodGV4dE5vZGUubm9kZVZhbHVlKVxuICAgICAgICBpZiAobGlua2lmaWVkKSB7XG4gICAgICAgICAgdGhpcy5jcmVhdGVMaW5rRWxlbWVudHMoY29udGFpbmVyLCBsaW5raWZpZWQsIG5vZGUpXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAobm9kZSBpbnN0YW5jZW9mIEhUTUxBbmNob3JFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IHVybCA9IG5vZGUuaHJlZlxuICAgICAgICBjb25zdCBkaXNwbGF5VmFsdWUgPSBub2RlLmlubmVySFRNTFxuICAgICAgICBjb25zdCBsaW5raWZpZWQgPSB0aGlzLmxpbmtpZnlOb2RlKGRpc3BsYXlWYWx1ZSwgdXJsKVxuICAgICAgICBpZiAobGlua2lmaWVkKSB7XG4gICAgICAgICAgdGhpcy5jcmVhdGVMaW5rRWxlbWVudHMoY29udGFpbmVyLCBsaW5raWZpZWQsIG5vZGUpXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucHJvY2Vzc0xpbmtzKG5vZGUpXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgbGlua2lmeU5vZGUoZGlzcGxheVZhbHVlOiBzdHJpbmcsIHVybD86IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKHVybCkge1xuICAgICAgZGlzcGxheVZhbHVlID0gdGhpcy5jcmVhdGVMaW5rKGRpc3BsYXlWYWx1ZSwgdXJsKVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB1cmxSZWdleCA9IC9cXGJodHRwcz86XFwvXFwvKD86XFwoW15cXHMoKV0rXFwpfFteXFxzKCldKykrL2dcblxuICAgICAgY29uc3QgbWF0Y2hlcyA9IGRpc3BsYXlWYWx1ZS5tYXRjaCh1cmxSZWdleClcbiAgICAgIGlmIChtYXRjaGVzICYmIG1hdGNoZXMubGVuZ3RoID4gMCkge1xuICAgICAgICBtYXRjaGVzLmZvckVhY2goKG1hdGNoKSA9PiB7XG4gICAgICAgICAgdXJsID0gbWF0Y2hcblxuICAgICAgICAgIGRpc3BsYXlWYWx1ZSA9IGRpc3BsYXlWYWx1ZS5yZXBsYWNlKG1hdGNoLCAobWF0Y2gpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZUxpbmsobWF0Y2gsIHVybClcbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBkaXNwbGF5VmFsdWVcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlTGlua0VsZW1lbnRzKFxuICAgIGNvbnRhaW5lcjogSFRNTEVsZW1lbnQgfCBDaGlsZE5vZGUsXG4gICAgaHRtbENvbnRlbnQ6IHN0cmluZyxcbiAgICBub2RlOiBDaGlsZE5vZGVcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgZGl2ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdkaXYnKVxuICAgIGRpdi5pbm5lckhUTUwgPSBodG1sQ29udGVudFxuXG4gICAgY29uc3QgZnJhZ21lbnQgPSBkb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KClcbiAgICBBcnJheS5mcm9tKGRpdi5jaGlsZE5vZGVzKS5mb3JFYWNoKChjaGlsZE5vZGU6IENoaWxkTm9kZSkgPT4ge1xuICAgICAgZnJhZ21lbnQuYXBwZW5kQ2hpbGQoY2hpbGROb2RlKVxuICAgIH0pXG5cbiAgICBjb250YWluZXIuaW5zZXJ0QmVmb3JlKGZyYWdtZW50LCBub2RlKVxuICAgIGNvbnRhaW5lci5yZW1vdmVDaGlsZChub2RlKVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVMaW5rKGRpc3BsYXlWYWx1ZTogc3RyaW5nLCB1cmw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGA8YSBocmVmPVwiJHt1cmx9XCIgdGFyZ2V0PVwiX2JsYW5rXCIgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgY3Vyc29yLXBvaW50ZXIgaG92ZXI6dW5kZXJsaW5lXCI+JHtkaXNwbGF5VmFsdWV9IDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgIXctWzEycHhdICFoLVsxNHB4XSAhdGV4dC1bMTRweF0gb3BhY2l0eS03NVwiPm9wZW5faW5fbmV3PC9tYXQtaWNvbj48L2E+YFxuICB9XG59XG4iXX0=
77
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }] });
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2lmeS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvbWV0YWRhdGEtaW5mby9saW5raWZ5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFBOztBQU14RSxNQUFNLE9BQU8sb0JBQW9CO0lBQy9CLFlBQ1UsRUFBYyxFQUNkLFFBQW1CO1FBRG5CLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFXO0lBQzFCLENBQUM7SUFFSixRQUFRO1FBQ04sVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUMxQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDUCxDQUFDO0lBRU8sWUFBWSxDQUFDLFNBQWtDO1FBQ3JELE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBRTlDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNyQixJQUFJLElBQUksWUFBWSxJQUFJLEVBQUUsQ0FBQztnQkFDekIsTUFBTSxRQUFRLEdBQUcsSUFBWSxDQUFBO2dCQUM3QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQTtnQkFDdEQsSUFBSSxTQUFTLEVBQUUsQ0FBQztvQkFDZCxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQTtnQkFDckQsQ0FBQztZQUNILENBQUM7aUJBQU0sSUFBSSxJQUFJLFlBQVksaUJBQWlCLEVBQUUsQ0FBQztnQkFDN0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQTtnQkFDckIsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQTtnQkFDbkMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsR0FBRyxDQUFDLENBQUE7Z0JBQ3JELElBQUksU0FBUyxFQUFFLENBQUM7b0JBQ2QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUE7Z0JBQ3JELENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQTtZQUN6QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRU8sV0FBVyxDQUFDLFlBQW9CLEVBQUUsR0FBWTtRQUNwRCxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ1IsWUFBWSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLEdBQUcsQ0FBQyxDQUFBO1FBQ25ELENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxRQUFRLEdBQUcsMENBQTBDLENBQUE7WUFFM0QsTUFBTSxPQUFPLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQTtZQUM1QyxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUNsQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7b0JBQ3hCLEdBQUcsR0FBRyxLQUFLLENBQUE7b0JBRVgsWUFBWSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7d0JBQ25ELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUE7b0JBQ3BDLENBQUMsQ0FBQyxDQUFBO2dCQUNKLENBQUMsQ0FBQyxDQUFBO1lBQ0osQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLFlBQVksQ0FBQTtJQUNyQixDQUFDO0lBRU8sa0JBQWtCLENBQ3hCLFNBQWtDLEVBQ2xDLFdBQW1CLEVBQ25CLElBQWU7UUFFZixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUM5QyxHQUFHLENBQUMsU0FBUyxHQUFHLFdBQVcsQ0FBQTtRQUUzQixNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsc0JBQXNCLEVBQUUsQ0FBQTtRQUNsRCxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFvQixFQUFFLEVBQUU7WUFDMUQsUUFBUSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUNqQyxDQUFDLENBQUMsQ0FBQTtRQUVGLFNBQVMsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFBO1FBQ3RDLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDN0IsQ0FBQztJQUVPLFVBQVUsQ0FBQyxZQUFvQixFQUFFLEdBQVc7UUFDbEQsT0FBTyxZQUFZLEdBQUcseUVBQXlFLFlBQVksa0dBQWtHLENBQUE7SUFDL00sQ0FBQzsrR0EzRVUsb0JBQW9CO21HQUFwQixvQkFBb0I7OzRGQUFwQixvQkFBb0I7a0JBSmhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3IgKi9cbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgT25Jbml0LCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZ25VaUxpbmtpZnldJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgR25VaUxpbmtpZnlEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnByb2Nlc3NMaW5rcyh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQpXG4gICAgfSwgMClcbiAgfVxuXG4gIHByaXZhdGUgcHJvY2Vzc0xpbmtzKGNvbnRhaW5lcjogSFRNTEVsZW1lbnQgfCBDaGlsZE5vZGUpIHtcbiAgICBjb25zdCBub2RlcyA9IEFycmF5LmZyb20oY29udGFpbmVyLmNoaWxkTm9kZXMpXG5cbiAgICBub2Rlcy5mb3JFYWNoKChub2RlKSA9PiB7XG4gICAgICBpZiAobm9kZSBpbnN0YW5jZW9mIFRleHQpIHtcbiAgICAgICAgY29uc3QgdGV4dE5vZGUgPSBub2RlIGFzIFRleHRcbiAgICAgICAgY29uc3QgbGlua2lmaWVkID0gdGhpcy5saW5raWZ5Tm9kZSh0ZXh0Tm9kZS5ub2RlVmFsdWUpXG4gICAgICAgIGlmIChsaW5raWZpZWQpIHtcbiAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmtFbGVtZW50cyhjb250YWluZXIsIGxpbmtpZmllZCwgbm9kZSlcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChub2RlIGluc3RhbmNlb2YgSFRNTEFuY2hvckVsZW1lbnQpIHtcbiAgICAgICAgY29uc3QgdXJsID0gbm9kZS5ocmVmXG4gICAgICAgIGNvbnN0IGRpc3BsYXlWYWx1ZSA9IG5vZGUuaW5uZXJIVE1MXG4gICAgICAgIGNvbnN0IGxpbmtpZmllZCA9IHRoaXMubGlua2lmeU5vZGUoZGlzcGxheVZhbHVlLCB1cmwpXG4gICAgICAgIGlmIChsaW5raWZpZWQpIHtcbiAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmtFbGVtZW50cyhjb250YWluZXIsIGxpbmtpZmllZCwgbm9kZSlcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5wcm9jZXNzTGlua3Mobm9kZSlcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBsaW5raWZ5Tm9kZShkaXNwbGF5VmFsdWU6IHN0cmluZywgdXJsPzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodXJsKSB7XG4gICAgICBkaXNwbGF5VmFsdWUgPSB0aGlzLmNyZWF0ZUxpbmsoZGlzcGxheVZhbHVlLCB1cmwpXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHVybFJlZ2V4ID0gL1xcYmh0dHBzPzpcXC9cXC8oPzpcXChbXlxccygpXStcXCl8W15cXHMoKV0rKSsvZ1xuXG4gICAgICBjb25zdCBtYXRjaGVzID0gZGlzcGxheVZhbHVlLm1hdGNoKHVybFJlZ2V4KVxuICAgICAgaWYgKG1hdGNoZXMgJiYgbWF0Y2hlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIG1hdGNoZXMuZm9yRWFjaCgobWF0Y2gpID0+IHtcbiAgICAgICAgICB1cmwgPSBtYXRjaFxuXG4gICAgICAgICAgZGlzcGxheVZhbHVlID0gZGlzcGxheVZhbHVlLnJlcGxhY2UobWF0Y2gsIChtYXRjaCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlTGluayhtYXRjaCwgdXJsKVxuICAgICAgICAgIH0pXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGRpc3BsYXlWYWx1ZVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVMaW5rRWxlbWVudHMoXG4gICAgY29udGFpbmVyOiBIVE1MRWxlbWVudCB8IENoaWxkTm9kZSxcbiAgICBodG1sQ29udGVudDogc3RyaW5nLFxuICAgIG5vZGU6IENoaWxkTm9kZVxuICApOiB2b2lkIHtcbiAgICBjb25zdCBkaXYgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpXG4gICAgZGl2LmlubmVySFRNTCA9IGh0bWxDb250ZW50XG5cbiAgICBjb25zdCBmcmFnbWVudCA9IGRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKVxuICAgIEFycmF5LmZyb20oZGl2LmNoaWxkTm9kZXMpLmZvckVhY2goKGNoaWxkTm9kZTogQ2hpbGROb2RlKSA9PiB7XG4gICAgICBmcmFnbWVudC5hcHBlbmRDaGlsZChjaGlsZE5vZGUpXG4gICAgfSlcblxuICAgIGNvbnRhaW5lci5pbnNlcnRCZWZvcmUoZnJhZ21lbnQsIG5vZGUpXG4gICAgY29udGFpbmVyLnJlbW92ZUNoaWxkKG5vZGUpXG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUxpbmsoZGlzcGxheVZhbHVlOiBzdHJpbmcsIHVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYDxhIGhyZWY9XCIke3VybH1cIiB0YXJnZXQ9XCJfYmxhbmtcIiBjbGFzcz1cInRleHQtcHJpbWFyeSBjdXJzb3ItcG9pbnRlciBob3Zlcjp1bmRlcmxpbmVcIj4ke2Rpc3BsYXlWYWx1ZX0gPG5nLWljb24gY2xhc3M9XCIhdy1bMTJweF0gIWgtWzE0cHhdICF0ZXh0LVsxNHB4XSBvcGFjaXR5LTc1XCIgbmFtZT1cIm1hdE9wZW5Jbk5ld1wiPjwvbmctaWNvbj48L2E+YFxuICB9XG59XG4iXX0=
@@ -1,16 +1,19 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
2
2
  import { getTemporalRangeUnion } from '../../../../../../libs/util/shared/src';
3
+ import { MarkdownParserComponent } from '../markdown-parser/markdown-parser.component';
4
+ import { ExpandablePanelComponent, MaxLinesComponent, } from '../../../../../../libs/ui/layout/src';
5
+ import { TranslateModule } from '@ngx-translate/core';
6
+ import { BadgeComponent, CopyTextButtonComponent, } from '../../../../../../libs/ui/inputs/src';
7
+ import { ContentGhostComponent } from '../content-ghost/content-ghost.component';
8
+ import { NgIcon, provideIcons } from '@ng-icons/core';
9
+ import { CommonModule } from '@angular/common';
10
+ import { matOpenInNew } from '@ng-icons/material-icons/baseline';
11
+ import { matMailOutline } from '@ng-icons/material-icons/outline';
12
+ import { ThumbnailComponent } from '../thumbnail/thumbnail.component';
13
+ import { GnUiLinkifyDirective } from './linkify.directive';
3
14
  import * as i0 from "@angular/core";
4
15
  import * as i1 from "@angular/common";
5
- import * as i2 from "@angular/material/icon";
6
- import * as i3 from "../../../../layout/src/lib/expandable-panel/expandable-panel.component";
7
- import * as i4 from "@ngx-translate/core";
8
- import * as i5 from "../../../../inputs/src/lib/copy-text-button/copy-text-button.component";
9
- import * as i6 from "../../../../inputs/src/lib/badge/badge.component";
10
- import * as i7 from "../markdown-parser/markdown-parser.component";
11
- import * as i8 from "../thumbnail/thumbnail.component";
12
- import * as i9 from "../content-ghost/content-ghost.component";
13
- import * as i10 from "./linkify.directive";
16
+ import * as i2 from "@ngx-translate/core";
14
17
  export class MetadataInfoComponent {
15
18
  constructor() {
16
19
  this.keyword = new EventEmitter();
@@ -26,7 +29,10 @@ export class MetadataInfoComponent {
26
29
  get legalConstraints() {
27
30
  let array = [];
28
31
  if (this.metadata.legalConstraints?.length) {
29
- array = array.concat(this.metadata.legalConstraints.filter((c) => c.text).map((c) => c.text));
32
+ const licensesTexts = this.metadata.licenses.map((license) => license.text);
33
+ array = array.concat(this.metadata.legalConstraints
34
+ .filter((c) => c.text && !licensesTexts.includes(c.text))
35
+ .map((c) => c.text));
30
36
  }
31
37
  return array;
32
38
  }
@@ -74,12 +80,34 @@ export class MetadataInfoComponent {
74
80
  onKeywordClick(keyword) {
75
81
  this.keyword.emit(keyword);
76
82
  }
77
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MetadataInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
78
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MetadataInfoComponent, selector: "gn-ui-metadata-info", inputs: { metadata: "metadata", incomplete: "incomplete" }, outputs: { keyword: "keyword" }, ngImport: i0, template: "<div class=\"mb-6 md-description sm:mb-4 sm:pr-16\">\n <gn-ui-content-ghost ghostClass=\"h-32\" [showContent]=\"fieldReady('abstract')\">\n <gn-ui-max-lines [maxLines]=\"6\" *ngIf=\"metadata.abstract\">\n <div>\n <gn-ui-markdown-parser\n [textContent]=\"metadata.abstract\"\n ></gn-ui-markdown-parser>\n </div>\n </gn-ui-max-lines>\n <div *ngIf=\"metadata.keywords?.length\">\n <p class=\"mt-6 mb-3 font-medium text-primary text-sm\" translate>\n record.metadata.keywords\n </p>\n <div class=\"sm:pb-4 flex flex-wrap gap-2\">\n <gn-ui-badge\n class=\"inline-block lowercase\"\n (click)=\"onKeywordClick(keyword)\"\n [clickable]=\"true\"\n *ngFor=\"let keyword of metadata.keywords\"\n >{{ keyword.label }}</gn-ui-badge\n >\n </div>\n </div>\n </gn-ui-content-ghost>\n</div>\n\n<gn-ui-expandable-panel [title]=\"'record.metadata.usage' | translate\">\n <div class=\"flex flex-col gap-[10px] mr-4 py-[12px] rounded text-gray-900\">\n <ng-container *ngFor=\"let license of licenses\">\n <div *ngIf=\"license.url; else noUrl\" class=\"text-primary\">\n <a\n [href]=\"license.url\"\n target=\"_blank\"\n class=\"cursor-pointer hover:underline transition-all\"\n >\n {{ license.text }}\n <mat-icon\n class=\"material-symbols-outlined !w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n >open_in_new</mat-icon\n >\n </a>\n </div>\n <ng-template #noUrl>\n <div class=\"text-primary\" gnUiLinkify>\n {{ license.text }}\n </div>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"legalConstraints.length\">\n <gn-ui-markdown-parser\n *ngFor=\"let constraint of legalConstraints\"\n [textContent]=\"constraint\"\n >\n </gn-ui-markdown-parser>\n </ng-container>\n <ng-container *ngIf=\"otherConstraints.length\">\n <div gnUiLinkify *ngFor=\"let constraint of otherConstraints\">\n <h5 translate class=\"font-medium text-black text-sm mb-[2px] mt-[16px]\">\n record.metadata.otherConstraints\n </h5>\n <gn-ui-markdown-parser [textContent]=\"constraint\">\n </gn-ui-markdown-parser>\n </div>\n </ng-container>\n\n <span class=\"noUsage\" *ngIf=\"!hasUsage\">\n {{ 'record.metadata.noUsage' | translate }}\n </span>\n </div>\n</gn-ui-expandable-panel>\n<gn-ui-expandable-panel\n *ngIf=\"\n metadata.lineage ||\n metadata.recordUpdated ||\n metadata.updateFrequency ||\n metadata.status\n \"\n [title]=\"'record.metadata.details' | translate\"\n>\n <div *ngIf=\"metadata.lineage\" class=\"text-gray-900 flex flex-col mt-4 gap-2\">\n <p class=\"whitespace-pre-line break-words text-gray-900\" gnUiLinkify>\n {{ metadata.lineage }}\n </p>\n </div>\n <div class=\"flex flex-row gap-6 mt-5 mb-8\" *ngIf=\"resourceContact\">\n <div\n *ngIf=\"resourceContact.organization?.logoUrl?.href\"\n class=\"flex items-center justify-center border-solid border border-gray-300 rounded-md bg-white h-32 overflow-hidden\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"resourceContact.organization.logoUrl.href\"\n fit=\"contain\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col gap-1\">\n <p class=\"text-sm font-medium\" translate>record.metadata.producer</p>\n <div\n class=\"text-primary font-title text-21 mr-2 cursor-pointer hover:underline\"\n data-cy=\"organization-name\"\n >\n {{ resourceContact.organization?.name }}\n </div>\n <div *ngIf=\"resourceContact.organization?.website\">\n <a\n [href]=\"resourceContact.organization.website\"\n target=\"_blank\"\n class=\"contact-website text-primary text-sm cursor-pointer hover:underline transition-all\"\n >{{ resourceContact.organization.website }}\n <mat-icon\n class=\"material-symbols-outlined !w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n >open_in_new</mat-icon\n >\n </a>\n </div>\n <div class=\"mt-4\" *ngIf=\"resourceContact.email\">\n <div class=\"flex\">\n <mat-icon\n class=\"material-symbols-outlined !w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n >\n mail_outline</mat-icon\n >\n <a\n *ngIf=\"resourceContact.email\"\n [href]=\"'mailto:' + resourceContact.email\"\n class=\"text-sm hover:underline ml-2\"\n target=\"_blank\"\n data-cy=\"contact-email\"\n >{{ resourceContact?.email }}</a\n >\n </div>\n </div>\n </div>\n </div>\n <div\n class=\"py-6 px-6 rounded bg-gray-100 grid grid-cols-2 gap-y-6 gap-x-[20px] text-gray-700\"\n >\n <div *ngIf=\"metadata.recordCreated\">\n <p class=\"text-sm\" translate>record.metadata.creation</p>\n <p class=\"text-primary font-medium mt-1\">\n {{ metadata.recordCreated.toLocaleDateString() }}\n </p>\n </div>\n <div *ngIf=\"metadata.recordPublished\">\n <p class=\"text-sm\" translate>record.metadata.publication</p>\n <p class=\"text-primary font-medium mt-1\">\n {{ metadata.recordPublished.toLocaleDateString() }}\n </p>\n </div>\n <div *ngIf=\"updateFrequency\">\n <p class=\"text-sm\" translate>record.metadata.updateFrequency</p>\n <p\n class=\"text-primary font-medium mt-1 updateFrequency\"\n translate\n [translateParams]=\"{ count: updatedTimes }\"\n >\n {{ updateFrequency }}\n </p>\n </div>\n <div *ngIf=\"metadata.languages\">\n <p class=\"text-sm mb-1\" translate>record.metadata.languages</p>\n <div class=\"flex flex-row gap-1 flex-wrap\">\n <p\n class=\"text-primary font-medium\"\n translate\n *ngFor=\"let language of metadata.languages\"\n >\n language.{{ language }}\n </p>\n </div>\n </div>\n <div *ngIf=\"temporalExtent\">\n <p class=\"text-sm\" translate>record.metadata.temporalExtent</p>\n <div class=\"flex flex-row gap-1 mb-1 text-primary font-medium\">\n <p\n *ngIf=\"temporalExtent.start && temporalExtent.end\"\n translate\n [translateParams]=\"{\n start: temporalExtent.start,\n end: temporalExtent.end\n }\"\n >\n record.metadata.temporalExtent.fromDateToDate\n </p>\n <p\n *ngIf=\"temporalExtent.start && !temporalExtent.end\"\n translate\n [translateParams]=\"{ start: temporalExtent.start }\"\n >\n record.metadata.temporalExtent.sinceDate\n </p>\n <p\n *ngIf=\"!temporalExtent.start && temporalExtent.end\"\n translate\n [translateParams]=\"{ end: temporalExtent.end }\"\n >\n record.metadata.temporalExtent.untilDate\n </p>\n </div>\n </div>\n </div>\n</gn-ui-expandable-panel>\n<gn-ui-expandable-panel\n *ngIf=\"metadata.landingPage\"\n [title]=\"'record.metadata.technical' | translate\"\n>\n <div class=\"flex flex-col gap-4 mr-4 py-5 rounded text-gray-700\">\n <div *ngIf=\"metadata.recordUpdated\">\n <p class=\"text-sm\" translate>record.metadata.updatedOn</p>\n <p class=\"text-primary font-medium\">\n {{ metadata.recordUpdated && metadata.recordUpdated.toLocaleString() }}\n </p>\n </div>\n <div *ngIf=\"metadata.landingPage\">\n <p class=\"text-sm\" translate>record.metadata.sheet</p>\n <p class=\"text-primary font-medium\" translate>\n <a [href]=\"metadata.landingPage\" target=\"_blank\">\n <span class=\"break-all\" gnUiLinkify>{{ metadata.landingPage }}</span>\n </a>\n </p>\n </div>\n <div *ngIf=\"metadata.ownerOrganization\">\n <p class=\"text-sm\" translate>record.metadata.owner</p>\n <p class=\"text-primary font-medium\">\n {{ metadata.ownerOrganization.name }}\n </p>\n </div>\n <div *ngIf=\"metadata.uniqueIdentifier\">\n <p class=\"text-sm\" translate>record.metadata.uniqueId</p>\n <div class=\"flex flex-row content-align items-end gap-1\">\n <gn-ui-copy-text-button\n [text]=\"metadata.uniqueIdentifier\"\n [tooltipText]=\"'tooltip.id.copy' | translate\"\n [displayText]=\"false\"\n ></gn-ui-copy-text-button>\n <p class=\"text-primary font-medium\">\n {{ metadata.uniqueIdentifier }}\n </p>\n </div>\n </div>\n <div *ngIf=\"metadata.topics?.length\">\n <p class=\"text-sm mb-1\" translate>record.metadata.topics</p>\n <div class=\"sm:pb-4 sm:pr-16\">\n <gn-ui-badge\n class=\"inline-block mr-2 mb-2 lowercase\"\n *ngFor=\"let topic of metadata.topics\"\n >{{ topic }}</gn-ui-badge\n >\n </div>\n </div>\n </div>\n</gn-ui-expandable-panel>\n", styles: [".md-description ::ng-deep a{@apply underline text-blue-600 hover:text-blue-800;}.info-grid>:nth-last-child(n+3){padding-bottom:10px;@apply border-b border-gray-300;}:host ::ng-deep gn-ui-copy-text-button button mat-icon{transform:scale(.8)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.ExpandablePanelComponent, selector: "gn-ui-expandable-panel", inputs: ["title", "collapsed"] }, { kind: "directive", type: i4.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i5.CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "component", type: i6.BadgeComponent, selector: "gn-ui-badge", inputs: ["clickable", "removable"], outputs: ["badgeRemoveClicked"] }, { kind: "component", type: i7.MarkdownParserComponent, selector: "gn-ui-markdown-parser", inputs: ["textContent"] }, { kind: "component", type: i8.ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"], outputs: ["placeholderShown"] }, { kind: "component", type: i9.ContentGhostComponent, selector: "gn-ui-content-ghost", inputs: ["showContent", "ghostClass"] }, { kind: "directive", type: i10.GnUiLinkifyDirective, selector: "[gnUiLinkify]" }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
83
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MetadataInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
84
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MetadataInfoComponent, isStandalone: true, selector: "gn-ui-metadata-info", inputs: { metadata: "metadata", incomplete: "incomplete" }, outputs: { keyword: "keyword" }, ngImport: i0, template: "<div class=\"mb-6 md-description sm:mb-4 sm:pr-16\">\n <gn-ui-content-ghost\n ghostClass=\"h-[178px]\"\n [showContent]=\"fieldReady('abstract')\"\n >\n <gn-ui-max-lines [maxLines]=\"6\" *ngIf=\"metadata.abstract\">\n <div class=\"mb-6\">\n <gn-ui-markdown-parser\n [textContent]=\"metadata.abstract\"\n ></gn-ui-markdown-parser>\n </div>\n </gn-ui-max-lines>\n </gn-ui-content-ghost>\n\n <p\n class=\"mt-6 mb-3 font-medium text-primary text-sm\"\n translate\n *ngIf=\"!fieldReady('keywords') || metadata.keywords?.length\"\n >\n record.metadata.keywords\n </p>\n\n <gn-ui-content-ghost\n ghostClass=\"h-[31px] w-3/4\"\n [showContent]=\"fieldReady('keywords')\"\n >\n <div *ngIf=\"metadata.keywords?.length\">\n <div class=\"sm:pb-4 flex flex-wrap gap-2\">\n <gn-ui-badge\n class=\"inline-block lowercase\"\n (click)=\"onKeywordClick(keyword)\"\n [clickable]=\"true\"\n *ngFor=\"let keyword of metadata.keywords\"\n >{{ keyword.label }}</gn-ui-badge\n >\n </div>\n </div>\n </gn-ui-content-ghost>\n</div>\n\n<gn-ui-expandable-panel\n *ngIf=\"\n metadata.licenses ||\n metadata.legalConstraints ||\n metadata.securityConstraints ||\n metadata.otherConstraints\n \"\n [title]=\"'record.metadata.usage' | translate\"\n>\n <div class=\"flex flex-col gap-[10px] mr-4 py-[12px] rounded text-gray-900\">\n <ng-container *ngFor=\"let license of licenses\">\n <div *ngIf=\"license.url; else noUrl\" class=\"text-primary\">\n <a\n [href]=\"license.url\"\n target=\"_blank\"\n class=\"cursor-pointer hover:underline transition-all\"\n >\n {{ license.text }}\n <ng-icon\n class=\"!w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n name=\"matOpenInNew\"\n ></ng-icon>\n </a>\n </div>\n <ng-template #noUrl>\n <div class=\"text-primary\" gnUiLinkify>\n {{ license.text }}\n </div>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"legalConstraints.length\">\n <div class=\"mb-6\">\n <gn-ui-markdown-parser\n *ngFor=\"let constraint of legalConstraints\"\n [textContent]=\"constraint\"\n >\n </gn-ui-markdown-parser>\n </div>\n </ng-container>\n <ng-container *ngIf=\"otherConstraints.length\">\n <div gnUiLinkify *ngFor=\"let constraint of otherConstraints\">\n <h5 translate class=\"font-medium text-black text-sm mb-[2px] mt-[16px]\">\n record.metadata.otherConstraints\n </h5>\n <div class=\"mb-6\">\n <gn-ui-markdown-parser [textContent]=\"constraint\">\n </gn-ui-markdown-parser>\n </div>\n </div>\n </ng-container>\n\n <span class=\"noUsage\" *ngIf=\"!hasUsage\">\n {{ 'record.metadata.noUsage' | translate }}\n </span>\n </div>\n</gn-ui-expandable-panel>\n<gn-ui-expandable-panel\n *ngIf=\"\n metadata.lineage ||\n metadata.resourceUpdated ||\n metadata.updateFrequency ||\n metadata.status\n \"\n [title]=\"'record.metadata.details' | translate\"\n>\n <div *ngIf=\"metadata.lineage\" class=\"text-gray-900 flex flex-col mt-4 gap-2\">\n <p class=\"whitespace-pre-line break-words text-gray-900\" gnUiLinkify>\n {{ metadata.lineage }}\n </p>\n </div>\n <div class=\"flex flex-row gap-6 mt-5 mb-8\" *ngIf=\"resourceContact\">\n <div\n *ngIf=\"resourceContact.organization?.logoUrl?.href\"\n class=\"flex items-center justify-center border-solid border border-gray-300 rounded-md bg-white h-32 overflow-hidden\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"resourceContact.organization.logoUrl.href\"\n fit=\"contain\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col gap-1\">\n <p class=\"text-sm font-medium\" translate>record.metadata.producer</p>\n <div\n class=\"text-primary font-title text-21 mr-2 cursor-pointer hover:underline\"\n data-cy=\"organization-name\"\n >\n {{ resourceContact.organization?.name }}\n </div>\n <div *ngIf=\"resourceContact.organization?.website\">\n <a\n [href]=\"resourceContact.organization.website\"\n target=\"_blank\"\n class=\"contact-website text-primary text-sm cursor-pointer hover:underline transition-all\"\n >{{ resourceContact.organization.website }}\n <ng-icon\n class=\"!w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n name=\"matOpenInNew\"\n ></ng-icon>\n </a>\n </div>\n <div class=\"mt-4\" *ngIf=\"resourceContact.email\">\n <div class=\"flex\">\n <ng-icon\n class=\"!w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n name=\"matMailOutline\"\n ></ng-icon>\n <a\n *ngIf=\"resourceContact.email\"\n [href]=\"'mailto:' + resourceContact.email\"\n class=\"text-sm hover:underline ml-2\"\n target=\"_blank\"\n data-cy=\"contact-email\"\n >{{ resourceContact?.email }}</a\n >\n </div>\n </div>\n </div>\n </div>\n <div\n class=\"py-6 px-6 rounded bg-gray-100 grid grid-cols-2 gap-y-6 gap-x-[20px] text-gray-700\"\n >\n <div *ngIf=\"metadata.resourceCreated\">\n <p class=\"text-sm\" translate>record.metadata.creation</p>\n <p class=\"text-primary font-medium mt-1\">\n {{ metadata.resourceCreated.toLocaleDateString() }}\n </p>\n </div>\n <div *ngIf=\"metadata.resourcePublished\">\n <p class=\"text-sm\" translate>record.metadata.publication</p>\n <p class=\"text-primary font-medium mt-1\">\n {{ metadata.resourcePublished.toLocaleDateString() }}\n </p>\n </div>\n <div *ngIf=\"updateFrequency\">\n <p class=\"text-sm\" translate>record.metadata.updateFrequency</p>\n <p\n class=\"text-primary font-medium mt-1 updateFrequency\"\n translate\n [translateParams]=\"{ count: updatedTimes }\"\n >\n {{ updateFrequency }}\n </p>\n </div>\n <div *ngIf=\"metadata.otherLanguages?.length\">\n <p class=\"text-sm mb-1\" translate>record.metadata.languages</p>\n <div class=\"flex flex-row gap-1 flex-wrap\">\n <p\n class=\"text-primary font-medium\"\n translate\n *ngFor=\"let language of metadata.otherLanguages\"\n >\n language.{{ language }}\n </p>\n </div>\n </div>\n <div *ngIf=\"temporalExtent\">\n <p class=\"text-sm\" translate>record.metadata.temporalExtent</p>\n <div class=\"flex flex-row gap-1 mb-1 text-primary font-medium\">\n <p\n *ngIf=\"temporalExtent.start && temporalExtent.end\"\n translate\n [translateParams]=\"{\n start: temporalExtent.start,\n end: temporalExtent.end,\n }\"\n >\n record.metadata.temporalExtent.fromDateToDate\n </p>\n <p\n *ngIf=\"temporalExtent.start && !temporalExtent.end\"\n translate\n [translateParams]=\"{ start: temporalExtent.start }\"\n >\n record.metadata.temporalExtent.sinceDate\n </p>\n <p\n *ngIf=\"!temporalExtent.start && temporalExtent.end\"\n translate\n [translateParams]=\"{ end: temporalExtent.end }\"\n >\n record.metadata.temporalExtent.untilDate\n </p>\n </div>\n </div>\n </div>\n</gn-ui-expandable-panel>\n<gn-ui-expandable-panel\n *ngIf=\"metadata.landingPage\"\n [title]=\"'record.metadata.technical' | translate\"\n>\n <div class=\"flex flex-col gap-4 mr-4 py-5 rounded text-gray-700\">\n <div *ngIf=\"metadata.recordUpdated\">\n <p class=\"text-sm\" translate>record.metadata.updatedOn</p>\n <p class=\"text-primary font-medium\">\n {{ metadata.recordUpdated && metadata.recordUpdated.toLocaleString() }}\n </p>\n </div>\n <div *ngIf=\"metadata.landingPage\">\n <p class=\"text-sm\" translate>record.metadata.sheet</p>\n <p class=\"text-primary font-medium\" translate>\n <a [href]=\"metadata.landingPage\" target=\"_blank\">\n <span class=\"break-all\" gnUiLinkify>{{ metadata.landingPage }}</span>\n </a>\n </p>\n </div>\n <div *ngIf=\"metadata.ownerOrganization\">\n <p class=\"text-sm\" translate>record.metadata.owner</p>\n <p class=\"text-primary font-medium\">\n {{ metadata.ownerOrganization.name }}\n </p>\n </div>\n <div *ngIf=\"metadata.uniqueIdentifier\">\n <p class=\"text-sm\" translate>record.metadata.uniqueId</p>\n <div class=\"flex flex-row content-align items-end gap-1\">\n <gn-ui-copy-text-button\n [text]=\"metadata.uniqueIdentifier\"\n [tooltipText]=\"'tooltip.id.copy' | translate\"\n [displayText]=\"false\"\n ></gn-ui-copy-text-button>\n <p class=\"text-primary font-medium\">\n {{ metadata.uniqueIdentifier }}\n </p>\n </div>\n </div>\n <div *ngIf=\"metadata.topics?.length\">\n <p class=\"text-sm mb-1\" translate>record.metadata.topics</p>\n <div class=\"sm:pb-4 sm:pr-16\">\n <gn-ui-badge\n class=\"inline-block mr-2 mb-2 lowercase\"\n *ngFor=\"let topic of metadata.topics\"\n >{{ topic }}</gn-ui-badge\n >\n </div>\n </div>\n </div>\n</gn-ui-expandable-panel>\n", styles: [".md-description ::ng-deep a{@apply underline text-blue-600 hover:text-blue-800;}.info-grid>:nth-last-child(n+3){padding-bottom:10px;@apply border-b border-gray-300;}:host ::ng-deep gn-ui-copy-text-button button ng-icon{transform:scale(.8)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: MarkdownParserComponent, selector: "gn-ui-markdown-parser", inputs: ["textContent", "whitoutStyles"] }, { kind: "component", type: ExpandablePanelComponent, selector: "gn-ui-expandable-panel", inputs: ["title", "collapsed"] }, { kind: "component", type: BadgeComponent, selector: "gn-ui-badge", inputs: ["clickable", "removable"], outputs: ["badgeRemoveClicked"] }, { kind: "component", type: ContentGhostComponent, selector: "gn-ui-content-ghost", inputs: ["showContent", "ghostClass"] }, { kind: "component", type: ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"], outputs: ["placeholderShown"] }, { kind: "component", type: MaxLinesComponent, selector: "gn-ui-max-lines", inputs: ["maxLines"] }, { kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: GnUiLinkifyDirective, selector: "[gnUiLinkify]" }], viewProviders: [
85
+ provideIcons({
86
+ matOpenInNew,
87
+ matMailOutline,
88
+ }),
89
+ ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
79
90
  }
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MetadataInfoComponent, decorators: [{
91
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MetadataInfoComponent, decorators: [{
81
92
  type: Component,
82
- args: [{ selector: 'gn-ui-metadata-info', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"mb-6 md-description sm:mb-4 sm:pr-16\">\n <gn-ui-content-ghost ghostClass=\"h-32\" [showContent]=\"fieldReady('abstract')\">\n <gn-ui-max-lines [maxLines]=\"6\" *ngIf=\"metadata.abstract\">\n <div>\n <gn-ui-markdown-parser\n [textContent]=\"metadata.abstract\"\n ></gn-ui-markdown-parser>\n </div>\n </gn-ui-max-lines>\n <div *ngIf=\"metadata.keywords?.length\">\n <p class=\"mt-6 mb-3 font-medium text-primary text-sm\" translate>\n record.metadata.keywords\n </p>\n <div class=\"sm:pb-4 flex flex-wrap gap-2\">\n <gn-ui-badge\n class=\"inline-block lowercase\"\n (click)=\"onKeywordClick(keyword)\"\n [clickable]=\"true\"\n *ngFor=\"let keyword of metadata.keywords\"\n >{{ keyword.label }}</gn-ui-badge\n >\n </div>\n </div>\n </gn-ui-content-ghost>\n</div>\n\n<gn-ui-expandable-panel [title]=\"'record.metadata.usage' | translate\">\n <div class=\"flex flex-col gap-[10px] mr-4 py-[12px] rounded text-gray-900\">\n <ng-container *ngFor=\"let license of licenses\">\n <div *ngIf=\"license.url; else noUrl\" class=\"text-primary\">\n <a\n [href]=\"license.url\"\n target=\"_blank\"\n class=\"cursor-pointer hover:underline transition-all\"\n >\n {{ license.text }}\n <mat-icon\n class=\"material-symbols-outlined !w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n >open_in_new</mat-icon\n >\n </a>\n </div>\n <ng-template #noUrl>\n <div class=\"text-primary\" gnUiLinkify>\n {{ license.text }}\n </div>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"legalConstraints.length\">\n <gn-ui-markdown-parser\n *ngFor=\"let constraint of legalConstraints\"\n [textContent]=\"constraint\"\n >\n </gn-ui-markdown-parser>\n </ng-container>\n <ng-container *ngIf=\"otherConstraints.length\">\n <div gnUiLinkify *ngFor=\"let constraint of otherConstraints\">\n <h5 translate class=\"font-medium text-black text-sm mb-[2px] mt-[16px]\">\n record.metadata.otherConstraints\n </h5>\n <gn-ui-markdown-parser [textContent]=\"constraint\">\n </gn-ui-markdown-parser>\n </div>\n </ng-container>\n\n <span class=\"noUsage\" *ngIf=\"!hasUsage\">\n {{ 'record.metadata.noUsage' | translate }}\n </span>\n </div>\n</gn-ui-expandable-panel>\n<gn-ui-expandable-panel\n *ngIf=\"\n metadata.lineage ||\n metadata.recordUpdated ||\n metadata.updateFrequency ||\n metadata.status\n \"\n [title]=\"'record.metadata.details' | translate\"\n>\n <div *ngIf=\"metadata.lineage\" class=\"text-gray-900 flex flex-col mt-4 gap-2\">\n <p class=\"whitespace-pre-line break-words text-gray-900\" gnUiLinkify>\n {{ metadata.lineage }}\n </p>\n </div>\n <div class=\"flex flex-row gap-6 mt-5 mb-8\" *ngIf=\"resourceContact\">\n <div\n *ngIf=\"resourceContact.organization?.logoUrl?.href\"\n class=\"flex items-center justify-center border-solid border border-gray-300 rounded-md bg-white h-32 overflow-hidden\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"resourceContact.organization.logoUrl.href\"\n fit=\"contain\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col gap-1\">\n <p class=\"text-sm font-medium\" translate>record.metadata.producer</p>\n <div\n class=\"text-primary font-title text-21 mr-2 cursor-pointer hover:underline\"\n data-cy=\"organization-name\"\n >\n {{ resourceContact.organization?.name }}\n </div>\n <div *ngIf=\"resourceContact.organization?.website\">\n <a\n [href]=\"resourceContact.organization.website\"\n target=\"_blank\"\n class=\"contact-website text-primary text-sm cursor-pointer hover:underline transition-all\"\n >{{ resourceContact.organization.website }}\n <mat-icon\n class=\"material-symbols-outlined !w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n >open_in_new</mat-icon\n >\n </a>\n </div>\n <div class=\"mt-4\" *ngIf=\"resourceContact.email\">\n <div class=\"flex\">\n <mat-icon\n class=\"material-symbols-outlined !w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n >\n mail_outline</mat-icon\n >\n <a\n *ngIf=\"resourceContact.email\"\n [href]=\"'mailto:' + resourceContact.email\"\n class=\"text-sm hover:underline ml-2\"\n target=\"_blank\"\n data-cy=\"contact-email\"\n >{{ resourceContact?.email }}</a\n >\n </div>\n </div>\n </div>\n </div>\n <div\n class=\"py-6 px-6 rounded bg-gray-100 grid grid-cols-2 gap-y-6 gap-x-[20px] text-gray-700\"\n >\n <div *ngIf=\"metadata.recordCreated\">\n <p class=\"text-sm\" translate>record.metadata.creation</p>\n <p class=\"text-primary font-medium mt-1\">\n {{ metadata.recordCreated.toLocaleDateString() }}\n </p>\n </div>\n <div *ngIf=\"metadata.recordPublished\">\n <p class=\"text-sm\" translate>record.metadata.publication</p>\n <p class=\"text-primary font-medium mt-1\">\n {{ metadata.recordPublished.toLocaleDateString() }}\n </p>\n </div>\n <div *ngIf=\"updateFrequency\">\n <p class=\"text-sm\" translate>record.metadata.updateFrequency</p>\n <p\n class=\"text-primary font-medium mt-1 updateFrequency\"\n translate\n [translateParams]=\"{ count: updatedTimes }\"\n >\n {{ updateFrequency }}\n </p>\n </div>\n <div *ngIf=\"metadata.languages\">\n <p class=\"text-sm mb-1\" translate>record.metadata.languages</p>\n <div class=\"flex flex-row gap-1 flex-wrap\">\n <p\n class=\"text-primary font-medium\"\n translate\n *ngFor=\"let language of metadata.languages\"\n >\n language.{{ language }}\n </p>\n </div>\n </div>\n <div *ngIf=\"temporalExtent\">\n <p class=\"text-sm\" translate>record.metadata.temporalExtent</p>\n <div class=\"flex flex-row gap-1 mb-1 text-primary font-medium\">\n <p\n *ngIf=\"temporalExtent.start && temporalExtent.end\"\n translate\n [translateParams]=\"{\n start: temporalExtent.start,\n end: temporalExtent.end\n }\"\n >\n record.metadata.temporalExtent.fromDateToDate\n </p>\n <p\n *ngIf=\"temporalExtent.start && !temporalExtent.end\"\n translate\n [translateParams]=\"{ start: temporalExtent.start }\"\n >\n record.metadata.temporalExtent.sinceDate\n </p>\n <p\n *ngIf=\"!temporalExtent.start && temporalExtent.end\"\n translate\n [translateParams]=\"{ end: temporalExtent.end }\"\n >\n record.metadata.temporalExtent.untilDate\n </p>\n </div>\n </div>\n </div>\n</gn-ui-expandable-panel>\n<gn-ui-expandable-panel\n *ngIf=\"metadata.landingPage\"\n [title]=\"'record.metadata.technical' | translate\"\n>\n <div class=\"flex flex-col gap-4 mr-4 py-5 rounded text-gray-700\">\n <div *ngIf=\"metadata.recordUpdated\">\n <p class=\"text-sm\" translate>record.metadata.updatedOn</p>\n <p class=\"text-primary font-medium\">\n {{ metadata.recordUpdated && metadata.recordUpdated.toLocaleString() }}\n </p>\n </div>\n <div *ngIf=\"metadata.landingPage\">\n <p class=\"text-sm\" translate>record.metadata.sheet</p>\n <p class=\"text-primary font-medium\" translate>\n <a [href]=\"metadata.landingPage\" target=\"_blank\">\n <span class=\"break-all\" gnUiLinkify>{{ metadata.landingPage }}</span>\n </a>\n </p>\n </div>\n <div *ngIf=\"metadata.ownerOrganization\">\n <p class=\"text-sm\" translate>record.metadata.owner</p>\n <p class=\"text-primary font-medium\">\n {{ metadata.ownerOrganization.name }}\n </p>\n </div>\n <div *ngIf=\"metadata.uniqueIdentifier\">\n <p class=\"text-sm\" translate>record.metadata.uniqueId</p>\n <div class=\"flex flex-row content-align items-end gap-1\">\n <gn-ui-copy-text-button\n [text]=\"metadata.uniqueIdentifier\"\n [tooltipText]=\"'tooltip.id.copy' | translate\"\n [displayText]=\"false\"\n ></gn-ui-copy-text-button>\n <p class=\"text-primary font-medium\">\n {{ metadata.uniqueIdentifier }}\n </p>\n </div>\n </div>\n <div *ngIf=\"metadata.topics?.length\">\n <p class=\"text-sm mb-1\" translate>record.metadata.topics</p>\n <div class=\"sm:pb-4 sm:pr-16\">\n <gn-ui-badge\n class=\"inline-block mr-2 mb-2 lowercase\"\n *ngFor=\"let topic of metadata.topics\"\n >{{ topic }}</gn-ui-badge\n >\n </div>\n </div>\n </div>\n</gn-ui-expandable-panel>\n", styles: [".md-description ::ng-deep a{@apply underline text-blue-600 hover:text-blue-800;}.info-grid>:nth-last-child(n+3){padding-bottom:10px;@apply border-b border-gray-300;}:host ::ng-deep gn-ui-copy-text-button button mat-icon{transform:scale(.8)}\n"] }]
93
+ args: [{ selector: 'gn-ui-metadata-info', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
94
+ CommonModule,
95
+ TranslateModule,
96
+ MarkdownParserComponent,
97
+ ExpandablePanelComponent,
98
+ BadgeComponent,
99
+ ContentGhostComponent,
100
+ ThumbnailComponent,
101
+ MaxLinesComponent,
102
+ CopyTextButtonComponent,
103
+ NgIcon,
104
+ GnUiLinkifyDirective,
105
+ ], viewProviders: [
106
+ provideIcons({
107
+ matOpenInNew,
108
+ matMailOutline,
109
+ }),
110
+ ], template: "<div class=\"mb-6 md-description sm:mb-4 sm:pr-16\">\n <gn-ui-content-ghost\n ghostClass=\"h-[178px]\"\n [showContent]=\"fieldReady('abstract')\"\n >\n <gn-ui-max-lines [maxLines]=\"6\" *ngIf=\"metadata.abstract\">\n <div class=\"mb-6\">\n <gn-ui-markdown-parser\n [textContent]=\"metadata.abstract\"\n ></gn-ui-markdown-parser>\n </div>\n </gn-ui-max-lines>\n </gn-ui-content-ghost>\n\n <p\n class=\"mt-6 mb-3 font-medium text-primary text-sm\"\n translate\n *ngIf=\"!fieldReady('keywords') || metadata.keywords?.length\"\n >\n record.metadata.keywords\n </p>\n\n <gn-ui-content-ghost\n ghostClass=\"h-[31px] w-3/4\"\n [showContent]=\"fieldReady('keywords')\"\n >\n <div *ngIf=\"metadata.keywords?.length\">\n <div class=\"sm:pb-4 flex flex-wrap gap-2\">\n <gn-ui-badge\n class=\"inline-block lowercase\"\n (click)=\"onKeywordClick(keyword)\"\n [clickable]=\"true\"\n *ngFor=\"let keyword of metadata.keywords\"\n >{{ keyword.label }}</gn-ui-badge\n >\n </div>\n </div>\n </gn-ui-content-ghost>\n</div>\n\n<gn-ui-expandable-panel\n *ngIf=\"\n metadata.licenses ||\n metadata.legalConstraints ||\n metadata.securityConstraints ||\n metadata.otherConstraints\n \"\n [title]=\"'record.metadata.usage' | translate\"\n>\n <div class=\"flex flex-col gap-[10px] mr-4 py-[12px] rounded text-gray-900\">\n <ng-container *ngFor=\"let license of licenses\">\n <div *ngIf=\"license.url; else noUrl\" class=\"text-primary\">\n <a\n [href]=\"license.url\"\n target=\"_blank\"\n class=\"cursor-pointer hover:underline transition-all\"\n >\n {{ license.text }}\n <ng-icon\n class=\"!w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n name=\"matOpenInNew\"\n ></ng-icon>\n </a>\n </div>\n <ng-template #noUrl>\n <div class=\"text-primary\" gnUiLinkify>\n {{ license.text }}\n </div>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"legalConstraints.length\">\n <div class=\"mb-6\">\n <gn-ui-markdown-parser\n *ngFor=\"let constraint of legalConstraints\"\n [textContent]=\"constraint\"\n >\n </gn-ui-markdown-parser>\n </div>\n </ng-container>\n <ng-container *ngIf=\"otherConstraints.length\">\n <div gnUiLinkify *ngFor=\"let constraint of otherConstraints\">\n <h5 translate class=\"font-medium text-black text-sm mb-[2px] mt-[16px]\">\n record.metadata.otherConstraints\n </h5>\n <div class=\"mb-6\">\n <gn-ui-markdown-parser [textContent]=\"constraint\">\n </gn-ui-markdown-parser>\n </div>\n </div>\n </ng-container>\n\n <span class=\"noUsage\" *ngIf=\"!hasUsage\">\n {{ 'record.metadata.noUsage' | translate }}\n </span>\n </div>\n</gn-ui-expandable-panel>\n<gn-ui-expandable-panel\n *ngIf=\"\n metadata.lineage ||\n metadata.resourceUpdated ||\n metadata.updateFrequency ||\n metadata.status\n \"\n [title]=\"'record.metadata.details' | translate\"\n>\n <div *ngIf=\"metadata.lineage\" class=\"text-gray-900 flex flex-col mt-4 gap-2\">\n <p class=\"whitespace-pre-line break-words text-gray-900\" gnUiLinkify>\n {{ metadata.lineage }}\n </p>\n </div>\n <div class=\"flex flex-row gap-6 mt-5 mb-8\" *ngIf=\"resourceContact\">\n <div\n *ngIf=\"resourceContact.organization?.logoUrl?.href\"\n class=\"flex items-center justify-center border-solid border border-gray-300 rounded-md bg-white h-32 overflow-hidden\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"resourceContact.organization.logoUrl.href\"\n fit=\"contain\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col gap-1\">\n <p class=\"text-sm font-medium\" translate>record.metadata.producer</p>\n <div\n class=\"text-primary font-title text-21 mr-2 cursor-pointer hover:underline\"\n data-cy=\"organization-name\"\n >\n {{ resourceContact.organization?.name }}\n </div>\n <div *ngIf=\"resourceContact.organization?.website\">\n <a\n [href]=\"resourceContact.organization.website\"\n target=\"_blank\"\n class=\"contact-website text-primary text-sm cursor-pointer hover:underline transition-all\"\n >{{ resourceContact.organization.website }}\n <ng-icon\n class=\"!w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n name=\"matOpenInNew\"\n ></ng-icon>\n </a>\n </div>\n <div class=\"mt-4\" *ngIf=\"resourceContact.email\">\n <div class=\"flex\">\n <ng-icon\n class=\"!w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n name=\"matMailOutline\"\n ></ng-icon>\n <a\n *ngIf=\"resourceContact.email\"\n [href]=\"'mailto:' + resourceContact.email\"\n class=\"text-sm hover:underline ml-2\"\n target=\"_blank\"\n data-cy=\"contact-email\"\n >{{ resourceContact?.email }}</a\n >\n </div>\n </div>\n </div>\n </div>\n <div\n class=\"py-6 px-6 rounded bg-gray-100 grid grid-cols-2 gap-y-6 gap-x-[20px] text-gray-700\"\n >\n <div *ngIf=\"metadata.resourceCreated\">\n <p class=\"text-sm\" translate>record.metadata.creation</p>\n <p class=\"text-primary font-medium mt-1\">\n {{ metadata.resourceCreated.toLocaleDateString() }}\n </p>\n </div>\n <div *ngIf=\"metadata.resourcePublished\">\n <p class=\"text-sm\" translate>record.metadata.publication</p>\n <p class=\"text-primary font-medium mt-1\">\n {{ metadata.resourcePublished.toLocaleDateString() }}\n </p>\n </div>\n <div *ngIf=\"updateFrequency\">\n <p class=\"text-sm\" translate>record.metadata.updateFrequency</p>\n <p\n class=\"text-primary font-medium mt-1 updateFrequency\"\n translate\n [translateParams]=\"{ count: updatedTimes }\"\n >\n {{ updateFrequency }}\n </p>\n </div>\n <div *ngIf=\"metadata.otherLanguages?.length\">\n <p class=\"text-sm mb-1\" translate>record.metadata.languages</p>\n <div class=\"flex flex-row gap-1 flex-wrap\">\n <p\n class=\"text-primary font-medium\"\n translate\n *ngFor=\"let language of metadata.otherLanguages\"\n >\n language.{{ language }}\n </p>\n </div>\n </div>\n <div *ngIf=\"temporalExtent\">\n <p class=\"text-sm\" translate>record.metadata.temporalExtent</p>\n <div class=\"flex flex-row gap-1 mb-1 text-primary font-medium\">\n <p\n *ngIf=\"temporalExtent.start && temporalExtent.end\"\n translate\n [translateParams]=\"{\n start: temporalExtent.start,\n end: temporalExtent.end,\n }\"\n >\n record.metadata.temporalExtent.fromDateToDate\n </p>\n <p\n *ngIf=\"temporalExtent.start && !temporalExtent.end\"\n translate\n [translateParams]=\"{ start: temporalExtent.start }\"\n >\n record.metadata.temporalExtent.sinceDate\n </p>\n <p\n *ngIf=\"!temporalExtent.start && temporalExtent.end\"\n translate\n [translateParams]=\"{ end: temporalExtent.end }\"\n >\n record.metadata.temporalExtent.untilDate\n </p>\n </div>\n </div>\n </div>\n</gn-ui-expandable-panel>\n<gn-ui-expandable-panel\n *ngIf=\"metadata.landingPage\"\n [title]=\"'record.metadata.technical' | translate\"\n>\n <div class=\"flex flex-col gap-4 mr-4 py-5 rounded text-gray-700\">\n <div *ngIf=\"metadata.recordUpdated\">\n <p class=\"text-sm\" translate>record.metadata.updatedOn</p>\n <p class=\"text-primary font-medium\">\n {{ metadata.recordUpdated && metadata.recordUpdated.toLocaleString() }}\n </p>\n </div>\n <div *ngIf=\"metadata.landingPage\">\n <p class=\"text-sm\" translate>record.metadata.sheet</p>\n <p class=\"text-primary font-medium\" translate>\n <a [href]=\"metadata.landingPage\" target=\"_blank\">\n <span class=\"break-all\" gnUiLinkify>{{ metadata.landingPage }}</span>\n </a>\n </p>\n </div>\n <div *ngIf=\"metadata.ownerOrganization\">\n <p class=\"text-sm\" translate>record.metadata.owner</p>\n <p class=\"text-primary font-medium\">\n {{ metadata.ownerOrganization.name }}\n </p>\n </div>\n <div *ngIf=\"metadata.uniqueIdentifier\">\n <p class=\"text-sm\" translate>record.metadata.uniqueId</p>\n <div class=\"flex flex-row content-align items-end gap-1\">\n <gn-ui-copy-text-button\n [text]=\"metadata.uniqueIdentifier\"\n [tooltipText]=\"'tooltip.id.copy' | translate\"\n [displayText]=\"false\"\n ></gn-ui-copy-text-button>\n <p class=\"text-primary font-medium\">\n {{ metadata.uniqueIdentifier }}\n </p>\n </div>\n </div>\n <div *ngIf=\"metadata.topics?.length\">\n <p class=\"text-sm mb-1\" translate>record.metadata.topics</p>\n <div class=\"sm:pb-4 sm:pr-16\">\n <gn-ui-badge\n class=\"inline-block mr-2 mb-2 lowercase\"\n *ngFor=\"let topic of metadata.topics\"\n >{{ topic }}</gn-ui-badge\n >\n </div>\n </div>\n </div>\n</gn-ui-expandable-panel>\n", styles: [".md-description ::ng-deep a{@apply underline text-blue-600 hover:text-blue-800;}.info-grid>:nth-last-child(n+3){padding-bottom:10px;@apply border-b border-gray-300;}:host ::ng-deep gn-ui-copy-text-button button ng-icon{transform:scale(.8)}\n"] }]
83
111
  }], propDecorators: { metadata: [{
84
112
  type: Input
85
113
  }], incomplete: [{
@@ -87,4 +115,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
87
115
  }], keyword: [{
88
116
  type: Output
89
117
  }] } });
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtaW5mby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvbWV0YWRhdGEtaW5mby9tZXRhZGF0YS1pbmZvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9tZXRhZGF0YS1pbmZvL21ldGFkYXRhLWluZm8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUE7QUFLdEIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUE7Ozs7Ozs7Ozs7OztBQVE5RSxNQUFNLE9BQU8scUJBQXFCO0lBTmxDO1FBU1ksWUFBTyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUE7S0E2RWhEO0lBMUVDLElBQUksUUFBUTtRQUNWLE9BQU8sQ0FDTCxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxVQUFVLEtBQUssSUFBSTtZQUN6QyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxHQUFHLENBQUM7Z0JBQ3pDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQ25DLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEdBQUcsQ0FBQztnQkFDekMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDbkMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxNQUFNLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUNqRSxDQUFBO0lBQ0gsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLElBQUksS0FBSyxHQUFHLEVBQUUsQ0FBQTtRQUNkLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEVBQUU7WUFDMUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQ3hFLENBQUE7U0FDRjtRQUNELE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLElBQUksS0FBSyxHQUFHLEVBQUUsQ0FBQTtRQUNkLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEVBQUU7WUFDMUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQ3hFLENBQUE7U0FDRjtRQUNELE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLElBQUksS0FBSyxHQUFHLEVBQUUsQ0FBQTtRQUNkLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFO1lBQ2xDLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxDQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVE7aUJBQ25CLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztpQkFDckIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQzlDLENBQUE7U0FDRjtRQUNELE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxZQUFZLE1BQU0sRUFBRTtZQUNuRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQTtZQUM5RCxPQUFPLGlDQUFpQyxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtTQUM1RTthQUFNLElBQUksT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsS0FBSyxRQUFRLEVBQUU7WUFDNUQsT0FBTyxpQ0FBaUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsQ0FBQTtTQUN4RTthQUFNO1lBQ0wsT0FBTyxTQUFTLENBQUE7U0FDakI7SUFDSCxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFBO1FBQ3JELE9BQU8scUJBQXFCLENBQUMsZUFBZSxDQUFDLENBQUE7SUFDL0MsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQTtJQUN4QyxDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQy9DLENBQUM7SUFFRCxVQUFVLENBQUMsUUFBZ0I7UUFDekIsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUE7SUFDdEQsQ0FBQztJQUVELGNBQWMsQ0FBQyxPQUFnQjtRQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUM1QixDQUFDOytHQS9FVSxxQkFBcUI7bUdBQXJCLHFCQUFxQix3SkNuQmxDLG8rUkE0UEE7OzRGRHpPYSxxQkFBcUI7a0JBTmpDLFNBQVM7K0JBQ0UscUJBQXFCLG1CQUdkLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDSSxPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHtcbiAgRGF0YXNldFJlY29yZCxcbiAgS2V5d29yZCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgZ2V0VGVtcG9yYWxSYW5nZVVuaW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLW1ldGFkYXRhLWluZm8nLFxuICB0ZW1wbGF0ZVVybDogJy4vbWV0YWRhdGEtaW5mby5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21ldGFkYXRhLWluZm8uY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTWV0YWRhdGFJbmZvQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbWV0YWRhdGE6IFBhcnRpYWw8RGF0YXNldFJlY29yZD5cbiAgQElucHV0KCkgaW5jb21wbGV0ZTogYm9vbGVhblxuICBAT3V0cHV0KCkga2V5d29yZCA9IG5ldyBFdmVudEVtaXR0ZXI8S2V5d29yZD4oKVxuICB1cGRhdGVkVGltZXM6IG51bWJlclxuXG4gIGdldCBoYXNVc2FnZSgpIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5tZXRhZGF0YS5leHRyYXM/LmlzT3BlbkRhdGEgPT09IHRydWUgfHxcbiAgICAgICh0aGlzLm1ldGFkYXRhLmxlZ2FsQ29uc3RyYWludHM/Lmxlbmd0aCA+IDAgJiZcbiAgICAgICAgdGhpcy5sZWdhbENvbnN0cmFpbnRzLmxlbmd0aCA+IDApIHx8XG4gICAgICAodGhpcy5tZXRhZGF0YS5vdGhlckNvbnN0cmFpbnRzPy5sZW5ndGggPiAwICYmXG4gICAgICAgIHRoaXMub3RoZXJDb25zdHJhaW50cy5sZW5ndGggPiAwKSB8fFxuICAgICAgKHRoaXMubWV0YWRhdGEubGljZW5zZXM/Lmxlbmd0aCA+IDAgJiYgdGhpcy5saWNlbnNlcy5sZW5ndGggPiAwKVxuICAgIClcbiAgfVxuXG4gIGdldCBsZWdhbENvbnN0cmFpbnRzKCkge1xuICAgIGxldCBhcnJheSA9IFtdXG4gICAgaWYgKHRoaXMubWV0YWRhdGEubGVnYWxDb25zdHJhaW50cz8ubGVuZ3RoKSB7XG4gICAgICBhcnJheSA9IGFycmF5LmNvbmNhdChcbiAgICAgICAgdGhpcy5tZXRhZGF0YS5sZWdhbENvbnN0cmFpbnRzLmZpbHRlcigoYykgPT4gYy50ZXh0KS5tYXAoKGMpID0+IGMudGV4dClcbiAgICAgIClcbiAgICB9XG4gICAgcmV0dXJuIGFycmF5XG4gIH1cblxuICBnZXQgb3RoZXJDb25zdHJhaW50cygpIHtcbiAgICBsZXQgYXJyYXkgPSBbXVxuICAgIGlmICh0aGlzLm1ldGFkYXRhLm90aGVyQ29uc3RyYWludHM/Lmxlbmd0aCkge1xuICAgICAgYXJyYXkgPSBhcnJheS5jb25jYXQoXG4gICAgICAgIHRoaXMubWV0YWRhdGEub3RoZXJDb25zdHJhaW50cy5maWx0ZXIoKGMpID0+IGMudGV4dCkubWFwKChjKSA9PiBjLnRleHQpXG4gICAgICApXG4gICAgfVxuICAgIHJldHVybiBhcnJheVxuICB9XG5cbiAgZ2V0IGxpY2Vuc2VzKCk6IHsgdGV4dDogc3RyaW5nOyB1cmw6IHN0cmluZyB9W10ge1xuICAgIGxldCBhcnJheSA9IFtdXG4gICAgaWYgKHRoaXMubWV0YWRhdGEubGljZW5zZXM/Lmxlbmd0aCkge1xuICAgICAgYXJyYXkgPSBhcnJheS5jb25jYXQoXG4gICAgICAgIHRoaXMubWV0YWRhdGEubGljZW5zZXNcbiAgICAgICAgICAuZmlsdGVyKChjKSA9PiBjLnRleHQpXG4gICAgICAgICAgLm1hcCgoYykgPT4gKHsgdGV4dDogYy50ZXh0LCB1cmw6IGMudXJsIH0pKVxuICAgICAgKVxuICAgIH1cbiAgICByZXR1cm4gYXJyYXlcbiAgfVxuXG4gIGdldCB1cGRhdGVGcmVxdWVuY3koKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5tZXRhZGF0YS51cGRhdGVGcmVxdWVuY3kgaW5zdGFuY2VvZiBPYmplY3QpIHtcbiAgICAgIHRoaXMudXBkYXRlZFRpbWVzID0gdGhpcy5tZXRhZGF0YS51cGRhdGVGcmVxdWVuY3kudXBkYXRlZFRpbWVzXG4gICAgICByZXR1cm4gYGRvbWFpbi5yZWNvcmQudXBkYXRlRnJlcXVlbmN5LiR7dGhpcy5tZXRhZGF0YS51cGRhdGVGcmVxdWVuY3kucGVyfWBcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiB0aGlzLm1ldGFkYXRhLnVwZGF0ZUZyZXF1ZW5jeSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiBgZG9tYWluLnJlY29yZC51cGRhdGVGcmVxdWVuY3kuJHt0aGlzLm1ldGFkYXRhLnVwZGF0ZUZyZXF1ZW5jeX1gXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgICB9XG4gIH1cblxuICBnZXQgdGVtcG9yYWxFeHRlbnQoKTogeyBzdGFydDogc3RyaW5nOyBlbmQ6IHN0cmluZyB9IHtcbiAgICBjb25zdCB0ZW1wb3JhbEV4dGVudHMgPSB0aGlzLm1ldGFkYXRhLnRlbXBvcmFsRXh0ZW50c1xuICAgIHJldHVybiBnZXRUZW1wb3JhbFJhbmdlVW5pb24odGVtcG9yYWxFeHRlbnRzKVxuICB9XG5cbiAgZ2V0IHNob3duT3JnYW5pemF0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLm1ldGFkYXRhLm93bmVyT3JnYW5pemF0aW9uXG4gIH1cblxuICBnZXQgcmVzb3VyY2VDb250YWN0KCkge1xuICAgIHJldHVybiB0aGlzLm1ldGFkYXRhLmNvbnRhY3RzRm9yUmVzb3VyY2U/LlswXVxuICB9XG5cbiAgZmllbGRSZWFkeShwcm9wTmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuICF0aGlzLmluY29tcGxldGUgfHwgcHJvcE5hbWUgaW4gdGhpcy5tZXRhZGF0YVxuICB9XG5cbiAgb25LZXl3b3JkQ2xpY2soa2V5d29yZDogS2V5d29yZCkge1xuICAgIHRoaXMua2V5d29yZC5lbWl0KGtleXdvcmQpXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJtYi02IG1kLWRlc2NyaXB0aW9uIHNtOm1iLTQgc206cHItMTZcIj5cbiAgPGduLXVpLWNvbnRlbnQtZ2hvc3QgZ2hvc3RDbGFzcz1cImgtMzJcIiBbc2hvd0NvbnRlbnRdPVwiZmllbGRSZWFkeSgnYWJzdHJhY3QnKVwiPlxuICAgIDxnbi11aS1tYXgtbGluZXMgW21heExpbmVzXT1cIjZcIiAqbmdJZj1cIm1ldGFkYXRhLmFic3RyYWN0XCI+XG4gICAgICA8ZGl2PlxuICAgICAgICA8Z24tdWktbWFya2Rvd24tcGFyc2VyXG4gICAgICAgICAgW3RleHRDb250ZW50XT1cIm1ldGFkYXRhLmFic3RyYWN0XCJcbiAgICAgICAgPjwvZ24tdWktbWFya2Rvd24tcGFyc2VyPlxuICAgICAgPC9kaXY+XG4gICAgPC9nbi11aS1tYXgtbGluZXM+XG4gICAgPGRpdiAqbmdJZj1cIm1ldGFkYXRhLmtleXdvcmRzPy5sZW5ndGhcIj5cbiAgICAgIDxwIGNsYXNzPVwibXQtNiBtYi0zIGZvbnQtbWVkaXVtIHRleHQtcHJpbWFyeSB0ZXh0LXNtXCIgdHJhbnNsYXRlPlxuICAgICAgICByZWNvcmQubWV0YWRhdGEua2V5d29yZHNcbiAgICAgIDwvcD5cbiAgICAgIDxkaXYgY2xhc3M9XCJzbTpwYi00IGZsZXggZmxleC13cmFwIGdhcC0yXCI+XG4gICAgICAgIDxnbi11aS1iYWRnZVxuICAgICAgICAgIGNsYXNzPVwiaW5saW5lLWJsb2NrIGxvd2VyY2FzZVwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uS2V5d29yZENsaWNrKGtleXdvcmQpXCJcbiAgICAgICAgICBbY2xpY2thYmxlXT1cInRydWVcIlxuICAgICAgICAgICpuZ0Zvcj1cImxldCBrZXl3b3JkIG9mIG1ldGFkYXRhLmtleXdvcmRzXCJcbiAgICAgICAgICA+e3sga2V5d29yZC5sYWJlbCB9fTwvZ24tdWktYmFkZ2VcbiAgICAgICAgPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZ24tdWktY29udGVudC1naG9zdD5cbjwvZGl2PlxuXG48Z24tdWktZXhwYW5kYWJsZS1wYW5lbCBbdGl0bGVdPVwiJ3JlY29yZC5tZXRhZGF0YS51c2FnZScgfCB0cmFuc2xhdGVcIj5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLVsxMHB4XSBtci00IHB5LVsxMnB4XSByb3VuZGVkIHRleHQtZ3JheS05MDBcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBsaWNlbnNlIG9mIGxpY2Vuc2VzXCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwibGljZW5zZS51cmw7IGVsc2Ugbm9VcmxcIiBjbGFzcz1cInRleHQtcHJpbWFyeVwiPlxuICAgICAgICA8YVxuICAgICAgICAgIFtocmVmXT1cImxpY2Vuc2UudXJsXCJcbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXIgaG92ZXI6dW5kZXJsaW5lIHRyYW5zaXRpb24tYWxsXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IGxpY2Vuc2UudGV4dCB9fVxuICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkICF3LVsxMnB4XSAhaC1bMTJweF0gIXRleHQtWzEycHhdIG9wYWNpdHktNzUgc2hyaW5rLTBcIlxuICAgICAgICAgICAgPm9wZW5faW5fbmV3PC9tYXQtaWNvblxuICAgICAgICAgID5cbiAgICAgICAgPC9hPlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctdGVtcGxhdGUgI25vVXJsPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1wcmltYXJ5XCIgZ25VaUxpbmtpZnk+XG4gICAgICAgICAge3sgbGljZW5zZS50ZXh0IH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibGVnYWxDb25zdHJhaW50cy5sZW5ndGhcIj5cbiAgICAgIDxnbi11aS1tYXJrZG93bi1wYXJzZXJcbiAgICAgICAgKm5nRm9yPVwibGV0IGNvbnN0cmFpbnQgb2YgbGVnYWxDb25zdHJhaW50c1wiXG4gICAgICAgIFt0ZXh0Q29udGVudF09XCJjb25zdHJhaW50XCJcbiAgICAgID5cbiAgICAgIDwvZ24tdWktbWFya2Rvd24tcGFyc2VyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvdGhlckNvbnN0cmFpbnRzLmxlbmd0aFwiPlxuICAgICAgPGRpdiBnblVpTGlua2lmeSAqbmdGb3I9XCJsZXQgY29uc3RyYWludCBvZiBvdGhlckNvbnN0cmFpbnRzXCI+XG4gICAgICAgIDxoNSB0cmFuc2xhdGUgY2xhc3M9XCJmb250LW1lZGl1bSB0ZXh0LWJsYWNrIHRleHQtc20gbWItWzJweF0gbXQtWzE2cHhdXCI+XG4gICAgICAgICAgcmVjb3JkLm1ldGFkYXRhLm90aGVyQ29uc3RyYWludHNcbiAgICAgICAgPC9oNT5cbiAgICAgICAgPGduLXVpLW1hcmtkb3duLXBhcnNlciBbdGV4dENvbnRlbnRdPVwiY29uc3RyYWludFwiPlxuICAgICAgICA8L2duLXVpLW1hcmtkb3duLXBhcnNlcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPHNwYW4gY2xhc3M9XCJub1VzYWdlXCIgKm5nSWY9XCIhaGFzVXNhZ2VcIj5cbiAgICAgIHt7ICdyZWNvcmQubWV0YWRhdGEubm9Vc2FnZScgfCB0cmFuc2xhdGUgfX1cbiAgICA8L3NwYW4+XG4gIDwvZGl2PlxuPC9nbi11aS1leHBhbmRhYmxlLXBhbmVsPlxuPGduLXVpLWV4cGFuZGFibGUtcGFuZWxcbiAgKm5nSWY9XCJcbiAgICBtZXRhZGF0YS5saW5lYWdlIHx8XG4gICAgbWV0YWRhdGEucmVjb3JkVXBkYXRlZCB8fFxuICAgIG1ldGFkYXRhLnVwZGF0ZUZyZXF1ZW5jeSB8fFxuICAgIG1ldGFkYXRhLnN0YXR1c1xuICBcIlxuICBbdGl0bGVdPVwiJ3JlY29yZC5tZXRhZGF0YS5kZXRhaWxzJyB8IHRyYW5zbGF0ZVwiXG4+XG4gIDxkaXYgKm5nSWY9XCJtZXRhZGF0YS5saW5lYWdlXCIgY2xhc3M9XCJ0ZXh0LWdyYXktOTAwIGZsZXggZmxleC1jb2wgbXQtNCBnYXAtMlwiPlxuICAgIDxwIGNsYXNzPVwid2hpdGVzcGFjZS1wcmUtbGluZSBicmVhay13b3JkcyB0ZXh0LWdyYXktOTAwXCIgZ25VaUxpbmtpZnk+XG4gICAgICB7eyBtZXRhZGF0YS5saW5lYWdlIH19XG4gICAgPC9wPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZ2FwLTYgbXQtNSBtYi04XCIgKm5nSWY9XCJyZXNvdXJjZUNvbnRhY3RcIj5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cInJlc291cmNlQ29udGFjdC5vcmdhbml6YXRpb24/LmxvZ29Vcmw/LmhyZWZcIlxuICAgICAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBib3JkZXItc29saWQgYm9yZGVyIGJvcmRlci1ncmF5LTMwMCByb3VuZGVkLW1kIGJnLXdoaXRlIGgtMzIgb3ZlcmZsb3ctaGlkZGVuXCJcbiAgICA+XG4gICAgICA8Z24tdWktdGh1bWJuYWlsXG4gICAgICAgIGNsYXNzPVwicmVsYXRpdmUgaC1mdWxsIHctZnVsbFwiXG4gICAgICAgIFt0aHVtYm5haWxVcmxdPVwicmVzb3VyY2VDb250YWN0Lm9yZ2FuaXphdGlvbi5sb2dvVXJsLmhyZWZcIlxuICAgICAgICBmaXQ9XCJjb250YWluXCJcbiAgICAgID48L2duLXVpLXRodW1ibmFpbD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMVwiPlxuICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXNtIGZvbnQtbWVkaXVtXCIgdHJhbnNsYXRlPnJlY29yZC5tZXRhZGF0YS5wcm9kdWNlcjwvcD5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgZm9udC10aXRsZSB0ZXh0LTIxIG1yLTIgY3Vyc29yLXBvaW50ZXIgaG92ZXI6dW5kZXJsaW5lXCJcbiAgICAgICAgZGF0YS1jeT1cIm9yZ2FuaXphdGlvbi1uYW1lXCJcbiAgICAgID5cbiAgICAgICAge3sgcmVzb3VyY2VDb250YWN0Lm9yZ2FuaXphdGlvbj8ubmFtZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwicmVzb3VyY2VDb250YWN0Lm9yZ2FuaXphdGlvbj8ud2Vic2l0ZVwiPlxuICAgICAgICA8YVxuICAgICAgICAgIFtocmVmXT1cInJlc291cmNlQ29udGFjdC5vcmdhbml6YXRpb24ud2Vic2l0ZVwiXG4gICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICBjbGFzcz1cImNvbnRhY3Qtd2Vic2l0ZSB0ZXh0LXByaW1hcnkgdGV4dC1zbSBjdXJzb3ItcG9pbnRlciBob3Zlcjp1bmRlcmxpbmUgdHJhbnNpdGlvbi1hbGxcIlxuICAgICAgICAgID57eyByZXNvdXJjZUNvbnRhY3Qub3JnYW5pemF0aW9uLndlYnNpdGUgfX1cbiAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCAhdy1bMTJweF0gIWgtWzEycHhdICF0ZXh0LVsxMnB4XSBvcGFjaXR5LTc1IHNocmluay0wXCJcbiAgICAgICAgICAgID5vcGVuX2luX25ldzwvbWF0LWljb25cbiAgICAgICAgICA+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cIm10LTRcIiAqbmdJZj1cInJlc291cmNlQ29udGFjdC5lbWFpbFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleFwiPlxuICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkICF3LTUgIWgtNSAhdGV4dC1bMjBweF0gb3BhY2l0eS03NSBzaHJpbmstMFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgbWFpbF9vdXRsaW5lPC9tYXQtaWNvblxuICAgICAgICAgID5cbiAgICAgICAgICA8YVxuICAgICAgICAgICAgKm5nSWY9XCJyZXNvdXJjZUNvbnRhY3QuZW1haWxcIlxuICAgICAgICAgICAgW2hyZWZdPVwiJ21haWx0bzonICsgcmVzb3VyY2VDb250YWN0LmVtYWlsXCJcbiAgICAgICAgICAgIGNsYXNzPVwidGV4dC1zbSBob3Zlcjp1bmRlcmxpbmUgbWwtMlwiXG4gICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgZGF0YS1jeT1cImNvbnRhY3QtZW1haWxcIlxuICAgICAgICAgICAgPnt7IHJlc291cmNlQ29udGFjdD8uZW1haWwgfX08L2FcbiAgICAgICAgICA+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJweS02IHB4LTYgcm91bmRlZCBiZy1ncmF5LTEwMCBncmlkIGdyaWQtY29scy0yIGdhcC15LTYgZ2FwLXgtWzIwcHhdIHRleHQtZ3JheS03MDBcIlxuICA+XG4gICAgPGRpdiAqbmdJZj1cIm1ldGFkYXRhLnJlY29yZENyZWF0ZWRcIj5cbiAgICAgIDxwIGNsYXNzPVwidGV4dC1zbVwiIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEuY3JlYXRpb248L3A+XG4gICAgICA8cCBjbGFzcz1cInRleHQtcHJpbWFyeSBmb250LW1lZGl1bSBtdC0xXCI+XG4gICAgICAgIHt7IG1ldGFkYXRhLnJlY29yZENyZWF0ZWQudG9Mb2NhbGVEYXRlU3RyaW5nKCkgfX1cbiAgICAgIDwvcD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwibWV0YWRhdGEucmVjb3JkUHVibGlzaGVkXCI+XG4gICAgICA8cCBjbGFzcz1cInRleHQtc21cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLnB1YmxpY2F0aW9uPC9wPlxuICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgZm9udC1tZWRpdW0gbXQtMVwiPlxuICAgICAgICB7eyBtZXRhZGF0YS5yZWNvcmRQdWJsaXNoZWQudG9Mb2NhbGVEYXRlU3RyaW5nKCkgfX1cbiAgICAgIDwvcD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwidXBkYXRlRnJlcXVlbmN5XCI+XG4gICAgICA8cCBjbGFzcz1cInRleHQtc21cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLnVwZGF0ZUZyZXF1ZW5jeTwvcD5cbiAgICAgIDxwXG4gICAgICAgIGNsYXNzPVwidGV4dC1wcmltYXJ5IGZvbnQtbWVkaXVtIG10LTEgdXBkYXRlRnJlcXVlbmN5XCJcbiAgICAgICAgdHJhbnNsYXRlXG4gICAgICAgIFt0cmFuc2xhdGVQYXJhbXNdPVwieyBjb3VudDogdXBkYXRlZFRpbWVzIH1cIlxuICAgICAgPlxuICAgICAgICB7eyB1cGRhdGVGcmVxdWVuY3kgfX1cbiAgICAgIDwvcD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwibWV0YWRhdGEubGFuZ3VhZ2VzXCI+XG4gICAgICA8cCBjbGFzcz1cInRleHQtc20gbWItMVwiIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEubGFuZ3VhZ2VzPC9wPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZ2FwLTEgZmxleC13cmFwXCI+XG4gICAgICAgIDxwXG4gICAgICAgICAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgZm9udC1tZWRpdW1cIlxuICAgICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICAgICpuZ0Zvcj1cImxldCBsYW5ndWFnZSBvZiBtZXRhZGF0YS5sYW5ndWFnZXNcIlxuICAgICAgICA+XG4gICAgICAgICAgbGFuZ3VhZ2Uue3sgbGFuZ3VhZ2UgfX1cbiAgICAgICAgPC9wPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cInRlbXBvcmFsRXh0ZW50XCI+XG4gICAgICA8cCBjbGFzcz1cInRleHQtc21cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLnRlbXBvcmFsRXh0ZW50PC9wPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZ2FwLTEgbWItMSB0ZXh0LXByaW1hcnkgZm9udC1tZWRpdW1cIj5cbiAgICAgICAgPHBcbiAgICAgICAgICAqbmdJZj1cInRlbXBvcmFsRXh0ZW50LnN0YXJ0ICYmIHRlbXBvcmFsRXh0ZW50LmVuZFwiXG4gICAgICAgICAgdHJhbnNsYXRlXG4gICAgICAgICAgW3RyYW5zbGF0ZVBhcmFtc109XCJ7XG4gICAgICAgICAgICBzdGFydDogdGVtcG9yYWxFeHRlbnQuc3RhcnQsXG4gICAgICAgICAgICBlbmQ6IHRlbXBvcmFsRXh0ZW50LmVuZFxuICAgICAgICAgIH1cIlxuICAgICAgICA+XG4gICAgICAgICAgcmVjb3JkLm1ldGFkYXRhLnRlbXBvcmFsRXh0ZW50LmZyb21EYXRlVG9EYXRlXG4gICAgICAgIDwvcD5cbiAgICAgICAgPHBcbiAgICAgICAgICAqbmdJZj1cInRlbXBvcmFsRXh0ZW50LnN0YXJ0ICYmICF0ZW1wb3JhbEV4dGVudC5lbmRcIlxuICAgICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICAgIFt0cmFuc2xhdGVQYXJhbXNdPVwieyBzdGFydDogdGVtcG9yYWxFeHRlbnQuc3RhcnQgfVwiXG4gICAgICAgID5cbiAgICAgICAgICByZWNvcmQubWV0YWRhdGEudGVtcG9yYWxFeHRlbnQuc2luY2VEYXRlXG4gICAgICAgIDwvcD5cbiAgICAgICAgPHBcbiAgICAgICAgICAqbmdJZj1cIiF0ZW1wb3JhbEV4dGVudC5zdGFydCAmJiB0ZW1wb3JhbEV4dGVudC5lbmRcIlxuICAgICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICAgIFt0cmFuc2xhdGVQYXJhbXNdPVwieyBlbmQ6IHRlbXBvcmFsRXh0ZW50LmVuZCB9XCJcbiAgICAgICAgPlxuICAgICAgICAgIHJlY29yZC5tZXRhZGF0YS50ZW1wb3JhbEV4dGVudC51bnRpbERhdGVcbiAgICAgICAgPC9wPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9nbi11aS1leHBhbmRhYmxlLXBhbmVsPlxuPGduLXVpLWV4cGFuZGFibGUtcGFuZWxcbiAgKm5nSWY9XCJtZXRhZGF0YS5sYW5kaW5nUGFnZVwiXG4gIFt0aXRsZV09XCIncmVjb3JkLm1ldGFkYXRhLnRlY2huaWNhbCcgfCB0cmFuc2xhdGVcIlxuPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtNCBtci00IHB5LTUgcm91bmRlZCB0ZXh0LWdyYXktNzAwXCI+XG4gICAgPGRpdiAqbmdJZj1cIm1ldGFkYXRhLnJlY29yZFVwZGF0ZWRcIj5cbiAgICAgIDxwIGNsYXNzPVwidGV4dC1zbVwiIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEudXBkYXRlZE9uPC9wPlxuICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgZm9udC1tZWRpdW1cIj5cbiAgICAgICAge3sgbWV0YWRhdGEucmVjb3JkVXBkYXRlZCAmJiBtZXRhZGF0YS5yZWNvcmRVcGRhdGVkLnRvTG9jYWxlU3RyaW5nKCkgfX1cbiAgICAgIDwvcD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwibWV0YWRhdGEubGFuZGluZ1BhZ2VcIj5cbiAgICAgIDxwIGNsYXNzPVwidGV4dC1zbVwiIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEuc2hlZXQ8L3A+XG4gICAgICA8cCBjbGFzcz1cInRleHQtcHJpbWFyeSBmb250LW1lZGl1bVwiIHRyYW5zbGF0ZT5cbiAgICAgICAgPGEgW2hyZWZdPVwibWV0YWRhdGEubGFuZGluZ1BhZ2VcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImJyZWFrLWFsbFwiIGduVWlMaW5raWZ5Pnt7IG1ldGFkYXRhLmxhbmRpbmdQYWdlIH19PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cIm1ldGFkYXRhLm93bmVyT3JnYW5pemF0aW9uXCI+XG4gICAgICA8cCBjbGFzcz1cInRleHQtc21cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLm93bmVyPC9wPlxuICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgZm9udC1tZWRpdW1cIj5cbiAgICAgICAge3sgbWV0YWRhdGEub3duZXJPcmdhbml6YXRpb24ubmFtZSB9fVxuICAgICAgPC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJtZXRhZGF0YS51bmlxdWVJZGVudGlmaWVyXCI+XG4gICAgICA8cCBjbGFzcz1cInRleHQtc21cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLnVuaXF1ZUlkPC9wPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgY29udGVudC1hbGlnbiBpdGVtcy1lbmQgZ2FwLTFcIj5cbiAgICAgICAgPGduLXVpLWNvcHktdGV4dC1idXR0b25cbiAgICAgICAgICBbdGV4dF09XCJtZXRhZGF0YS51bmlxdWVJZGVudGlmaWVyXCJcbiAgICAgICAgICBbdG9vbHRpcFRleHRdPVwiJ3Rvb2x0aXAuaWQuY29weScgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgIFtkaXNwbGF5VGV4dF09XCJmYWxzZVwiXG4gICAgICAgID48L2duLXVpLWNvcHktdGV4dC1idXR0b24+XG4gICAgICAgIDxwIGNsYXNzPVwidGV4dC1wcmltYXJ5IGZvbnQtbWVkaXVtXCI+XG4gICAgICAgICAge3sgbWV0YWRhdGEudW5pcXVlSWRlbnRpZmllciB9fVxuICAgICAgICA8L3A+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwibWV0YWRhdGEudG9waWNzPy5sZW5ndGhcIj5cbiAgICAgIDxwIGNsYXNzPVwidGV4dC1zbSBtYi0xXCIgdHJhbnNsYXRlPnJlY29yZC5tZXRhZGF0YS50b3BpY3M8L3A+XG4gICAgICA8ZGl2IGNsYXNzPVwic206cGItNCBzbTpwci0xNlwiPlxuICAgICAgICA8Z24tdWktYmFkZ2VcbiAgICAgICAgICBjbGFzcz1cImlubGluZS1ibG9jayBtci0yIG1iLTIgbG93ZXJjYXNlXCJcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgdG9waWMgb2YgbWV0YWRhdGEudG9waWNzXCJcbiAgICAgICAgICA+e3sgdG9waWMgfX08L2duLXVpLWJhZGdlXG4gICAgICAgID5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZ24tdWktZXhwYW5kYWJsZS1wYW5lbD5cbiJdfQ==
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtaW5mby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvbWV0YWRhdGEtaW5mby9tZXRhZGF0YS1pbmZvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9tZXRhZGF0YS1pbmZvL21ldGFkYXRhLWluZm8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUE7QUFLdEIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFDOUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOENBQThDLENBQUE7QUFDdEYsT0FBTyxFQUNMLHdCQUF3QixFQUN4QixpQkFBaUIsR0FDbEIsTUFBTSxzQ0FBc0MsQ0FBQTtBQUM3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUNMLGNBQWMsRUFDZCx1QkFBdUIsR0FDeEIsTUFBTSxzQ0FBc0MsQ0FBQTtBQUM3QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQTtBQUNoRixPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDaEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ2pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ3JFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBOzs7O0FBNEIxRCxNQUFNLE9BQU8scUJBQXFCO0lBMUJsQztRQTZCWSxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQTtLQWtGaEQ7SUEvRUMsSUFBSSxRQUFRO1FBQ1YsT0FBTyxDQUNMLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLFVBQVUsS0FBSyxJQUFJO1lBQ3pDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEdBQUcsQ0FBQztnQkFDekMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDbkMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLE1BQU0sR0FBRyxDQUFDO2dCQUN6QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztZQUNuQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLE1BQU0sR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQ2pFLENBQUE7SUFDSCxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsSUFBSSxLQUFLLEdBQUcsRUFBRSxDQUFBO1FBQ2QsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQzNDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FDOUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQzFCLENBQUE7WUFDRCxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0I7aUJBQzNCLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUN4RCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FDdEIsQ0FBQTtRQUNILENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQTtJQUNkLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixJQUFJLEtBQUssR0FBRyxFQUFFLENBQUE7UUFDZCxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDM0MsS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQ3hFLENBQUE7UUFDSCxDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUE7SUFDZCxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsSUFBSSxLQUFLLEdBQUcsRUFBRSxDQUFBO1FBQ2QsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUNuQyxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRO2lCQUNuQixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7aUJBQ3JCLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUM5QyxDQUFBO1FBQ0gsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxZQUFZLE1BQU0sRUFBRSxDQUFDO1lBQ3BELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFBO1lBQzlELE9BQU8saUNBQWlDLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxDQUFBO1FBQzdFLENBQUM7YUFBTSxJQUFJLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDN0QsT0FBTyxpQ0FBaUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsQ0FBQTtRQUN6RSxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sU0FBUyxDQUFBO1FBQ2xCLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFBO1FBQ3JELE9BQU8scUJBQXFCLENBQUMsZUFBZSxDQUFDLENBQUE7SUFDL0MsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQTtJQUN4QyxDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQy9DLENBQUM7SUFFRCxVQUFVLENBQUMsUUFBZ0I7UUFDekIsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUE7SUFDdEQsQ0FBQztJQUVELGNBQWMsQ0FBQyxPQUFnQjtRQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUM1QixDQUFDOytHQXBGVSxxQkFBcUI7bUdBQXJCLHFCQUFxQiw0S0N4RGxDLGk3U0FxUkEsMFNEaFBJLFlBQVksK1BBQ1osZUFBZSxtT0FDZix1QkFBdUIsNEdBQ3ZCLHdCQUF3QixtR0FDeEIsY0FBYyw2SEFDZCxxQkFBcUIsdUdBQ3JCLGtCQUFrQiw0SEFDbEIsaUJBQWlCLGtGQUNqQix1QkFBdUIsMkhBQ3ZCLE1BQU0sNkdBQ04sb0JBQW9CLCtDQUVQO1lBQ2IsWUFBWSxDQUFDO2dCQUNYLFlBQVk7Z0JBQ1osY0FBYzthQUNmLENBQUM7U0FDSDs7NEZBRVUscUJBQXFCO2tCQTFCakMsU0FBUzsrQkFDRSxxQkFBcUIsbUJBR2QsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixlQUFlO3dCQUNmLHVCQUF1Qjt3QkFDdkIsd0JBQXdCO3dCQUN4QixjQUFjO3dCQUNkLHFCQUFxQjt3QkFDckIsa0JBQWtCO3dCQUNsQixpQkFBaUI7d0JBQ2pCLHVCQUF1Qjt3QkFDdkIsTUFBTTt3QkFDTixvQkFBb0I7cUJBQ3JCLGlCQUNjO3dCQUNiLFlBQVksQ0FBQzs0QkFDWCxZQUFZOzRCQUNaLGNBQWM7eUJBQ2YsQ0FBQztxQkFDSDs4QkFHUSxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksT0FBTztzQkFBaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7XG4gIERhdGFzZXRSZWNvcmQsXG4gIEtleXdvcmQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IGdldFRlbXBvcmFsUmFuZ2VVbmlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHsgTWFya2Rvd25QYXJzZXJDb21wb25lbnQgfSBmcm9tICcuLi9tYXJrZG93bi1wYXJzZXIvbWFya2Rvd24tcGFyc2VyLmNvbXBvbmVudCdcbmltcG9ydCB7XG4gIEV4cGFuZGFibGVQYW5lbENvbXBvbmVudCxcbiAgTWF4TGluZXNDb21wb25lbnQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbGF5b3V0L3NyYydcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQge1xuICBCYWRnZUNvbXBvbmVudCxcbiAgQ29weVRleHRCdXR0b25Db21wb25lbnQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IENvbnRlbnRHaG9zdENvbXBvbmVudCB9IGZyb20gJy4uL2NvbnRlbnQtZ2hvc3QvY29udGVudC1naG9zdC5jb21wb25lbnQnXG5pbXBvcnQgeyBOZ0ljb24sIHByb3ZpZGVJY29ucyB9IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgbWF0T3BlbkluTmV3IH0gZnJvbSAnQG5nLWljb25zL21hdGVyaWFsLWljb25zL2Jhc2VsaW5lJ1xuaW1wb3J0IHsgbWF0TWFpbE91dGxpbmUgfSBmcm9tICdAbmctaWNvbnMvbWF0ZXJpYWwtaWNvbnMvb3V0bGluZSdcbmltcG9ydCB7IFRodW1ibmFpbENvbXBvbmVudCB9IGZyb20gJy4uL3RodW1ibmFpbC90aHVtYm5haWwuY29tcG9uZW50J1xuaW1wb3J0IHsgR25VaUxpbmtpZnlEaXJlY3RpdmUgfSBmcm9tICcuL2xpbmtpZnkuZGlyZWN0aXZlJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1tZXRhZGF0YS1pbmZvJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21ldGFkYXRhLWluZm8uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tZXRhZGF0YS1pbmZvLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIE1hcmtkb3duUGFyc2VyQ29tcG9uZW50LFxuICAgIEV4cGFuZGFibGVQYW5lbENvbXBvbmVudCxcbiAgICBCYWRnZUNvbXBvbmVudCxcbiAgICBDb250ZW50R2hvc3RDb21wb25lbnQsXG4gICAgVGh1bWJuYWlsQ29tcG9uZW50LFxuICAgIE1heExpbmVzQ29tcG9uZW50LFxuICAgIENvcHlUZXh0QnV0dG9uQ29tcG9uZW50LFxuICAgIE5nSWNvbixcbiAgICBHblVpTGlua2lmeURpcmVjdGl2ZSxcbiAgXSxcbiAgdmlld1Byb3ZpZGVyczogW1xuICAgIHByb3ZpZGVJY29ucyh7XG4gICAgICBtYXRPcGVuSW5OZXcsXG4gICAgICBtYXRNYWlsT3V0bGluZSxcbiAgICB9KSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTWV0YWRhdGFJbmZvQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbWV0YWRhdGE6IFBhcnRpYWw8RGF0YXNldFJlY29yZD5cbiAgQElucHV0KCkgaW5jb21wbGV0ZTogYm9vbGVhblxuICBAT3V0cHV0KCkga2V5d29yZCA9IG5ldyBFdmVudEVtaXR0ZXI8S2V5d29yZD4oKVxuICB1cGRhdGVkVGltZXM6IG51bWJlclxuXG4gIGdldCBoYXNVc2FnZSgpIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5tZXRhZGF0YS5leHRyYXM/LmlzT3BlbkRhdGEgPT09IHRydWUgfHxcbiAgICAgICh0aGlzLm1ldGFkYXRhLmxlZ2FsQ29uc3RyYWludHM/Lmxlbmd0aCA+IDAgJiZcbiAgICAgICAgdGhpcy5sZWdhbENvbnN0cmFpbnRzLmxlbmd0aCA+IDApIHx8XG4gICAgICAodGhpcy5tZXRhZGF0YS5vdGhlckNvbnN0cmFpbnRzPy5sZW5ndGggPiAwICYmXG4gICAgICAgIHRoaXMub3RoZXJDb25zdHJhaW50cy5sZW5ndGggPiAwKSB8fFxuICAgICAgKHRoaXMubWV0YWRhdGEubGljZW5zZXM/Lmxlbmd0aCA+IDAgJiYgdGhpcy5saWNlbnNlcy5sZW5ndGggPiAwKVxuICAgIClcbiAgfVxuXG4gIGdldCBsZWdhbENvbnN0cmFpbnRzKCkge1xuICAgIGxldCBhcnJheSA9IFtdXG4gICAgaWYgKHRoaXMubWV0YWRhdGEubGVnYWxDb25zdHJhaW50cz8ubGVuZ3RoKSB7XG4gICAgICBjb25zdCBsaWNlbnNlc1RleHRzID0gdGhpcy5tZXRhZGF0YS5saWNlbnNlcy5tYXAoXG4gICAgICAgIChsaWNlbnNlKSA9PiBsaWNlbnNlLnRleHRcbiAgICAgIClcbiAgICAgIGFycmF5ID0gYXJyYXkuY29uY2F0KFxuICAgICAgICB0aGlzLm1ldGFkYXRhLmxlZ2FsQ29uc3RyYWludHNcbiAgICAgICAgICAuZmlsdGVyKChjKSA9PiBjLnRleHQgJiYgIWxpY2Vuc2VzVGV4dHMuaW5jbHVkZXMoYy50ZXh0KSlcbiAgICAgICAgICAubWFwKChjKSA9PiBjLnRleHQpXG4gICAgICApXG4gICAgfVxuICAgIHJldHVybiBhcnJheVxuICB9XG5cbiAgZ2V0IG90aGVyQ29uc3RyYWludHMoKSB7XG4gICAgbGV0IGFycmF5ID0gW11cbiAgICBpZiAodGhpcy5tZXRhZGF0YS5vdGhlckNvbnN0cmFpbnRzPy5sZW5ndGgpIHtcbiAgICAgIGFycmF5ID0gYXJyYXkuY29uY2F0KFxuICAgICAgICB0aGlzLm1ldGFkYXRhLm90aGVyQ29uc3RyYWludHMuZmlsdGVyKChjKSA9PiBjLnRleHQpLm1hcCgoYykgPT4gYy50ZXh0KVxuICAgICAgKVxuICAgIH1cbiAgICByZXR1cm4gYXJyYXlcbiAgfVxuXG4gIGdldCBsaWNlbnNlcygpOiB7IHRleHQ6IHN0cmluZzsgdXJsOiBzdHJpbmcgfVtdIHtcbiAgICBsZXQgYXJyYXkgPSBbXVxuICAgIGlmICh0aGlzLm1ldGFkYXRhLmxpY2Vuc2VzPy5sZW5ndGgpIHtcbiAgICAgIGFycmF5ID0gYXJyYXkuY29uY2F0KFxuICAgICAgICB0aGlzLm1ldGFkYXRhLmxpY2Vuc2VzXG4gICAgICAgICAgLmZpbHRlcigoYykgPT4gYy50ZXh0KVxuICAgICAgICAgIC5tYXAoKGMpID0+ICh7IHRleHQ6IGMudGV4dCwgdXJsOiBjLnVybCB9KSlcbiAgICAgIClcbiAgICB9XG4gICAgcmV0dXJuIGFycmF5XG4gIH1cblxuICBnZXQgdXBkYXRlRnJlcXVlbmN5KCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMubWV0YWRhdGEudXBkYXRlRnJlcXVlbmN5IGluc3RhbmNlb2YgT2JqZWN0KSB7XG4gICAgICB0aGlzLnVwZGF0ZWRUaW1lcyA9IHRoaXMubWV0YWRhdGEudXBkYXRlRnJlcXVlbmN5LnVwZGF0ZWRUaW1lc1xuICAgICAgcmV0dXJuIGBkb21haW4ucmVjb3JkLnVwZGF0ZUZyZXF1ZW5jeS4ke3RoaXMubWV0YWRhdGEudXBkYXRlRnJlcXVlbmN5LnBlcn1gXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgdGhpcy5tZXRhZGF0YS51cGRhdGVGcmVxdWVuY3kgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gYGRvbWFpbi5yZWNvcmQudXBkYXRlRnJlcXVlbmN5LiR7dGhpcy5tZXRhZGF0YS51cGRhdGVGcmVxdWVuY3l9YFxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkXG4gICAgfVxuICB9XG5cbiAgZ2V0IHRlbXBvcmFsRXh0ZW50KCk6IHsgc3RhcnQ6IHN0cmluZzsgZW5kOiBzdHJpbmcgfSB7XG4gICAgY29uc3QgdGVtcG9yYWxFeHRlbnRzID0gdGhpcy5tZXRhZGF0YS50ZW1wb3JhbEV4dGVudHNcbiAgICByZXR1cm4gZ2V0VGVtcG9yYWxSYW5nZVVuaW9uKHRlbXBvcmFsRXh0ZW50cylcbiAgfVxuXG4gIGdldCBzaG93bk9yZ2FuaXphdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhZGF0YS5vd25lck9yZ2FuaXphdGlvblxuICB9XG5cbiAgZ2V0IHJlc291cmNlQ29udGFjdCgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhZGF0YS5jb250YWN0c0ZvclJlc291cmNlPy5bMF1cbiAgfVxuXG4gIGZpZWxkUmVhZHkocHJvcE5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiAhdGhpcy5pbmNvbXBsZXRlIHx8IHByb3BOYW1lIGluIHRoaXMubWV0YWRhdGFcbiAgfVxuXG4gIG9uS2V5d29yZENsaWNrKGtleXdvcmQ6IEtleXdvcmQpIHtcbiAgICB0aGlzLmtleXdvcmQuZW1pdChrZXl3b3JkKVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibWItNiBtZC1kZXNjcmlwdGlvbiBzbTptYi00IHNtOnByLTE2XCI+XG4gIDxnbi11aS1jb250ZW50LWdob3N0XG4gICAgZ2hvc3RDbGFzcz1cImgtWzE3OHB4XVwiXG4gICAgW3Nob3dDb250ZW50XT1cImZpZWxkUmVhZHkoJ2Fic3RyYWN0JylcIlxuICA+XG4gICAgPGduLXVpLW1heC1saW5lcyBbbWF4TGluZXNdPVwiNlwiICpuZ0lmPVwibWV0YWRhdGEuYWJzdHJhY3RcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtYi02XCI+XG4gICAgICAgIDxnbi11aS1tYXJrZG93bi1wYXJzZXJcbiAgICAgICAgICBbdGV4dENvbnRlbnRdPVwibWV0YWRhdGEuYWJzdHJhY3RcIlxuICAgICAgICA+PC9nbi11aS1tYXJrZG93bi1wYXJzZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L2duLXVpLW1heC1saW5lcz5cbiAgPC9nbi11aS1jb250ZW50LWdob3N0PlxuXG4gIDxwXG4gICAgY2xhc3M9XCJtdC02IG1iLTMgZm9udC1tZWRpdW0gdGV4dC1wcmltYXJ5IHRleHQtc21cIlxuICAgIHRyYW5zbGF0ZVxuICAgICpuZ0lmPVwiIWZpZWxkUmVhZHkoJ2tleXdvcmRzJykgfHwgbWV0YWRhdGEua2V5d29yZHM/Lmxlbmd0aFwiXG4gID5cbiAgICByZWNvcmQubWV0YWRhdGEua2V5d29yZHNcbiAgPC9wPlxuXG4gIDxnbi11aS1jb250ZW50LWdob3N0XG4gICAgZ2hvc3RDbGFzcz1cImgtWzMxcHhdIHctMy80XCJcbiAgICBbc2hvd0NvbnRlbnRdPVwiZmllbGRSZWFkeSgna2V5d29yZHMnKVwiXG4gID5cbiAgICA8ZGl2ICpuZ0lmPVwibWV0YWRhdGEua2V5d29yZHM/Lmxlbmd0aFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInNtOnBiLTQgZmxleCBmbGV4LXdyYXAgZ2FwLTJcIj5cbiAgICAgICAgPGduLXVpLWJhZGdlXG4gICAgICAgICAgY2xhc3M9XCJpbmxpbmUtYmxvY2sgbG93ZXJjYXNlXCJcbiAgICAgICAgICAoY2xpY2spPVwib25LZXl3b3JkQ2xpY2soa2V5d29yZClcIlxuICAgICAgICAgIFtjbGlja2FibGVdPVwidHJ1ZVwiXG4gICAgICAgICAgKm5nRm9yPVwibGV0IGtleXdvcmQgb2YgbWV0YWRhdGEua2V5d29yZHNcIlxuICAgICAgICAgID57eyBrZXl3b3JkLmxhYmVsIH19PC9nbi11aS1iYWRnZVxuICAgICAgICA+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9nbi11aS1jb250ZW50LWdob3N0PlxuPC9kaXY+XG5cbjxnbi11aS1leHBhbmRhYmxlLXBhbmVsXG4gICpuZ0lmPVwiXG4gICAgbWV0YWRhdGEubGljZW5zZXMgfHxcbiAgICBtZXRhZGF0YS5sZWdhbENvbnN0cmFpbnRzIHx8XG4gICAgbWV0YWRhdGEuc2VjdXJpdHlDb25zdHJhaW50cyB8fFxuICAgIG1ldGFkYXRhLm90aGVyQ29uc3RyYWludHNcbiAgXCJcbiAgW3RpdGxlXT1cIidyZWNvcmQubWV0YWRhdGEudXNhZ2UnIHwgdHJhbnNsYXRlXCJcbj5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLVsxMHB4XSBtci00IHB5LVsxMnB4XSByb3VuZGVkIHRleHQtZ3JheS05MDBcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBsaWNlbnNlIG9mIGxpY2Vuc2VzXCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwibGljZW5zZS51cmw7IGVsc2Ugbm9VcmxcIiBjbGFzcz1cInRleHQtcHJpbWFyeVwiPlxuICAgICAgICA8YVxuICAgICAgICAgIFtocmVmXT1cImxpY2Vuc2UudXJsXCJcbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXIgaG92ZXI6dW5kZXJsaW5lIHRyYW5zaXRpb24tYWxsXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IGxpY2Vuc2UudGV4dCB9fVxuICAgICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgICBjbGFzcz1cIiF3LVsxMnB4XSAhaC1bMTJweF0gIXRleHQtWzEycHhdIG9wYWNpdHktNzUgc2hyaW5rLTBcIlxuICAgICAgICAgICAgbmFtZT1cIm1hdE9wZW5Jbk5ld1wiXG4gICAgICAgICAgPjwvbmctaWNvbj5cbiAgICAgICAgPC9hPlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctdGVtcGxhdGUgI25vVXJsPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1wcmltYXJ5XCIgZ25VaUxpbmtpZnk+XG4gICAgICAgICAge3sgbGljZW5zZS50ZXh0IH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibGVnYWxDb25zdHJhaW50cy5sZW5ndGhcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtYi02XCI+XG4gICAgICAgIDxnbi11aS1tYXJrZG93bi1wYXJzZXJcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgY29uc3RyYWludCBvZiBsZWdhbENvbnN0cmFpbnRzXCJcbiAgICAgICAgICBbdGV4dENvbnRlbnRdPVwiY29uc3RyYWludFwiXG4gICAgICAgID5cbiAgICAgICAgPC9nbi11aS1tYXJrZG93bi1wYXJzZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3RoZXJDb25zdHJhaW50cy5sZW5ndGhcIj5cbiAgICAgIDxkaXYgZ25VaUxpbmtpZnkgKm5nRm9yPVwibGV0IGNvbnN0cmFpbnQgb2Ygb3RoZXJDb25zdHJhaW50c1wiPlxuICAgICAgICA8aDUgdHJhbnNsYXRlIGNsYXNzPVwiZm9udC1tZWRpdW0gdGV4dC1ibGFjayB0ZXh0LXNtIG1iLVsycHhdIG10LVsxNnB4XVwiPlxuICAgICAgICAgIHJlY29yZC5tZXRhZGF0YS5vdGhlckNvbnN0cmFpbnRzXG4gICAgICAgIDwvaDU+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYi02XCI+XG4gICAgICAgICAgPGduLXVpLW1hcmtkb3duLXBhcnNlciBbdGV4dENvbnRlbnRdPVwiY29uc3RyYWludFwiPlxuICAgICAgICAgIDwvZ24tdWktbWFya2Rvd24tcGFyc2VyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPHNwYW4gY2xhc3M9XCJub1VzYWdlXCIgKm5nSWY9XCIhaGFzVXNhZ2VcIj5cbiAgICAgIHt7ICdyZWNvcmQubWV0YWRhdGEubm9Vc2FnZScgfCB0cmFuc2xhdGUgfX1cbiAgICA8L3NwYW4+XG4gIDwvZGl2PlxuPC9nbi11aS1leHBhbmRhYmxlLXBhbmVsPlxuPGduLXVpLWV4cGFuZGFibGUtcGFuZWxcbiAgKm5nSWY9XCJcbiAgICBtZXRhZGF0YS5saW5lYWdlIHx8XG4gICAgbWV0YWRhdGEucmVzb3VyY2VVcGRhdGVkIHx8XG4gICAgbWV0YWRhdGEudXBkYXRlRnJlcXVlbmN5IHx8XG4gICAgbWV0YWRhdGEuc3RhdHVzXG4gIFwiXG4gIFt0aXRsZV09XCIncmVjb3JkLm1ldGFkYXRhLmRldGFpbHMnIHwgdHJhbnNsYXRlXCJcbj5cbiAgPGRpdiAqbmdJZj1cIm1ldGFkYXRhLmxpbmVhZ2VcIiBjbGFzcz1cInRleHQtZ3JheS05MDAgZmxleCBmbGV4LWNvbCBtdC00IGdhcC0yXCI+XG4gICAgPHAgY2xhc3M9XCJ3aGl0ZXNwYWNlLXByZS1saW5lIGJyZWFrLXdvcmRzIHRleHQtZ3JheS05MDBcIiBnblVpTGlua2lmeT5cbiAgICAgIHt7IG1ldGFkYXRhLmxpbmVhZ2UgfX1cbiAgICA8L3A+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBnYXAtNiBtdC01IG1iLThcIiAqbmdJZj1cInJlc291cmNlQ29udGFjdFwiPlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwicmVzb3VyY2VDb250YWN0Lm9yZ2FuaXphdGlvbj8ubG9nb1VybD8uaHJlZlwiXG4gICAgICBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGJvcmRlci1zb2xpZCBib3JkZXIgYm9yZGVyLWdyYXktMzAwIHJvdW5kZWQtbWQgYmctd2hpdGUgaC0zMiBvdmVyZmxvdy1oaWRkZW5cIlxuICAgID5cbiAgICAgIDxnbi11aS10aHVtYm5haWxcbiAgICAgICAgY2xhc3M9XCJyZWxhdGl2ZSBoLWZ1bGwgdy1mdWxsXCJcbiAgICAgICAgW3RodW1ibmFpbFVybF09XCJyZXNvdXJjZUNvbnRhY3Qub3JnYW5pemF0aW9uLmxvZ29VcmwuaHJlZlwiXG4gICAgICAgIGZpdD1cImNvbnRhaW5cIlxuICAgICAgPjwvZ24tdWktdGh1bWJuYWlsPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0xXCI+XG4gICAgICA8cCBjbGFzcz1cInRleHQtc20gZm9udC1tZWRpdW1cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLnByb2R1Y2VyPC9wPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cInRleHQtcHJpbWFyeSBmb250LXRpdGxlIHRleHQtMjEgbXItMiBjdXJzb3ItcG9pbnRlciBob3Zlcjp1bmRlcmxpbmVcIlxuICAgICAgICBkYXRhLWN5PVwib3JnYW5pemF0aW9uLW5hbWVcIlxuICAgICAgPlxuICAgICAgICB7eyByZXNvdXJjZUNvbnRhY3Qub3JnYW5pemF0aW9uPy5uYW1lIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJyZXNvdXJjZUNvbnRhY3Qub3JnYW5pemF0aW9uPy53ZWJzaXRlXCI+XG4gICAgICAgIDxhXG4gICAgICAgICAgW2hyZWZdPVwicmVzb3VyY2VDb250YWN0Lm9yZ2FuaXphdGlvbi53ZWJzaXRlXCJcbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIGNsYXNzPVwiY29udGFjdC13ZWJzaXRlIHRleHQtcHJpbWFyeSB0ZXh0LXNtIGN1cnNvci1wb2ludGVyIGhvdmVyOnVuZGVybGluZSB0cmFuc2l0aW9uLWFsbFwiXG4gICAgICAgICAgPnt7IHJlc291cmNlQ29udGFjdC5vcmdhbml6YXRpb24ud2Vic2l0ZSB9fVxuICAgICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgICBjbGFzcz1cIiF3LVsxMnB4XSAhaC1bMTJweF0gIXRleHQtWzEycHhdIG9wYWNpdHktNzUgc2hyaW5rLTBcIlxuICAgICAgICAgICAgbmFtZT1cIm1hdE9wZW5Jbk5ld1wiXG4gICAgICAgICAgPjwvbmctaWNvbj5cbiAgICAgICAgPC9hPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwibXQtNFwiICpuZ0lmPVwicmVzb3VyY2VDb250YWN0LmVtYWlsXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4XCI+XG4gICAgICAgICAgPG5nLWljb25cbiAgICAgICAgICAgIGNsYXNzPVwiIXctNSAhaC01ICF0ZXh0LVsyMHB4XSBvcGFjaXR5LTc1IHNocmluay0wXCJcbiAgICAgICAgICAgIG5hbWU9XCJtYXRNYWlsT3V0bGluZVwiXG4gICAgICAgICAgPjwvbmctaWNvbj5cbiAgICAgICAgICA8YVxuICAgICAgICAgICAgKm5nSWY9XCJyZXNvdXJjZUNvbnRhY3QuZW1haWxcIlxuICAgICAgICAgICAgW2hyZWZdPVwiJ21haWx0bzonICsgcmVzb3VyY2VDb250YWN0LmVtYWlsXCJcbiAgICAgICAgICAgIGNsYXNzPVwidGV4dC1zbSBob3Zlcjp1bmRlcmxpbmUgbWwtMlwiXG4gICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgZGF0YS1jeT1cImNvbnRhY3QtZW1haWxcIlxuICAgICAgICAgICAgPnt7IHJlc291cmNlQ29udGFjdD8uZW1haWwgfX08L2FcbiAgICAgICAgICA+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJweS02IHB4LTYgcm91bmRlZCBiZy1ncmF5LTEwMCBncmlkIGdyaWQtY29scy0yIGdhcC15LTYgZ2FwLXgtWzIwcHhdIHRleHQtZ3JheS03MDBcIlxuICA+XG4gICAgPGRpdiAqbmdJZj1cIm1ldGFkYXRhLnJlc291cmNlQ3JlYXRlZFwiPlxuICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXNtXCIgdHJhbnNsYXRlPnJlY29yZC5tZXRhZGF0YS5jcmVhdGlvbjwvcD5cbiAgICAgIDxwIGNsYXNzPVwidGV4dC1wcmltYXJ5IGZvbnQtbWVkaXVtIG10LTFcIj5cbiAgICAgICAge3sgbWV0YWRhdGEucmVzb3VyY2VDcmVhdGVkLnRvTG9jYWxlRGF0ZVN0cmluZygpIH19XG4gICAgICA8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cIm1ldGFkYXRhLnJlc291cmNlUHVibGlzaGVkXCI+XG4gICAgICA8cCBjbGFzcz1cInRleHQtc21cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLnB1YmxpY2F0aW9uPC9wPlxuICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgZm9udC1tZWRpdW0gbXQtMVwiPlxuICAgICAgICB7eyBtZXRhZGF0YS5yZXNvdXJjZVB1Ymxpc2hlZC50b0xvY2FsZURhdGVTdHJpbmcoKSB9fVxuICAgICAgPC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJ1cGRhdGVGcmVxdWVuY3lcIj5cbiAgICAgIDxwIGNsYXNzPVwidGV4dC1zbVwiIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEudXBkYXRlRnJlcXVlbmN5PC9wPlxuICAgICAgPHBcbiAgICAgICAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgZm9udC1tZWRpdW0gbXQtMSB1cGRhdGVGcmVxdWVuY3lcIlxuICAgICAgICB0cmFuc2xhdGVcbiAgICAgICAgW3RyYW5zbGF0ZVBhcmFtc109XCJ7IGNvdW50OiB1cGRhdGVkVGltZXMgfVwiXG4gICAgICA+XG4gICAgICAgIHt7IHVwZGF0ZUZyZXF1ZW5jeSB9fVxuICAgICAgPC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJtZXRhZGF0YS5vdGhlckxhbmd1YWdlcz8ubGVuZ3RoXCI+XG4gICAgICA8cCBjbGFzcz1cInRleHQtc20gbWItMVwiIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEubGFuZ3VhZ2VzPC9wPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZ2FwLTEgZmxleC13cmFwXCI+XG4gICAgICAgIDxwXG4gICAgICAgICAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgZm9udC1tZWRpdW1cIlxuICAgICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICAgICpuZ0Zvcj1cImxldCBsYW5ndWFnZSBvZiBtZXRhZGF0YS5vdGhlckxhbmd1YWdlc1wiXG4gICAgICAgID5cbiAgICAgICAgICBsYW5ndWFnZS57eyBsYW5ndWFnZSB9fVxuICAgICAgICA8L3A+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwidGVtcG9yYWxFeHRlbnRcIj5cbiAgICAgIDxwIGNsYXNzPVwidGV4dC1zbVwiIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEudGVtcG9yYWxFeHRlbnQ8L3A+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBnYXAtMSBtYi0xIHRleHQtcHJpbWFyeSBmb250LW1lZGl1bVwiPlxuICAgICAgICA8cFxuICAgICAgICAgICpuZ0lmPVwidGVtcG9yYWxFeHRlbnQuc3RhcnQgJiYgdGVtcG9yYWxFeHRlbnQuZW5kXCJcbiAgICAgICAgICB0cmFuc2xhdGVcbiAgICAgICAgICBbdHJhbnNsYXRlUGFyYW1zXT1cIntcbiAgICAgICAgICAgIHN0YXJ0OiB0ZW1wb3JhbEV4dGVudC5zdGFydCxcbiAgICAgICAgICAgIGVuZDogdGVtcG9yYWxFeHRlbnQuZW5kLFxuICAgICAgICAgIH1cIlxuICAgICAgICA+XG4gICAgICAgICAgcmVjb3JkLm1ldGFkYXRhLnRlbXBvcmFsRXh0ZW50LmZyb21EYXRlVG9EYXRlXG4gICAgICAgIDwvcD5cbiAgICAgICAgPHBcbiAgICAgICAgICAqbmdJZj1cInRlbXBvcmFsRXh0ZW50LnN0YXJ0ICYmICF0ZW1wb3JhbEV4dGVudC5lbmRcIlxuICAgICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICAgIFt0cmFuc2xhdGVQYXJhbXNdPVwieyBzdGFydDogdGVtcG9yYWxFeHRlbnQuc3RhcnQgfVwiXG4gICAgICAgID5cbiAgICAgICAgICByZWNvcmQubWV0YWRhdGEudGVtcG9yYWxFeHRlbnQuc2luY2VEYXRlXG4gICAgICAgIDwvcD5cbiAgICAgICAgPHBcbiAgICAgICAgICAqbmdJZj1cIiF0ZW1wb3JhbEV4dGVudC5zdGFydCAmJiB0ZW1wb3JhbEV4dGVudC5lbmRcIlxuICAgICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICAgIFt0cmFuc2xhdGVQYXJhbXNdPVwieyBlbmQ6IHRlbXBvcmFsRXh0ZW50LmVuZCB9XCJcbiAgICAgICAgPlxuICAgICAgICAgIHJlY29yZC5tZXRhZGF0YS50ZW1wb3JhbEV4dGVudC51bnRpbERhdGVcbiAgICAgICAgPC9wPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9nbi11aS1leHBhbmRhYmxlLXBhbmVsPlxuPGduLXVpLWV4cGFuZGFibGUtcGFuZWxcbiAgKm5nSWY9XCJtZXRhZGF0YS5sYW5kaW5nUGFnZVwiXG4gIFt0aXRsZV09XCIncmVjb3JkLm1ldGFkYXRhLnRlY2huaWNhbCcgfCB0cmFuc2xhdGVcIlxuPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtNCBtci00IHB5LTUgcm91bmRlZCB0ZXh0LWdyYXktNzAwXCI+XG4gICAgPGRpdiAqbmdJZj1cIm1ldGFkYXRhLnJlY29yZFVwZGF0ZWRcIj5cbiAgICAgIDxwIGNsYXNzPVwidGV4dC1zbVwiIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEudXBkYXRlZE9uPC9wPlxuICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgZm9udC1tZWRpdW1cIj5cbiAgICAgICAge3sgbWV0YWRhdGEucmVjb3JkVXBkYXRlZCAmJiBtZXRhZGF0YS5yZWNvcmRVcGRhdGVkLnRvTG9jYWxlU3RyaW5nKCkgfX1cbiAgICAgIDwvcD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwibWV0YWRhdGEubGFuZGluZ1BhZ2VcIj5cbiAgICAgIDxwIGNsYXNzPVwidGV4dC1zbVwiIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEuc2hlZXQ8L3A+XG4gICAgICA8cCBjbGFzcz1cInRleHQtcHJpbWFyeSBmb250LW1lZGl1bVwiIHRyYW5zbGF0ZT5cbiAgICAgICAgPGEgW2hyZWZdPVwibWV0YWRhdGEubGFuZGluZ1BhZ2VcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImJyZWFrLWFsbFwiIGduVWlMaW5raWZ5Pnt7IG1ldGFkYXRhLmxhbmRpbmdQYWdlIH19PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cIm1ldGFkYXRhLm93bmVyT3JnYW5pemF0aW9uXCI+XG4gICAgICA8cCBjbGFzcz1cInRleHQtc21cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLm93bmVyPC9wPlxuICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgZm9udC1tZWRpdW1cIj5cbiAgICAgICAge3sgbWV0YWRhdGEub3duZXJPcmdhbml6YXRpb24ubmFtZSB9fVxuICAgICAgPC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJtZXRhZGF0YS51bmlxdWVJZGVudGlmaWVyXCI+XG4gICAgICA8cCBjbGFzcz1cInRleHQtc21cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLnVuaXF1ZUlkPC9wPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgY29udGVudC1hbGlnbiBpdGVtcy1lbmQgZ2FwLTFcIj5cbiAgICAgICAgPGduLXVpLWNvcHktdGV4dC1idXR0b25cbiAgICAgICAgICBbdGV4dF09XCJtZXRhZGF0YS51bmlxdWVJZGVudGlmaWVyXCJcbiAgICAgICAgICBbdG9vbHRpcFRleHRdPVwiJ3Rvb2x0aXAuaWQuY29weScgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgIFtkaXNwbGF5VGV4dF09XCJmYWxzZVwiXG4gICAgICAgID48L2duLXVpLWNvcHktdGV4dC1idXR0b24+XG4gICAgICAgIDxwIGNsYXNzPVwidGV4dC1wcmltYXJ5IGZvbnQtbWVkaXVtXCI+XG4gICAgICAgICAge3sgbWV0YWRhdGEudW5pcXVlSWRlbnRpZmllciB9fVxuICAgICAgICA8L3A+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwibWV0YWRhdGEudG9waWNzPy5sZW5ndGhcIj5cbiAgICAgIDxwIGNsYXNzPVwidGV4dC1zbSBtYi0xXCIgdHJhbnNsYXRlPnJlY29yZC5tZXRhZGF0YS50b3BpY3M8L3A+XG4gICAgICA8ZGl2IGNsYXNzPVwic206cGItNCBzbTpwci0xNlwiPlxuICAgICAgICA8Z24tdWktYmFkZ2VcbiAgICAgICAgICBjbGFzcz1cImlubGluZS1ibG9jayBtci0yIG1iLTIgbG93ZXJjYXNlXCJcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgdG9waWMgb2YgbWV0YWRhdGEudG9waWNzXCJcbiAgICAgICAgICA+e3sgdG9waWMgfX08L2duLXVpLWJhZGdlXG4gICAgICAgID5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZ24tdWktZXhwYW5kYWJsZS1wYW5lbD5cbiJdfQ==