geonetwork-ui 2.3.2 → 2.4.0-alpha.1.2ade9018

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 (1163) hide show
  1. package/esm2022/libs/api/metadata-converter/src/index.mjs +4 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/common/license.mjs +64 -0
  3. package/esm2022/libs/api/metadata-converter/src/lib/common/url.mjs +14 -0
  4. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.mjs +266 -0
  5. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/index.mjs +2 -0
  6. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.mjs +17 -0
  7. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.mjs +227 -0
  8. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.mjs +57 -0
  9. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.mjs +96 -0
  10. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.mjs +2 -0
  11. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.mjs +47 -0
  12. package/esm2022/libs/api/metadata-converter/src/lib/find-converter.mjs +11 -1
  13. package/esm2022/libs/api/metadata-converter/src/lib/function-utils.mjs +1 -1
  14. package/esm2022/libs/api/metadata-converter/src/lib/gn4/atomic-operations.mjs +2 -1
  15. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.converter.mjs +6 -5
  16. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +24 -8
  17. package/esm2022/libs/api/metadata-converter/src/lib/gn4/metadata-url.service.mjs +4 -4
  18. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/index.mjs +2 -1
  19. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.mjs +2 -0
  20. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
  21. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.mjs +12 -8
  22. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +27 -11
  23. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +53 -43
  24. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +104 -52
  25. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +107 -25
  26. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.mjs +31 -0
  27. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.mjs +1 -1
  28. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +151 -101
  29. package/esm2022/libs/api/metadata-converter/src/lib/xml-utils.mjs +118 -24
  30. package/esm2022/libs/api/repository/src/lib/gn4/auth/auth.service.mjs +4 -4
  31. package/esm2022/libs/api/repository/src/lib/gn4/auth/gravatar.service.mjs +4 -4
  32. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +4 -4
  33. package/esm2022/libs/api/repository/src/lib/gn4/favorites/favorites.service.mjs +4 -4
  34. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +156 -14
  35. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.mjs +5 -4
  36. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +6 -4
  37. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.mjs +25 -7
  38. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +118 -18
  39. package/esm2022/libs/api/repository/src/lib/gn4/selection/selection.service.mjs +4 -4
  40. package/esm2022/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.mjs +4 -4
  41. package/esm2022/libs/common/domain/src/lib/model/error/index.mjs +2 -0
  42. package/esm2022/libs/common/domain/src/lib/model/error/publication-version.error.mjs +8 -0
  43. package/esm2022/libs/common/domain/src/lib/model/record/contact.model.mjs +28 -1
  44. package/esm2022/libs/common/domain/src/lib/model/record/index.mjs +2 -1
  45. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  46. package/esm2022/libs/common/domain/src/lib/model/record/organization.model.mjs +1 -1
  47. package/esm2022/libs/common/domain/src/lib/model/record/translation.model.mjs +2 -0
  48. package/esm2022/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.mjs +1 -1
  49. package/esm2022/libs/common/domain/src/lib/model/user/user.model.mjs +1 -1
  50. package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
  51. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  52. package/esm2022/libs/data-access/gn4/src/fixtures/site.fixtures.mjs +5 -5
  53. package/esm2022/libs/data-access/gn4/src/fixtures/ui.fixtures.mjs +3 -3
  54. package/esm2022/libs/data-access/gn4/src/openapi/api/atom.api.service.mjs +4 -4
  55. package/esm2022/libs/data-access/gn4/src/openapi/api/customstyle.api.service.mjs +4 -4
  56. package/esm2022/libs/data-access/gn4/src/openapi/api/formatters.api.service.mjs +4 -4
  57. package/esm2022/libs/data-access/gn4/src/openapi/api/groups.api.service.mjs +4 -4
  58. package/esm2022/libs/data-access/gn4/src/openapi/api/harvesters.api.service.mjs +4 -4
  59. package/esm2022/libs/data-access/gn4/src/openapi/api/identifiers.api.service.mjs +4 -4
  60. package/esm2022/libs/data-access/gn4/src/openapi/api/languages.api.service.mjs +4 -4
  61. package/esm2022/libs/data-access/gn4/src/openapi/api/links.api.service.mjs +4 -4
  62. package/esm2022/libs/data-access/gn4/src/openapi/api/logos.api.service.mjs +4 -4
  63. package/esm2022/libs/data-access/gn4/src/openapi/api/mapservers.api.service.mjs +4 -4
  64. package/esm2022/libs/data-access/gn4/src/openapi/api/mapservices.api.service.mjs +4 -4
  65. package/esm2022/libs/data-access/gn4/src/openapi/api/me.api.service.mjs +4 -4
  66. package/esm2022/libs/data-access/gn4/src/openapi/api/operations.api.service.mjs +4 -4
  67. package/esm2022/libs/data-access/gn4/src/openapi/api/pages.api.service.mjs +4 -4
  68. package/esm2022/libs/data-access/gn4/src/openapi/api/processes.api.service.mjs +4 -4
  69. package/esm2022/libs/data-access/gn4/src/openapi/api/records.api.service.mjs +6 -10
  70. package/esm2022/libs/data-access/gn4/src/openapi/api/regions.api.service.mjs +4 -4
  71. package/esm2022/libs/data-access/gn4/src/openapi/api/registries.api.service.mjs +4 -4
  72. package/esm2022/libs/data-access/gn4/src/openapi/api/related.api.service.mjs +4 -4
  73. package/esm2022/libs/data-access/gn4/src/openapi/api/search.api.service.mjs +4 -4
  74. package/esm2022/libs/data-access/gn4/src/openapi/api/selections.api.service.mjs +4 -4
  75. package/esm2022/libs/data-access/gn4/src/openapi/api/site.api.service.mjs +4 -4
  76. package/esm2022/libs/data-access/gn4/src/openapi/api/sources.api.service.mjs +4 -4
  77. package/esm2022/libs/data-access/gn4/src/openapi/api/standards.api.service.mjs +4 -4
  78. package/esm2022/libs/data-access/gn4/src/openapi/api/status.api.service.mjs +4 -4
  79. package/esm2022/libs/data-access/gn4/src/openapi/api/tags.api.service.mjs +4 -4
  80. package/esm2022/libs/data-access/gn4/src/openapi/api/tools.api.service.mjs +4 -4
  81. package/esm2022/libs/data-access/gn4/src/openapi/api/ui.api.service.mjs +4 -4
  82. package/esm2022/libs/data-access/gn4/src/openapi/api/userfeedback.api.service.mjs +4 -4
  83. package/esm2022/libs/data-access/gn4/src/openapi/api/users.api.service.mjs +4 -4
  84. package/esm2022/libs/data-access/gn4/src/openapi/api/usersearches.api.service.mjs +4 -4
  85. package/esm2022/libs/data-access/gn4/src/openapi/api/userselections.api.service.mjs +4 -4
  86. package/esm2022/libs/data-access/gn4/src/openapi/api.module.mjs +5 -5
  87. package/esm2022/libs/data-access/gn4/src/openapi/model/user.api.model.mjs +1 -1
  88. package/esm2022/libs/feature/auth/src/lib/feature-auth.module.mjs +5 -5
  89. package/esm2022/libs/feature/catalog/src/index.mjs +2 -1
  90. package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +11 -8
  91. package/esm2022/libs/feature/catalog/src/lib/my-org/my-org.service.mjs +4 -4
  92. package/esm2022/libs/feature/catalog/src/lib/organisations/organisations.component.mjs +12 -12
  93. package/esm2022/libs/feature/catalog/src/lib/organization-url.token.mjs +4 -0
  94. package/esm2022/libs/feature/catalog/src/lib/records/records.service.mjs +7 -9
  95. package/esm2022/libs/feature/catalog/src/lib/site-title/site-title.component.mjs +4 -4
  96. package/esm2022/libs/feature/catalog/src/lib/source-label/source-label.component.mjs +4 -4
  97. package/esm2022/libs/feature/catalog/src/lib/sources/sources.service.mjs +4 -4
  98. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +7 -7
  99. package/esm2022/libs/feature/dataviz/src/lib/feature-dataviz.module.mjs +18 -12
  100. package/esm2022/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.mjs +4 -4
  101. package/esm2022/libs/feature/dataviz/src/lib/figure/figure.service.mjs +4 -4
  102. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +41 -51
  103. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +4 -4
  104. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +4 -4
  105. package/esm2022/libs/feature/editor/src/index.mjs +2 -1
  106. package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +4 -1
  107. package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +37 -8
  108. package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +18 -7
  109. package/esm2022/libs/feature/editor/src/lib/+state/editor.models.mjs +1 -1
  110. package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +12 -4
  111. package/esm2022/libs/feature/editor/src/lib/+state/editor.selectors.mjs +18 -6
  112. package/esm2022/libs/feature/editor/src/lib/components/contact-card/contact-card.component.mjs +17 -0
  113. package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +80 -0
  114. package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +95 -0
  115. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +71 -0
  116. package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +72 -0
  117. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-array/form-field-array.component.mjs +4 -4
  118. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.mjs +109 -0
  119. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.mjs +147 -0
  120. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.mjs +19 -0
  121. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-file/form-field-file.component.mjs +4 -4
  122. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +50 -0
  123. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.mjs +13 -11
  124. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +79 -0
  125. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-object/form-field-object.component.mjs +4 -4
  126. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.mjs +151 -0
  127. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.mjs +191 -0
  128. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.mjs +44 -0
  129. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.mjs +104 -0
  130. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.mjs +14 -18
  131. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.mjs +11 -10
  132. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +141 -6
  133. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +78 -0
  134. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +73 -57
  135. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +53 -68
  136. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +5 -3
  137. package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +15 -9
  138. package/esm2022/libs/feature/editor/src/lib/components/wizard/wizard.component.mjs +5 -5
  139. package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +11 -11
  140. package/esm2022/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.mjs +4 -4
  141. package/esm2022/libs/feature/editor/src/lib/expressions.mjs +1 -1
  142. package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +12 -9
  143. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +217 -45
  144. package/esm2022/libs/feature/editor/src/lib/models/editor-config.model.mjs +2 -0
  145. package/esm2022/libs/feature/editor/src/lib/models/index.mjs +2 -1
  146. package/esm2022/libs/feature/editor/src/lib/services/editor.service.mjs +36 -45
  147. package/esm2022/libs/feature/editor/src/lib/services/wizard.service.mjs +4 -4
  148. package/esm2022/libs/feature/map/src/index.mjs +2 -9
  149. package/esm2022/libs/feature/map/src/lib/+state/map.actions.mjs +4 -7
  150. package/esm2022/libs/feature/map/src/lib/+state/map.facade.mjs +12 -18
  151. package/esm2022/libs/feature/map/src/lib/+state/map.reducer.mjs +13 -44
  152. package/esm2022/libs/feature/map/src/lib/+state/map.selectors.mjs +3 -2
  153. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +8 -8
  154. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.mjs +21 -20
  155. package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +25 -16
  156. package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +17 -16
  157. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +20 -15
  158. package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +18 -13
  159. package/esm2022/libs/feature/map/src/lib/constant/index.mjs +1 -2
  160. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +12 -71
  161. package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +44 -30
  162. package/esm2022/libs/feature/map/src/lib/geocoding.service.mjs +4 -4
  163. package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +45 -20
  164. package/esm2022/libs/feature/map/src/lib/map-state-container/map-state-container.component.mjs +27 -0
  165. package/esm2022/libs/feature/map/src/lib/style/map-style.fixtures.mjs +3 -3
  166. package/esm2022/libs/feature/map/src/lib/style/map-style.service.mjs +4 -4
  167. package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +14 -173
  168. package/esm2022/libs/feature/notifications/src/lib/feature-notifications.module.mjs +5 -5
  169. package/esm2022/libs/feature/notifications/src/lib/notifications-container/notifications-container.component.mjs +4 -4
  170. package/esm2022/libs/feature/notifications/src/lib/notifications.service.mjs +4 -4
  171. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +4 -4
  172. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +44 -25
  173. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +15 -7
  174. package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +51 -17
  175. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +22 -18
  176. package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +22 -13
  177. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +41 -53
  178. package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +5 -5
  179. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +7 -5
  180. package/esm2022/libs/feature/router/src/lib/default/constants.mjs +2 -1
  181. package/esm2022/libs/feature/router/src/lib/default/container/search-router.container.directive.mjs +4 -4
  182. package/esm2022/libs/feature/router/src/lib/default/router.config.mjs +1 -1
  183. package/esm2022/libs/feature/router/src/lib/default/router.module.mjs +5 -5
  184. package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +12 -5
  185. package/esm2022/libs/feature/router/src/lib/default/services/router-search.service.mjs +4 -4
  186. package/esm2022/libs/feature/router/src/lib/default/state/router.effects.mjs +4 -4
  187. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +11 -4
  188. package/esm2022/libs/feature/search/src/index.mjs +2 -2
  189. package/esm2022/libs/feature/search/src/lib/facets/facets-container/facets-container.component.mjs +4 -4
  190. package/esm2022/libs/feature/search/src/lib/facets/facets.module.mjs +5 -5
  191. package/esm2022/libs/feature/search/src/lib/facets/facets.service.mjs +4 -4
  192. package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +4 -4
  193. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +11 -8
  194. package/esm2022/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.mjs +4 -4
  195. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +6 -6
  196. package/esm2022/libs/feature/search/src/lib/records-metrics/records-metrics.component.mjs +4 -4
  197. package/esm2022/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.mjs +4 -4
  198. package/esm2022/libs/feature/search/src/lib/results-layout/results-layout.component.mjs +4 -4
  199. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +4 -4
  200. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +94 -0
  201. package/esm2022/libs/feature/search/src/lib/sort-by/sort-by.component.mjs +4 -4
  202. package/esm2022/libs/feature/search/src/lib/state/container/search-state.container.directive.mjs +4 -4
  203. package/esm2022/libs/feature/search/src/lib/state/effects.mjs +4 -4
  204. package/esm2022/libs/feature/search/src/lib/state/search.facade.mjs +11 -6
  205. package/esm2022/libs/feature/search/src/lib/state/selectors.mjs +4 -1
  206. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +10 -6
  207. package/esm2022/libs/feature/search/src/lib/utils/service/search.service.mjs +4 -4
  208. package/esm2022/libs/ui/catalog/src/lib/catalog-title/catalog-title.component.mjs +4 -4
  209. package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +4 -4
  210. package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +7 -7
  211. package/esm2022/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.mjs +9 -9
  212. package/esm2022/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.mjs +4 -4
  213. package/esm2022/libs/ui/catalog/src/lib/ui-catalog.module.mjs +9 -11
  214. package/esm2022/libs/ui/dataviz/src/lib/chart/chart.component.mjs +4 -4
  215. package/esm2022/libs/ui/dataviz/src/lib/figure/figure.component.mjs +7 -10
  216. package/esm2022/libs/ui/dataviz/src/lib/table/table.component.mjs +4 -4
  217. package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +3 -3
  218. package/esm2022/libs/ui/dataviz/src/lib/ui-dataviz.module.mjs +5 -5
  219. package/esm2022/libs/ui/elements/src/index.mjs +5 -4
  220. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +5 -5
  221. package/esm2022/libs/ui/elements/src/lib/avatar/avatar.component.mjs +4 -4
  222. package/esm2022/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.mjs +27 -0
  223. package/esm2022/libs/ui/elements/src/lib/content-ghost/content-ghost.component.mjs +4 -4
  224. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +5 -5
  225. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +4 -4
  226. package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +7 -5
  227. package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +4 -4
  228. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +5 -5
  229. package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +8 -7
  230. package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +5 -5
  231. package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +4 -4
  232. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +4 -4
  233. package/esm2022/libs/ui/elements/src/lib/metadata-info/linkify.directive.mjs +4 -4
  234. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +12 -12
  235. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +7 -13
  236. package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +5 -5
  237. package/esm2022/libs/ui/elements/src/lib/notification/notification.component.mjs +5 -5
  238. package/esm2022/libs/ui/elements/src/lib/pagination/pagination.component.mjs +4 -4
  239. package/esm2022/libs/ui/elements/src/lib/pagination-buttons/pagination-buttons.component.mjs +4 -4
  240. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +7 -7
  241. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +26 -7
  242. package/esm2022/libs/ui/elements/src/lib/thumbnail/thumbnail.component.mjs +4 -4
  243. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +22 -15
  244. package/esm2022/libs/ui/elements/src/lib/user-feedback-item/time-since.pipe.mjs +4 -4
  245. package/esm2022/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.mjs +4 -4
  246. package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +5 -5
  247. package/esm2022/libs/ui/inputs/src/index.mjs +7 -1
  248. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +81 -31
  249. package/esm2022/libs/ui/inputs/src/lib/badge/badge.component.mjs +30 -0
  250. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +11 -4
  251. package/esm2022/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.mjs +4 -4
  252. package/esm2022/libs/ui/inputs/src/lib/checkbox/checkbox.component.mjs +4 -4
  253. package/esm2022/libs/ui/inputs/src/lib/chips-input/chips-input.component.mjs +4 -4
  254. package/esm2022/libs/ui/inputs/src/lib/copy-text-button/copy-text-button.component.mjs +4 -4
  255. package/esm2022/libs/ui/inputs/src/lib/date-picker/date-picker.component.mjs +14 -7
  256. package/esm2022/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.mjs +25 -13
  257. package/esm2022/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.mjs +4 -4
  258. package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +4 -4
  259. package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +4 -4
  260. package/esm2022/libs/ui/inputs/src/lib/editable-label/editable-label.directive.mjs +28 -26
  261. package/esm2022/libs/ui/inputs/src/lib/file-input/file-input.component.mjs +87 -0
  262. package/esm2022/libs/ui/inputs/src/lib/files-drop/files-drop.directive.mjs +4 -4
  263. package/esm2022/libs/ui/inputs/src/lib/image-input/image-input.component.mjs +21 -17
  264. package/esm2022/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.mjs +4 -4
  265. package/esm2022/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +4 -4
  266. package/esm2022/libs/ui/inputs/src/lib/search-input/search-input.component.mjs +8 -6
  267. package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +4 -4
  268. package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +34 -0
  269. package/esm2022/libs/ui/inputs/src/lib/text-area/text-area.component.mjs +9 -23
  270. package/esm2022/libs/ui/inputs/src/lib/text-input/text-input.component.mjs +8 -19
  271. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +16 -24
  272. package/esm2022/libs/ui/inputs/src/lib/url-input/url-input.component.mjs +59 -0
  273. package/esm2022/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.mjs +4 -4
  274. package/esm2022/libs/ui/layout/src/index.mjs +4 -1
  275. package/esm2022/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.mjs +4 -4
  276. package/esm2022/libs/ui/layout/src/lib/block-list/block-list.component.mjs +4 -4
  277. package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +4 -4
  278. package/esm2022/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.mjs +4 -4
  279. package/esm2022/libs/ui/layout/src/lib/expandable-panel-button/expandable-panel-button.component.mjs +4 -4
  280. package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +7 -5
  281. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.mjs +4 -4
  282. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +5 -5
  283. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +71 -0
  284. package/esm2022/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.mjs +29 -0
  285. package/esm2022/libs/ui/layout/src/lib/sortable-list/sortable-list.component.mjs +43 -0
  286. package/esm2022/libs/ui/layout/src/lib/sticky-header/sticky-header.component.mjs +4 -4
  287. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +5 -5
  288. package/esm2022/libs/ui/map/src/index.mjs +4 -3
  289. package/esm2022/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.mjs +10 -8
  290. package/esm2022/libs/ui/map/src/lib/components/map-container/map-container.component.mjs +137 -0
  291. package/esm2022/libs/ui/map/src/lib/components/map-container/map-settings.token.mjs +13 -0
  292. package/esm2022/libs/ui/map/src/lib/map-utils.mjs +37 -0
  293. package/esm2022/libs/ui/search/src/index.mjs +2 -1
  294. package/esm2022/libs/ui/search/src/lib/facets/facet-block/facet-block.component.mjs +7 -7
  295. package/esm2022/libs/ui/search/src/lib/facets/facet-item/facet-item.component.mjs +7 -7
  296. package/esm2022/libs/ui/search/src/lib/facets/facet-list/facet-list.component.mjs +4 -4
  297. package/esm2022/libs/ui/search/src/lib/facets/facets.module.mjs +5 -5
  298. package/esm2022/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.mjs +7 -7
  299. package/esm2022/libs/ui/search/src/lib/record-metric/record-metric.component.mjs +4 -4
  300. package/esm2022/libs/ui/search/src/lib/record-preview/record-preview.component.mjs +4 -4
  301. package/esm2022/libs/ui/search/src/lib/record-preview-card/record-preview-card.component.mjs +4 -4
  302. package/esm2022/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.mjs +4 -4
  303. package/esm2022/libs/ui/search/src/lib/record-preview-list/record-preview-list.component.mjs +4 -4
  304. package/esm2022/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.mjs +4 -4
  305. package/esm2022/libs/ui/search/src/lib/record-preview-text/record-preview-text.component.mjs +4 -4
  306. package/esm2022/libs/ui/search/src/lib/record-preview-title/record-preview-title.component.mjs +4 -4
  307. package/esm2022/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.mjs +4 -4
  308. package/esm2022/libs/ui/search/src/lib/results-list/results-list.component.mjs +4 -4
  309. package/esm2022/libs/ui/search/src/lib/results-list-item/results-list-item.component.mjs +4 -4
  310. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +67 -0
  311. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +140 -0
  312. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +5 -5
  313. package/esm2022/libs/ui/widgets/src/index.mjs +2 -2
  314. package/esm2022/libs/ui/widgets/src/lib/color-scale/color-scale.component.mjs +4 -4
  315. package/esm2022/libs/ui/widgets/src/lib/loading-mask/loading-mask.component.mjs +4 -4
  316. package/esm2022/libs/ui/widgets/src/lib/popover/popover.component.mjs +68 -0
  317. package/esm2022/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.mjs +7 -5
  318. package/esm2022/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.mjs +4 -4
  319. package/esm2022/libs/ui/widgets/src/lib/spinning-loader/spinning-loader.component.mjs +4 -4
  320. package/esm2022/libs/ui/widgets/src/lib/step-bar/step-bar.component.mjs +4 -4
  321. package/esm2022/libs/ui/widgets/src/lib/ui-widgets.module.mjs +5 -15
  322. package/esm2022/libs/util/app-config/src/index.mjs +2 -1
  323. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +10 -10
  324. package/esm2022/libs/util/app-config/src/lib/map-layers.mjs +27 -0
  325. package/esm2022/libs/util/i18n/src/index.mjs +2 -1
  326. package/esm2022/libs/util/i18n/src/lib/i18n.constants.mjs +1 -38
  327. package/esm2022/libs/util/i18n/src/lib/i18n.interceptor.mjs +4 -4
  328. package/esm2022/libs/util/i18n/src/lib/lang.service.mjs +5 -5
  329. package/esm2022/libs/util/i18n/src/lib/language-codes.mjs +40 -0
  330. package/esm2022/libs/util/i18n/src/lib/util-i18n.module.mjs +5 -5
  331. package/esm2022/libs/util/shared/src/lib/image-fallback.directive.mjs +4 -4
  332. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +4 -4
  333. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +1 -1
  334. package/esm2022/libs/util/shared/src/lib/services/log.service.mjs +4 -4
  335. package/esm2022/libs/util/shared/src/lib/services/proxy.service.mjs +4 -4
  336. package/esm2022/libs/util/shared/src/lib/services/theme.service.mjs +5 -4
  337. package/esm2022/libs/util/shared/src/lib/util-shared.module.mjs +5 -5
  338. package/esm2022/libs/util/shared/src/lib/utils/bytes-convert.mjs +4 -1
  339. package/esm2022/libs/util/shared/src/lib/utils/index.mjs +2 -1
  340. package/esm2022/libs/util/shared/src/lib/utils/no-duplicate-file-name.mjs +19 -0
  341. package/esm2022/translations/de.json +180 -33
  342. package/esm2022/translations/en.json +188 -41
  343. package/esm2022/translations/es.json +158 -11
  344. package/esm2022/translations/fr.json +218 -71
  345. package/esm2022/translations/it.json +161 -14
  346. package/esm2022/translations/nl.json +158 -11
  347. package/esm2022/translations/pt.json +158 -11
  348. package/fesm2022/geonetwork-ui.mjs +9507 -5391
  349. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  350. package/libs/api/metadata-converter/src/index.d.ts +3 -0
  351. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  352. package/libs/api/metadata-converter/src/lib/common/license.d.ts +3 -0
  353. package/libs/api/metadata-converter/src/lib/common/license.d.ts.map +1 -0
  354. package/libs/api/metadata-converter/src/lib/common/url.d.ts +7 -0
  355. package/libs/api/metadata-converter/src/lib/common/url.d.ts.map +1 -0
  356. package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts +13 -0
  357. package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts.map +1 -0
  358. package/libs/api/metadata-converter/src/lib/dcat-ap/index.d.ts +2 -0
  359. package/libs/api/metadata-converter/src/lib/dcat-ap/index.d.ts.map +1 -0
  360. package/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.d.ts +16 -0
  361. package/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.d.ts.map +1 -0
  362. package/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.d.ts +21 -0
  363. package/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.d.ts.map +1 -0
  364. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.d.ts +15 -0
  365. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.d.ts.map +1 -0
  366. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.d.ts +8 -0
  367. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.d.ts.map +1 -0
  368. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.d.ts +2 -0
  369. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.d.ts.map +1 -0
  370. package/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.d.ts +6 -0
  371. package/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.d.ts.map +1 -0
  372. package/libs/api/metadata-converter/src/lib/find-converter.d.ts.map +1 -1
  373. package/libs/api/metadata-converter/src/lib/function-utils.d.ts +1 -1
  374. package/libs/api/metadata-converter/src/lib/function-utils.d.ts.map +1 -1
  375. package/libs/api/metadata-converter/src/lib/gn4/atomic-operations.d.ts.map +1 -1
  376. package/libs/api/metadata-converter/src/lib/gn4/gn4.converter.d.ts.map +1 -1
  377. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +3 -3
  378. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  379. package/libs/api/metadata-converter/src/lib/gn4/types/index.d.ts +1 -0
  380. package/libs/api/metadata-converter/src/lib/gn4/types/index.d.ts.map +1 -1
  381. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts +27 -0
  382. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts.map +1 -0
  383. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +1 -0
  384. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  385. package/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.d.ts.map +1 -1
  386. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +6 -4
  387. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  388. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts +5 -4
  389. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
  390. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts +3 -2
  391. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -1
  392. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts +23 -9
  393. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  394. package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts +5 -0
  395. package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts.map +1 -0
  396. package/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.d.ts +1 -1
  397. package/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.d.ts.map +1 -1
  398. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +20 -15
  399. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  400. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts +104 -2
  401. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts.map +1 -1
  402. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +35 -8
  403. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  404. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts.map +1 -1
  405. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts.map +1 -1
  406. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts +3 -3
  407. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts.map +1 -1
  408. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +20 -8
  409. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  410. package/libs/common/domain/src/lib/model/error/index.d.ts +2 -0
  411. package/libs/common/domain/src/lib/model/error/index.d.ts.map +1 -0
  412. package/libs/common/domain/src/lib/model/error/publication-version.error.d.ts +5 -0
  413. package/libs/common/domain/src/lib/model/error/publication-version.error.d.ts.map +1 -0
  414. package/libs/common/domain/src/lib/model/record/contact.model.d.ts +2 -1
  415. package/libs/common/domain/src/lib/model/record/contact.model.d.ts.map +1 -1
  416. package/libs/common/domain/src/lib/model/record/index.d.ts +1 -0
  417. package/libs/common/domain/src/lib/model/record/index.d.ts.map +1 -1
  418. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +24 -16
  419. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  420. package/libs/common/domain/src/lib/model/record/organization.model.d.ts +3 -0
  421. package/libs/common/domain/src/lib/model/record/organization.model.d.ts.map +1 -1
  422. package/libs/common/domain/src/lib/model/record/translation.model.d.ts +26 -0
  423. package/libs/common/domain/src/lib/model/record/translation.model.d.ts.map +1 -0
  424. package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts +12 -5
  425. package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts.map +1 -1
  426. package/libs/common/domain/src/lib/model/user/user.model.d.ts +1 -1
  427. package/libs/common/domain/src/lib/model/user/user.model.d.ts.map +1 -1
  428. package/libs/common/domain/src/lib/platform.service.interface.d.ts +20 -3
  429. package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
  430. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +51 -1
  431. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  432. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts +2 -2
  433. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts.map +1 -1
  434. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts +1 -1
  435. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts.map +1 -1
  436. package/libs/data-access/gn4/src/openapi/api/records.api.service.d.ts +6 -6
  437. package/libs/data-access/gn4/src/openapi/api/records.api.service.d.ts.map +1 -1
  438. package/libs/data-access/gn4/src/openapi/model/user.api.model.d.ts +1 -1
  439. package/libs/feature/catalog/src/index.d.ts +1 -0
  440. package/libs/feature/catalog/src/index.d.ts.map +1 -1
  441. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts +2 -1
  442. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts.map +1 -1
  443. package/libs/feature/catalog/src/lib/organisations/organisations.component.d.ts.map +1 -1
  444. package/libs/feature/catalog/src/lib/organization-url.token.d.ts +3 -0
  445. package/libs/feature/catalog/src/lib/organization-url.token.d.ts.map +1 -0
  446. package/libs/feature/catalog/src/lib/records/records.service.d.ts.map +1 -1
  447. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +2 -2
  448. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  449. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts +10 -8
  450. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts.map +1 -1
  451. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts +13 -20
  452. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts.map +1 -1
  453. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +6 -6
  454. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  455. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +3 -3
  456. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  457. package/libs/feature/editor/src/index.d.ts +1 -0
  458. package/libs/feature/editor/src/index.d.ts.map +1 -1
  459. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +11 -0
  460. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -1
  461. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts +13 -1
  462. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -1
  463. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +14 -11
  464. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -1
  465. package/libs/feature/editor/src/lib/+state/editor.models.d.ts +9 -1
  466. package/libs/feature/editor/src/lib/+state/editor.models.d.ts.map +1 -1
  467. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts +13 -2
  468. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -1
  469. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +7 -9
  470. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -1
  471. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts +8 -0
  472. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts.map +1 -0
  473. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts +33 -0
  474. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts.map +1 -0
  475. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts +34 -0
  476. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts.map +1 -0
  477. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts +15 -0
  478. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -0
  479. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts +16 -0
  480. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts.map +1 -0
  481. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts +38 -0
  482. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts.map +1 -0
  483. 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
  484. 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
  485. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.d.ts +9 -0
  486. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.d.ts.map +1 -0
  487. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts +17 -0
  488. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -0
  489. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts +6 -4
  490. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts.map +1 -1
  491. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +15 -0
  492. 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
  493. 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
  494. 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
  495. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.d.ts +44 -0
  496. 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
  497. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts +15 -0
  498. 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
  499. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts +31 -0
  500. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts.map +1 -0
  501. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts +4 -6
  502. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts.map +1 -1
  503. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts +4 -3
  504. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts.map +1 -1
  505. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts +28 -0
  506. 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
  507. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts +25 -0
  508. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts.map +1 -0
  509. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts +9 -9
  510. 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
  511. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +19 -25
  512. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  513. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts +4 -2
  514. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts.map +1 -1
  515. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts +7 -7
  516. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts.map +1 -1
  517. package/libs/feature/editor/src/lib/expressions.d.ts +1 -1
  518. package/libs/feature/editor/src/lib/expressions.d.ts.map +1 -1
  519. package/libs/feature/editor/src/lib/feature-editor.module.d.ts +2 -1
  520. package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
  521. package/libs/feature/editor/src/lib/fields.config.d.ts +56 -2
  522. package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
  523. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts +42 -0
  524. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts.map +1 -0
  525. package/libs/feature/editor/src/lib/models/index.d.ts +1 -0
  526. package/libs/feature/editor/src/lib/models/index.d.ts.map +1 -1
  527. package/libs/feature/editor/src/lib/services/editor.service.d.ts +8 -10
  528. package/libs/feature/editor/src/lib/services/editor.service.d.ts.map +1 -1
  529. package/libs/feature/map/src/index.d.ts +1 -8
  530. package/libs/feature/map/src/index.d.ts.map +1 -1
  531. package/libs/feature/map/src/lib/+state/map.actions.d.ts +13 -39
  532. package/libs/feature/map/src/lib/+state/map.actions.d.ts.map +1 -1
  533. package/libs/feature/map/src/lib/+state/map.facade.d.ts +9 -10
  534. package/libs/feature/map/src/lib/+state/map.facade.d.ts.map +1 -1
  535. package/libs/feature/map/src/lib/+state/map.reducer.d.ts +4 -2
  536. package/libs/feature/map/src/lib/+state/map.reducer.d.ts.map +1 -1
  537. package/libs/feature/map/src/lib/+state/map.selectors.d.ts +6 -1
  538. package/libs/feature/map/src/lib/+state/map.selectors.d.ts.map +1 -1
  539. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts +1 -1
  540. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts.map +1 -1
  541. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts +8 -10
  542. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts.map +1 -1
  543. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts +1 -1
  544. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -1
  545. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts +3 -3
  546. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
  547. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts +2 -2
  548. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -1
  549. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts +2 -2
  550. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts.map +1 -1
  551. package/libs/feature/map/src/lib/constant/index.d.ts +0 -1
  552. package/libs/feature/map/src/lib/constant/index.d.ts.map +1 -1
  553. package/libs/feature/map/src/lib/feature-map.module.d.ts +12 -23
  554. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  555. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts +7 -7
  556. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts.map +1 -1
  557. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts +5 -4
  558. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
  559. package/libs/feature/map/src/lib/map-state-container/map-state-container.component.d.ts +14 -0
  560. package/libs/feature/map/src/lib/map-state-container/map-state-container.component.d.ts.map +1 -0
  561. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts +2 -2
  562. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts.map +1 -1
  563. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts +0 -30
  564. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
  565. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +3 -3
  566. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  567. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +4 -1
  568. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
  569. package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts +4 -1
  570. package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts.map +1 -1
  571. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +4 -1
  572. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
  573. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +10 -7
  574. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  575. package/libs/feature/record/src/lib/feature-record.module.d.ts +13 -10
  576. package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
  577. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +14 -20
  578. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  579. package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
  580. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +7 -7
  581. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  582. package/libs/feature/router/src/lib/default/constants.d.ts +1 -0
  583. package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
  584. package/libs/feature/router/src/lib/default/router.config.d.ts +1 -0
  585. package/libs/feature/router/src/lib/default/router.config.d.ts.map +1 -1
  586. package/libs/feature/router/src/lib/default/router.service.d.ts +1 -0
  587. package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
  588. package/libs/feature/router/src/lib/default/state/router.facade.d.ts +1 -0
  589. package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
  590. package/libs/feature/search/src/index.d.ts +1 -1
  591. package/libs/feature/search/src/index.d.ts.map +1 -1
  592. package/libs/feature/search/src/lib/feature-search.module.d.ts +2 -1
  593. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  594. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
  595. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +37 -0
  596. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -0
  597. package/libs/feature/search/src/lib/state/search.facade.d.ts +2 -0
  598. package/libs/feature/search/src/lib/state/search.facade.d.ts.map +1 -1
  599. package/libs/feature/search/src/lib/state/selectors.d.ts +1 -0
  600. package/libs/feature/search/src/lib/state/selectors.d.ts.map +1 -1
  601. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  602. package/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.d.ts +2 -2
  603. package/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.d.ts +1 -1
  604. package/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.d.ts.map +1 -1
  605. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts +9 -9
  606. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts.map +1 -1
  607. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts +1 -2
  608. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts.map +1 -1
  609. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts +2 -2
  610. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts.map +1 -1
  611. package/libs/ui/elements/src/index.d.ts +4 -3
  612. package/libs/ui/elements/src/index.d.ts.map +1 -1
  613. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts +18 -0
  614. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts.map +1 -0
  615. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +2 -2
  616. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  617. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -7
  618. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  619. package/libs/ui/elements/src/lib/error/error.component.d.ts +3 -1
  620. package/libs/ui/elements/src/lib/error/error.component.d.ts.map +1 -1
  621. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +2 -2
  622. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  623. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts +2 -2
  624. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts.map +1 -1
  625. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +0 -3
  626. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
  627. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +1 -1
  628. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +5 -1
  629. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +1 -1
  630. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +18 -15
  631. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  632. package/libs/ui/inputs/src/index.d.ts +6 -0
  633. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  634. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts +15 -4
  635. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
  636. package/libs/ui/inputs/src/lib/badge/badge.component.d.ts +11 -0
  637. package/libs/ui/inputs/src/lib/badge/badge.component.d.ts.map +1 -0
  638. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  639. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  640. package/libs/ui/inputs/src/lib/date-picker/date-picker.component.d.ts.map +1 -1
  641. package/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.d.ts +4 -4
  642. package/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.d.ts.map +1 -1
  643. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts +5 -3
  644. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts.map +1 -1
  645. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts +24 -0
  646. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts.map +1 -0
  647. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts +4 -5
  648. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts.map +1 -1
  649. package/libs/ui/inputs/src/lib/search-input/search-input.component.d.ts +1 -1
  650. package/libs/ui/inputs/src/lib/search-input/search-input.component.d.ts.map +1 -1
  651. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts +17 -0
  652. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts.map +1 -0
  653. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts +0 -4
  654. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts.map +1 -1
  655. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts +2 -4
  656. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts.map +1 -1
  657. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +33 -35
  658. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  659. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts +21 -0
  660. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts.map +1 -0
  661. package/libs/ui/layout/src/index.d.ts +3 -0
  662. package/libs/ui/layout/src/index.d.ts.map +1 -1
  663. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts +2 -2
  664. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts.map +1 -1
  665. package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts +1 -1
  666. package/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.d.ts +2 -2
  667. package/libs/ui/layout/src/lib/max-lines/max-lines.component.d.ts.map +1 -0
  668. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts +20 -0
  669. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts.map +1 -0
  670. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts +14 -0
  671. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts.map +1 -0
  672. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
  673. package/libs/ui/map/src/index.d.ts +3 -2
  674. package/libs/ui/map/src/index.d.ts.map +1 -1
  675. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts +3 -4
  676. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts.map +1 -1
  677. package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts +37 -0
  678. package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts.map +1 -0
  679. package/libs/ui/map/src/lib/components/map-container/map-settings.token.d.ts +18 -0
  680. package/libs/ui/map/src/lib/components/map-container/map-settings.token.d.ts.map +1 -0
  681. package/libs/ui/map/src/lib/map-utils.d.ts +7 -0
  682. package/libs/ui/map/src/lib/map-utils.d.ts.map +1 -0
  683. package/libs/ui/search/src/index.d.ts +1 -0
  684. package/libs/ui/search/src/index.d.ts.map +1 -1
  685. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts +3 -3
  686. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts.map +1 -1
  687. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +20 -0
  688. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -0
  689. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +36 -0
  690. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -0
  691. package/libs/ui/widgets/src/index.d.ts +1 -1
  692. package/libs/ui/widgets/src/index.d.ts.map +1 -1
  693. package/libs/ui/widgets/src/lib/popover/popover.component.d.ts +19 -0
  694. package/libs/ui/widgets/src/lib/popover/popover.component.d.ts.map +1 -0
  695. package/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.d.ts +1 -1
  696. package/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.d.ts.map +1 -1
  697. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts +10 -12
  698. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts.map +1 -1
  699. package/libs/util/app-config/src/index.d.ts +1 -0
  700. package/libs/util/app-config/src/index.d.ts.map +1 -1
  701. package/libs/util/app-config/src/lib/fixtures.d.ts +8 -8
  702. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  703. package/libs/util/app-config/src/lib/map-layers.d.ts +4 -0
  704. package/libs/util/app-config/src/lib/map-layers.d.ts.map +1 -0
  705. package/libs/util/i18n/src/index.d.ts +1 -0
  706. package/libs/util/i18n/src/index.d.ts.map +1 -1
  707. package/libs/util/i18n/src/lib/i18n.constants.d.ts +0 -35
  708. package/libs/util/i18n/src/lib/i18n.constants.d.ts.map +1 -1
  709. package/libs/util/i18n/src/lib/language-codes.d.ts +38 -0
  710. package/libs/util/i18n/src/lib/language-codes.d.ts.map +1 -0
  711. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  712. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  713. package/libs/util/shared/src/lib/links/link-utils.d.ts +6 -6
  714. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  715. package/libs/util/shared/src/lib/services/theme.service.d.ts.map +1 -1
  716. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts +2 -1
  717. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts.map +1 -1
  718. package/libs/util/shared/src/lib/utils/index.d.ts +1 -0
  719. package/libs/util/shared/src/lib/utils/index.d.ts.map +1 -1
  720. package/libs/util/shared/src/lib/utils/no-duplicate-file-name.d.ts +2 -0
  721. package/libs/util/shared/src/lib/utils/no-duplicate-file-name.d.ts.map +1 -0
  722. package/package.json +5 -3
  723. package/src/libs/api/metadata-converter/src/index.ts +3 -0
  724. package/src/libs/api/metadata-converter/src/lib/common/license.ts +66 -0
  725. package/src/libs/api/metadata-converter/src/lib/common/url.ts +15 -0
  726. package/src/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.ts +500 -0
  727. package/src/libs/api/metadata-converter/src/lib/dcat-ap/index.ts +1 -0
  728. package/src/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.ts +17 -0
  729. package/src/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.ts +463 -0
  730. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.ts +110 -0
  731. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/individual-name.ts +20 -0
  732. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/keyword.mapper.ts +16 -0
  733. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/role.mapper.ts +48 -0
  734. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.ts +127 -0
  735. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/status.mapper.ts +19 -0
  736. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/update-frequency.mapper.ts +67 -0
  737. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.ts +1 -0
  738. package/src/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.ts +101 -0
  739. package/src/libs/api/metadata-converter/src/lib/find-converter.ts +13 -0
  740. package/src/libs/api/metadata-converter/src/lib/fixtures/eu.dcat-ap.records.ts +743 -0
  741. package/src/libs/api/metadata-converter/src/lib/fixtures/generic.records.ts +41 -5
  742. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +24 -5
  743. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +364 -17
  744. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +82 -4
  745. package/src/libs/api/metadata-converter/src/lib/fixtures/opendataswiss.records.ts +437 -0
  746. package/src/libs/api/metadata-converter/src/lib/fixtures/sextant.records.ts +487 -0
  747. package/src/libs/api/metadata-converter/src/lib/fixtures/vlaanderen.dcat-ap.records.ts +76 -0
  748. package/src/libs/api/metadata-converter/src/lib/function-utils.ts +1 -1
  749. package/src/libs/api/metadata-converter/src/lib/gn4/atomic-operations.ts +1 -0
  750. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.converter.ts +2 -1
  751. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +31 -18
  752. package/src/libs/api/metadata-converter/src/lib/gn4/types/index.ts +1 -0
  753. package/src/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.ts +27 -0
  754. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +1 -0
  755. package/src/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.ts +16 -9
  756. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +57 -14
  757. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +112 -65
  758. package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +118 -53
  759. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +283 -54
  760. package/src/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.ts +39 -0
  761. package/src/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.ts +1 -1
  762. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +486 -289
  763. package/src/libs/api/metadata-converter/src/lib/xml-utils.ts +132 -28
  764. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +291 -16
  765. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.ts +1 -0
  766. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +3 -1
  767. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.ts +37 -5
  768. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +248 -31
  769. package/src/libs/common/domain/src/lib/model/error/index.ts +1 -0
  770. package/src/libs/common/domain/src/lib/model/error/publication-version.error.ts +9 -0
  771. package/src/libs/common/domain/src/lib/model/record/contact.model.ts +29 -1
  772. package/src/libs/common/domain/src/lib/model/record/index.ts +1 -0
  773. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +37 -20
  774. package/src/libs/common/domain/src/lib/model/record/organization.model.ts +5 -0
  775. package/src/libs/common/domain/src/lib/model/record/translation.model.ts +49 -0
  776. package/src/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.ts +13 -6
  777. package/src/libs/common/domain/src/lib/model/user/user.model.ts +1 -1
  778. package/src/libs/common/domain/src/lib/platform.service.interface.ts +38 -3
  779. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +72 -3
  780. package/src/libs/common/fixtures/src/index.ts +6 -1
  781. package/src/libs/common/fixtures/src/lib/editor/editor.fixtures.ts +156 -0
  782. package/src/libs/common/fixtures/src/lib/editor/index.ts +1 -0
  783. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-request.ts → aggregations-request.fixtures.ts} +1 -3
  784. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-response.ts → aggregations-response.fixtures.ts} +6 -8
  785. package/src/libs/common/fixtures/src/lib/elasticsearch/{full-response.ts → full-response.fixtures.ts} +1673 -3
  786. package/src/libs/common/fixtures/src/lib/elasticsearch/index.ts +5 -5
  787. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +1 -3
  788. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata.fixtures.ts +1739 -1742
  789. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-requests.ts → search-requests.fixtures.ts} +1 -3
  790. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-responses.ts → search-responses.fixtures.ts} +4 -6
  791. package/src/libs/common/fixtures/src/lib/geojson.fixtures.ts +57178 -57195
  792. package/src/libs/common/fixtures/src/lib/gn4/groups.fixtures.ts +2 -4
  793. package/src/libs/common/fixtures/src/lib/individual.fixtures.ts +61 -0
  794. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +233 -164
  795. package/src/libs/common/fixtures/src/lib/map/index.ts +1 -0
  796. package/src/libs/common/fixtures/src/lib/map/map-context.fixtures.ts +53 -0
  797. package/src/libs/common/fixtures/src/lib/ol-feature.fixtures.ts +10 -0
  798. package/src/libs/common/fixtures/src/lib/organisations.fixture.ts +65 -3
  799. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +9 -7
  800. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +220 -16
  801. package/src/libs/common/fixtures/src/lib/repository.fixtures.ts +4 -4
  802. package/src/libs/common/fixtures/src/lib/search/aggregations.ts +2 -3
  803. package/src/libs/common/fixtures/src/lib/user-feedbacks.fixtures.ts +14 -15
  804. package/src/libs/common/fixtures/src/lib/user.fixtures.ts +45 -15
  805. package/src/libs/data-access/datafeeder/src/openapi/model/datasetMetadata.api.model.ts +4 -0
  806. package/src/libs/data-access/datafeeder/src/openapi/model/datasetUploadStatus.api.model.ts +2 -0
  807. package/src/libs/data-access/gn4/src/fixtures/site.fixtures.ts +4 -4
  808. package/src/libs/data-access/gn4/src/fixtures/ui.fixtures.ts +2 -2
  809. package/src/libs/data-access/gn4/src/openapi/api/records.api.service.ts +10 -14
  810. package/src/libs/data-access/gn4/src/openapi/model/user.api.model.ts +1 -1
  811. package/src/libs/data-access/gn4/src/spec.yaml +4 -13
  812. package/src/libs/feature/catalog/src/index.ts +1 -0
  813. package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +5 -2
  814. package/src/libs/feature/catalog/src/lib/organisations/organisations.component.html +1 -1
  815. package/src/libs/feature/catalog/src/lib/organisations/organisations.component.ts +2 -2
  816. package/src/libs/feature/catalog/src/lib/organization-url.token.ts +6 -0
  817. package/src/libs/feature/catalog/src/lib/records/records.service.ts +6 -8
  818. package/src/libs/feature/catalog/src/lib/sources/sources.fixture.ts +1 -1
  819. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +3 -3
  820. package/src/libs/feature/dataviz/src/lib/feature-dataviz.module.ts +8 -3
  821. package/src/libs/feature/dataviz/src/lib/figure/figure.fixtures.ts +2 -2
  822. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.html +5 -2
  823. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.ts +38 -78
  824. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +6 -6
  825. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +4 -4
  826. package/src/libs/feature/editor/src/index.ts +1 -0
  827. package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +14 -1
  828. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +97 -17
  829. package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +27 -4
  830. package/src/libs/feature/editor/src/lib/+state/editor.models.ts +12 -1
  831. package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +32 -9
  832. package/src/libs/feature/editor/src/lib/+state/editor.selectors.ts +32 -8
  833. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.html +15 -0
  834. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.ts +18 -0
  835. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.html +26 -0
  836. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +90 -0
  837. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.html +47 -0
  838. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +132 -0
  839. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.html +35 -0
  840. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +79 -0
  841. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.html +31 -0
  842. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +82 -0
  843. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.html +40 -0
  844. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.ts +170 -0
  845. 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
  846. 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
  847. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +210 -0
  848. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.html +4 -0
  849. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.ts +21 -0
  850. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.html +10 -0
  851. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +78 -0
  852. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.css +8 -0
  853. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.ts +13 -5
  854. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +1 -0
  855. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.ts +86 -0
  856. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.css +0 -0
  857. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.html +43 -0
  858. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.ts +186 -0
  859. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.css +0 -0
  860. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.html +71 -0
  861. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.ts +241 -0
  862. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.css +0 -0
  863. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.html +6 -0
  864. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.ts +48 -0
  865. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.css +0 -0
  866. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.html +11 -0
  867. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +123 -0
  868. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.html +15 -8
  869. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.ts +11 -14
  870. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.html +5 -3
  871. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.ts +11 -4
  872. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +20 -1
  873. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +212 -1
  874. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.css +4 -0
  875. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.html +33 -0
  876. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +87 -0
  877. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.css +4 -0
  878. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.html +16 -14
  879. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +101 -90
  880. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +127 -83
  881. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +61 -75
  882. package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +4 -2
  883. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.html +52 -9
  884. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +20 -7
  885. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.html +2 -6
  886. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +1 -1
  887. package/src/libs/feature/editor/src/lib/expressions.ts +1 -1
  888. package/src/libs/feature/editor/src/lib/feature-editor.module.ts +4 -2
  889. package/src/libs/feature/editor/src/lib/fields.config.ts +258 -45
  890. package/src/libs/feature/editor/src/lib/models/editor-config.model.ts +65 -0
  891. package/src/libs/feature/editor/src/lib/models/index.ts +1 -0
  892. package/src/libs/feature/editor/src/lib/services/editor.service.ts +48 -54
  893. package/src/libs/feature/map/src/index.ts +1 -8
  894. package/src/libs/feature/map/src/lib/+state/map.actions.ts +10 -25
  895. package/src/libs/feature/map/src/lib/+state/map.facade.ts +11 -15
  896. package/src/libs/feature/map/src/lib/+state/map.reducer.ts +16 -53
  897. package/src/libs/feature/map/src/lib/+state/map.selectors.ts +7 -2
  898. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.ts +3 -0
  899. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.ts +23 -22
  900. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +22 -11
  901. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.html +1 -1
  902. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +21 -19
  903. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.html +1 -1
  904. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +17 -10
  905. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.html +1 -1
  906. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.ts +17 -10
  907. package/src/libs/feature/map/src/lib/constant/index.ts +0 -1
  908. package/src/libs/feature/map/src/lib/feature-map.module.ts +2 -41
  909. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +38 -20
  910. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.html +2 -2
  911. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +39 -6
  912. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.css +0 -0
  913. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.html +4 -0
  914. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.ts +29 -0
  915. package/src/libs/feature/map/src/lib/style/map-style.fixtures.ts +29 -27
  916. package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +8 -232
  917. package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +3 -3
  918. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +36 -19
  919. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +6 -2
  920. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.ts +11 -0
  921. package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +59 -12
  922. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +29 -20
  923. package/src/libs/feature/record/src/lib/feature-record.module.ts +14 -5
  924. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +4 -4
  925. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +45 -72
  926. package/src/libs/feature/record/src/lib/state/mdview.effects.ts +1 -3
  927. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +5 -1
  928. package/src/libs/feature/router/src/lib/default/constants.ts +1 -0
  929. package/src/libs/feature/router/src/lib/default/router.config.ts +1 -0
  930. package/src/libs/feature/router/src/lib/default/router.service.ts +13 -1
  931. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +8 -0
  932. package/src/libs/feature/search/src/index.ts +1 -1
  933. package/src/libs/feature/search/src/lib/feature-search.module.ts +2 -1
  934. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +2 -1
  935. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +2 -2
  936. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.css +0 -0
  937. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +15 -0
  938. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +114 -0
  939. package/src/libs/feature/search/src/lib/state/fixtures/search-state.fixtures.ts +2 -2
  940. package/src/libs/feature/search/src/lib/state/search.facade.ts +11 -0
  941. package/src/libs/feature/search/src/lib/state/selectors.ts +7 -0
  942. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +16 -2
  943. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.html +8 -6
  944. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.ts +2 -2
  945. package/src/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.ts +8 -1
  946. package/src/libs/ui/catalog/src/lib/ui-catalog.module.ts +2 -3
  947. package/src/libs/ui/dataviz/src/lib/chart/chart.fixtures.ts +2 -2
  948. package/src/libs/ui/dataviz/src/lib/figure/figure.component.html +11 -3
  949. package/src/libs/ui/dataviz/src/lib/figure/figure.component.ts +3 -7
  950. package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +2 -2
  951. package/src/libs/ui/elements/src/index.ts +4 -3
  952. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +29 -29
  953. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.css +0 -0
  954. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.html +12 -0
  955. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.ts +37 -0
  956. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +4 -4
  957. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +7 -7
  958. package/src/libs/ui/elements/src/lib/error/error.component.html +30 -6
  959. package/src/libs/ui/elements/src/lib/error/error.component.ts +2 -0
  960. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +3 -3
  961. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.html +13 -17
  962. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +1 -1
  963. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.css +7 -1
  964. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +14 -10
  965. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +14 -20
  966. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +0 -10
  967. package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.html +1 -1
  968. package/src/libs/ui/elements/src/lib/notification/notification.component.html +1 -3
  969. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +2 -2
  970. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +1 -1
  971. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +22 -1
  972. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +11 -6
  973. package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.html +1 -1
  974. package/src/libs/ui/inputs/src/index.ts +6 -0
  975. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.css +25 -19
  976. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +33 -15
  977. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +97 -30
  978. package/src/libs/ui/inputs/src/lib/badge/badge.component.css +0 -0
  979. package/src/libs/ui/inputs/src/lib/badge/badge.component.html +26 -0
  980. package/src/libs/ui/inputs/src/lib/badge/badge.component.ts +28 -0
  981. package/src/libs/ui/inputs/src/lib/button/button.component.ts +15 -1
  982. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.css +7 -2
  983. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.html +14 -5
  984. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.ts +15 -2
  985. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.css +7 -2
  986. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.html +29 -24
  987. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.ts +20 -16
  988. package/src/libs/ui/inputs/src/lib/editable-label/editable-label.directive.ts +40 -26
  989. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.css +4 -0
  990. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.html +89 -0
  991. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +92 -0
  992. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.css +4 -0
  993. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.html +76 -68
  994. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.ts +17 -14
  995. package/src/libs/ui/inputs/src/lib/search-input/search-input.component.ts +5 -1
  996. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.css +32 -0
  997. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.html +14 -0
  998. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +39 -0
  999. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.html +3 -2
  1000. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.ts +3 -28
  1001. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.html +4 -3
  1002. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.ts +4 -16
  1003. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +3 -9
  1004. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.css +9 -0
  1005. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.html +41 -0
  1006. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.ts +56 -0
  1007. package/src/libs/ui/layout/src/index.ts +3 -0
  1008. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.html +8 -3
  1009. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +4 -3
  1010. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.css +1 -1
  1011. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +3 -2
  1012. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.css +0 -0
  1013. package/src/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.html +1 -0
  1014. package/src/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.ts +9 -5
  1015. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.css +0 -0
  1016. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.html +15 -0
  1017. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.ts +44 -0
  1018. package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.css +18 -0
  1019. package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.html +37 -0
  1020. package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.ts +53 -0
  1021. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +0 -1
  1022. package/src/libs/ui/map/src/index.ts +3 -2
  1023. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.html +1 -1
  1024. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.ts +8 -5
  1025. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.css +0 -0
  1026. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +203 -0
  1027. package/src/libs/ui/map/src/lib/components/map-container/map-settings.token.ts +23 -0
  1028. package/src/libs/ui/map/src/lib/map-utils.ts +54 -0
  1029. package/src/libs/ui/search/src/index.ts +1 -0
  1030. package/src/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.ts +7 -6
  1031. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.css +0 -0
  1032. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +26 -0
  1033. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +74 -0
  1034. package/src/libs/ui/search/src/lib/results-table/results-table.component.css +0 -0
  1035. package/src/libs/{feature → ui}/search/src/lib/results-table/results-table.component.html +51 -15
  1036. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +151 -0
  1037. package/src/libs/ui/widgets/src/index.ts +1 -1
  1038. package/src/libs/ui/widgets/src/lib/popover/popover.component.css +0 -0
  1039. package/src/libs/ui/widgets/src/lib/popover/popover.component.html +3 -0
  1040. package/src/libs/ui/widgets/src/lib/popover/popover.component.ts +85 -0
  1041. package/src/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.ts +4 -0
  1042. package/src/libs/ui/widgets/src/lib/ui-widgets.module.ts +0 -6
  1043. package/src/libs/util/app-config/src/index.ts +1 -0
  1044. package/src/libs/util/app-config/src/lib/fixtures.ts +9 -9
  1045. package/src/libs/util/app-config/src/lib/map-layers.ts +31 -0
  1046. package/src/libs/util/i18n/src/index.ts +1 -0
  1047. package/src/libs/util/i18n/src/lib/i18n.constants.ts +0 -43
  1048. package/src/libs/util/i18n/src/lib/lang.service.ts +1 -1
  1049. package/src/libs/util/i18n/src/lib/language-codes.ts +44 -0
  1050. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +4 -3
  1051. package/src/libs/util/shared/src/lib/links/link-utils.ts +6 -6
  1052. package/src/libs/util/shared/src/lib/services/theme.service.ts +1 -0
  1053. package/src/libs/util/shared/src/lib/utils/bytes-convert.ts +4 -1
  1054. package/src/libs/util/shared/src/lib/utils/index.ts +1 -0
  1055. package/src/libs/util/shared/src/lib/utils/no-duplicate-file-name.ts +23 -0
  1056. package/tailwind.base.config.js +1 -0
  1057. package/tailwind.base.css +77 -7
  1058. package/translations/de.json +180 -33
  1059. package/translations/en.json +188 -41
  1060. package/translations/es.json +158 -11
  1061. package/translations/fr.json +218 -71
  1062. package/translations/it.json +161 -14
  1063. package/translations/nl.json +158 -11
  1064. package/translations/pt.json +158 -11
  1065. package/translations/sk.json +160 -13
  1066. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.mjs +0 -15
  1067. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extent/form-field-temporal-extent.component.mjs +0 -11
  1068. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.mjs +0 -2
  1069. package/esm2022/libs/feature/editor/src/lib/models/fields.model.mjs +0 -2
  1070. package/esm2022/libs/feature/map/src/lib/+state/map.effects.mjs +0 -15
  1071. package/esm2022/libs/feature/map/src/lib/+state/map.models.mjs +0 -2
  1072. package/esm2022/libs/feature/map/src/lib/constant/map-options.mjs +0 -8
  1073. package/esm2022/libs/feature/map/src/lib/constant/style.constant.mjs +0 -17
  1074. package/esm2022/libs/feature/map/src/lib/feature-info/feature-info.service.mjs +0 -38
  1075. package/esm2022/libs/feature/map/src/lib/manager/map-instance.directive.mjs +0 -19
  1076. package/esm2022/libs/feature/map/src/lib/manager/map-manager.service.mjs +0 -19
  1077. package/esm2022/libs/feature/map/src/lib/map-container/map-container.component.mjs +0 -27
  1078. package/esm2022/libs/feature/map/src/lib/map-context/component/map-context.component.mjs +0 -46
  1079. package/esm2022/libs/feature/map/src/lib/map-context/map-context.model.mjs +0 -10
  1080. package/esm2022/libs/feature/map/src/lib/map-context/map-context.service.mjs +0 -289
  1081. package/esm2022/libs/feature/search/src/lib/results-table/results-table.component.mjs +0 -128
  1082. package/esm2022/libs/ui/elements/src/lib/max-lines/max-lines.component.mjs +0 -69
  1083. package/esm2022/libs/ui/map/src/lib/components/map/map.component.mjs +0 -40
  1084. package/esm2022/libs/ui/map/src/lib/ui-map.module.mjs +0 -33
  1085. package/esm2022/libs/ui/widgets/src/lib/badge/badge.component.mjs +0 -17
  1086. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts +0 -8
  1087. 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
  1088. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extent/form-field-temporal-extent.component.d.ts +0 -6
  1089. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extent/form-field-temporal-extent.component.d.ts.map +0 -1
  1090. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts +0 -26
  1091. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts.map +0 -1
  1092. package/libs/feature/editor/src/lib/models/fields.model.d.ts +0 -15
  1093. package/libs/feature/editor/src/lib/models/fields.model.d.ts.map +0 -1
  1094. package/libs/feature/map/src/lib/+state/map.effects.d.ts +0 -9
  1095. package/libs/feature/map/src/lib/+state/map.effects.d.ts.map +0 -1
  1096. package/libs/feature/map/src/lib/+state/map.models.d.ts +0 -9
  1097. package/libs/feature/map/src/lib/+state/map.models.d.ts.map +0 -1
  1098. package/libs/feature/map/src/lib/constant/map-options.d.ts +0 -9
  1099. package/libs/feature/map/src/lib/constant/map-options.d.ts.map +0 -1
  1100. package/libs/feature/map/src/lib/constant/style.constant.d.ts +0 -4
  1101. package/libs/feature/map/src/lib/constant/style.constant.d.ts.map +0 -1
  1102. package/libs/feature/map/src/lib/feature-info/feature-info.service.d.ts +0 -16
  1103. package/libs/feature/map/src/lib/feature-info/feature-info.service.d.ts.map +0 -1
  1104. package/libs/feature/map/src/lib/manager/map-instance.directive.d.ts +0 -9
  1105. package/libs/feature/map/src/lib/manager/map-instance.directive.d.ts.map +0 -1
  1106. package/libs/feature/map/src/lib/manager/map-manager.service.d.ts +0 -11
  1107. package/libs/feature/map/src/lib/manager/map-manager.service.d.ts.map +0 -1
  1108. package/libs/feature/map/src/lib/map-container/map-container.component.d.ts +0 -12
  1109. package/libs/feature/map/src/lib/map-container/map-container.component.d.ts.map +0 -1
  1110. package/libs/feature/map/src/lib/map-context/component/map-context.component.d.ts +0 -26
  1111. package/libs/feature/map/src/lib/map-context/component/map-context.component.d.ts.map +0 -1
  1112. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts +0 -77
  1113. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts.map +0 -1
  1114. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts +0 -26
  1115. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts.map +0 -1
  1116. package/libs/feature/search/src/lib/results-table/results-table.component.d.ts +0 -33
  1117. package/libs/feature/search/src/lib/results-table/results-table.component.d.ts.map +0 -1
  1118. package/libs/ui/elements/src/lib/max-lines/max-lines.component.d.ts.map +0 -1
  1119. package/libs/ui/map/src/lib/components/map/map.component.d.ts +0 -19
  1120. package/libs/ui/map/src/lib/components/map/map.component.d.ts.map +0 -1
  1121. package/libs/ui/map/src/lib/ui-map.module.d.ts +0 -13
  1122. package/libs/ui/map/src/lib/ui-map.module.d.ts.map +0 -1
  1123. package/libs/ui/widgets/src/lib/badge/badge.component.d.ts +0 -7
  1124. package/libs/ui/widgets/src/lib/badge/badge.component.d.ts.map +0 -1
  1125. package/src/libs/common/fixtures/src/lib/ol-feature.fixture.ts +0 -7
  1126. package/src/libs/common/fixtures/src/lib/utils/freeze.ts +0 -10
  1127. package/src/libs/common/fixtures/src/lib/utils/index.ts +0 -1
  1128. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.html +0 -8
  1129. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.ts +0 -70
  1130. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.html +0 -4
  1131. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.ts +0 -15
  1132. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extent/form-field-temporal-extent.component.html +0 -1
  1133. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extent/form-field-temporal-extent.component.ts +0 -10
  1134. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.ts +0 -43
  1135. package/src/libs/feature/editor/src/lib/models/fields.model.ts +0 -29
  1136. package/src/libs/feature/map/src/lib/+state/map.effects.ts +0 -7
  1137. package/src/libs/feature/map/src/lib/+state/map.models.ts +0 -9
  1138. package/src/libs/feature/map/src/lib/constant/map-options.ts +0 -17
  1139. package/src/libs/feature/map/src/lib/feature-info/feature-info.service.ts +0 -42
  1140. package/src/libs/feature/map/src/lib/manager/map-instance.directive.ts +0 -10
  1141. package/src/libs/feature/map/src/lib/manager/map-manager.service.ts +0 -13
  1142. package/src/libs/feature/map/src/lib/map-container/map-container.component.html +0 -1
  1143. package/src/libs/feature/map/src/lib/map-container/map-container.component.ts +0 -26
  1144. package/src/libs/feature/map/src/lib/map-context/component/map-context.component.html +0 -1
  1145. package/src/libs/feature/map/src/lib/map-context/component/map-context.component.ts +0 -57
  1146. package/src/libs/feature/map/src/lib/map-context/map-context.fixtures.ts +0 -51
  1147. package/src/libs/feature/map/src/lib/map-context/map-context.model.ts +0 -95
  1148. package/src/libs/feature/map/src/lib/map-context/map-context.service.ts +0 -318
  1149. package/src/libs/feature/search/src/lib/results-table/results-table.component.ts +0 -164
  1150. package/src/libs/ui/map/src/lib/components/map/map.component.ts +0 -57
  1151. package/src/libs/ui/map/src/lib/ui-map.module.ts +0 -19
  1152. package/src/libs/ui/widgets/src/lib/badge/badge.component.html +0 -10
  1153. package/src/libs/ui/widgets/src/lib/badge/badge.component.ts +0 -11
  1154. /package/src/libs/feature/editor/src/lib/components/{overview-upload/overview-upload.component.css → contact-card/contact-card.component.css} +0 -0
  1155. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.css → generic-keywords/generic-keywords.component.css} +0 -0
  1156. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extent/form-field-temporal-extent.component.css → import-record/import-record.component.css} +0 -0
  1157. /package/src/libs/feature/{map/src/lib/map-container/map-container.component.css → editor/src/lib/components/online-resource-card/online-resource-card.component.css} +0 -0
  1158. /package/src/libs/feature/{map/src/lib/map-context/component/map-context.component.css → editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.css} +0 -0
  1159. /package/src/libs/feature/{search/src/lib/results-table/results-table.component.css → editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.css} +0 -0
  1160. /package/src/libs/{ui/elements/src/lib/max-lines/max-lines.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.css} +0 -0
  1161. /package/src/libs/{ui/map/src/lib/components/map/map.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.css} +0 -0
  1162. /package/src/libs/{ui/widgets/src/lib/badge/badge.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.css} +0 -0
  1163. /package/src/libs/ui/map/src/lib/components/{map/map.component.html → map-container/map-container.component.html} +0 -0
@@ -1,7 +1,7 @@
1
1
  import { Iso19139Converter } from '../iso19139';
2
2
  import { renameElements } from '../xml-utils';
3
- import { readContacts, readDistributions, readKind, readLandingPage, readLineage, readOwnerOrganization, readRecordCreated, readRecordPublished, readRecordUpdated, readResourceContacts, readUniqueIdentifier, } from './read-parts';
4
- import { writeContacts, writeContactsForResource, writeDistributions, writeKind, writeLandingPage, writeLineage, writeOwnerOrganization, writeRecordCreated, writeRecordPublished, writeRecordUpdated, writeResourceCreated, writeResourcePublished, writeResourceUpdated, writeSpatialRepresentation, writeStatus, writeUniqueIdentifier, } from './write-parts';
3
+ import { readContacts, readContactsForResource, readDefaultLanguage, readKind, readLandingPage, readLineage, readOnlineResources, readOtherLanguages, readOwnerOrganization, readRecordCreated, readRecordPublished, readRecordUpdated, readUniqueIdentifier, } from './read-parts';
4
+ import { writeContacts, writeContactsForResource, writeDefaultLanguage, writeKind, writeLandingPage, writeLineage, writeOnlineResources, writeOtherLanguages, writeRecordCreated, writeRecordPublished, writeRecordUpdated, writeResourceCreated, writeResourcePublished, writeResourceUpdated, writeSpatialRepresentation, writeStatus, writeUniqueIdentifier, } from './write-parts';
5
5
  export class Iso191153Converter extends Iso19139Converter {
6
6
  constructor() {
7
7
  super();
@@ -11,11 +11,13 @@ export class Iso191153Converter extends Iso19139Converter {
11
11
  this.readers['recordCreated'] = readRecordCreated;
12
12
  this.readers['recordPublished'] = readRecordPublished;
13
13
  this.readers['contacts'] = readContacts;
14
- this.readers['contactsForResource'] = readResourceContacts;
14
+ this.readers['contactsForResource'] = readContactsForResource;
15
15
  this.readers['ownerOrganization'] = readOwnerOrganization;
16
16
  this.readers['landingPage'] = readLandingPage;
17
17
  this.readers['lineage'] = readLineage;
18
- this.readers['distributions'] = readDistributions;
18
+ this.readers['onlineResources'] = readOnlineResources;
19
+ this.readers['defaultLanguage'] = readDefaultLanguage;
20
+ this.readers['otherLanguages'] = readOtherLanguages;
19
21
  this.writers['uniqueIdentifier'] = writeUniqueIdentifier;
20
22
  this.writers['kind'] = writeKind;
21
23
  this.writers['recordUpdated'] = writeRecordUpdated;
@@ -26,12 +28,14 @@ export class Iso191153Converter extends Iso19139Converter {
26
28
  this.writers['resourcePublished'] = writeResourcePublished;
27
29
  this.writers['contacts'] = writeContacts;
28
30
  this.writers['contactsForResource'] = writeContactsForResource;
29
- this.writers['ownerOrganization'] = writeOwnerOrganization;
31
+ this.writers['ownerOrganization'] = () => undefined; // fixme: find a way to store this value properly
30
32
  this.writers['landingPage'] = writeLandingPage;
31
33
  this.writers['lineage'] = writeLineage;
32
- this.writers['distributions'] = writeDistributions;
34
+ this.writers['onlineResources'] = writeOnlineResources;
33
35
  this.writers['status'] = writeStatus;
34
36
  this.writers['spatialRepresentation'] = writeSpatialRepresentation;
37
+ this.writers['defaultLanguage'] = writeDefaultLanguage;
38
+ this.writers['otherLanguages'] = writeOtherLanguages;
35
39
  }
36
40
  beforeDocumentCreation(rootEl) {
37
41
  renameElements(rootEl, {
@@ -46,7 +50,7 @@ export class Iso191153Converter extends Iso19139Converter {
46
50
  'gmx:Anchor': 'gcx:Anchor',
47
51
  // languages
48
52
  'gmd:PT_Locale': 'lan:PT_Locale',
49
- 'gmd:languageCode': 'lan:languageCode',
53
+ 'gmd:PT_FreeText': 'lan:PT_FreeText',
50
54
  'gmd:LanguageCode': 'lan:LanguageCode',
51
55
  // status
52
56
  'gmd:status': 'mri:status',
@@ -120,4 +124,4 @@ export class Iso191153Converter extends Iso19139Converter {
120
124
  return result;
121
125
  }
122
126
  }
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNvMTkxMTUtMy5jb252ZXJ0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwaS9tZXRhZGF0YS1jb252ZXJ0ZXIvc3JjL2xpYi9pc28xOTExNS0zL2lzbzE5MTE1LTMuY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQzdDLE9BQU8sRUFDTCxZQUFZLEVBQ1osaUJBQWlCLEVBQ2pCLFFBQVEsRUFDUixlQUFlLEVBQ2YsV0FBVyxFQUNYLHFCQUFxQixFQUNyQixpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLGlCQUFpQixFQUNqQixvQkFBb0IsRUFDcEIsb0JBQW9CLEdBQ3JCLE1BQU0sY0FBYyxDQUFBO0FBQ3JCLE9BQU8sRUFDTCxhQUFhLEVBQ2Isd0JBQXdCLEVBQ3hCLGtCQUFrQixFQUNsQixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLFlBQVksRUFDWixzQkFBc0IsRUFDdEIsa0JBQWtCLEVBQ2xCLG9CQUFvQixFQUNwQixrQkFBa0IsRUFDbEIsb0JBQW9CLEVBQ3BCLHNCQUFzQixFQUN0QixvQkFBb0IsRUFDcEIsMEJBQTBCLEVBQzFCLFdBQVcsRUFDWCxxQkFBcUIsR0FDdEIsTUFBTSxlQUFlLENBQUE7QUFFdEIsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGlCQUFpQjtJQUN2RDtRQUNFLEtBQUssRUFBRSxDQUFBO1FBRVAsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLG9CQUFvQixDQUFBO1FBQ3ZELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFBO1FBQy9CLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLEdBQUcsaUJBQWlCLENBQUE7UUFDakQsSUFBSSxDQUFD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QW9CLEVBQUUsb0JBQW9CO1lBQzFDLHVCQUF1QixFQUFFLHVCQUF1QjtZQUNoRCxzQkFBc0IsRUFBRSxzQkFBc0I7WUFDOUMsd0JBQXdCLEVBQUUsd0JBQXdCO1lBQ2xELG9CQUFvQixFQUFFLG9CQUFvQjtZQUMxQywyQkFBMkIsRUFBRSwyQkFBMkI7WUFFeEQsWUFBWTtZQUNaLHFCQUFxQixFQUFFLHFCQUFxQjtZQUM1QyxzQkFBc0IsRUFBRSxzQkFBc0I7WUFDOUMsY0FBYyxFQUFFLGNBQWM7WUFDOUIscUJBQXFCLEVBQUUscUJBQXFCO1lBRTVDLHVCQUF1QjtZQUN2QixTQUFTLEVBQUUscUJBQXFCO1NBQ2pDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVyxDQUNmLE1BQXFCLEVBQ3JCLFNBQWtCO1FBRWxCLElBQUksTUFBTSxHQUFHLE1BQU0sS0FBSyxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUE7UUFDdkQsd0VBQXdFO1FBQ3hFLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUNyQixvQ0FBb0MsRUFDcEMsaURBQWlELENBQ2xELENBQUE7UUFDRCxPQUFPLE1BQU0sQ0FBQTtJQUNmLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENhdGFsb2dSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBYbWxFbGVtZW50IH0gZnJvbSAnQHJncm92ZS9wYXJzZS14bWwnXG5pbXBvcnQgeyBJc28xOTEzOUNvbnZlcnRlciB9IGZyb20gJy4uL2lzbzE5MTM5J1xuaW1wb3J0IHsgcmVuYW1lRWxlbWVudHMgfSBmcm9tICcuLi94bWwtdXRpbHMnXG5pbXBvcnQge1xuICByZWFkQ29udGFjdHMsXG4gIHJlYWREaXN0cmlidXRpb25zLFxuICByZWFkS2luZCxcbiAgcmVhZExhbmRpbmdQYWdlLFxuICByZWFkTGluZWFnZSxcbiAgcmVhZE93bmVyT3JnYW5pemF0aW9uLFxuICByZWFkUmVjb3JkQ3JlYXRlZCxcbiAgcmVhZFJlY29yZFB1Ymxpc2hlZCxcbiAgcmVhZFJlY29yZFVwZGF0ZWQsXG4gIHJlYWRSZXNvdXJjZUNvbnRhY3RzLFxuICByZWFkVW5pcXVlSWRlbnRpZmllcixcbn0gZnJvbSAnLi9yZWFkLXBhcnRzJ1xuaW1wb3J0IHtcbiAgd3JpdGVDb250YWN0cyxcbiAgd3JpdGVDb250YWN0c0ZvclJlc291cmNlLFxuICB3cml0ZURpc3RyaWJ1dGlvbnMsXG4gIHdyaXRlS2luZCxcbiAgd3JpdGVMYW5kaW5nUGFnZSxcbiAgd3JpdGVMaW5lYWdlLFxuICB3cml0ZU93bmVyT3JnYW5pemF0aW9uLFxuICB3cml0ZVJlY29yZENyZWF0ZWQsXG4gIHdyaXRlUmVjb3JkUHVibGlzaGVkLFxuICB3cml0ZVJlY29yZFVwZGF0ZWQsXG4gIHdyaXRlUmVzb3VyY2VDcmVhdGVkLFxuICB3cml0ZVJlc291cmNlUHVibGlzaGVkLFxuICB3cml0ZVJlc291cmNlVXBkYXRlZCxcbiAgd3JpdGVTcGF0aWFsUmVwcmVzZW50YXRpb24sXG4gIHdyaXRlU3RhdHVzLFxuICB3cml0ZVVuaXF1ZUlkZW50aWZpZXIsXG59IGZyb20gJy4vd3JpdGUtcGFydHMnXG5cbmV4cG9ydCBjbGFzcyBJc28xOTExNTNDb252ZXJ0ZXIgZXh0ZW5kcyBJc28xOTEzOUNvbnZlcnRlciB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKClcblxuICAgIHRoaXMucmVhZGVyc1sndW5pcXVlSWRlbnRpZmllciddID0gcmVhZFVuaXF1ZUlkZW50aWZpZXJcbiAgICB0aGlzLnJlYWRlcnNbJ2tpbmQnXSA9IHJlYWRLaW5kXG4gICAgdGhpcy5yZWFkZXJzWydyZWNvcmRVcGRhdGVkJ10gPSByZWFkUmVjb3JkVXBkYXRlZFxuICAgIHRoaXMucmVhZGVyc1sncmVjb3JkQ3JlYXRlZCddID0gcmVhZFJlY29yZENyZWF0ZWRcbiAgICB0aGlzLnJlYWRlcnNbJ3JlY29yZFB1Ymxpc2hlZCddID0gcmVhZFJlY29yZFB1Ymxpc2hlZFxuICAgIHRoaXMucmVhZGVyc1snY29udGFjdHMnXSA9IHJlYWRDb250YWN0c1xuICAgIHRoaXMucmVhZGVyc1snY29udGFjdHNGb3JSZXNvdXJjZSddID0gcmVhZFJlc291cmNlQ29udGFjdHNcbiAgICB0aGlzLnJlYWRlcnNbJ293bmVyT3JnYW5pemF0aW9uJ10gPSByZWFkT3duZXJPcmdhbml6YXRpb25cbiAgICB0aGlzLnJlYWRlcnNbJ2xhbmRpbmdQYWdlJ10gPSByZWFkTGFuZGluZ1BhZ2VcbiAgICB0aGlzLnJlYWRlcnNbJ2xpbmVhZ2UnXSA9IHJlYWRMaW5lYWdlXG4gICAgdGhpcy5yZWFkZXJzWydkaXN0cmlidXRpb25zJ10gPSByZWFkRGlzdHJpYnV0aW9uc1xuXG4gICAgdGhpcy53cml0ZXJzWyd1bmlxdWVJZGVudGlmaWVyJ10gPSB3cml0ZVVuaXF1ZUlkZW50aWZpZXJcbiAgICB0aGlzLndyaXRlcnNbJ2tpbmQnXSA9IHdyaXRlS2luZFxuICAgIHRoaXMud3JpdGVyc1sncmVjb3JkVXBkYXRlZCddID0gd3JpdGVSZWNvcmRVcGRhdGVkXG4gICAgdGhpcy53cml0ZXJzWydyZWNvcmRDcmVhdGVkJ10gPSB3cml0ZVJlY29yZENyZWF0ZWRcbiAgICB0aGlzLndyaXRlcnNbJ3JlY29yZFB1Ymxpc2hlZCddID0gd3JpdGVSZWNvcmRQdWJsaXNoZWRcbiAgICB0aGlzLndyaXRlcnNbJ3Jlc291cmNlVXBkYXRlZCddID0gd3JpdGVSZXNvdXJjZVVwZGF0ZWRcbiAgICB0aGlzLndyaXRlcnNbJ3Jlc291cmNlQ3JlYXRlZCddID0gd3JpdGVSZXNvdXJjZUNyZWF0ZWRcbiAgICB0aGlzLndyaXRlcnNbJ3Jlc291cmNlUHVibGlzaGVkJ10gPSB3cml0ZVJlc291cmNlUHVibGlzaGVkXG4gICAgdGhpcy53cml0ZXJzWydjb250YWN0cyddID0gd3JpdGVDb250YWN0c1xuICAgIHRoaXMud3JpdGVyc1snY29udGFjdHNGb3JSZXNvdXJjZSddID0gd3JpdGVDb250YWN0c0ZvclJlc291cmNlXG4gICAgdGhpcy53cml0ZXJzWydvd25lck9yZ2FuaXphdGlvbiddID0gd3JpdGVPd25lck9yZ2FuaXphdGlvblxuICAgIHRoaXMud3JpdGVyc1snbGFuZGluZ1BhZ2UnXSA9IHdyaXRlTGFuZGluZ1BhZ2VcbiAgICB0aGlzLndyaXRlcnNbJ2xpbmVhZ2UnXSA9IHdyaXRlTGluZWFnZVxuICAgIHRoaXMud3JpdGVyc1snZGlzdHJpYnV0aW9ucyddID0gd3JpdGVEaXN0cmlidXRpb25zXG4gICAgdGhpcy53cml0ZXJzWydzdGF0dXMnXSA9IHdyaXRlU3RhdHVzXG4gICAgdGhpcy53cml0ZXJzWydzcGF0aWFsUmVwcmVzZW50YXRpb24nXSA9IHdyaXRlU3BhdGlhbFJlcHJlc2VudGF0aW9uXG4gIH1cblxuICBiZWZvcmVEb2N1bWVudENyZWF0aW9uKHJvb3RFbDogWG1sRWxlbWVudCkge1xuICAgIHJlbmFtZUVsZW1lbnRzKHJvb3RFbCwge1xuICAgICAgZ21kOiAnbWRiJyxcbiAgICAgICdnbWQ6Y2hhcmFjdGVyRW5jb2RpbmcnOiAnbGFuOmNoYXJhY3RlckVuY29kaW5nJyxcbiAgICAgICdnbWQ6TURfQ2hhcmFjdGVyU2V0Q29kZSc6ICdsYW46TURfQ2hhcmFjdGVyU2V0Q29kZScsXG4gICAgICAnZ21kOk1EX0RhdGFJZGVudGlmaWNhdGlvbic6ICdtcmk6TURfRGF0YUlkZW50aWZpY2F0aW9uJyxcbiAgICAgICdnbWQ6Y2l0YXRpb24nOiAnbXJpOmNpdGF0aW9uJyxcbiAgICAgICdnbWQ6YWJzdHJhY3QnOiAnbXJpOmFic3RyYWN0JyxcbiAgICAgICdnbWQ6dGl0bGUnOiAnY2l0OnRpdGxlJyxcbiAgICAgICdnbWQ6Q0lfQ2l0YXRpb24nOiAnY2l0OkNJX0NpdGF0aW9uJyxcbiAgICAgICdnbXg6QW5jaG9yJzogJ2djeDpBbmNob3InLFxuXG4gICAgICAvLyBsYW5ndWFnZXNcbiAgICAgICdnbWQ6UFRfTG9jYWxlJzogJ2xhbjpQVF9Mb2NhbGUnLFxuICAgICAgJ2dtZDpsYW5ndWFnZUNvZGUnOiAnbGFuOmxhbmd1YWdlQ29kZScsXG4gICAgICAnZ21kOkxhbmd1YWdlQ29kZSc6ICdsYW46TGFuZ3VhZ2VDb2RlJyxcblxuICAgICAgLy8gc3RhdHVzXG4gICAgICAnZ21kOnN0YXR1cyc6ICdtcmk6c3RhdHVzJyxcbiAgICAgICdnbWQ6TURfUHJvZ3Jlc3NDb2RlJzogJ21yaTpNRF9Qcm9ncmVzc0NvZGUnLFxuXG4gICAgICAvLyBkYXRlc1xuICAgICAgJ2dtZDpkYXRlJzogJ2NpdDpkYXRlJyxcbiAgICAgICdnbWQ6Q0lfRGF0ZSc6ICdjaXQ6Q0lfRGF0ZScsXG4gICAgICAnZ21kOmRhdGVUeXBlJzogJ2NpdDpkYXRlVHlwZScsXG4gICAgICAnZ21kOkNJX0RhdGVUeXBlQ29kZSc6ICdjaXQ6Q0lfRGF0ZVR5cGVDb2RlJyxcblxuICAgICAgLy8gY29udGFjdHNcbiAgICAgICdnbWQ6Q0lfUmVzcG9uc2liaWxpdHknOiAnY2l0OkNJX1Jlc3BvbnNpYmlsaXR5JyxcbiAgICAgICdnbWQ6cm9sZSc6ICdjaXQ6cm9sZScsXG4gICAgICAnZ21kOkNJX1JvbGVDb2RlJzogJ2NpdDpDSV9Sb2xlQ29kZScsXG5cbiAgICAgIC8vIGtleXdvcmRzXG4gICAgICAnZ21kOmRlc2NyaXB0aXZlS2V5d29yZHMnOiAnbXJpOmRlc2NyaXB0aXZlS2V5d29yZHMnLFxuICAgICAgJ2dtZDpNRF9LZXl3b3Jkcyc6ICdtcmk6TURfS2V5d29yZHMnLFxuICAgICAgJ2dtZDp0eXBlJzogJ21yaTp0eXBlJyxcbiAgICAgICdnbWQ6TURfS2V5d29yZFR5cGVDb2RlJzogJ21yaTpNRF9LZXl3b3JkVHlwZUNvZGUnLFxuICAgICAgJ2dtZDp0aGVzYXVydXNOYW1lJzogJ21yaTp0aGVzYXVydXNOYW1lJyxcbiAgICAgICdnbWQ6a2V5d29yZCc6ICdtcmk6a2V5d29yZCcsXG4gICAgICAnZ21kOmlkZW50aWZpZXInOiAnY2l0OmlkZW50aWZpZXInLFxuICAgICAgJ2dtZDpNRF9JZGVudGlmaWVyJzogJ21jYzpNRF9JZGVudGlmaWVyJyxcbiAgICAgICdnbWQ6Y29kZSc6ICdtY2M6Y29kZScsXG5cbiAgICAgIC8vIGRpc3RyaWJ1dGlvbnNcbiAgICAgICdnbWQ6TURfRGlzdHJpYnV0aW9uJzogJ21yZDpNRF9EaXN0cmlidXRpb24nLFxuICAgICAgJ2dtZDp0cmFuc2Zlck9wdGlvbnMnOiAnbXJkOnRyYW5zZmVyT3B0aW9ucycsXG4gICAgICAnZ21kOk1EX0RpZ2l0YWxUcmFuc2Zlck9wdGlvbnMnOiAnbXJkOk1EX0RpZ2l0YWxUcmFuc2Zlck9wdGlvbnMnLFxuICAgICAgJ2dtZDpvbkxpbmUnOiAnbXJkOm9uTGluZScsXG4gICAgICAnZ21kOmRpc3RyaWJ1dGlvbkZvcm1hdCc6ICdtcmQ6ZGlzdHJpYnV0aW9uRm9ybWF0JyxcbiAgICAgICdnbWQ6TURfRm9ybWF0JzogJ21yZDpNRF9Gb3JtYXQnLFxuICAgICAgJ2dtZDpDSV9PbmxpbmVSZXNvdXJjZSc6ICdjaXQ6Q0lfT25saW5lUmVzb3VyY2UnLFxuICAgICAgJ2dtZDpsaW5rYWdlJzogJ2NpdDpsaW5rYWdlJyxcbiAgICAgICdnbWQ6bmFtZSc6ICdjaXQ6bmFtZScsXG4gICAgICAnZ21kOmRlc2NyaXB0aW9uJzogJ2NpdDpkZXNjcmlwdGlvbicsXG4gICAgICAnZ21kOkNJX09uTGluZUZ1bmN0aW9uQ29kZSc6ICdjaXQ6Q0lfT25MaW5lRnVuY3Rpb25Db2RlJyxcbiAgICAgICdnbWQ6ZnVuY3Rpb24nOiAnY2l0OmZ1bmN0aW9uJyxcbiAgICAgICdnbWQ6cHJvdG9jb2wnOiAnY2l0OnByb3RvY29sJyxcblxuICAgICAgLy8gdG9waWNcbiAgICAgICdnbWQ6dG9waWNDYXRlZ29yeSc6ICdtcmk6dG9waWNDYXRlZ29yeScsXG4gICAgICAnZ21kOk1EX1RvcGljQ2F0ZWdvcnlDb2RlJzogJ21yaTpNRF9Ub3BpY0NhdGVnb3J5Q29kZScsXG5cbiAgICAgIC8vIHVwZGF0ZSBmcmVxdWVuY3lcbiAgICAgICdnbWQ6cmVzb3VyY2VNYWludGVuYW5jZSc6ICdtcmk6cmVzb3VyY2VNYWludGVuYW5jZScsXG4gICAgICAnZ21kOk1EX01haW50ZW5hbmNlSW5mb3JtYXRpb24nOiAnbW1pOk1EX01haW50ZW5hbmNlSW5mb3JtYXRpb24nLFxuICAgICAgJ2dtZDp1c2VyRGVmaW5lZE1haW50ZW5hbmNlRnJlcXVlbmN5JzpcbiAgICAgICAgJ21taTp1c2VyRGVmaW5lZE1haW50ZW5hbmNlRnJlcXVlbmN5JyxcbiAgICAgICdndHM6VE1fUGVyaW9kRHVyYXRpb24nOiAnZ2NvOlRNX1BlcmlvZER1cmF0aW9uJyxcblxuICAgICAgLy8gY29uc3RyYWludHNcbiAgICAgICdnbWQ6cmVzb3VyY2VDb25zdHJhaW50cyc6ICdtcmk6cmVzb3VyY2VDb25zdHJhaW50cycsXG4gICAgICAnZ21kOk1EX0NvbnN0cmFpbnRzJzogJ21jbzpNRF9Db25zdHJhaW50cycsXG4gICAgICAnZ21kOk1EX0xlZ2FsQ29uc3RyYWludHMnOiAnbWNvOk1EX0xlZ2FsQ29uc3RyYWludHMnLFxuICAgICAgJ2dtZDpNRF9TZWN1cml0eUNvbnN0cmFpbnRzJzogJ21jbzpNRF9TZWN1cml0eUNvbnN0cmFpbnRzJyxcbiAgICAgICdnbWQ6dXNlTGltaXRhdGlvbic6ICdtY286dXNlTGltaXRhdGlvbicsXG4gICAgICAnZ21kOnVzZUNvbnN0cmFpbnRzJzogJ21jbzp1c2VDb25zdHJhaW50cycsXG4gICAgICAnZ21kOmFjY2Vzc0NvbnN0cmFpbnRzJzogJ21jbzphY2Nlc3NDb25zdHJhaW50cycsXG4gICAgICAnZ21kOm90aGVyQ29uc3RyYWludHMnOiAnbWNvOm90aGVyQ29uc3RyYWludHMnLFxuICAgICAgJ2dtZDpNRF9SZXN0cmljdGlvbkNvZGUnOiAnbWNvOk1EX1Jlc3RyaWN0aW9uQ29kZScsXG4gICAgICAnZ21kOmNsYXNzaWZpY2F0aW9uJzogJ21jbzpjbGFzc2lmaWNhdGlvbicsXG4gICAgICAnZ21kOk1EX0NsYXNzaWZpY2F0aW9uQ29kZSc6ICdtY286TURfQ2xhc3NpZmljYXRpb25Db2RlJyxcblxuICAgICAgLy8gb3ZlcnZpZXdzXG4gICAgICAnZ21kOmdyYXBoaWNPdmVydmlldyc6ICdtcmk6Z3JhcGhpY092ZXJ2aWV3JyxcbiAgICAgICdnbWQ6TURfQnJvd3NlR3JhcGhpYyc6ICdtY2M6TURfQnJvd3NlR3JhcGhpYycsXG4gICAgICAnZ21kOmZpbGVOYW1lJzogJ21jYzpmaWxlTmFtZScsXG4gICAgICAnZ21kOmZpbGVEZXNjcmlwdGlvbic6ICdtY2M6ZmlsZURlc2NyaXB0aW9uJyxcblxuICAgICAgLy8gbm8gbW9yZSBVUkwgZWxlbWVudHNcbiAgICAgICdnbWQ6VVJMJzogJ2djbzpDaGFyYWN0ZXJTdHJpbmcnLFxuICAgIH0pXG4gIH1cblxuICBhc3luYyB3cml0ZVJlY29yZChcbiAgICByZWNvcmQ6IENhdGFsb2dSZWNvcmQsXG4gICAgcmVmZXJlbmNlPzogc3RyaW5nXG4gICk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgbGV0IHJlc3VsdCA9IGF3YWl0IHN1cGVyLndyaXRlUmVjb3JkKHJlY29yZCwgcmVmZXJlbmNlKVxuICAgIC8vIGZpeCBnY28gbmFtZXNwYWNlIGRlZmluaXRpb24gKGNoYW5nZXMgYmV0d2VlbiBpc28xOTEzOSBhbmQgaXNvMTkxMTUtM1xuICAgIHJlc3VsdCA9IHJlc3VsdC5yZXBsYWNlKFxuICAgICAgJ1wiaHR0cDovL3d3dy5pc290YzIxMS5vcmcvMjAwNS9nY29cIicsXG4gICAgICAnXCJodHRwOi8vc3RhbmRhcmRzLmlzby5vcmcvaXNvLzE5MTE1Ly0zL2djby8xLjBcIidcbiAgICApXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9XG59XG4iXX0=
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNvMTkxMTUtMy5jb252ZXJ0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwaS9tZXRhZGF0YS1jb252ZXJ0ZXIvc3JjL2xpYi9pc28xOTExNS0zL2lzbzE5MTE1LTMuY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQzdDLE9BQU8sRUFDTCxZQUFZLEVBQ1osdUJBQXVCLEVBQ3ZCLG1CQUFtQixFQUNuQixRQUFRLEVBQ1IsZUFBZSxFQUNmLFdBQVcsRUFDWCxtQkFBbUIsRUFDbkIsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQixpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLGlCQUFpQixFQUNqQixvQkFBb0IsR0FDckIsTUFBTSxjQUFjLENBQUE7QUFDckIsT0FBTyxFQUNMLGFBQWEsRUFDYix3QkFBd0IsRUFDeEIsb0JBQW9CLEVBQ3BCLFNBQVMsRUFDVCxnQkFBZ0IsRUFDaEIsWUFBWSxFQUNaLG9CQUFvQixFQUNwQixtQkFBbUIsRUFDbkIsa0JBQWtCLEVBQ2xCLG9CQUFvQixFQUNwQixrQkFBa0IsRUFDbEIsb0JBQW9CLEVBQ3BCLHNCQUFzQixFQUN0QixvQkFBb0IsRUFDcEIsMEJBQTBCLEVBQzFCLFdBQVcsRUFDWCxxQkFBcUIsR0FDdEIsTUFBTSxlQUFlLENBQUE7QUFFdEIsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGlCQUFpQjtJQUN2RDtRQUNFLEtBQUssRUFBRSxDQUFBO1FBRVAsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLG9CQUFvQixDQUFBO1FBQ3ZELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFBO1FBQy9CLElBQUksQ0FBQyxPQUFPLENBQUMsZUFB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QUFtQjtZQUN4QywwQkFBMEIsRUFBRSwwQkFBMEI7WUFFdEQsbUJBQW1CO1lBQ25CLHlCQUF5QixFQUFFLHlCQUF5QjtZQUNwRCwrQkFBK0IsRUFBRSwrQkFBK0I7WUFDaEUscUNBQXFDLEVBQ25DLHFDQUFxQztZQUN2Qyx1QkFBdUIsRUFBRSx1QkFBdUI7WUFFaEQsY0FBYztZQUNkLHlCQUF5QixFQUFFLHlCQUF5QjtZQUNwRCxvQkFBb0IsRUFBRSxvQkFBb0I7WUFDMUMseUJBQXlCLEVBQUUseUJBQXlCO1lBQ3BELDRCQUE0QixFQUFFLDRCQUE0QjtZQUMxRCxtQkFBbUIsRUFBRSxtQkFBbUI7WUFDeEMsb0JBQW9CLEVBQUUsb0JBQW9CO1lBQzFDLHVCQUF1QixFQUFFLHVCQUF1QjtZQUNoRCxzQkFBc0IsRUFBRSxzQkFBc0I7WUFDOUMsd0JBQXdCLEVBQUUsd0JBQXdCO1lBQ2xELG9CQUFvQixFQUFFLG9CQUFvQjtZQUMxQywyQkFBMkIsRUFBRSwyQkFBMkI7WUFFeEQsWUFBWTtZQUNaLHFCQUFxQixFQUFFLHFCQUFxQjtZQUM1QyxzQkFBc0IsRUFBRSxzQkFBc0I7WUFDOUMsY0FBYyxFQUFFLGNBQWM7WUFDOUIscUJBQXFCLEVBQUUscUJBQXFCO1lBRTVDLHVCQUF1QjtZQUN2QixTQUFTLEVBQUUscUJBQXFCO1NBQ2pDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVyxDQUNmLE1BQXFCLEVBQ3JCLFNBQWtCO1FBRWxCLElBQUksTUFBTSxHQUFHLE1BQU0sS0FBSyxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUE7UUFDdkQsd0VBQXdFO1FBQ3hFLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUNyQixvQ0FBb0MsRUFDcEMsaURBQWlELENBQ2xELENBQUE7UUFDRCxPQUFPLE1BQU0sQ0FBQTtJQUNmLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENhdGFsb2dSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBYbWxFbGVtZW50IH0gZnJvbSAnQHJncm92ZS9wYXJzZS14bWwnXG5pbXBvcnQgeyBJc28xOTEzOUNvbnZlcnRlciB9IGZyb20gJy4uL2lzbzE5MTM5J1xuaW1wb3J0IHsgcmVuYW1lRWxlbWVudHMgfSBmcm9tICcuLi94bWwtdXRpbHMnXG5pbXBvcnQge1xuICByZWFkQ29udGFjdHMsXG4gIHJlYWRDb250YWN0c0ZvclJlc291cmNlLFxuICByZWFkRGVmYXVsdExhbmd1YWdlLFxuICByZWFkS2luZCxcbiAgcmVhZExhbmRpbmdQYWdlLFxuICByZWFkTGluZWFnZSxcbiAgcmVhZE9ubGluZVJlc291cmNlcyxcbiAgcmVhZE90aGVyTGFuZ3VhZ2VzLFxuICByZWFkT3duZXJPcmdhbml6YXRpb24sXG4gIHJlYWRSZWNvcmRDcmVhdGVkLFxuICByZWFkUmVjb3JkUHVibGlzaGVkLFxuICByZWFkUmVjb3JkVXBkYXRlZCxcbiAgcmVhZFVuaXF1ZUlkZW50aWZpZXIsXG59IGZyb20gJy4vcmVhZC1wYXJ0cydcbmltcG9ydCB7XG4gIHdyaXRlQ29udGFjdHMsXG4gIHdyaXRlQ29udGFjdHNGb3JSZXNvdXJjZSxcbiAgd3JpdGVEZWZhdWx0TGFuZ3VhZ2UsXG4gIHdyaXRlS2luZCxcbiAgd3JpdGVMYW5kaW5nUGFnZSxcbiAgd3JpdGVMaW5lYWdlLFxuICB3cml0ZU9ubGluZVJlc291cmNlcyxcbiAgd3JpdGVPdGhlckxhbmd1YWdlcyxcbiAgd3JpdGVSZWNvcmRDcmVhdGVkLFxuICB3cml0ZVJlY29yZFB1Ymxpc2hlZCxcbiAgd3JpdGVSZWNvcmRVcGRhdGVkLFxuICB3cml0ZVJlc291cmNlQ3JlYXRlZCxcbiAgd3JpdGVSZXNvdXJjZVB1Ymxpc2hlZCxcbiAgd3JpdGVSZXNvdXJjZVVwZGF0ZWQsXG4gIHdyaXRlU3BhdGlhbFJlcHJlc2VudGF0aW9uLFxuICB3cml0ZVN0YXR1cyxcbiAgd3JpdGVVbmlxdWVJZGVudGlmaWVyLFxufSBmcm9tICcuL3dyaXRlLXBhcnRzJ1xuXG5leHBvcnQgY2xhc3MgSXNvMTkxMTUzQ29udmVydGVyIGV4dGVuZHMgSXNvMTkxMzlDb252ZXJ0ZXIge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpXG5cbiAgICB0aGlzLnJlYWRlcnNbJ3VuaXF1ZUlkZW50aWZpZXInXSA9IHJlYWRVbmlxdWVJZGVudGlmaWVyXG4gICAgdGhpcy5yZWFkZXJzWydraW5kJ10gPSByZWFkS2luZFxuICAgIHRoaXMucmVhZGVyc1sncmVjb3JkVXBkYXRlZCddID0gcmVhZFJlY29yZFVwZGF0ZWRcbiAgICB0aGlzLnJlYWRlcnNbJ3JlY29yZENyZWF0ZWQnXSA9IHJlYWRSZWNvcmRDcmVhdGVkXG4gICAgdGhpcy5yZWFkZXJzWydyZWNvcmRQdWJsaXNoZWQnXSA9IHJlYWRSZWNvcmRQdWJsaXNoZWRcbiAgICB0aGlzLnJlYWRlcnNbJ2NvbnRhY3RzJ10gPSByZWFkQ29udGFjdHNcbiAgICB0aGlzLnJlYWRlcnNbJ2NvbnRhY3RzRm9yUmVzb3VyY2UnXSA9IHJlYWRDb250YWN0c0ZvclJlc291cmNlXG4gICAgdGhpcy5yZWFkZXJzWydvd25lck9yZ2FuaXphdGlvbiddID0gcmVhZE93bmVyT3JnYW5pemF0aW9uXG4gICAgdGhpcy5yZWFkZXJzWydsYW5kaW5nUGFnZSddID0gcmVhZExhbmRpbmdQYWdlXG4gICAgdGhpcy5yZWFkZXJzWydsaW5lYWdlJ10gPSByZWFkTGluZWFnZVxuICAgIHRoaXMucmVhZGVyc1snb25saW5lUmVzb3VyY2VzJ10gPSByZWFkT25saW5lUmVzb3VyY2VzXG4gICAgdGhpcy5yZWFkZXJzWydkZWZhdWx0TGFuZ3VhZ2UnXSA9IHJlYWREZWZhdWx0TGFuZ3VhZ2VcbiAgICB0aGlzLnJlYWRlcnNbJ290aGVyTGFuZ3VhZ2VzJ10gPSByZWFkT3RoZXJMYW5ndWFnZXNcblxuICAgIHRoaXMud3JpdGVyc1sndW5pcXVlSWRlbnRpZmllciddID0gd3JpdGVVbmlxdWVJZGVudGlmaWVyXG4gICAgdGhpcy53cml0ZXJzWydraW5kJ10gPSB3cml0ZUtpbmRcbiAgICB0aGlzLndyaXRlcnNbJ3JlY29yZFVwZGF0ZWQnXSA9IHdyaXRlUmVjb3JkVXBkYXRlZFxuICAgIHRoaXMud3JpdGVyc1sncmVjb3JkQ3JlYXRlZCddID0gd3JpdGVSZWNvcmRDcmVhdGVkXG4gICAgdGhpcy53cml0ZXJzWydyZWNvcmRQdWJsaXNoZWQnXSA9IHdyaXRlUmVjb3JkUHVibGlzaGVkXG4gICAgdGhpcy53cml0ZXJzWydyZXNvdXJjZVVwZGF0ZWQnXSA9IHdyaXRlUmVzb3VyY2VVcGRhdGVkXG4gICAgdGhpcy53cml0ZXJzWydyZXNvdXJjZUNyZWF0ZWQnXSA9IHdyaXRlUmVzb3VyY2VDcmVhdGVkXG4gICAgdGhpcy53cml0ZXJzWydyZXNvdXJjZVB1Ymxpc2hlZCddID0gd3JpdGVSZXNvdXJjZVB1Ymxpc2hlZFxuICAgIHRoaXMud3JpdGVyc1snY29udGFjdHMnXSA9IHdyaXRlQ29udGFjdHNcbiAgICB0aGlzLndyaXRlcnNbJ2NvbnRhY3RzRm9yUmVzb3VyY2UnXSA9IHdyaXRlQ29udGFjdHNGb3JSZXNvdXJjZVxuICAgIHRoaXMud3JpdGVyc1snb3duZXJPcmdhbml6YXRpb24nXSA9ICgpID0+IHVuZGVmaW5lZCAvLyBmaXhtZTogZmluZCBhIHdheSB0byBzdG9yZSB0aGlzIHZhbHVlIHByb3Blcmx5XG4gICAgdGhpcy53cml0ZXJzWydsYW5kaW5nUGFnZSddID0gd3JpdGVMYW5kaW5nUGFnZVxuICAgIHRoaXMud3JpdGVyc1snbGluZWFnZSddID0gd3JpdGVMaW5lYWdlXG4gICAgdGhpcy53cml0ZXJzWydvbmxpbmVSZXNvdXJjZXMnXSA9IHdyaXRlT25saW5lUmVzb3VyY2VzXG4gICAgdGhpcy53cml0ZXJzWydzdGF0dXMnXSA9IHdyaXRlU3RhdHVzXG4gICAgdGhpcy53cml0ZXJzWydzcGF0aWFsUmVwcmVzZW50YXRpb24nXSA9IHdyaXRlU3BhdGlhbFJlcHJlc2VudGF0aW9uXG4gICAgdGhpcy53cml0ZXJzWydkZWZhdWx0TGFuZ3VhZ2UnXSA9IHdyaXRlRGVmYXVsdExhbmd1YWdlXG4gICAgdGhpcy53cml0ZXJzWydvdGhlckxhbmd1YWdlcyddID0gd3JpdGVPdGhlckxhbmd1YWdlc1xuICB9XG5cbiAgYmVmb3JlRG9jdW1lbnRDcmVhdGlvbihyb290RWw6IFhtbEVsZW1lbnQpIHtcbiAgICByZW5hbWVFbGVtZW50cyhyb290RWwsIHtcbiAgICAgIGdtZDogJ21kYicsXG4gICAgICAnZ21kOmNoYXJhY3RlckVuY29kaW5nJzogJ2xhbjpjaGFyYWN0ZXJFbmNvZGluZycsXG4gICAgICAnZ21kOk1EX0NoYXJhY3RlclNldENvZGUnOiAnbGFuOk1EX0NoYXJhY3RlclNldENvZGUnLFxuICAgICAgJ2dtZDpNRF9EYXRhSWRlbnRpZmljYXRpb24nOiAnbXJpOk1EX0RhdGFJZGVudGlmaWNhdGlvbicsXG4gICAgICAnZ21kOmNpdGF0aW9uJzogJ21yaTpjaXRhdGlvbicsXG4gICAgICAnZ21kOmFic3RyYWN0JzogJ21yaTphYnN0cmFjdCcsXG4gICAgICAnZ21kOnRpdGxlJzogJ2NpdDp0aXRsZScsXG4gICAgICAnZ21kOkNJX0NpdGF0aW9uJzogJ2NpdDpDSV9DaXRhdGlvbicsXG4gICAgICAnZ214OkFuY2hvcic6ICdnY3g6QW5jaG9yJyxcblxuICAgICAgLy8gbGFuZ3VhZ2VzXG4gICAgICAnZ21kOlBUX0xvY2FsZSc6ICdsYW46UFRfTG9jYWxlJyxcbiAgICAgICdnbWQ6UFRfRnJlZVRleHQnOiAnbGFuOlBUX0ZyZWVUZXh0JyxcbiAgICAgICdnbWQ6TGFuZ3VhZ2VDb2RlJzogJ2xhbjpMYW5ndWFnZUNvZGUnLFxuXG4gICAgICAvLyBzdGF0dXNcbiAgICAgICdnbWQ6c3RhdHVzJzogJ21yaTpzdGF0dXMnLFxuICAgICAgJ2dtZDpNRF9Qcm9ncmVzc0NvZGUnOiAnbXJpOk1EX1Byb2dyZXNzQ29kZScsXG5cbiAgICAgIC8vIGRhdGVzXG4gICAgICAnZ21kOmRhdGUnOiAnY2l0OmRhdGUnLFxuICAgICAgJ2dtZDpDSV9EYXRlJzogJ2NpdDpDSV9EYXRlJyxcbiAgICAgICdnbWQ6ZGF0ZVR5cGUnOiAnY2l0OmRhdGVUeXBlJyxcbiAgICAgICdnbWQ6Q0lfRGF0ZVR5cGVDb2RlJzogJ2NpdDpDSV9EYXRlVHlwZUNvZGUnLFxuXG4gICAgICAvLyBjb250YWN0c1xuICAgICAgJ2dtZDpDSV9SZXNwb25zaWJpbGl0eSc6ICdjaXQ6Q0lfUmVzcG9uc2liaWxpdHknLFxuICAgICAgJ2dtZDpyb2xlJzogJ2NpdDpyb2xlJyxcbiAgICAgICdnbWQ6Q0lfUm9sZUNvZGUnOiAnY2l0OkNJX1JvbGVDb2RlJyxcblxuICAgICAgLy8ga2V5d29yZHNcbiAgICAgICdnbWQ6ZGVzY3JpcHRpdmVLZXl3b3Jkcyc6ICdtcmk6ZGVzY3JpcHRpdmVLZXl3b3JkcycsXG4gICAgICAnZ21kOk1EX0tleXdvcmRzJzogJ21yaTpNRF9LZXl3b3JkcycsXG4gICAgICAnZ21kOnR5cGUnOiAnbXJpOnR5cGUnLFxuICAgICAgJ2dtZDpNRF9LZXl3b3JkVHlwZUNvZGUnOiAnbXJpOk1EX0tleXdvcmRUeXBlQ29kZScsXG4gICAgICAnZ21kOnRoZXNhdXJ1c05hbWUnOiAnbXJpOnRoZXNhdXJ1c05hbWUnLFxuICAgICAgJ2dtZDprZXl3b3JkJzogJ21yaTprZXl3b3JkJyxcbiAgICAgICdnbWQ6aWRlbnRpZmllcic6ICdjaXQ6aWRlbnRpZmllcicsXG4gICAgICAnZ21kOk1EX0lkZW50aWZpZXInOiAnbWNjOk1EX0lkZW50aWZpZXInLFxuICAgICAgJ2dtZDpjb2RlJzogJ21jYzpjb2RlJyxcblxuICAgICAgLy8gZGlzdHJpYnV0aW9uc1xuICAgICAgJ2dtZDpNRF9EaXN0cmlidXRpb24nOiAnbXJkOk1EX0Rpc3RyaWJ1dGlvbicsXG4gICAgICAnZ21kOnRyYW5zZmVyT3B0aW9ucyc6ICdtcmQ6dHJhbnNmZXJPcHRpb25zJyxcbiAgICAgICdnbWQ6TURfRGlnaXRhbFRyYW5zZmVyT3B0aW9ucyc6ICdtcmQ6TURfRGlnaXRhbFRyYW5zZmVyT3B0aW9ucycsXG4gICAgICAnZ21kOm9uTGluZSc6ICdtcmQ6b25MaW5lJyxcbiAgICAgICdnbWQ6ZGlzdHJpYnV0aW9uRm9ybWF0JzogJ21yZDpkaXN0cmlidXRpb25Gb3JtYXQnLFxuICAgICAgJ2dtZDpNRF9Gb3JtYXQnOiAnbXJkOk1EX0Zvcm1hdCcsXG4gICAgICAnZ21kOkNJX09ubGluZVJlc291cmNlJzogJ2NpdDpDSV9PbmxpbmVSZXNvdXJjZScsXG4gICAgICAnZ21kOmxpbmthZ2UnOiAnY2l0OmxpbmthZ2UnLFxuICAgICAgJ2dtZDpuYW1lJzogJ2NpdDpuYW1lJyxcbiAgICAgICdnbWQ6ZGVzY3JpcHRpb24nOiAnY2l0OmRlc2NyaXB0aW9uJyxcbiAgICAgICdnbWQ6Q0lfT25MaW5lRnVuY3Rpb25Db2RlJzogJ2NpdDpDSV9PbkxpbmVGdW5jdGlvbkNvZGUnLFxuICAgICAgJ2dtZDpmdW5jdGlvbic6ICdjaXQ6ZnVuY3Rpb24nLFxuICAgICAgJ2dtZDpwcm90b2NvbCc6ICdjaXQ6cHJvdG9jb2wnLFxuXG4gICAgICAvLyB0b3BpY1xuICAgICAgJ2dtZDp0b3BpY0NhdGVnb3J5JzogJ21yaTp0b3BpY0NhdGVnb3J5JyxcbiAgICAgICdnbWQ6TURfVG9waWNDYXRlZ29yeUNvZGUnOiAnbXJpOk1EX1RvcGljQ2F0ZWdvcnlDb2RlJyxcblxuICAgICAgLy8gdXBkYXRlIGZyZXF1ZW5jeVxuICAgICAgJ2dtZDpyZXNvdXJjZU1haW50ZW5hbmNlJzogJ21yaTpyZXNvdXJjZU1haW50ZW5hbmNlJyxcbiAgICAgICdnbWQ6TURfTWFpbnRlbmFuY2VJbmZvcm1hdGlvbic6ICdtbWk6TURfTWFpbnRlbmFuY2VJbmZvcm1hdGlvbicsXG4gICAgICAnZ21kOnVzZXJEZWZpbmVkTWFpbnRlbmFuY2VGcmVxdWVuY3knOlxuICAgICAgICAnbW1pOnVzZXJEZWZpbmVkTWFpbnRlbmFuY2VGcmVxdWVuY3knLFxuICAgICAgJ2d0czpUTV9QZXJpb2REdXJhdGlvbic6ICdnY286VE1fUGVyaW9kRHVyYXRpb24nLFxuXG4gICAgICAvLyBjb25zdHJhaW50c1xuICAgICAgJ2dtZDpyZXNvdXJjZUNvbnN0cmFpbnRzJzogJ21yaTpyZXNvdXJjZUNvbnN0cmFpbnRzJyxcbiAgICAgICdnbWQ6TURfQ29uc3RyYWludHMnOiAnbWNvOk1EX0NvbnN0cmFpbnRzJyxcbiAgICAgICdnbWQ6TURfTGVnYWxDb25zdHJhaW50cyc6ICdtY286TURfTGVnYWxDb25zdHJhaW50cycsXG4gICAgICAnZ21kOk1EX1NlY3VyaXR5Q29uc3RyYWludHMnOiAnbWNvOk1EX1NlY3VyaXR5Q29uc3RyYWludHMnLFxuICAgICAgJ2dtZDp1c2VMaW1pdGF0aW9uJzogJ21jbzp1c2VMaW1pdGF0aW9uJyxcbiAgICAgICdnbWQ6dXNlQ29uc3RyYWludHMnOiAnbWNvOnVzZUNvbnN0cmFpbnRzJyxcbiAgICAgICdnbWQ6YWNjZXNzQ29uc3RyYWludHMnOiAnbWNvOmFjY2Vzc0NvbnN0cmFpbnRzJyxcbiAgICAgICdnbWQ6b3RoZXJDb25zdHJhaW50cyc6ICdtY286b3RoZXJDb25zdHJhaW50cycsXG4gICAgICAnZ21kOk1EX1Jlc3RyaWN0aW9uQ29kZSc6ICdtY286TURfUmVzdHJpY3Rpb25Db2RlJyxcbiAgICAgICdnbWQ6Y2xhc3NpZmljYXRpb24nOiAnbWNvOmNsYXNzaWZpY2F0aW9uJyxcbiAgICAgICdnbWQ6TURfQ2xhc3NpZmljYXRpb25Db2RlJzogJ21jbzpNRF9DbGFzc2lmaWNhdGlvbkNvZGUnLFxuXG4gICAgICAvLyBvdmVydmlld3NcbiAgICAgICdnbWQ6Z3JhcGhpY092ZXJ2aWV3JzogJ21yaTpncmFwaGljT3ZlcnZpZXcnLFxuICAgICAgJ2dtZDpNRF9Ccm93c2VHcmFwaGljJzogJ21jYzpNRF9Ccm93c2VHcmFwaGljJyxcbiAgICAgICdnbWQ6ZmlsZU5hbWUnOiAnbWNjOmZpbGVOYW1lJyxcbiAgICAgICdnbWQ6ZmlsZURlc2NyaXB0aW9uJzogJ21jYzpmaWxlRGVzY3JpcHRpb24nLFxuXG4gICAgICAvLyBubyBtb3JlIFVSTCBlbGVtZW50c1xuICAgICAgJ2dtZDpVUkwnOiAnZ2NvOkNoYXJhY3RlclN0cmluZycsXG4gICAgfSlcbiAgfVxuXG4gIGFzeW5jIHdyaXRlUmVjb3JkKFxuICAgIHJlY29yZDogQ2F0YWxvZ1JlY29yZCxcbiAgICByZWZlcmVuY2U/OiBzdHJpbmdcbiAgKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBsZXQgcmVzdWx0ID0gYXdhaXQgc3VwZXIud3JpdGVSZWNvcmQocmVjb3JkLCByZWZlcmVuY2UpXG4gICAgLy8gZml4IGdjbyBuYW1lc3BhY2UgZGVmaW5pdGlvbiAoY2hhbmdlcyBiZXR3ZWVuIGlzbzE5MTM5IGFuZCBpc28xOTExNS0zXG4gICAgcmVzdWx0ID0gcmVzdWx0LnJlcGxhY2UoXG4gICAgICAnXCJodHRwOi8vd3d3Lmlzb3RjMjExLm9yZy8yMDA1L2djb1wiJyxcbiAgICAgICdcImh0dHA6Ly9zdGFuZGFyZHMuaXNvLm9yZy9pc28vMTkxMTUvLTMvZ2NvLzEuMFwiJ1xuICAgIClcbiAgICByZXR1cm4gcmVzdWx0XG4gIH1cbn1cbiJdfQ==
@@ -1,8 +1,9 @@
1
1
  import { findChildElement, findChildrenElement, findNestedElement, findNestedElements, findParent, readAttribute, } from '../xml-utils';
2
2
  import { combine, filterArray, flattenArray, getAtIndex, map, mapArray, pipe, } from '../function-utils';
3
- import { extractCharacterString, extractDatasetDistributions, extractDateTime, extractRole, extractUrl, findIdentification, } from '../iso19139/read-parts';
3
+ import { extractCharacterString, extractDatasetOnlineResources, extractDateTime, extractLocalizedCharacterString, extractRole, extractServiceOnlineResources, extractUrl, findIdentification, } from '../iso19139/read-parts';
4
4
  import { matchMimeType } from '../common/distribution.mapper';
5
5
  import { fullNameToParts } from '../iso19139/utils/individual-name';
6
+ import { LANG_3_TO_2_MAPPER } from '../../../../../../libs/util/i18n/src/lib/language-codes';
6
7
  export function readKind(rootEl) {
7
8
  return pipe(findNestedElement('mdb:metadataScope', 'mdb:MD_MetadataScope', 'mdb:resourceScope', 'mcc:MD_ScopeCode'), readAttribute('codeListValue'), map((scopeCode) => scopeCode === 'service' ? 'service' : 'dataset'))(rootEl);
8
9
  }
@@ -12,9 +13,10 @@ export function findDistribution() {
12
13
  // from cit:CI_Organisation
13
14
  export function extractOrganization() {
14
15
  const getUrl = pipe(findNestedElements('cit:contactInfo', 'cit:CI_Contact', 'cit:onlineResource', 'cit:CI_OnlineResource', 'cit:linkage'), getAtIndex(0), extractUrl());
15
- return pipe(combine(pipe(findChildElement('cit:name', false), extractCharacterString()), getUrl), map(([name, website]) => ({
16
+ return pipe(combine(pipe(findChildElement('cit:name', false), extractLocalizedCharacterString('name')), getUrl), map(([[name, translations], website]) => ({
16
17
  name,
17
18
  ...(website && { website }),
19
+ translations,
18
20
  })));
19
21
  }
20
22
  // from cit:CI_Individual or cit:CI_Organisation
@@ -32,6 +34,7 @@ export function extractIndividual(role, organization, orgContact) {
32
34
  const getEmail = pipe(getAddressRoot, findChildElement('cit:electronicMailAddress', false), extractCharacterString());
33
35
  const defaultOrg = {
34
36
  name: 'Missing Organization',
37
+ translations: {},
35
38
  };
36
39
  let defaultIndividual = {};
37
40
  if (orgContact) {
@@ -73,8 +76,8 @@ export function extractOrganizationIndividuals(role) {
73
76
  // from cit:CI_Responsibility
74
77
  export function extractIndividuals() {
75
78
  const getRole = pipe(findChildElement('cit:role'), extractRole());
76
- const getIndividuals = pipe(combine(getRole, findNestedElements('cit:party', 'cit:CI_Individual')), ([role, els]) => els.map((el) => extractIndividual(role)(el)));
77
- const getOrgIndividuals = pipe(combine(getRole, findNestedElements('cit:party', 'cit:CI_Organisation')), map(([role, els]) => els.map((el) => extractOrganizationIndividuals(role)(el))), flattenArray());
79
+ const getIndividuals = pipe(combine(getRole, findNestedElements('cit:party', 'cit:CI_Individual')), ([role, els]) => els.map(extractIndividual(role)));
80
+ const getOrgIndividuals = pipe(combine(getRole, findNestedElements('cit:party', 'cit:CI_Organisation')), map(([role, els]) => els.map(extractOrganizationIndividuals(role))), flattenArray());
78
81
  return pipe(combine(getIndividuals, getOrgIndividuals), flattenArray());
79
82
  }
80
83
  export function readUniqueIdentifier(rootEl) {
@@ -82,20 +85,21 @@ export function readUniqueIdentifier(rootEl) {
82
85
  }
83
86
  export function readOwnerOrganization(rootEl) {
84
87
  const contacts = readContacts(rootEl);
88
+ const contactsForResource = readContactsForResource(rootEl);
85
89
  const pointOfContact = contacts.filter((c) => c.role === 'point_of_contact')[0];
86
- return (pointOfContact || contacts[0]).organization;
90
+ return (pointOfContact || contacts[0] || contactsForResource[0]).organization;
87
91
  }
88
92
  export function readContacts(rootEl) {
89
93
  return pipe(findNestedElements('mdb:contact', 'cit:CI_Responsibility'), mapArray(extractIndividuals()), flattenArray())(rootEl);
90
94
  }
91
- export function readResourceContacts(rootEl) {
95
+ export function readContactsForResource(rootEl) {
92
96
  return pipe(combine(pipe(findIdentification(), findNestedElements('mri:citation', 'cit:CI_Citation', 'cit:citedResponsibleParty')), pipe(findIdentification(), findChildrenElement('mri:pointOfContact', false)), pipe(findDistribution(), findChildrenElement('mrd:distributorContact'))), flattenArray(), mapArray(findChildElement('cit:CI_Responsibility', false)), mapArray(extractIndividuals()), flattenArray())(rootEl);
93
97
  }
94
98
  export function readLandingPage(rootEl) {
95
99
  return pipe(findNestedElement('mdb:metadataLinkage', 'cit:CI_OnlineResource', 'cit:linkage'), extractUrl())(rootEl);
96
100
  }
97
- export function readLineage(rootEl) {
98
- return pipe(findNestedElement('mdb:resourceLineage', 'mrl:LI_Lineage', 'mrl:statement'), extractCharacterString())(rootEl);
101
+ export function readLineage(rootEl, translations) {
102
+ return pipe(findNestedElement('mdb:resourceLineage', 'mrl:LI_Lineage', 'mrl:statement'), extractLocalizedCharacterString('lineage', translations), map(([lineage]) => lineage))(rootEl);
99
103
  }
100
104
  function extractDateInfo(type) {
101
105
  return pipe(findChildrenElement('mdb:dateInfo', false), filterArray((el) => pipe(findChildElement('cit:CI_DateTypeCode'), readAttribute('codeListValue'))(el) === type), getAtIndex(0), findChildElement('cit:date'), extractDateTime());
@@ -110,7 +114,19 @@ export function readRecordPublished(rootEl) {
110
114
  return extractDateInfo('publication')(rootEl);
111
115
  }
112
116
  const getMimeType = pipe(findParent('mrd:MD_Distribution'), findNestedElement('mrd:distributionFormat', 'mrd:MD_Format', 'mrd:formatSpecificationCitation', 'cit:CI_Citation', 'cit:title'), extractCharacterString(), map(matchMimeType));
113
- export function readDistributions(rootEl) {
114
- return pipe(findNestedElements('mrd:distributionInfo', 'mrd:MD_Distribution'), mapArray(extractDatasetDistributions(getMimeType)), flattenArray())(rootEl);
117
+ export function readOnlineResources(rootEl) {
118
+ if (readKind(rootEl) === 'dataset') {
119
+ return pipe(findNestedElements('mrd:distributionInfo', 'mrd:MD_Distribution'), mapArray(extractDatasetOnlineResources(getMimeType)), flattenArray())(rootEl);
120
+ }
121
+ return pipe(findNestedElements('mrd:distributionInfo', 'mrd:MD_Distribution'), mapArray(extractServiceOnlineResources()), flattenArray())(rootEl);
122
+ }
123
+ function readLocaleElement() {
124
+ return pipe(findChildElement('lan:LanguageCode'), readAttribute('codeListValue'), map((lang) => (lang ? LANG_3_TO_2_MAPPER[lang.toLowerCase()] : null)));
125
+ }
126
+ export function readDefaultLanguage(rootEl) {
127
+ return pipe(findChildElement('mdb:defaultLocale', false), readLocaleElement())(rootEl);
128
+ }
129
+ export function readOtherLanguages(rootEl) {
130
+ return pipe(findChildrenElement('mdb:otherLocale', false), mapArray(readLocaleElement()))(rootEl);
115
131
  }
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC1wYXJ0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL21ldGFkYXRhLWNvbnZlcnRlci9zcmMvbGliL2lzbzE5MTE1LTMvcmVhZC1wYXJ0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLG1CQUFtQixFQUNuQixpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLFVBQVUsRUFDVixhQUFhLEdBRWQsTUFBTSxjQUFjLENBQUE7QUFDckIsT0FBTyxFQUVMLE9BQU8sRUFDUCxXQUFXLEVBQ1gsWUFBWSxFQUNaLFVBQVUsRUFDVixHQUFHLEVBQ0gsUUFBUSxFQUNSLElBQUksR0FDTCxNQUFNLG1CQUFtQixDQUFBO0FBQzFCLE9BQU8sRUFDTCxzQkFBc0IsRUFDdEIsMkJBQTJCLEVBQzNCLGVBQWUsRUFDZixXQUFXLEVBQ1gsVUFBVSxFQUNWLGtCQUFrQixHQUNuQixNQUFNLHdCQUF3QixDQUFBO0FBUS9CLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFFbkUsTUFBTSxVQUFVLFFBQVEsQ0FBQyxNQUFrQjtJQUN6QyxPQUFPLElBQUksQ0FDVCxpQkFBaUIsQ0FDZixtQkFBbUIsRUFDbkIsc0JBQXNCLEVBQ3RCLG1CQUFtQixFQUNuQixrQkFBa0IsQ0FDbkIsRUFDRCxhQUFhLENBQUMsZUFBZSxDQUFDLEVBQzlCLEdBQUcsQ0FDRCxDQUFDLFNBQVMsRUFBYyxFQUFFLENBQ3hCLFNBQVMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUNsRCxDQUNGLENBQUMsTUFBTSxDQUFDLENBQUE7QUFDWCxDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQjtJQUM5QixPQUFPLGlCQUFpQixDQUFDLHNCQUFzQixF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QWtCLENBQUMsc0JBQXNCLEVBQUUscUJBQXFCLENBQUMsRUFDakUsUUFBUSxDQUFDLDJCQUEyQixDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQ2xELFlBQVksRUFBRSxDQUNmLENBQUMsTUFBTSxDQUFDLENBQUE7QUFDWCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgZmluZENoaWxkRWxlbWVudCxcbiAgZmluZENoaWxkcmVuRWxlbWVudCxcbiAgZmluZE5lc3RlZEVsZW1lbnQsXG4gIGZpbmROZXN0ZWRFbGVtZW50cyxcbiAgZmluZFBhcmVudCxcbiAgcmVhZEF0dHJpYnV0ZSxcbiAgWG1sRWxlbWVudCxcbn0gZnJvbSAnLi4veG1sLXV0aWxzJ1xuaW1wb3J0IHtcbiAgQ2hhaW5hYmxlRnVuY3Rpb24sXG4gIGNvbWJpbmUsXG4gIGZpbHRlckFycmF5LFxuICBmbGF0dGVuQXJyYXksXG4gIGdldEF0SW5kZXgsXG4gIG1hcCxcbiAgbWFwQXJyYXksXG4gIHBpcGUsXG59IGZyb20gJy4uL2Z1bmN0aW9uLXV0aWxzJ1xuaW1wb3J0IHtcbiAgZXh0cmFjdENoYXJhY3RlclN0cmluZyxcbiAgZXh0cmFjdERhdGFzZXREaXN0cmlidXRpb25zLFxuICBleHRyYWN0RGF0ZVRpbWUsXG4gIGV4dHJhY3RSb2xlLFxuICBleHRyYWN0VXJsLFxuICBmaW5kSWRlbnRpZmljYXRpb24sXG59IGZyb20gJy4uL2lzbzE5MTM5L3JlYWQtcGFydHMnXG5pbXBvcnQge1xuICBEYXRhc2V0RGlzdHJpYnV0aW9uLFxuICBJbmRpdmlkdWFsLFxuICBPcmdhbml6YXRpb24sXG4gIFJlY29yZEtpbmQsXG4gIFJvbGUsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IG1hdGNoTWltZVR5cGUgfSBmcm9tICcuLi9jb21tb24vZGlzdHJpYnV0aW9uLm1hcHBlcidcbmltcG9ydCB7IGZ1bGxOYW1lVG9QYXJ0cyB9IGZyb20gJy4uL2lzbzE5MTM5L3V0aWxzL2luZGl2aWR1YWwtbmFtZSdcblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRLaW5kKHJvb3RFbDogWG1sRWxlbWVudCk6IFJlY29yZEtpbmQge1xuICByZXR1cm4gcGlwZShcbiAgICBmaW5kTmVzdGVkRWxlbWVudChcbiAgICAgICdtZGI6bWV0YWRhdGFTY29wZScsXG4gICAgICAnbWRiOk1EX01ldGFkYXRhU2NvcGUnLFxuICAgICAgJ21kYjpyZXNvdXJjZVNjb3BlJyxcbiAgICAgICdtY2M6TURfU2NvcGVDb2RlJ1xuICAgICksXG4gICAgcmVhZEF0dHJpYnV0ZSgnY29kZUxpc3RWYWx1ZScpLFxuICAgIG1hcChcbiAgICAgIChzY29wZUNvZGUpOiBSZWNvcmRLaW5kID0+XG4gICAgICAgIHNjb3BlQ29kZSA9PT0gJ3NlcnZpY2UnID8gJ3NlcnZpY2UnIDogJ2RhdGFzZXQnXG4gICAgKVxuICApKHJvb3RFbClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmREaXN0cmlidXRpb24oKSB7XG4gIHJldHVybiBmaW5kTmVzdGVkRWxlbWVudCgnbWRiOmRpc3RyaWJ1dGlvbkluZm8nLCAnbXJkOk1EX0Rpc3RyaWJ1dGlvbicpXG59XG5cbi8vIGZyb20gY2l0OkNJX09yZ2FuaXNhdGlvblxuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3RPcmdhbml6YXRpb24oKTogQ2hhaW5hYmxlRnVuY3Rpb248XG4gIFhtbEVsZW1lbnQsXG4gIE9yZ2FuaXphdGlvblxuPiB7XG4gIGNvbnN0IGdldFVybCA9IHBpcGUoXG4gICAgZmluZE5lc3RlZEVsZW1lbnRzKFxuICAgICAgJ2NpdDpjb250YWN0SW5mbycsXG4gICAgICAnY2l0OkNJX0NvbnRhY3QnLFxuICAgICAgJ2NpdDpvbmxpbmVSZXNvdXJjZScsXG4gICAgICAnY2l0OkNJX09ubGluZVJlc291cmNlJyxcbiAgICAgICdjaXQ6bGlua2FnZSdcbiAgICApLFxuICAgIGdldEF0SW5kZXgoMCksXG4gICAgZXh0cmFjdFVybCgpXG4gIClcbiAgcmV0dXJuIHBpcGUoXG4gICAgY29tYmluZShcbiAgICAgIHBpcGUoZmluZENoaWxkRWxlbWVudCgnY2l0Om5hbWUnLCBmYWxzZSksIGV4dHJhY3RDaGFyYWN0ZXJTdHJpbmcoKSksXG4gICAgICBnZXRVcmxcbiAgICApLFxuICAgIG1hcCgoW25hbWUsIHdlYnNpdGVdKSA9PiAoe1xuICAgICAgbmFtZSxcbiAgICAgIC4uLih3ZWJzaXRlICYmIHsgd2Vic2l0ZSB9KSxcbiAgICB9KSlcbiAgKVxufVxuXG4vLyBmcm9tIGNpdDpDSV9JbmRpdmlkdWFsIG9yIGNpdDpDSV9PcmdhbmlzYXRpb25cbmV4cG9ydCBmdW5jdGlvbiBleHRyYWN0SW5kaXZpZHVhbChcbiAgcm9sZTogUm9sZSxcbiAgb3JnYW5pemF0aW9uPzogT3JnYW5pemF0aW9uLFxuICBvcmdDb250YWN0PzogSW5kaXZpZHVhbFxuKTogQ2hhaW5hYmxlRnVuY3Rpb248WG1sRWxlbWVudCwgSW5kaXZpZHVhbD4ge1xuICBjb25zdCBnZXRQb3NpdGlvbiA9IHBpcGUoXG4gICAgZmluZENoaWxkRWxlbWVudCgnY2l0OnBvc2l0aW9uTmFtZScpLFxuICAgIGV4dHJhY3RDaGFyYWN0ZXJTdHJpbmcoKVxuICApXG4gIGNvbnN0IGdldE5hbWVQYXJ0cyA9IHBpcGUoXG4gICAgZmluZENoaWxkRWxlbWVudCgnY2l0Om5hbWUnKSxcbiAgICBleHRyYWN0Q2hhcmFjdGVyU3RyaW5nKCksXG4gICAgbWFwKChmdWxsTmFtZSkgPT4ge1xuICAgICAgaWYgKCFmdWxsTmFtZSkgcmV0dXJuIFtdXG4gICAgICByZXR1cm4gZnVsbE5hbWVUb1BhcnRzKGZ1bGxOYW1lKVxuICAgIH0pXG4gIClcbiAgY29uc3QgZ2V0Q29udGFjdCA9IGZpbmROZXN0ZWRFbGVtZW50KCdjaXQ6Y29udGFjdEluZm8nLCAnY2l0OkNJX0NvbnRhY3QnKVxuICBjb25zdCBnZXRBZGRyZXNzUm9vdCA9IHBpcGUoXG4gICAgZ2V0Q29udGFjdCxcbiAgICBmaW5kTmVzdGVkRWxlbWVudCgnY2l0OmFkZHJlc3MnLCAnY2l0OkNJX0FkZHJlc3MnKVxuICApXG4gIGNvbnN0IGdldEFkZHJlc3MgPSBwaXBlKFxuICAgIGdldEFkZHJlc3NSb290LFxuICAgIGNvbWJpbmUoXG4gICAgICBwaXBlKFxuICAgICAgICBmaW5kQ2hpbGRFbGVtZW50KCdjaXQ6ZGVsaXZlcnlQb2ludCcsIGZhbHNlKSxcbiAgICAgICAgZXh0cmFjdENoYXJhY3RlclN0cmluZygpXG4gICAgICApLFxuICAgICAgcGlwZShmaW5kQ2hpbGRFbGVtZW50KCdjaXQ6Y2l0eScsIGZhbHNlKSwgZXh0cmFjdENoYXJhY3RlclN0cmluZygpKSxcbiAgICAgIHBpcGUoZmluZENoaWxkRWxlbWVudCgnY2l0OnBvc3RhbENvZGUnLCBmYWxzZSksIGV4dHJhY3RDaGFyYWN0ZXJTdHJpbmcoKSksXG4gICAgICBwaXBlKGZpbmRDaGlsZEVsZW1lbnQoJ2NpdDpjb3VudHJ5JywgZmFsc2UpLCBleHRyYWN0Q2hhcmFjdGVyU3RyaW5nKCkpXG4gICAgKSxcbiAgICBtYXAoKHBhcnRzKSA9PiBwYXJ0cy5maWx0ZXIoKHApID0+ICEhcCkuam9pbignLCAnKSlcbiAgKVxuICBjb25zdCBnZXRQaG9uZSA9IHBpcGUoXG4gICAgZ2V0Q29udGFjdCxcbiAgICBmaW5kTmVzdGVkRWxlbWVudCgnY2l0OnBob25lJywgJ2NpdDpDSV9UZWxlcGhvbmUnLCAnY2l0Om51bWJlcicpLFxuICAgIGV4dHJhY3RDaGFyYWN0ZXJTdHJpbmcoKVxuICApXG4gIGNvbnN0IGdldEVtYWlsID0gcGlwZShcbiAgICBnZXRBZGRyZXNzUm9vdCxcbiAgICBmaW5kQ2hpbGRFbGVtZW50KCdjaXQ6ZWxlY3Ryb25pY01haWxBZGRyZXNzJywgZmFsc2UpLFxuICAgIGV4dHJhY3RDaGFyYWN0ZXJTdHJpbmcoKVxuICApXG4gIGNvbnN0IGRlZmF1bHRPcmc6IE9yZ2FuaXphdGlvbiA9IHtcbiAgICBuYW1lOiAnTWlzc2luZyBPcmdhbml6YXRpb24nLFxuICB9XG5cbiAgbGV0IGRlZmF1bHRJbmRpdmlkdWFsOiBQYXJ0aWFsPEluZGl2aWR1YWw+ID0ge31cbiAgaWYgKG9yZ0NvbnRhY3QpIHtcbiAgICBkZWZhdWx0SW5kaXZpZHVhbCA9IHtcbiAgICAgIGVtYWlsOiBvcmdDb250YWN0LmVtYWlsLFxuICAgICAgLi4uKG9yZ0NvbnRhY3QuYWRkcmVzcyAmJiB7IGFkZHJlc3M6IG9yZ0NvbnRhY3QuYWRkcmVzcyB9KSxcbiAgICAgIC4uLihvcmdDb250YWN0LnBob25lICYmIHsgcGhvbmU6IG9yZ0NvbnRhY3QucGhvbmUgfSksXG4gICAgICAuLi4ob3JnQ29udGFjdC5wb3NpdGlvbiAmJiB7IHBvc2l0aW9uOiBvcmdDb250YWN0LnBvc2l0aW9uIH0pLFxuICAgICAgb3JnYW5pemF0aW9uLFxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBwaXBlKFxuICAgIGNvbWJpbmUoZ2V0UG9zaXRpb24sIGdldE5hbWVQYXJ0cywgZ2V0RW1haWwsIGdldEFkZHJlc3MsIGdldFBob25lKSxcbiAgICBtYXAoKFtwb3NpdGlvbiwgW2ZpcnN0TmFtZSwgbGFzdE5hbWVdLCBlbWFpbCwgYWRkcmVzcywgcGhvbmVdKSA9PiAoe1xuICAgICAgLi4uZGVmYXVsdEluZGl2aWR1YWwsXG4gICAgICBlbWFpbDogZW1haWwgfHwgZGVmYXVsdEluZGl2aWR1YWwuZW1haWwgfHwgJ21pc3NpbmdAbWlzc2luZy5jb20nLFxuICAgICAgcm9sZSxcbiAgICAgIG9yZ2FuaXphdGlvbjogb3JnYW5pemF0aW9uIHx8IGRlZmF1bHRPcmcsXG4gICAgICAuLi4ocG9zaXRpb24gJiYgeyBwb3NpdGlvbiB9KSxcbiAgICAgIC4uLihmaXJzdE5hbWUgJiYgeyBmaXJzdE5hbWUgfSksXG4gICAgICAuLi4obGFzdE5hbWUgJiYgeyBsYXN0TmFtZSB9KSxcbiAgICAgIC4uLihhZGRyZXNzICYmIHsgYWRkcmVzcyB9KSxcbiAgICAgIC4uLihwaG9uZSAmJiB7IHBob25lIH0pLFxuICAgIH0pKVxuICApXG59XG5cbi8vIGZyb20gY2l0OkNJX09yZ2FuaXNhdGlvblxuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3RPcmdhbml6YXRpb25JbmRpdmlkdWFscyhcbiAgcm9sZTogUm9sZVxuKTogQ2hhaW5hYmxlRnVuY3Rpb248WG1sRWxlbWVudCwgQXJyYXk8SW5kaXZpZHVhbD4+IHtcbiAgcmV0dXJuIHBpcGUoXG4gICAgY29tYmluZShcbiAgICAgIGV4dHJhY3RPcmdhbml6YXRpb24oKSxcbiAgICAgIGV4dHJhY3RJbmRpdmlkdWFsKHJvbGUpLFxuICAgICAgZmluZE5lc3RlZEVsZW1lbnRzKCdjaXQ6aW5kaXZpZHVhbCcsICdjaXQ6Q0lfSW5kaXZpZHVhbCcpXG4gICAgKSxcbiAgICBtYXAoKFtvcmcsIG9yZ0NvbnRhY3QsIGVsc10pID0+XG4gICAgICBlbHMubGVuZ3RoXG4gICAgICAgID8gZWxzLm1hcCgoZWwpID0+IGV4dHJhY3RJbmRpdmlkdWFsKHJvbGUsIG9yZywgb3JnQ29udGFjdCkoZWwpKVxuICAgICAgICA6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgZW1haWw6IG9yZ0NvbnRhY3QuZW1haWwsXG4gICAgICAgICAgICAgIC4uLihvcmdDb250YWN0LmFkZHJlc3MgJiYgeyBhZGRyZXNzOiBvcmdDb250YWN0LmFkZHJlc3MgfSksXG4gICAgICAgICAgICAgIC4uLihvcmdDb250YWN0LnBob25lICYmIHsgcGhvbmU6IG9yZ0NvbnRhY3QucGhvbmUgfSksXG4gICAgICAgICAgICAgIC4uLihvcmdDb250YWN0LnBvc2l0aW9uICYmIHsgcG9zaXRpb246IG9yZ0NvbnRhY3QucG9zaXRpb24gfSksXG4gICAgICAgICAgICAgIG9yZ2FuaXphdGlvbjogb3JnLFxuICAgICAgICAgICAgICByb2xlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdXG4gICAgKVxuICApXG59XG5cbi8vIGZyb20gY2l0OkNJX1Jlc3BvbnNpYmlsaXR5XG5leHBvcnQgZnVuY3Rpb24gZXh0cmFjdEluZGl2aWR1YWxzKCk6IENoYWluYWJsZUZ1bmN0aW9uPFxuICBYbWxFbGVtZW50LFxuICBBcnJheTxJbmRpdmlkdWFsPlxuPiB7XG4gIGNvbnN0IGdldFJvbGUgPSBwaXBlKGZpbmRDaGlsZEVsZW1lbnQoJ2NpdDpyb2xlJyksIGV4dHJhY3RSb2xlKCkpXG4gIGNvbnN0IGdldEluZGl2aWR1YWxzID0gcGlwZShcbiAgICBjb21iaW5lKGdldFJvbGUsIGZpbmROZXN0ZWRFbGVtZW50cygnY2l0OnBhcnR5JywgJ2NpdDpDSV9JbmRpdmlkdWFsJykpLFxuICAgIChbcm9sZSwgZWxzXSkgPT4gZWxzLm1hcCgoZWwpID0+IGV4dHJhY3RJbmRpdmlkdWFsKHJvbGUpKGVsKSlcbiAgKVxuICBjb25zdCBnZXRPcmdJbmRpdmlkdWFscyA9IHBpcGUoXG4gICAgY29tYmluZShnZXRSb2xlLCBmaW5kTmVzdGVkRWxlbWVudHMoJ2NpdDpwYXJ0eScsICdjaXQ6Q0lfT3JnYW5pc2F0aW9uJykpLFxuICAgIG1hcCgoW3JvbGUsIGVsc10pID0+XG4gICAgICBlbHMubWFwKChlbCkgPT4gZXh0cmFjdE9yZ2FuaXphdGlvbkluZGl2aWR1YWxzKHJvbGUpKGVsKSlcbiAgICApLFxuICAgIGZsYXR0ZW5BcnJheSgpXG4gIClcblxuICByZXR1cm4gcGlwZShjb21iaW5lKGdldEluZGl2aWR1YWxzLCBnZXRPcmdJbmRpdmlkdWFscyksIGZsYXR0ZW5BcnJheSgpKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVhZFVuaXF1ZUlkZW50aWZpZXIocm9vdEVsOiBYbWxFbGVtZW50KTogc3RyaW5nIHtcbiAgcmV0dXJuIHBpcGUoXG4gICAgZmluZE5lc3RlZEVsZW1lbnQoXG4gICAgICAnbWRiOm1ldGFkYXRhSWRlbnRpZmllcicsXG4gICAgICAnbWNjOk1EX0lkZW50aWZpZXInLFxuICAgICAgJ21jYzpjb2RlJ1xuICAgICksXG4gICAgZXh0cmFjdENoYXJhY3RlclN0cmluZygpXG4gICkocm9vdEVsKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVhZE93bmVyT3JnYW5pemF0aW9uKHJvb3RFbDogWG1sRWxlbWVudCk6IE9yZ2FuaXphdGlvbiB7XG4gIGNvbnN0IGNvbnRhY3RzID0gcmVhZENvbnRhY3RzKHJvb3RFbClcbiAgY29uc3QgcG9pbnRPZkNvbnRhY3QgPSBjb250YWN0cy5maWx0ZXIoXG4gICAgKGMpID0+IGMucm9sZSA9PT0gJ3BvaW50X29mX2NvbnRhY3QnXG4gIClbMF1cbiAgcmV0dXJuIChwb2ludE9mQ29udGFjdCB8fCBjb250YWN0c1swXSkub3JnYW5pemF0aW9uXG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWFkQ29udGFjdHMocm9vdEVsOiBYbWxFbGVtZW50KTogSW5kaXZpZHVhbFtdIHtcbiAgcmV0dXJuIHBpcGUoXG4gICAgZmluZE5lc3RlZEVsZW1lbnRzKCdtZGI6Y29udGFjdCcsICdjaXQ6Q0lfUmVzcG9uc2liaWxpdHknKSxcbiAgICBtYXBBcnJheShleHRyYWN0SW5kaXZpZHVhbHMoKSksXG4gICAgZmxhdHRlbkFycmF5KClcbiAgKShyb290RWwpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWFkUmVzb3VyY2VDb250YWN0cyhyb290RWw6IFhtbEVsZW1lbnQpOiBJbmRpdmlkdWFsW10ge1xuICByZXR1cm4gcGlwZShcbiAgICBjb21iaW5lKFxuICAgICAgcGlwZShcbiAgICAgICAgZmluZElkZW50aWZpY2F0aW9uKCksXG4gICAgICAgIGZpbmROZXN0ZWRFbGVtZW50cyhcbiAgICAgICAgICAnbXJpOmNpdGF0aW9uJyxcbiAgICAgICAgICAnY2l0OkNJX0NpdGF0aW9uJyxcbiAgICAgICAgICAnY2l0OmNpdGVkUmVzcG9uc2libGVQYXJ0eSdcbiAgICAgICAgKVxuICAgICAgKSxcbiAgICAgIHBpcGUoXG4gICAgICAgIGZpbmRJZGVudGlmaWNhdGlvbigpLFxuICAgICAgICBmaW5kQ2hpbGRyZW5FbGVtZW50KCdtcmk6cG9pbnRPZkNvbnRhY3QnLCBmYWxzZSlcbiAgICAgICksXG4gICAgICBwaXBlKGZpbmREaXN0cmlidXRpb24oKSwgZmluZENoaWxkcmVuRWxlbWVudCgnbXJkOmRpc3RyaWJ1dG9yQ29udGFjdCcpKVxuICAgICksXG4gICAgZmxhdHRlbkFycmF5KCksXG4gICAgbWFwQXJyYXkoZmluZENoaWxkRWxlbWVudCgnY2l0OkNJX1Jlc3BvbnNpYmlsaXR5JywgZmFsc2UpKSxcbiAgICBtYXBBcnJheShleHRyYWN0SW5kaXZpZHVhbHMoKSksXG4gICAgZmxhdHRlbkFycmF5KClcbiAgKShyb290RWwpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWFkTGFuZGluZ1BhZ2Uocm9vdEVsOiBYbWxFbGVtZW50KTogVVJMIHtcbiAgcmV0dXJuIHBpcGUoXG4gICAgZmluZE5lc3RlZEVsZW1lbnQoXG4gICAgICAnbWRiOm1ldGFkYXRhTGlua2FnZScsXG4gICAgICAnY2l0OkNJX09ubGluZVJlc291cmNlJyxcbiAgICAgICdjaXQ6bGlua2FnZSdcbiAgICApLFxuICAgIGV4dHJhY3RVcmwoKVxuICApKHJvb3RFbClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRMaW5lYWdlKHJvb3RFbDogWG1sRWxlbWVudCk6IHN0cmluZyB7XG4gIHJldHVybiBwaXBlKFxuICAgIGZpbmROZXN0ZWRFbGVtZW50KCdtZGI6cmVzb3VyY2VMaW5lYWdlJywgJ21ybDpMSV9MaW5lYWdlJywgJ21ybDpzdGF0ZW1lbnQnKSxcbiAgICBleHRyYWN0Q2hhcmFjdGVyU3RyaW5nKClcbiAgKShyb290RWwpXG59XG5cbmZ1bmN0aW9uIGV4dHJhY3REYXRlSW5mbyhcbiAgdHlwZTogJ2NyZWF0aW9uJyB8ICdyZXZpc2lvbicgfCAncHVibGljYXRpb24nXG4pOiBDaGFpbmFibGVGdW5jdGlvbjxYbWxFbGVtZW50LCBEYXRlPiB7XG4gIHJldHVybiBwaXBlKFxuICAgIGZpbmRDaGlsZHJlbkVsZW1lbnQoJ21kYjpkYXRlSW5mbycsIGZhbHNlKSxcbiAgICBmaWx0ZXJBcnJheShcbiAgICAgIChlbCkgPT5cbiAgICAgICAgcGlwZShcbiAgICAgICAgICBmaW5kQ2hpbGRFbGVtZW50KCdjaXQ6Q0lfRGF0ZVR5cGVDb2RlJyksXG4gICAgICAgICAgcmVhZEF0dHJpYnV0ZSgnY29kZUxpc3RWYWx1ZScpXG4gICAgICAgICkoZWwpID09PSB0eXBlXG4gICAgKSxcbiAgICBnZXRBdEluZGV4KDApLFxuICAgIGZpbmRDaGlsZEVsZW1lbnQoJ2NpdDpkYXRlJyksXG4gICAgZXh0cmFjdERhdGVUaW1lKClcbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVhZFJlY29yZFVwZGF0ZWQocm9vdEVsOiBYbWxFbGVtZW50KTogRGF0ZSB7XG4gIHJldHVybiBleHRyYWN0RGF0ZUluZm8oJ3JldmlzaW9uJykocm9vdEVsKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVhZFJlY29yZENyZWF0ZWQocm9vdEVsOiBYbWxFbGVtZW50KTogRGF0ZSB7XG4gIHJldHVybiBleHRyYWN0RGF0ZUluZm8oJ2NyZWF0aW9uJykocm9vdEVsKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVhZFJlY29yZFB1Ymxpc2hlZChyb290RWw6IFhtbEVsZW1lbnQpOiBEYXRlIHtcbiAgcmV0dXJuIGV4dHJhY3REYXRlSW5mbygncHVibGljYXRpb24nKShyb290RWwpXG59XG5cbmNvbnN0IGdldE1pbWVUeXBlID0gcGlwZShcbiAgZmluZFBhcmVudCgnbXJkOk1EX0Rpc3RyaWJ1dGlvbicpLFxuICBmaW5kTmVzdGVkRWxlbWVudChcbiAgICAnbXJkOmRpc3RyaWJ1dGlvbkZvcm1hdCcsXG4gICAgJ21yZDpNRF9Gb3JtYXQnLFxuICAgICdtcmQ6Zm9ybWF0U3BlY2lmaWNhdGlvbkNpdGF0aW9uJyxcbiAgICAnY2l0OkNJX0NpdGF0aW9uJyxcbiAgICAnY2l0OnRpdGxlJ1xuICApLFxuICBleHRyYWN0Q2hhcmFjdGVyU3RyaW5nKCksXG4gIG1hcChtYXRjaE1pbWVUeXBlKVxuKVxuXG5leHBvcnQgZnVuY3Rpb24gcmVhZERpc3RyaWJ1dGlvbnMocm9vdEVsOiBYbWxFbGVtZW50KTogRGF0YXNldERpc3RyaWJ1dGlvbltdIHtcbiAgcmV0dXJuIHBpcGUoXG4gICAgZmluZE5lc3RlZEVsZW1lbnRzKCdtcmQ6ZGlzdHJpYnV0aW9uSW5mbycsICdtcmQ6TURfRGlzdHJpYnV0aW9uJyksXG4gICAgbWFwQXJyYXkoZXh0cmFjdERhdGFzZXREaXN0cmlidXRpb25zKGdldE1pbWVUeXBlKSksXG4gICAgZmxhdHRlbkFycmF5KClcbiAgKShyb290RWwpXG59XG4iXX0=
132
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC1wYXJ0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL21ldGFkYXRhLWNvbnZlcnRlci9zcmMvbGliL2lzbzE5MTE1LTMvcmVhZC1wYXJ0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLG1CQUFtQixFQUNuQixpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLFVBQVUsRUFDVixhQUFhLEdBRWQsTUFBTSxjQUFjLENBQUE7QUFDckIsT0FBTyxFQUVMLE9BQU8sRUFDUCxXQUFXLEVBQ1gsWUFBWSxFQUNaLFVBQVUsRUFDVixHQUFHLEVBQ0gsUUFBUSxFQUNSLElBQUksR0FDTCxNQUFNLG1CQUFtQixDQUFBO0FBQzFCLE9BQU8sRUFDTCxzQkFBc0IsRUFDdEIsNkJBQTZCLEVBQzdCLGVBQWUsRUFDZiwrQkFBK0IsRUFDL0IsV0FBVyxFQUNYLDZCQUE2QixFQUM3QixVQUFVLEVBQ1Ysa0JBQWtCLEdBQ25CLE1BQU0sd0JBQXdCLENBQUE7QUFXL0IsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUNuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQTtBQUU1RixNQUFNLFVBQVUsUUFBUSxDQUFDLE1BQWtCO0lBQ3pDLE9BQU8sSUFBSSxDQUNULGlCQUFpQixDQUNmLG1CQUFtQixFQUNuQixzQkFBc0IsRUFDdEIsbUJBQW1CLEVBQ25CLGtCQUFrQixDQUNuQixFQUNELGFBQWEsQ0FBQyxlQUFlLENBQUMsRUFDOUIsR0FBRyxDQUNELENBQUMsU0FBUyxFQUFjLEVBQUUsQ0FDeEIsU0FBUyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQ2xELENBQ0YsQ0FBQyxNQUFNLENB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LENBQUE7QUFDWCxDQUFDO0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUFDLE1BQWtCO0lBQ25ELE9BQU8sSUFBSSxDQUNULG1CQUFtQixDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxFQUM3QyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUM5QixDQUFDLE1BQU0sQ0FBQyxDQUFBO0FBQ1gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGZpbmRDaGlsZEVsZW1lbnQsXG4gIGZpbmRDaGlsZHJlbkVsZW1lbnQsXG4gIGZpbmROZXN0ZWRFbGVtZW50LFxuICBmaW5kTmVzdGVkRWxlbWVudHMsXG4gIGZpbmRQYXJlbnQsXG4gIHJlYWRBdHRyaWJ1dGUsXG4gIFhtbEVsZW1lbnQsXG59IGZyb20gJy4uL3htbC11dGlscydcbmltcG9ydCB7XG4gIENoYWluYWJsZUZ1bmN0aW9uLFxuICBjb21iaW5lLFxuICBmaWx0ZXJBcnJheSxcbiAgZmxhdHRlbkFycmF5LFxuICBnZXRBdEluZGV4LFxuICBtYXAsXG4gIG1hcEFycmF5LFxuICBwaXBlLFxufSBmcm9tICcuLi9mdW5jdGlvbi11dGlscydcbmltcG9ydCB7XG4gIGV4dHJhY3RDaGFyYWN0ZXJTdHJpbmcsXG4gIGV4dHJhY3REYXRhc2V0T25saW5lUmVzb3VyY2VzLFxuICBleHRyYWN0RGF0ZVRpbWUsXG4gIGV4dHJhY3RMb2NhbGl6ZWRDaGFyYWN0ZXJTdHJpbmcsXG4gIGV4dHJhY3RSb2xlLFxuICBleHRyYWN0U2VydmljZU9ubGluZVJlc291cmNlcyxcbiAgZXh0cmFjdFVybCxcbiAgZmluZElkZW50aWZpY2F0aW9uLFxufSBmcm9tICcuLi9pc28xOTEzOS9yZWFkLXBhcnRzJ1xuaW1wb3J0IHtcbiAgSW5kaXZpZHVhbCxcbiAgTGFuZ3VhZ2VDb2RlLFxuICBPbmxpbmVSZXNvdXJjZSxcbiAgT3JnYW5pemF0aW9uLFxuICBPcmdhbml6YXRpb25UcmFuc2xhdGlvbnMsXG4gIFJlY29yZEtpbmQsXG4gIFJlY29yZFRyYW5zbGF0aW9ucyxcbiAgUm9sZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgbWF0Y2hNaW1lVHlwZSB9IGZyb20gJy4uL2NvbW1vbi9kaXN0cmlidXRpb24ubWFwcGVyJ1xuaW1wb3J0IHsgZnVsbE5hbWVUb1BhcnRzIH0gZnJvbSAnLi4vaXNvMTkxMzkvdXRpbHMvaW5kaXZpZHVhbC1uYW1lJ1xuaW1wb3J0IHsgTEFOR18zX1RPXzJfTUFQUEVSIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2kxOG4vc3JjL2xpYi9sYW5ndWFnZS1jb2RlcydcblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRLaW5kKHJvb3RFbDogWG1sRWxlbWVudCk6IFJlY29yZEtpbmQge1xuICByZXR1cm4gcGlwZShcbiAgICBmaW5kTmVzdGVkRWxlbWVudChcbiAgICAgICdtZGI6bWV0YWRhdGFTY29wZScsXG4gICAgICAnbWRiOk1EX01ldGFkYXRhU2NvcGUnLFxuICAgICAgJ21kYjpyZXNvdXJjZVNjb3BlJyxcbiAgICAgICdtY2M6TURfU2NvcGVDb2RlJ1xuICAgICksXG4gICAgcmVhZEF0dHJpYnV0ZSgnY29kZUxpc3RWYWx1ZScpLFxuICAgIG1hcChcbiAgICAgIChzY29wZUNvZGUpOiBSZWNvcmRLaW5kID0+XG4gICAgICAgIHNjb3BlQ29kZSA9PT0gJ3NlcnZpY2UnID8gJ3NlcnZpY2UnIDogJ2RhdGFzZXQnXG4gICAgKVxuICApKHJvb3RFbClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmREaXN0cmlidXRpb24oKSB7XG4gIHJldHVybiBmaW5kTmVzdGVkRWxlbWVudCgnbWRiOmRpc3RyaWJ1dGlvbkluZm8nLCAnbXJkOk1EX0Rpc3RyaWJ1dGlvbicpXG59XG5cbi8vIGZyb20gY2l0OkNJX09yZ2FuaXNhdGlvblxuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3RPcmdhbml6YXRpb24oKTogQ2hhaW5hYmxlRnVuY3Rpb248XG4gIFhtbEVsZW1lbnQsXG4gIE9yZ2FuaXphdGlvblxuPiB7XG4gIGNvbnN0IGdldFVybCA9IHBpcGUoXG4gICAgZmluZE5lc3RlZEVsZW1lbnRzKFxuICAgICAgJ2NpdDpjb250YWN0SW5mbycsXG4gICAgICAnY2l0OkNJX0NvbnRhY3QnLFxuICAgICAgJ2NpdDpvbmxpbmVSZXNvdXJjZScsXG4gICAgICAnY2l0OkNJX09ubGluZVJlc291cmNlJyxcbiAgICAgICdjaXQ6bGlua2FnZSdcbiAgICApLFxuICAgIGdldEF0SW5kZXgoMCksXG4gICAgZXh0cmFjdFVybCgpXG4gIClcbiAgcmV0dXJuIHBpcGUoXG4gICAgY29tYmluZShcbiAgICAgIHBpcGUoXG4gICAgICAgIGZpbmRDaGlsZEVsZW1lbnQoJ2NpdDpuYW1lJywgZmFsc2UpLFxuICAgICAgICBleHRyYWN0TG9jYWxpemVkQ2hhcmFjdGVyU3RyaW5nPE9yZ2FuaXphdGlvblRyYW5zbGF0aW9ucz4oJ25hbWUnKVxuICAgICAgKSxcbiAgICAgIGdldFVybFxuICAgICksXG4gICAgbWFwKChbW25hbWUsIHRyYW5zbGF0aW9uc10sIHdlYnNpdGVdKSA9PiAoe1xuICAgICAgbmFtZSxcbiAgICAgIC4uLih3ZWJzaXRlICYmIHsgd2Vic2l0ZSB9KSxcbiAgICAgIHRyYW5zbGF0aW9ucyxcbiAgICB9KSlcbiAgKVxufVxuXG4vLyBmcm9tIGNpdDpDSV9JbmRpdmlkdWFsIG9yIGNpdDpDSV9PcmdhbmlzYXRpb25cbmV4cG9ydCBmdW5jdGlvbiBleHRyYWN0SW5kaXZpZHVhbChcbiAgcm9sZTogUm9sZSxcbiAgb3JnYW5pemF0aW9uPzogT3JnYW5pemF0aW9uLFxuICBvcmdDb250YWN0PzogSW5kaXZpZHVhbFxuKTogQ2hhaW5hYmxlRnVuY3Rpb248WG1sRWxlbWVudCwgSW5kaXZpZHVhbD4ge1xuICBjb25zdCBnZXRQb3NpdGlvbiA9IHBpcGUoXG4gICAgZmluZENoaWxkRWxlbWVudCgnY2l0OnBvc2l0aW9uTmFtZScpLFxuICAgIGV4dHJhY3RDaGFyYWN0ZXJTdHJpbmcoKVxuICApXG4gIGNvbnN0IGdldE5hbWVQYXJ0cyA9IHBpcGUoXG4gICAgZmluZENoaWxkRWxlbWVudCgnY2l0Om5hbWUnKSxcbiAgICBleHRyYWN0Q2hhcmFjdGVyU3RyaW5nKCksXG4gICAgbWFwKChmdWxsTmFtZSkgPT4ge1xuICAgICAgaWYgKCFmdWxsTmFtZSkgcmV0dXJuIFtdXG4gICAgICByZXR1cm4gZnVsbE5hbWVUb1BhcnRzKGZ1bGxOYW1lKVxuICAgIH0pXG4gIClcbiAgY29uc3QgZ2V0Q29udGFjdCA9IGZpbmROZXN0ZWRFbGVtZW50KCdjaXQ6Y29udGFjdEluZm8nLCAnY2l0OkNJX0NvbnRhY3QnKVxuICBjb25zdCBnZXRBZGRyZXNzUm9vdCA9IHBpcGUoXG4gICAgZ2V0Q29udGFjdCxcbiAgICBmaW5kTmVzdGVkRWxlbWVudCgnY2l0OmFkZHJlc3MnLCAnY2l0OkNJX0FkZHJlc3MnKVxuICApXG4gIGNvbnN0IGdldEFkZHJlc3MgPSBwaXBlKFxuICAgIGdldEFkZHJlc3NSb290LFxuICAgIGNvbWJpbmUoXG4gICAgICBwaXBlKFxuICAgICAgICBmaW5kQ2hpbGRFbGVtZW50KCdjaXQ6ZGVsaXZlcnlQb2ludCcsIGZhbHNlKSxcbiAgICAgICAgZXh0cmFjdENoYXJhY3RlclN0cmluZygpXG4gICAgICApLFxuICAgICAgcGlwZShmaW5kQ2hpbGRFbGVtZW50KCdjaXQ6Y2l0eScsIGZhbHNlKSwgZXh0cmFjdENoYXJhY3RlclN0cmluZygpKSxcbiAgICAgIHBpcGUoZmluZENoaWxkRWxlbWVudCgnY2l0OnBvc3RhbENvZGUnLCBmYWxzZSksIGV4dHJhY3RDaGFyYWN0ZXJTdHJpbmcoKSksXG4gICAgICBwaXBlKGZpbmRDaGlsZEVsZW1lbnQoJ2NpdDpjb3VudHJ5JywgZmFsc2UpLCBleHRyYWN0Q2hhcmFjdGVyU3RyaW5nKCkpXG4gICAgKSxcbiAgICBtYXAoKHBhcnRzKSA9PiBwYXJ0cy5maWx0ZXIoKHApID0+ICEhcCkuam9pbignLCAnKSlcbiAgKVxuICBjb25zdCBnZXRQaG9uZSA9IHBpcGUoXG4gICAgZ2V0Q29udGFjdCxcbiAgICBmaW5kTmVzdGVkRWxlbWVudCgnY2l0OnBob25lJywgJ2NpdDpDSV9UZWxlcGhvbmUnLCAnY2l0Om51bWJlcicpLFxuICAgIGV4dHJhY3RDaGFyYWN0ZXJTdHJpbmcoKVxuICApXG4gIGNvbnN0IGdldEVtYWlsID0gcGlwZShcbiAgICBnZXRBZGRyZXNzUm9vdCxcbiAgICBmaW5kQ2hpbGRFbGVtZW50KCdjaXQ6ZWxlY3Ryb25pY01haWxBZGRyZXNzJywgZmFsc2UpLFxuICAgIGV4dHJhY3RDaGFyYWN0ZXJTdHJpbmcoKVxuICApXG4gIGNvbnN0IGRlZmF1bHRPcmc6IE9yZ2FuaXphdGlvbiA9IHtcbiAgICBuYW1lOiAnTWlzc2luZyBPcmdhbml6YXRpb24nLFxuICAgIHRyYW5zbGF0aW9uczoge30sXG4gIH1cblxuICBsZXQgZGVmYXVsdEluZGl2aWR1YWw6IFBhcnRpYWw8SW5kaXZpZHVhbD4gPSB7fVxuICBpZiAob3JnQ29udGFjdCkge1xuICAgIGRlZmF1bHRJbmRpdmlkdWFsID0ge1xuICAgICAgZW1haWw6IG9yZ0NvbnRhY3QuZW1haWwsXG4gICAgICAuLi4ob3JnQ29udGFjdC5hZGRyZXNzICYmIHsgYWRkcmVzczogb3JnQ29udGFjdC5hZGRyZXNzIH0pLFxuICAgICAgLi4uKG9yZ0NvbnRhY3QucGhvbmUgJiYgeyBwaG9uZTogb3JnQ29udGFjdC5waG9uZSB9KSxcbiAgICAgIC4uLihvcmdDb250YWN0LnBvc2l0aW9uICYmIHsgcG9zaXRpb246IG9yZ0NvbnRhY3QucG9zaXRpb24gfSksXG4gICAgICBvcmdhbml6YXRpb24sXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHBpcGUoXG4gICAgY29tYmluZShnZXRQb3NpdGlvbiwgZ2V0TmFtZVBhcnRzLCBnZXRFbWFpbCwgZ2V0QWRkcmVzcywgZ2V0UGhvbmUpLFxuICAgIG1hcCgoW3Bvc2l0aW9uLCBbZmlyc3ROYW1lLCBsYXN0TmFtZV0sIGVtYWlsLCBhZGRyZXNzLCBwaG9uZV0pID0+ICh7XG4gICAgICAuLi5kZWZhdWx0SW5kaXZpZHVhbCxcbiAgICAgIGVtYWlsOiBlbWFpbCB8fCBkZWZhdWx0SW5kaXZpZHVhbC5lbWFpbCB8fCAnbWlzc2luZ0BtaXNzaW5nLmNvbScsXG4gICAgICByb2xlLFxuICAgICAgb3JnYW5pemF0aW9uOiBvcmdhbml6YXRpb24gfHwgZGVmYXVsdE9yZyxcbiAgICAgIC4uLihwb3NpdGlvbiAmJiB7IHBvc2l0aW9uIH0pLFxuICAgICAgLi4uKGZpcnN0TmFtZSAmJiB7IGZpcnN0TmFtZSB9KSxcbiAgICAgIC4uLihsYXN0TmFtZSAmJiB7IGxhc3ROYW1lIH0pLFxuICAgICAgLi4uKGFkZHJlc3MgJiYgeyBhZGRyZXNzIH0pLFxuICAgICAgLi4uKHBob25lICYmIHsgcGhvbmUgfSksXG4gICAgfSkpXG4gIClcbn1cblxuLy8gZnJvbSBjaXQ6Q0lfT3JnYW5pc2F0aW9uXG5leHBvcnQgZnVuY3Rpb24gZXh0cmFjdE9yZ2FuaXphdGlvbkluZGl2aWR1YWxzKFxuICByb2xlOiBSb2xlXG4pOiBDaGFpbmFibGVGdW5jdGlvbjxYbWxFbGVtZW50LCBBcnJheTxJbmRpdmlkdWFsPj4ge1xuICByZXR1cm4gcGlwZShcbiAgICBjb21iaW5lKFxuICAgICAgZXh0cmFjdE9yZ2FuaXphdGlvbigpLFxuICAgICAgZXh0cmFjdEluZGl2aWR1YWwocm9sZSksXG4gICAgICBmaW5kTmVzdGVkRWxlbWVudHMoJ2NpdDppbmRpdmlkdWFsJywgJ2NpdDpDSV9JbmRpdmlkdWFsJylcbiAgICApLFxuICAgIG1hcCgoW29yZywgb3JnQ29udGFjdCwgZWxzXSkgPT5cbiAgICAgIGVscy5sZW5ndGhcbiAgICAgICAgPyBlbHMubWFwKChlbCkgPT4gZXh0cmFjdEluZGl2aWR1YWwocm9sZSwgb3JnLCBvcmdDb250YWN0KShlbCkpXG4gICAgICAgIDogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBlbWFpbDogb3JnQ29udGFjdC5lbWFpbCxcbiAgICAgICAgICAgICAgLi4uKG9yZ0NvbnRhY3QuYWRkcmVzcyAmJiB7IGFkZHJlc3M6IG9yZ0NvbnRhY3QuYWRkcmVzcyB9KSxcbiAgICAgICAgICAgICAgLi4uKG9yZ0NvbnRhY3QucGhvbmUgJiYgeyBwaG9uZTogb3JnQ29udGFjdC5waG9uZSB9KSxcbiAgICAgICAgICAgICAgLi4uKG9yZ0NvbnRhY3QucG9zaXRpb24gJiYgeyBwb3NpdGlvbjogb3JnQ29udGFjdC5wb3NpdGlvbiB9KSxcbiAgICAgICAgICAgICAgb3JnYW5pemF0aW9uOiBvcmcsXG4gICAgICAgICAgICAgIHJvbGUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF1cbiAgICApXG4gIClcbn1cblxuLy8gZnJvbSBjaXQ6Q0lfUmVzcG9uc2liaWxpdHlcbmV4cG9ydCBmdW5jdGlvbiBleHRyYWN0SW5kaXZpZHVhbHMoKTogQ2hhaW5hYmxlRnVuY3Rpb248XG4gIFhtbEVsZW1lbnQsXG4gIEFycmF5PEluZGl2aWR1YWw+XG4+IHtcbiAgY29uc3QgZ2V0Um9sZSA9IHBpcGUoZmluZENoaWxkRWxlbWVudCgnY2l0OnJvbGUnKSwgZXh0cmFjdFJvbGUoKSlcbiAgY29uc3QgZ2V0SW5kaXZpZHVhbHMgPSBwaXBlKFxuICAgIGNvbWJpbmUoZ2V0Um9sZSwgZmluZE5lc3RlZEVsZW1lbnRzKCdjaXQ6cGFydHknLCAnY2l0OkNJX0luZGl2aWR1YWwnKSksXG4gICAgKFtyb2xlLCBlbHNdKSA9PiBlbHMubWFwKGV4dHJhY3RJbmRpdmlkdWFsKHJvbGUpKVxuICApXG4gIGNvbnN0IGdldE9yZ0luZGl2aWR1YWxzID0gcGlwZShcbiAgICBjb21iaW5lKGdldFJvbGUsIGZpbmROZXN0ZWRFbGVtZW50cygnY2l0OnBhcnR5JywgJ2NpdDpDSV9PcmdhbmlzYXRpb24nKSksXG4gICAgbWFwKChbcm9sZSwgZWxzXSkgPT4gZWxzLm1hcChleHRyYWN0T3JnYW5pemF0aW9uSW5kaXZpZHVhbHMocm9sZSkpKSxcbiAgICBmbGF0dGVuQXJyYXkoKVxuICApXG5cbiAgcmV0dXJuIHBpcGUoY29tYmluZShnZXRJbmRpdmlkdWFscywgZ2V0T3JnSW5kaXZpZHVhbHMpLCBmbGF0dGVuQXJyYXkoKSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRVbmlxdWVJZGVudGlmaWVyKHJvb3RFbDogWG1sRWxlbWVudCk6IHN0cmluZyB7XG4gIHJldHVybiBwaXBlKFxuICAgIGZpbmROZXN0ZWRFbGVtZW50KFxuICAgICAgJ21kYjptZXRhZGF0YUlkZW50aWZpZXInLFxuICAgICAgJ21jYzpNRF9JZGVudGlmaWVyJyxcbiAgICAgICdtY2M6Y29kZSdcbiAgICApLFxuICAgIGV4dHJhY3RDaGFyYWN0ZXJTdHJpbmcoKVxuICApKHJvb3RFbClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRPd25lck9yZ2FuaXphdGlvbihyb290RWw6IFhtbEVsZW1lbnQpOiBPcmdhbml6YXRpb24ge1xuICBjb25zdCBjb250YWN0cyA9IHJlYWRDb250YWN0cyhyb290RWwpXG4gIGNvbnN0IGNvbnRhY3RzRm9yUmVzb3VyY2UgPSByZWFkQ29udGFjdHNGb3JSZXNvdXJjZShyb290RWwpXG4gIGNvbnN0IHBvaW50T2ZDb250YWN0ID0gY29udGFjdHMuZmlsdGVyKFxuICAgIChjKSA9PiBjLnJvbGUgPT09ICdwb2ludF9vZl9jb250YWN0J1xuICApWzBdXG4gIHJldHVybiAocG9pbnRPZkNvbnRhY3QgfHwgY29udGFjdHNbMF0gfHwgY29udGFjdHNGb3JSZXNvdXJjZVswXSkub3JnYW5pemF0aW9uXG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWFkQ29udGFjdHMocm9vdEVsOiBYbWxFbGVtZW50KTogSW5kaXZpZHVhbFtdIHtcbiAgcmV0dXJuIHBpcGUoXG4gICAgZmluZE5lc3RlZEVsZW1lbnRzKCdtZGI6Y29udGFjdCcsICdjaXQ6Q0lfUmVzcG9uc2liaWxpdHknKSxcbiAgICBtYXBBcnJheShleHRyYWN0SW5kaXZpZHVhbHMoKSksXG4gICAgZmxhdHRlbkFycmF5KClcbiAgKShyb290RWwpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWFkQ29udGFjdHNGb3JSZXNvdXJjZShyb290RWw6IFhtbEVsZW1lbnQpOiBJbmRpdmlkdWFsW10ge1xuICByZXR1cm4gcGlwZShcbiAgICBjb21iaW5lKFxuICAgICAgcGlwZShcbiAgICAgICAgZmluZElkZW50aWZpY2F0aW9uKCksXG4gICAgICAgIGZpbmROZXN0ZWRFbGVtZW50cyhcbiAgICAgICAgICAnbXJpOmNpdGF0aW9uJyxcbiAgICAgICAgICAnY2l0OkNJX0NpdGF0aW9uJyxcbiAgICAgICAgICAnY2l0OmNpdGVkUmVzcG9uc2libGVQYXJ0eSdcbiAgICAgICAgKVxuICAgICAgKSxcbiAgICAgIHBpcGUoXG4gICAgICAgIGZpbmRJZGVudGlmaWNhdGlvbigpLFxuICAgICAgICBmaW5kQ2hpbGRyZW5FbGVtZW50KCdtcmk6cG9pbnRPZkNvbnRhY3QnLCBmYWxzZSlcbiAgICAgICksXG4gICAgICBwaXBlKGZpbmREaXN0cmlidXRpb24oKSwgZmluZENoaWxkcmVuRWxlbWVudCgnbXJkOmRpc3RyaWJ1dG9yQ29udGFjdCcpKVxuICAgICksXG4gICAgZmxhdHRlbkFycmF5KCksXG4gICAgbWFwQXJyYXkoZmluZENoaWxkRWxlbWVudCgnY2l0OkNJX1Jlc3BvbnNpYmlsaXR5JywgZmFsc2UpKSxcbiAgICBtYXBBcnJheShleHRyYWN0SW5kaXZpZHVhbHMoKSksXG4gICAgZmxhdHRlbkFycmF5KClcbiAgKShyb290RWwpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWFkTGFuZGluZ1BhZ2Uocm9vdEVsOiBYbWxFbGVtZW50KTogVVJMIHtcbiAgcmV0dXJuIHBpcGUoXG4gICAgZmluZE5lc3RlZEVsZW1lbnQoXG4gICAgICAnbWRiOm1ldGFkYXRhTGlua2FnZScsXG4gICAgICAnY2l0OkNJX09ubGluZVJlc291cmNlJyxcbiAgICAgICdjaXQ6bGlua2FnZSdcbiAgICApLFxuICAgIGV4dHJhY3RVcmwoKVxuICApKHJvb3RFbClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRMaW5lYWdlKFxuICByb290RWw6IFhtbEVsZW1lbnQsXG4gIHRyYW5zbGF0aW9uczogUmVjb3JkVHJhbnNsYXRpb25zXG4pOiBzdHJpbmcge1xuICByZXR1cm4gcGlwZShcbiAgICBmaW5kTmVzdGVkRWxlbWVudCgnbWRiOnJlc291cmNlTGluZWFnZScsICdtcmw6TElfTGluZWFnZScsICdtcmw6c3RhdGVtZW50JyksXG4gICAgZXh0cmFjdExvY2FsaXplZENoYXJhY3RlclN0cmluZygnbGluZWFnZScsIHRyYW5zbGF0aW9ucyksXG4gICAgbWFwKChbbGluZWFnZV0pID0+IGxpbmVhZ2UpXG4gICkocm9vdEVsKVxufVxuXG5mdW5jdGlvbiBleHRyYWN0RGF0ZUluZm8oXG4gIHR5cGU6ICdjcmVhdGlvbicgfCAncmV2aXNpb24nIHwgJ3B1YmxpY2F0aW9uJ1xuKTogQ2hhaW5hYmxlRnVuY3Rpb248WG1sRWxlbWVudCwgRGF0ZT4ge1xuICByZXR1cm4gcGlwZShcbiAgICBmaW5kQ2hpbGRyZW5FbGVtZW50KCdtZGI6ZGF0ZUluZm8nLCBmYWxzZSksXG4gICAgZmlsdGVyQXJyYXkoXG4gICAgICAoZWwpID0+XG4gICAgICAgIHBpcGUoXG4gICAgICAgICAgZmluZENoaWxkRWxlbWVudCgnY2l0OkNJX0RhdGVUeXBlQ29kZScpLFxuICAgICAgICAgIHJlYWRBdHRyaWJ1dGUoJ2NvZGVMaXN0VmFsdWUnKVxuICAgICAgICApKGVsKSA9PT0gdHlwZVxuICAgICksXG4gICAgZ2V0QXRJbmRleCgwKSxcbiAgICBmaW5kQ2hpbGRFbGVtZW50KCdjaXQ6ZGF0ZScpLFxuICAgIGV4dHJhY3REYXRlVGltZSgpXG4gIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRSZWNvcmRVcGRhdGVkKHJvb3RFbDogWG1sRWxlbWVudCk6IERhdGUge1xuICByZXR1cm4gZXh0cmFjdERhdGVJbmZvKCdyZXZpc2lvbicpKHJvb3RFbClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRSZWNvcmRDcmVhdGVkKHJvb3RFbDogWG1sRWxlbWVudCk6IERhdGUge1xuICByZXR1cm4gZXh0cmFjdERhdGVJbmZvKCdjcmVhdGlvbicpKHJvb3RFbClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRSZWNvcmRQdWJsaXNoZWQocm9vdEVsOiBYbWxFbGVtZW50KTogRGF0ZSB7XG4gIHJldHVybiBleHRyYWN0RGF0ZUluZm8oJ3B1YmxpY2F0aW9uJykocm9vdEVsKVxufVxuXG5jb25zdCBnZXRNaW1lVHlwZSA9IHBpcGUoXG4gIGZpbmRQYXJlbnQoJ21yZDpNRF9EaXN0cmlidXRpb24nKSxcbiAgZmluZE5lc3RlZEVsZW1lbnQoXG4gICAgJ21yZDpkaXN0cmlidXRpb25Gb3JtYXQnLFxuICAgICdtcmQ6TURfRm9ybWF0JyxcbiAgICAnbXJkOmZvcm1hdFNwZWNpZmljYXRpb25DaXRhdGlvbicsXG4gICAgJ2NpdDpDSV9DaXRhdGlvbicsXG4gICAgJ2NpdDp0aXRsZSdcbiAgKSxcbiAgZXh0cmFjdENoYXJhY3RlclN0cmluZygpLFxuICBtYXAobWF0Y2hNaW1lVHlwZSlcbilcblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRPbmxpbmVSZXNvdXJjZXMocm9vdEVsOiBYbWxFbGVtZW50KTogT25saW5lUmVzb3VyY2VbXSB7XG4gIGlmIChyZWFkS2luZChyb290RWwpID09PSAnZGF0YXNldCcpIHtcbiAgICByZXR1cm4gcGlwZShcbiAgICAgIGZpbmROZXN0ZWRFbGVtZW50cygnbXJkOmRpc3RyaWJ1dGlvbkluZm8nLCAnbXJkOk1EX0Rpc3RyaWJ1dGlvbicpLFxuICAgICAgbWFwQXJyYXkoZXh0cmFjdERhdGFzZXRPbmxpbmVSZXNvdXJjZXMoZ2V0TWltZVR5cGUpKSxcbiAgICAgIGZsYXR0ZW5BcnJheSgpXG4gICAgKShyb290RWwpXG4gIH1cbiAgcmV0dXJuIHBpcGUoXG4gICAgZmluZE5lc3RlZEVsZW1lbnRzKCdtcmQ6ZGlzdHJpYnV0aW9uSW5mbycsICdtcmQ6TURfRGlzdHJpYnV0aW9uJyksXG4gICAgbWFwQXJyYXkoZXh0cmFjdFNlcnZpY2VPbmxpbmVSZXNvdXJjZXMoKSksXG4gICAgZmxhdHRlbkFycmF5KClcbiAgKShyb290RWwpXG59XG5cbmZ1bmN0aW9uIHJlYWRMb2NhbGVFbGVtZW50KCk6IENoYWluYWJsZUZ1bmN0aW9uPFhtbEVsZW1lbnQsIExhbmd1YWdlQ29kZT4ge1xuICByZXR1cm4gcGlwZShcbiAgICBmaW5kQ2hpbGRFbGVtZW50KCdsYW46TGFuZ3VhZ2VDb2RlJyksXG4gICAgcmVhZEF0dHJpYnV0ZSgnY29kZUxpc3RWYWx1ZScpLFxuICAgIG1hcCgobGFuZykgPT4gKGxhbmcgPyBMQU5HXzNfVE9fMl9NQVBQRVJbbGFuZy50b0xvd2VyQ2FzZSgpXSA6IG51bGwpKVxuICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWFkRGVmYXVsdExhbmd1YWdlKHJvb3RFbDogWG1sRWxlbWVudCk6IExhbmd1YWdlQ29kZSB7XG4gIHJldHVybiBwaXBlKFxuICAgIGZpbmRDaGlsZEVsZW1lbnQoJ21kYjpkZWZhdWx0TG9jYWxlJywgZmFsc2UpLFxuICAgIHJlYWRMb2NhbGVFbGVtZW50KClcbiAgKShyb290RWwpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWFkT3RoZXJMYW5ndWFnZXMocm9vdEVsOiBYbWxFbGVtZW50KTogTGFuZ3VhZ2VDb2RlW10ge1xuICByZXR1cm4gcGlwZShcbiAgICBmaW5kQ2hpbGRyZW5FbGVtZW50KCdtZGI6b3RoZXJMb2NhbGUnLCBmYWxzZSksXG4gICAgbWFwQXJyYXkocmVhZExvY2FsZUVsZW1lbnQoKSlcbiAgKShyb290RWwpXG59XG4iXX0=