geonetwork-ui 2.4.0-dev.f6f2f023 → 2.4.0-dev.fdf8f64b

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 (962) hide show
  1. package/esm2022/libs/api/metadata-converter/src/index.mjs +4 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/common/license.mjs +64 -0
  3. package/esm2022/libs/api/metadata-converter/src/lib/common/url.mjs +14 -0
  4. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.mjs +254 -0
  5. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/index.mjs +2 -0
  6. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.mjs +17 -0
  7. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.mjs +196 -0
  8. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.mjs +46 -0
  9. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.mjs +74 -0
  10. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.mjs +2 -0
  11. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.mjs +27 -0
  12. package/esm2022/libs/api/metadata-converter/src/lib/find-converter.mjs +11 -1
  13. package/esm2022/libs/api/metadata-converter/src/lib/gn4/atomic-operations.mjs +2 -1
  14. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +10 -3
  15. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.mjs +1 -1
  16. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
  17. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.mjs +6 -6
  18. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +7 -4
  19. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +17 -29
  20. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +12 -17
  21. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +35 -7
  22. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.mjs +31 -0
  23. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +76 -54
  24. package/esm2022/libs/api/metadata-converter/src/lib/xml-utils.mjs +44 -5
  25. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +108 -32
  26. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.mjs +2 -1
  27. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +3 -1
  28. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.mjs +12 -2
  29. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +59 -11
  30. package/esm2022/libs/common/domain/src/lib/model/record/contact.model.mjs +28 -1
  31. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  32. package/esm2022/libs/common/domain/src/lib/model/record/organization.model.mjs +1 -1
  33. package/esm2022/libs/common/domain/src/lib/model/user/user.model.mjs +1 -1
  34. package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
  35. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  36. package/esm2022/libs/data-access/gn4/src/fixtures/site.fixtures.mjs +5 -5
  37. package/esm2022/libs/data-access/gn4/src/fixtures/ui.fixtures.mjs +3 -3
  38. package/esm2022/libs/data-access/gn4/src/openapi/api/records.api.service.mjs +2 -6
  39. package/esm2022/libs/data-access/gn4/src/openapi/model/user.api.model.mjs +1 -1
  40. package/esm2022/libs/feature/catalog/src/index.mjs +2 -1
  41. package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +7 -4
  42. package/esm2022/libs/feature/catalog/src/lib/organisations/organisations.component.mjs +11 -11
  43. package/esm2022/libs/feature/catalog/src/lib/organization-url.token.mjs +4 -0
  44. package/esm2022/libs/feature/catalog/src/lib/records/records.service.mjs +4 -6
  45. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +5 -5
  46. package/esm2022/libs/feature/dataviz/src/lib/feature-dataviz.module.mjs +14 -8
  47. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +40 -50
  48. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +1 -1
  49. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +2 -2
  50. package/esm2022/libs/feature/editor/src/index.mjs +2 -1
  51. package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +3 -1
  52. package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +10 -5
  53. package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +10 -2
  54. package/esm2022/libs/feature/editor/src/lib/+state/editor.models.mjs +1 -1
  55. package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +7 -3
  56. package/esm2022/libs/feature/editor/src/lib/+state/editor.selectors.mjs +16 -6
  57. package/esm2022/libs/feature/editor/src/lib/components/contact-card/contact-card.component.mjs +17 -0
  58. package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +80 -0
  59. package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +95 -0
  60. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +71 -0
  61. package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +72 -0
  62. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.mjs +109 -0
  63. 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
  64. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.mjs +19 -0
  65. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +31 -68
  66. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.mjs +11 -9
  67. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +79 -0
  68. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.mjs +150 -0
  69. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.mjs +191 -0
  70. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.mjs +44 -0
  71. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.mjs +103 -0
  72. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.mjs +12 -16
  73. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.mjs +9 -8
  74. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +140 -5
  75. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +41 -68
  76. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +17 -15
  77. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +49 -44
  78. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +2 -3
  79. package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +13 -7
  80. package/esm2022/libs/feature/editor/src/lib/components/wizard/wizard.component.mjs +3 -3
  81. package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +8 -8
  82. package/esm2022/libs/feature/editor/src/lib/expressions.mjs +1 -1
  83. package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +6 -4
  84. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +215 -57
  85. package/esm2022/libs/feature/editor/src/lib/models/editor-config.model.mjs +2 -0
  86. package/esm2022/libs/feature/editor/src/lib/models/index.mjs +2 -1
  87. package/esm2022/libs/feature/editor/src/lib/services/editor.service.mjs +12 -7
  88. package/esm2022/libs/feature/map/src/index.mjs +2 -9
  89. package/esm2022/libs/feature/map/src/lib/+state/map.actions.mjs +4 -7
  90. package/esm2022/libs/feature/map/src/lib/+state/map.facade.mjs +9 -15
  91. package/esm2022/libs/feature/map/src/lib/+state/map.reducer.mjs +13 -44
  92. package/esm2022/libs/feature/map/src/lib/+state/map.selectors.mjs +3 -2
  93. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +6 -6
  94. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.mjs +20 -19
  95. package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +23 -14
  96. package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +15 -14
  97. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +18 -13
  98. package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +16 -11
  99. package/esm2022/libs/feature/map/src/lib/constant/index.mjs +1 -2
  100. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +9 -68
  101. package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +43 -29
  102. package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +43 -18
  103. package/esm2022/libs/feature/map/src/lib/map-state-container/map-state-container.component.mjs +27 -0
  104. package/esm2022/libs/feature/map/src/lib/style/map-style.fixtures.mjs +3 -3
  105. package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +12 -171
  106. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +1 -1
  107. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +42 -23
  108. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +13 -5
  109. package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +49 -15
  110. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +21 -17
  111. package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +18 -9
  112. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +40 -52
  113. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +11 -13
  114. package/esm2022/libs/feature/router/src/lib/default/constants.mjs +2 -1
  115. package/esm2022/libs/feature/router/src/lib/default/router.config.mjs +1 -1
  116. package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +9 -2
  117. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +8 -1
  118. package/esm2022/libs/feature/search/src/index.mjs +2 -2
  119. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +7 -4
  120. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +4 -4
  121. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +94 -0
  122. package/esm2022/libs/feature/search/src/lib/state/search.facade.mjs +8 -3
  123. package/esm2022/libs/feature/search/src/lib/state/selectors.mjs +4 -1
  124. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +7 -3
  125. package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +5 -5
  126. package/esm2022/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.mjs +7 -7
  127. package/esm2022/libs/ui/catalog/src/lib/ui-catalog.module.mjs +5 -7
  128. package/esm2022/libs/ui/dataviz/src/lib/figure/figure.component.mjs +5 -8
  129. package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +3 -3
  130. package/esm2022/libs/ui/elements/src/index.mjs +3 -3
  131. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +3 -3
  132. package/esm2022/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.mjs +27 -0
  133. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +2 -2
  134. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +1 -1
  135. package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +5 -3
  136. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +2 -2
  137. package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +6 -5
  138. package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +2 -2
  139. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +6 -6
  140. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +5 -11
  141. package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +3 -3
  142. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +5 -5
  143. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +24 -5
  144. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +15 -11
  145. package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +3 -3
  146. package/esm2022/libs/ui/inputs/src/index.mjs +6 -1
  147. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +79 -29
  148. package/esm2022/libs/ui/inputs/src/lib/badge/badge.component.mjs +5 -3
  149. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +8 -1
  150. package/esm2022/libs/ui/inputs/src/lib/date-picker/date-picker.component.mjs +11 -4
  151. package/esm2022/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.mjs +9 -3
  152. package/esm2022/libs/ui/inputs/src/lib/editable-label/editable-label.directive.mjs +26 -24
  153. package/esm2022/libs/ui/inputs/src/lib/file-input/file-input.component.mjs +87 -0
  154. package/esm2022/libs/ui/inputs/src/lib/image-input/image-input.component.mjs +19 -15
  155. package/esm2022/libs/ui/inputs/src/lib/search-input/search-input.component.mjs +6 -4
  156. package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +34 -0
  157. package/esm2022/libs/ui/inputs/src/lib/text-area/text-area.component.mjs +7 -21
  158. package/esm2022/libs/ui/inputs/src/lib/text-input/text-input.component.mjs +6 -17
  159. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +4 -18
  160. package/esm2022/libs/ui/inputs/src/lib/url-input/url-input.component.mjs +59 -0
  161. package/esm2022/libs/ui/layout/src/index.mjs +4 -1
  162. package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +5 -3
  163. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +3 -3
  164. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +71 -0
  165. package/esm2022/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.mjs +29 -0
  166. package/esm2022/libs/ui/layout/src/lib/sortable-list/sortable-list.component.mjs +43 -0
  167. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +1 -1
  168. package/esm2022/libs/ui/map/src/index.mjs +4 -3
  169. package/esm2022/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.mjs +8 -6
  170. package/esm2022/libs/ui/map/src/lib/components/map-container/map-container.component.mjs +137 -0
  171. package/esm2022/libs/ui/map/src/lib/components/map-container/map-settings.token.mjs +13 -0
  172. package/esm2022/libs/ui/map/src/lib/map-utils.mjs +37 -0
  173. package/esm2022/libs/ui/search/src/index.mjs +2 -1
  174. package/esm2022/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.mjs +7 -7
  175. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +67 -0
  176. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +140 -0
  177. package/esm2022/libs/ui/widgets/src/index.mjs +2 -1
  178. package/esm2022/libs/ui/widgets/src/lib/popover/popover.component.mjs +68 -0
  179. package/esm2022/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.mjs +5 -3
  180. package/esm2022/libs/ui/widgets/src/lib/ui-widgets.module.mjs +1 -6
  181. package/esm2022/libs/util/app-config/src/index.mjs +2 -1
  182. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +10 -10
  183. package/esm2022/libs/util/app-config/src/lib/map-layers.mjs +27 -0
  184. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +1 -1
  185. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +1 -1
  186. package/esm2022/libs/util/shared/src/lib/services/theme.service.mjs +2 -1
  187. package/esm2022/libs/util/shared/src/lib/utils/bytes-convert.mjs +4 -1
  188. package/esm2022/translations/de.json +175 -38
  189. package/esm2022/translations/en.json +176 -39
  190. package/esm2022/translations/es.json +146 -9
  191. package/esm2022/translations/fr.json +207 -70
  192. package/esm2022/translations/it.json +149 -12
  193. package/esm2022/translations/nl.json +146 -9
  194. package/esm2022/translations/pt.json +146 -9
  195. package/fesm2022/geonetwork-ui.mjs +11807 -8523
  196. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  197. package/libs/api/metadata-converter/src/index.d.ts +3 -0
  198. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  199. package/libs/api/metadata-converter/src/lib/common/license.d.ts +3 -0
  200. package/libs/api/metadata-converter/src/lib/common/license.d.ts.map +1 -0
  201. package/libs/api/metadata-converter/src/lib/common/url.d.ts +7 -0
  202. package/libs/api/metadata-converter/src/lib/common/url.d.ts.map +1 -0
  203. package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts +13 -0
  204. package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts.map +1 -0
  205. package/libs/api/metadata-converter/src/lib/dcat-ap/index.d.ts +2 -0
  206. package/libs/api/metadata-converter/src/lib/dcat-ap/index.d.ts.map +1 -0
  207. package/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.d.ts +16 -0
  208. package/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.d.ts.map +1 -0
  209. package/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.d.ts +20 -0
  210. package/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.d.ts.map +1 -0
  211. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.d.ts +9 -0
  212. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.d.ts.map +1 -0
  213. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.d.ts +8 -0
  214. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.d.ts.map +1 -0
  215. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.d.ts +2 -0
  216. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.d.ts.map +1 -0
  217. package/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.d.ts +6 -0
  218. package/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.d.ts.map +1 -0
  219. package/libs/api/metadata-converter/src/lib/find-converter.d.ts.map +1 -1
  220. package/libs/api/metadata-converter/src/lib/gn4/atomic-operations.d.ts.map +1 -1
  221. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +3 -3
  222. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  223. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts +2 -6
  224. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts.map +1 -1
  225. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +1 -0
  226. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  227. package/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.d.ts.map +1 -1
  228. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +2 -2
  229. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  230. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts +1 -2
  231. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
  232. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -1
  233. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts +12 -6
  234. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  235. package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts +5 -0
  236. package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts.map +1 -0
  237. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +13 -12
  238. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  239. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts +59 -0
  240. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts.map +1 -1
  241. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +20 -8
  242. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  243. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts.map +1 -1
  244. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts.map +1 -1
  245. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts.map +1 -1
  246. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +24 -3
  247. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  248. package/libs/common/domain/src/lib/model/record/contact.model.d.ts +2 -1
  249. package/libs/common/domain/src/lib/model/record/contact.model.d.ts.map +1 -1
  250. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +9 -7
  251. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  252. package/libs/common/domain/src/lib/model/record/organization.model.d.ts +1 -0
  253. package/libs/common/domain/src/lib/model/record/organization.model.d.ts.map +1 -1
  254. package/libs/common/domain/src/lib/model/user/user.model.d.ts +1 -1
  255. package/libs/common/domain/src/lib/model/user/user.model.d.ts.map +1 -1
  256. package/libs/common/domain/src/lib/platform.service.interface.d.ts +18 -1
  257. package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
  258. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +26 -0
  259. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  260. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts +2 -2
  261. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts.map +1 -1
  262. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts +1 -1
  263. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts.map +1 -1
  264. package/libs/data-access/gn4/src/openapi/api/records.api.service.d.ts.map +1 -1
  265. package/libs/data-access/gn4/src/openapi/model/user.api.model.d.ts +1 -1
  266. package/libs/feature/catalog/src/index.d.ts +1 -0
  267. package/libs/feature/catalog/src/index.d.ts.map +1 -1
  268. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts +2 -1
  269. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts.map +1 -1
  270. package/libs/feature/catalog/src/lib/organisations/organisations.component.d.ts.map +1 -1
  271. package/libs/feature/catalog/src/lib/organization-url.token.d.ts +3 -0
  272. package/libs/feature/catalog/src/lib/organization-url.token.d.ts.map +1 -0
  273. package/libs/feature/catalog/src/lib/records/records.service.d.ts.map +1 -1
  274. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +2 -2
  275. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  276. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts +10 -8
  277. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts.map +1 -1
  278. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts +13 -20
  279. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts.map +1 -1
  280. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +6 -6
  281. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  282. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +3 -3
  283. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  284. package/libs/feature/editor/src/index.d.ts +1 -0
  285. package/libs/feature/editor/src/index.d.ts.map +1 -1
  286. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +6 -0
  287. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -1
  288. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts +5 -0
  289. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -1
  290. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +5 -4
  291. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -1
  292. package/libs/feature/editor/src/lib/+state/editor.models.d.ts +8 -0
  293. package/libs/feature/editor/src/lib/+state/editor.models.d.ts.map +1 -1
  294. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts +4 -3
  295. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -1
  296. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +4 -8
  297. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -1
  298. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts +8 -0
  299. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts.map +1 -0
  300. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts +33 -0
  301. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts.map +1 -0
  302. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts +34 -0
  303. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts.map +1 -0
  304. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts +15 -0
  305. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -0
  306. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts +16 -0
  307. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts.map +1 -0
  308. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts +38 -0
  309. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts.map +1 -0
  310. 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
  311. 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
  312. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.d.ts +9 -0
  313. 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
  314. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts +13 -31
  315. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -1
  316. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts +6 -4
  317. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts.map +1 -1
  318. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +15 -0
  319. 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
  320. 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
  321. 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
  322. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.d.ts +44 -0
  323. 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
  324. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts +15 -0
  325. 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
  326. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts +31 -0
  327. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts.map +1 -0
  328. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts +4 -6
  329. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts.map +1 -1
  330. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts +4 -3
  331. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts.map +1 -1
  332. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts +28 -0
  333. 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
  334. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts +10 -16
  335. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts.map +1 -1
  336. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts +5 -5
  337. 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
  338. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +18 -20
  339. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  340. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts +1 -2
  341. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts.map +1 -1
  342. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts +7 -7
  343. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts.map +1 -1
  344. package/libs/feature/editor/src/lib/expressions.d.ts +1 -1
  345. package/libs/feature/editor/src/lib/expressions.d.ts.map +1 -1
  346. package/libs/feature/editor/src/lib/feature-editor.module.d.ts +2 -1
  347. package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
  348. package/libs/feature/editor/src/lib/fields.config.d.ts +56 -2
  349. package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
  350. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts +42 -0
  351. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts.map +1 -0
  352. package/libs/feature/editor/src/lib/models/index.d.ts +1 -0
  353. package/libs/feature/editor/src/lib/models/index.d.ts.map +1 -1
  354. package/libs/feature/editor/src/lib/services/editor.service.d.ts +4 -3
  355. package/libs/feature/editor/src/lib/services/editor.service.d.ts.map +1 -1
  356. package/libs/feature/map/src/index.d.ts +1 -8
  357. package/libs/feature/map/src/index.d.ts.map +1 -1
  358. package/libs/feature/map/src/lib/+state/map.actions.d.ts +13 -39
  359. package/libs/feature/map/src/lib/+state/map.actions.d.ts.map +1 -1
  360. package/libs/feature/map/src/lib/+state/map.facade.d.ts +9 -10
  361. package/libs/feature/map/src/lib/+state/map.facade.d.ts.map +1 -1
  362. package/libs/feature/map/src/lib/+state/map.reducer.d.ts +4 -2
  363. package/libs/feature/map/src/lib/+state/map.reducer.d.ts.map +1 -1
  364. package/libs/feature/map/src/lib/+state/map.selectors.d.ts +6 -1
  365. package/libs/feature/map/src/lib/+state/map.selectors.d.ts.map +1 -1
  366. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts +1 -1
  367. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts.map +1 -1
  368. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts +8 -10
  369. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts.map +1 -1
  370. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts +1 -1
  371. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -1
  372. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts +3 -3
  373. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
  374. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts +2 -2
  375. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -1
  376. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts +2 -2
  377. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts.map +1 -1
  378. package/libs/feature/map/src/lib/constant/index.d.ts +0 -1
  379. package/libs/feature/map/src/lib/constant/index.d.ts.map +1 -1
  380. package/libs/feature/map/src/lib/feature-map.module.d.ts +12 -23
  381. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  382. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts +7 -7
  383. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts.map +1 -1
  384. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts +5 -4
  385. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
  386. package/libs/feature/map/src/lib/map-state-container/map-state-container.component.d.ts +14 -0
  387. package/libs/feature/map/src/lib/map-state-container/map-state-container.component.d.ts.map +1 -0
  388. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts +2 -2
  389. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts.map +1 -1
  390. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts +0 -30
  391. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
  392. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +3 -3
  393. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  394. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +4 -1
  395. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
  396. package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts +4 -1
  397. package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts.map +1 -1
  398. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +4 -1
  399. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
  400. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +10 -7
  401. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  402. package/libs/feature/record/src/lib/feature-record.module.d.ts +13 -10
  403. package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
  404. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +14 -20
  405. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  406. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +7 -7
  407. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  408. package/libs/feature/router/src/lib/default/constants.d.ts +1 -0
  409. package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
  410. package/libs/feature/router/src/lib/default/router.config.d.ts +1 -0
  411. package/libs/feature/router/src/lib/default/router.config.d.ts.map +1 -1
  412. package/libs/feature/router/src/lib/default/router.service.d.ts +1 -0
  413. package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
  414. package/libs/feature/router/src/lib/default/state/router.facade.d.ts +1 -0
  415. package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
  416. package/libs/feature/search/src/index.d.ts +1 -1
  417. package/libs/feature/search/src/index.d.ts.map +1 -1
  418. package/libs/feature/search/src/lib/feature-search.module.d.ts +2 -1
  419. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  420. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
  421. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +37 -0
  422. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -0
  423. package/libs/feature/search/src/lib/state/search.facade.d.ts +2 -0
  424. package/libs/feature/search/src/lib/state/search.facade.d.ts.map +1 -1
  425. package/libs/feature/search/src/lib/state/selectors.d.ts +1 -0
  426. package/libs/feature/search/src/lib/state/selectors.d.ts.map +1 -1
  427. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  428. package/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.d.ts +2 -2
  429. package/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.d.ts +1 -1
  430. package/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.d.ts.map +1 -1
  431. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts +9 -9
  432. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts.map +1 -1
  433. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts +1 -2
  434. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts.map +1 -1
  435. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts +2 -2
  436. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts.map +1 -1
  437. package/libs/ui/elements/src/index.d.ts +2 -2
  438. package/libs/ui/elements/src/index.d.ts.map +1 -1
  439. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts +18 -0
  440. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts.map +1 -0
  441. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +2 -2
  442. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  443. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -7
  444. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  445. package/libs/ui/elements/src/lib/error/error.component.d.ts +3 -1
  446. package/libs/ui/elements/src/lib/error/error.component.d.ts.map +1 -1
  447. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +2 -2
  448. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  449. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts +2 -2
  450. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts.map +1 -1
  451. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +0 -3
  452. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
  453. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +1 -1
  454. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +5 -1
  455. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +1 -1
  456. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +17 -15
  457. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  458. package/libs/ui/inputs/src/index.d.ts +5 -0
  459. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  460. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts +15 -4
  461. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
  462. package/libs/ui/inputs/src/lib/badge/badge.component.d.ts.map +1 -1
  463. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  464. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  465. package/libs/ui/inputs/src/lib/date-picker/date-picker.component.d.ts.map +1 -1
  466. package/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.d.ts.map +1 -1
  467. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts +5 -3
  468. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts.map +1 -1
  469. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts +24 -0
  470. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts.map +1 -0
  471. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts +4 -5
  472. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts.map +1 -1
  473. package/libs/ui/inputs/src/lib/search-input/search-input.component.d.ts +1 -1
  474. package/libs/ui/inputs/src/lib/search-input/search-input.component.d.ts.map +1 -1
  475. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts +17 -0
  476. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts.map +1 -0
  477. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts +0 -4
  478. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts.map +1 -1
  479. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts +2 -4
  480. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts.map +1 -1
  481. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +33 -36
  482. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  483. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts +21 -0
  484. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts.map +1 -0
  485. package/libs/ui/layout/src/index.d.ts +3 -0
  486. package/libs/ui/layout/src/index.d.ts.map +1 -1
  487. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts +2 -2
  488. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts.map +1 -1
  489. package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts +1 -1
  490. package/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.d.ts +2 -2
  491. package/libs/ui/layout/src/lib/max-lines/max-lines.component.d.ts.map +1 -0
  492. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts +20 -0
  493. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts.map +1 -0
  494. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts +14 -0
  495. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts.map +1 -0
  496. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
  497. package/libs/ui/map/src/index.d.ts +3 -2
  498. package/libs/ui/map/src/index.d.ts.map +1 -1
  499. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts +3 -4
  500. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts.map +1 -1
  501. package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts +37 -0
  502. package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts.map +1 -0
  503. package/libs/ui/map/src/lib/components/map-container/map-settings.token.d.ts +18 -0
  504. package/libs/ui/map/src/lib/components/map-container/map-settings.token.d.ts.map +1 -0
  505. package/libs/ui/map/src/lib/map-utils.d.ts +7 -0
  506. package/libs/ui/map/src/lib/map-utils.d.ts.map +1 -0
  507. package/libs/ui/search/src/index.d.ts +1 -0
  508. package/libs/ui/search/src/index.d.ts.map +1 -1
  509. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts +3 -3
  510. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts.map +1 -1
  511. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +20 -0
  512. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -0
  513. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +36 -0
  514. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -0
  515. package/libs/ui/widgets/src/index.d.ts +1 -0
  516. package/libs/ui/widgets/src/index.d.ts.map +1 -1
  517. package/libs/ui/widgets/src/lib/popover/popover.component.d.ts +19 -0
  518. package/libs/ui/widgets/src/lib/popover/popover.component.d.ts.map +1 -0
  519. package/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.d.ts +1 -1
  520. package/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.d.ts.map +1 -1
  521. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts +10 -11
  522. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts.map +1 -1
  523. package/libs/util/app-config/src/index.d.ts +1 -0
  524. package/libs/util/app-config/src/index.d.ts.map +1 -1
  525. package/libs/util/app-config/src/lib/fixtures.d.ts +8 -8
  526. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  527. package/libs/util/app-config/src/lib/map-layers.d.ts +4 -0
  528. package/libs/util/app-config/src/lib/map-layers.d.ts.map +1 -0
  529. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  530. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  531. package/libs/util/shared/src/lib/links/link-utils.d.ts +6 -6
  532. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  533. package/libs/util/shared/src/lib/services/theme.service.d.ts.map +1 -1
  534. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts +2 -1
  535. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts.map +1 -1
  536. package/package.json +5 -3
  537. package/src/libs/api/metadata-converter/src/index.ts +3 -0
  538. package/src/libs/api/metadata-converter/src/lib/common/license.ts +66 -0
  539. package/src/libs/api/metadata-converter/src/lib/common/url.ts +15 -0
  540. package/src/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.ts +378 -0
  541. package/src/libs/api/metadata-converter/src/lib/dcat-ap/index.ts +1 -0
  542. package/src/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.ts +17 -0
  543. package/src/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.ts +370 -0
  544. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.ts +95 -0
  545. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/individual-name.ts +20 -0
  546. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/keyword.mapper.ts +16 -0
  547. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/role.mapper.ts +48 -0
  548. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.ts +97 -0
  549. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/status.mapper.ts +19 -0
  550. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/update-frequency.mapper.ts +67 -0
  551. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.ts +1 -0
  552. package/src/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.ts +68 -0
  553. package/src/libs/api/metadata-converter/src/lib/find-converter.ts +13 -0
  554. package/src/libs/api/metadata-converter/src/lib/fixtures/eu.dcat-ap.records.ts +272 -0
  555. package/src/libs/api/metadata-converter/src/lib/fixtures/generic.records.ts +7 -2
  556. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +6 -2
  557. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +38 -13
  558. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +6 -2
  559. package/src/libs/api/metadata-converter/src/lib/fixtures/opendataswiss.records.ts +110 -0
  560. package/src/libs/api/metadata-converter/src/lib/fixtures/sextant.records.ts +85 -0
  561. package/src/libs/api/metadata-converter/src/lib/fixtures/vlaanderen.dcat-ap.records.ts +73 -0
  562. package/src/libs/api/metadata-converter/src/lib/gn4/atomic-operations.ts +1 -0
  563. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +18 -16
  564. package/src/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.ts +2 -6
  565. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +1 -0
  566. package/src/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.ts +5 -6
  567. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +12 -4
  568. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +21 -43
  569. package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +11 -16
  570. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +85 -17
  571. package/src/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.ts +39 -0
  572. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +203 -157
  573. package/src/libs/api/metadata-converter/src/lib/xml-utils.ts +50 -7
  574. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +176 -58
  575. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.ts +1 -0
  576. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +3 -1
  577. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.ts +13 -2
  578. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +116 -30
  579. package/src/libs/common/domain/src/lib/model/record/contact.model.ts +29 -1
  580. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +10 -8
  581. package/src/libs/common/domain/src/lib/model/record/organization.model.ts +1 -0
  582. package/src/libs/common/domain/src/lib/model/user/user.model.ts +1 -1
  583. package/src/libs/common/domain/src/lib/platform.service.interface.ts +35 -1
  584. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +35 -0
  585. package/src/libs/common/fixtures/src/index.ts +6 -1
  586. package/src/libs/common/fixtures/src/lib/editor/editor.fixtures.ts +156 -0
  587. package/src/libs/common/fixtures/src/lib/editor/index.ts +1 -0
  588. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-request.ts → aggregations-request.fixtures.ts} +1 -3
  589. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-response.ts → aggregations-response.fixtures.ts} +6 -8
  590. package/src/libs/common/fixtures/src/lib/elasticsearch/{full-response.ts → full-response.fixtures.ts} +1 -3
  591. package/src/libs/common/fixtures/src/lib/elasticsearch/index.ts +5 -5
  592. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +1 -3
  593. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata.fixtures.ts +1739 -1742
  594. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-requests.ts → search-requests.fixtures.ts} +1 -3
  595. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-responses.ts → search-responses.fixtures.ts} +4 -6
  596. package/src/libs/common/fixtures/src/lib/geojson.fixtures.ts +57178 -57195
  597. package/src/libs/common/fixtures/src/lib/gn4/groups.fixtures.ts +2 -4
  598. package/src/libs/common/fixtures/src/lib/individual.fixtures.ts +61 -0
  599. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +233 -164
  600. package/src/libs/common/fixtures/src/lib/map/index.ts +1 -0
  601. package/src/libs/common/fixtures/src/lib/map/map-context.fixtures.ts +53 -0
  602. package/src/libs/common/fixtures/src/lib/ol-feature.fixtures.ts +10 -0
  603. package/src/libs/common/fixtures/src/lib/organisations.fixture.ts +65 -3
  604. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +9 -7
  605. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +17 -9
  606. package/src/libs/common/fixtures/src/lib/repository.fixtures.ts +4 -4
  607. package/src/libs/common/fixtures/src/lib/search/aggregations.ts +2 -3
  608. package/src/libs/common/fixtures/src/lib/user-feedbacks.fixtures.ts +14 -15
  609. package/src/libs/common/fixtures/src/lib/user.fixtures.ts +45 -15
  610. package/src/libs/data-access/datafeeder/src/openapi/model/datasetMetadata.api.model.ts +4 -0
  611. package/src/libs/data-access/datafeeder/src/openapi/model/datasetUploadStatus.api.model.ts +2 -0
  612. package/src/libs/data-access/gn4/src/fixtures/site.fixtures.ts +4 -4
  613. package/src/libs/data-access/gn4/src/fixtures/ui.fixtures.ts +2 -2
  614. package/src/libs/data-access/gn4/src/openapi/api/records.api.service.ts +1 -5
  615. package/src/libs/data-access/gn4/src/openapi/model/user.api.model.ts +1 -1
  616. package/src/libs/data-access/gn4/src/spec.yaml +0 -8
  617. package/src/libs/feature/catalog/src/index.ts +1 -0
  618. package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +5 -2
  619. package/src/libs/feature/catalog/src/lib/organisations/organisations.component.html +1 -1
  620. package/src/libs/feature/catalog/src/lib/organisations/organisations.component.ts +2 -2
  621. package/src/libs/feature/catalog/src/lib/organization-url.token.ts +6 -0
  622. package/src/libs/feature/catalog/src/lib/records/records.service.ts +6 -8
  623. package/src/libs/feature/catalog/src/lib/sources/sources.fixture.ts +1 -1
  624. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +3 -3
  625. package/src/libs/feature/dataviz/src/lib/feature-dataviz.module.ts +8 -3
  626. package/src/libs/feature/dataviz/src/lib/figure/figure.fixtures.ts +2 -2
  627. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.html +5 -2
  628. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.ts +38 -78
  629. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +6 -6
  630. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +4 -4
  631. package/src/libs/feature/editor/src/index.ts +1 -0
  632. package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +7 -0
  633. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +28 -6
  634. package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +13 -1
  635. package/src/libs/feature/editor/src/lib/+state/editor.models.ts +11 -0
  636. package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +11 -5
  637. package/src/libs/feature/editor/src/lib/+state/editor.selectors.ts +22 -8
  638. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.html +15 -0
  639. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.ts +18 -0
  640. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.html +26 -0
  641. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +90 -0
  642. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.html +47 -0
  643. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +132 -0
  644. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.html +35 -0
  645. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +79 -0
  646. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.html +31 -0
  647. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +82 -0
  648. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.html +40 -0
  649. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.ts +170 -0
  650. 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
  651. 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
  652. 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
  653. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.html +4 -0
  654. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.ts +21 -0
  655. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.html +8 -18
  656. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +40 -81
  657. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.css +8 -0
  658. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.ts +13 -5
  659. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +1 -0
  660. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.ts +86 -0
  661. 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
  662. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.ts +185 -0
  663. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.css +0 -0
  664. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.html +71 -0
  665. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.ts +241 -0
  666. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.css +0 -0
  667. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.html +6 -0
  668. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.ts +48 -0
  669. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.css +0 -0
  670. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.html +11 -0
  671. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +122 -0
  672. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.html +15 -8
  673. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.ts +11 -14
  674. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.html +5 -3
  675. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.ts +11 -4
  676. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +20 -1
  677. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +212 -1
  678. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.css +4 -0
  679. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.html +31 -4
  680. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +43 -86
  681. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.css +4 -0
  682. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.html +16 -14
  683. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +17 -15
  684. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +127 -70
  685. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +56 -44
  686. package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +1 -2
  687. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.html +52 -9
  688. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +20 -7
  689. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.html +2 -6
  690. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +1 -1
  691. package/src/libs/feature/editor/src/lib/expressions.ts +1 -1
  692. package/src/libs/feature/editor/src/lib/feature-editor.module.ts +2 -1
  693. package/src/libs/feature/editor/src/lib/fields.config.ts +256 -57
  694. package/src/libs/feature/editor/src/lib/models/editor-config.model.ts +65 -0
  695. package/src/libs/feature/editor/src/lib/models/index.ts +1 -0
  696. package/src/libs/feature/editor/src/lib/services/editor.service.ts +22 -7
  697. package/src/libs/feature/map/src/index.ts +1 -8
  698. package/src/libs/feature/map/src/lib/+state/map.actions.ts +10 -25
  699. package/src/libs/feature/map/src/lib/+state/map.facade.ts +11 -15
  700. package/src/libs/feature/map/src/lib/+state/map.reducer.ts +16 -53
  701. package/src/libs/feature/map/src/lib/+state/map.selectors.ts +7 -2
  702. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.ts +3 -0
  703. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.ts +23 -22
  704. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +22 -11
  705. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.html +1 -1
  706. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +21 -19
  707. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.html +1 -1
  708. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +17 -10
  709. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.html +1 -1
  710. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.ts +17 -10
  711. package/src/libs/feature/map/src/lib/constant/index.ts +0 -1
  712. package/src/libs/feature/map/src/lib/feature-map.module.ts +2 -41
  713. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +38 -20
  714. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.html +2 -2
  715. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +39 -6
  716. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.css +0 -0
  717. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.html +4 -0
  718. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.ts +29 -0
  719. package/src/libs/feature/map/src/lib/style/map-style.fixtures.ts +29 -27
  720. package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +8 -232
  721. package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +3 -3
  722. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +36 -19
  723. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +6 -2
  724. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.ts +11 -0
  725. package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +59 -12
  726. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +29 -20
  727. package/src/libs/feature/record/src/lib/feature-record.module.ts +14 -5
  728. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +4 -4
  729. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +45 -72
  730. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +47 -32
  731. package/src/libs/feature/router/src/lib/default/constants.ts +1 -0
  732. package/src/libs/feature/router/src/lib/default/router.config.ts +1 -0
  733. package/src/libs/feature/router/src/lib/default/router.service.ts +13 -1
  734. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +8 -0
  735. package/src/libs/feature/search/src/index.ts +1 -1
  736. package/src/libs/feature/search/src/lib/feature-search.module.ts +2 -1
  737. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +2 -1
  738. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +2 -2
  739. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.css +0 -0
  740. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +15 -0
  741. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +114 -0
  742. package/src/libs/feature/search/src/lib/state/fixtures/search-state.fixtures.ts +2 -2
  743. package/src/libs/feature/search/src/lib/state/search.facade.ts +11 -0
  744. package/src/libs/feature/search/src/lib/state/selectors.ts +7 -0
  745. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +16 -2
  746. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.html +8 -6
  747. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.ts +2 -2
  748. package/src/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.ts +8 -1
  749. package/src/libs/ui/catalog/src/lib/ui-catalog.module.ts +2 -3
  750. package/src/libs/ui/dataviz/src/lib/chart/chart.fixtures.ts +2 -2
  751. package/src/libs/ui/dataviz/src/lib/figure/figure.component.html +11 -3
  752. package/src/libs/ui/dataviz/src/lib/figure/figure.component.ts +3 -7
  753. package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +2 -2
  754. package/src/libs/ui/elements/src/index.ts +2 -2
  755. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +29 -29
  756. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.css +0 -0
  757. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.html +12 -0
  758. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.ts +37 -0
  759. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +4 -4
  760. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +7 -7
  761. package/src/libs/ui/elements/src/lib/error/error.component.html +30 -6
  762. package/src/libs/ui/elements/src/lib/error/error.component.ts +2 -0
  763. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +3 -3
  764. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.html +13 -17
  765. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +1 -1
  766. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.css +7 -1
  767. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +12 -8
  768. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +14 -20
  769. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +0 -10
  770. package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.html +1 -1
  771. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +2 -2
  772. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +1 -1
  773. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +22 -1
  774. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +10 -6
  775. package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.html +1 -1
  776. package/src/libs/ui/inputs/src/index.ts +5 -0
  777. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.css +25 -19
  778. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +33 -15
  779. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +97 -30
  780. package/src/libs/ui/inputs/src/lib/badge/badge.component.html +11 -3
  781. package/src/libs/ui/inputs/src/lib/badge/badge.component.ts +2 -1
  782. package/src/libs/ui/inputs/src/lib/button/button.component.ts +15 -1
  783. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.css +7 -2
  784. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.html +14 -6
  785. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.ts +7 -1
  786. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.css +7 -2
  787. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.html +28 -23
  788. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.ts +7 -1
  789. package/src/libs/ui/inputs/src/lib/editable-label/editable-label.directive.ts +40 -26
  790. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.css +4 -0
  791. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.html +89 -0
  792. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +92 -0
  793. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.css +4 -0
  794. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.html +76 -68
  795. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.ts +17 -14
  796. package/src/libs/ui/inputs/src/lib/search-input/search-input.component.ts +5 -1
  797. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.css +32 -0
  798. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.html +14 -0
  799. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +39 -0
  800. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.html +3 -2
  801. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.ts +3 -28
  802. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.html +4 -3
  803. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.ts +4 -16
  804. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +0 -9
  805. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.css +9 -0
  806. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.html +41 -0
  807. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.ts +56 -0
  808. package/src/libs/ui/layout/src/index.ts +3 -0
  809. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.html +8 -3
  810. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +4 -3
  811. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.css +1 -1
  812. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +3 -2
  813. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.css +0 -0
  814. package/src/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.html +1 -0
  815. package/src/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.ts +9 -5
  816. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.css +0 -0
  817. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.html +15 -0
  818. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.ts +44 -0
  819. package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.html +37 -0
  820. package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.ts +15 -18
  821. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +0 -1
  822. package/src/libs/ui/map/src/index.ts +3 -2
  823. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.html +1 -1
  824. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.ts +8 -5
  825. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.css +0 -0
  826. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +203 -0
  827. package/src/libs/ui/map/src/lib/components/map-container/map-settings.token.ts +23 -0
  828. package/src/libs/ui/map/src/lib/map-utils.ts +54 -0
  829. package/src/libs/ui/search/src/index.ts +1 -0
  830. package/src/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.ts +7 -6
  831. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.css +0 -0
  832. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +26 -0
  833. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +74 -0
  834. package/src/libs/ui/search/src/lib/results-table/results-table.component.css +0 -0
  835. package/src/libs/{feature → ui}/search/src/lib/results-table/results-table.component.html +41 -16
  836. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +151 -0
  837. package/src/libs/ui/widgets/src/index.ts +1 -0
  838. package/src/libs/ui/widgets/src/lib/popover/popover.component.css +0 -0
  839. package/src/libs/ui/widgets/src/lib/popover/popover.component.html +3 -0
  840. package/src/libs/ui/widgets/src/lib/popover/popover.component.ts +85 -0
  841. package/src/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.ts +4 -0
  842. package/src/libs/ui/widgets/src/lib/ui-widgets.module.ts +0 -3
  843. package/src/libs/util/app-config/src/index.ts +1 -0
  844. package/src/libs/util/app-config/src/lib/fixtures.ts +9 -9
  845. package/src/libs/util/app-config/src/lib/map-layers.ts +31 -0
  846. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +4 -3
  847. package/src/libs/util/shared/src/lib/links/link-utils.ts +6 -6
  848. package/src/libs/util/shared/src/lib/services/theme.service.ts +1 -0
  849. package/src/libs/util/shared/src/lib/utils/bytes-convert.ts +4 -1
  850. package/tailwind.base.config.js +1 -0
  851. package/tailwind.base.css +53 -8
  852. package/translations/de.json +175 -38
  853. package/translations/en.json +176 -39
  854. package/translations/es.json +146 -9
  855. package/translations/fr.json +207 -70
  856. package/translations/it.json +149 -12
  857. package/translations/nl.json +146 -9
  858. package/translations/pt.json +146 -9
  859. package/translations/sk.json +148 -11
  860. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.mjs +0 -15
  861. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.mjs +0 -17
  862. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.mjs +0 -17
  863. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.mjs +0 -2
  864. package/esm2022/libs/feature/editor/src/lib/models/fields.model.mjs +0 -2
  865. package/esm2022/libs/feature/map/src/lib/+state/map.effects.mjs +0 -15
  866. package/esm2022/libs/feature/map/src/lib/+state/map.models.mjs +0 -2
  867. package/esm2022/libs/feature/map/src/lib/constant/map-options.mjs +0 -8
  868. package/esm2022/libs/feature/map/src/lib/constant/style.constant.mjs +0 -17
  869. package/esm2022/libs/feature/map/src/lib/feature-info/feature-info.service.mjs +0 -38
  870. package/esm2022/libs/feature/map/src/lib/manager/map-instance.directive.mjs +0 -19
  871. package/esm2022/libs/feature/map/src/lib/manager/map-manager.service.mjs +0 -19
  872. package/esm2022/libs/feature/map/src/lib/map-container/map-container.component.mjs +0 -27
  873. package/esm2022/libs/feature/map/src/lib/map-context/component/map-context.component.mjs +0 -46
  874. package/esm2022/libs/feature/map/src/lib/map-context/map-context.model.mjs +0 -10
  875. package/esm2022/libs/feature/map/src/lib/map-context/map-context.service.mjs +0 -289
  876. package/esm2022/libs/feature/search/src/lib/results-table/results-table.component.mjs +0 -136
  877. package/esm2022/libs/ui/elements/src/lib/max-lines/max-lines.component.mjs +0 -69
  878. package/esm2022/libs/ui/elements/src/lib/sortable-list/sortable-list.component.mjs +0 -43
  879. package/esm2022/libs/ui/map/src/lib/components/map/map.component.mjs +0 -40
  880. package/esm2022/libs/ui/map/src/lib/ui-map.module.mjs +0 -33
  881. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts +0 -8
  882. 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
  883. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts +0 -8
  884. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts.map +0 -1
  885. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.d.ts +0 -8
  886. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.d.ts.map +0 -1
  887. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts +0 -26
  888. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts.map +0 -1
  889. package/libs/feature/editor/src/lib/models/fields.model.d.ts +0 -15
  890. package/libs/feature/editor/src/lib/models/fields.model.d.ts.map +0 -1
  891. package/libs/feature/map/src/lib/+state/map.effects.d.ts +0 -9
  892. package/libs/feature/map/src/lib/+state/map.effects.d.ts.map +0 -1
  893. package/libs/feature/map/src/lib/+state/map.models.d.ts +0 -9
  894. package/libs/feature/map/src/lib/+state/map.models.d.ts.map +0 -1
  895. package/libs/feature/map/src/lib/constant/map-options.d.ts +0 -9
  896. package/libs/feature/map/src/lib/constant/map-options.d.ts.map +0 -1
  897. package/libs/feature/map/src/lib/constant/style.constant.d.ts +0 -4
  898. package/libs/feature/map/src/lib/constant/style.constant.d.ts.map +0 -1
  899. package/libs/feature/map/src/lib/feature-info/feature-info.service.d.ts +0 -16
  900. package/libs/feature/map/src/lib/feature-info/feature-info.service.d.ts.map +0 -1
  901. package/libs/feature/map/src/lib/manager/map-instance.directive.d.ts +0 -9
  902. package/libs/feature/map/src/lib/manager/map-instance.directive.d.ts.map +0 -1
  903. package/libs/feature/map/src/lib/manager/map-manager.service.d.ts +0 -11
  904. package/libs/feature/map/src/lib/manager/map-manager.service.d.ts.map +0 -1
  905. package/libs/feature/map/src/lib/map-container/map-container.component.d.ts +0 -12
  906. package/libs/feature/map/src/lib/map-container/map-container.component.d.ts.map +0 -1
  907. package/libs/feature/map/src/lib/map-context/component/map-context.component.d.ts +0 -26
  908. package/libs/feature/map/src/lib/map-context/component/map-context.component.d.ts.map +0 -1
  909. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts +0 -77
  910. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts.map +0 -1
  911. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts +0 -26
  912. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts.map +0 -1
  913. package/libs/feature/search/src/lib/results-table/results-table.component.d.ts +0 -36
  914. package/libs/feature/search/src/lib/results-table/results-table.component.d.ts.map +0 -1
  915. package/libs/ui/elements/src/lib/max-lines/max-lines.component.d.ts.map +0 -1
  916. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts +0 -22
  917. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts.map +0 -1
  918. package/libs/ui/map/src/lib/components/map/map.component.d.ts +0 -19
  919. package/libs/ui/map/src/lib/components/map/map.component.d.ts.map +0 -1
  920. package/libs/ui/map/src/lib/ui-map.module.d.ts +0 -13
  921. package/libs/ui/map/src/lib/ui-map.module.d.ts.map +0 -1
  922. package/src/libs/common/fixtures/src/lib/ol-feature.fixture.ts +0 -7
  923. package/src/libs/common/fixtures/src/lib/utils/freeze.ts +0 -10
  924. package/src/libs/common/fixtures/src/lib/utils/index.ts +0 -1
  925. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.html +0 -8
  926. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.ts +0 -70
  927. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.html +0 -4
  928. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.ts +0 -15
  929. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.html +0 -7
  930. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.ts +0 -16
  931. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.html +0 -13
  932. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.ts +0 -16
  933. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.ts +0 -43
  934. package/src/libs/feature/editor/src/lib/models/fields.model.ts +0 -29
  935. package/src/libs/feature/map/src/lib/+state/map.effects.ts +0 -7
  936. package/src/libs/feature/map/src/lib/+state/map.models.ts +0 -9
  937. package/src/libs/feature/map/src/lib/constant/map-options.ts +0 -17
  938. package/src/libs/feature/map/src/lib/feature-info/feature-info.service.ts +0 -42
  939. package/src/libs/feature/map/src/lib/manager/map-instance.directive.ts +0 -10
  940. package/src/libs/feature/map/src/lib/manager/map-manager.service.ts +0 -13
  941. package/src/libs/feature/map/src/lib/map-container/map-container.component.html +0 -1
  942. package/src/libs/feature/map/src/lib/map-container/map-container.component.ts +0 -26
  943. package/src/libs/feature/map/src/lib/map-context/component/map-context.component.html +0 -1
  944. package/src/libs/feature/map/src/lib/map-context/component/map-context.component.ts +0 -57
  945. package/src/libs/feature/map/src/lib/map-context/map-context.fixtures.ts +0 -51
  946. package/src/libs/feature/map/src/lib/map-context/map-context.model.ts +0 -95
  947. package/src/libs/feature/map/src/lib/map-context/map-context.service.ts +0 -318
  948. package/src/libs/feature/search/src/lib/results-table/results-table.component.ts +0 -171
  949. package/src/libs/ui/elements/src/lib/sortable-list/sortable-list.component.html +0 -36
  950. package/src/libs/ui/map/src/lib/components/map/map.component.ts +0 -57
  951. package/src/libs/ui/map/src/lib/ui-map.module.ts +0 -19
  952. /package/src/libs/feature/editor/src/lib/components/{overview-upload/overview-upload.component.css → contact-card/contact-card.component.css} +0 -0
  953. /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
  954. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.css → import-record/import-record.component.css} +0 -0
  955. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.css → online-resource-card/online-resource-card.component.css} +0 -0
  956. /package/src/libs/feature/{map/src/lib/map-container/map-container.component.css → editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.css} +0 -0
  957. /package/src/libs/feature/{map/src/lib/map-context/component/map-context.component.css → editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.css} +0 -0
  958. /package/src/libs/feature/{search/src/lib/results-table/results-table.component.css → editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.css} +0 -0
  959. /package/src/libs/{ui/elements/src/lib/max-lines/max-lines.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.css} +0 -0
  960. /package/src/libs/{ui/map/src/lib/components/map/map.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.css} +0 -0
  961. /package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.css +0 -0
  962. /package/src/libs/ui/map/src/lib/components/{map/map.component.html → map-container/map-container.component.html} +0 -0
@@ -1,4 +1,4 @@
1
- import { Component, ChangeDetectionStrategy, Input } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/material/icon";
4
4
  import * as i2 from "@angular/material/tooltip";
@@ -6,13 +6,32 @@ import * as i3 from "@angular/router";
6
6
  import * as i4 from "../thumbnail/thumbnail.component";
7
7
  import * as i5 from "@ngx-translate/core";
8
8
  export class RelatedRecordCardComponent {
9
+ constructor() {
10
+ this.extraClass = '';
11
+ this.baseClasses = [
12
+ 'w-72',
13
+ 'h-96',
14
+ 'overflow-hidden',
15
+ 'rounded-lg',
16
+ 'bg-white',
17
+ 'cursor-pointer',
18
+ 'block',
19
+ 'hover:-translate-y-2 ',
20
+ 'duration-[180ms]',
21
+ ].join(' ');
22
+ }
23
+ get classList() {
24
+ return `${this.baseClasses} ${this.extraClass}`;
25
+ }
9
26
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RelatedRecordCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RelatedRecordCardComponent, selector: "gn-ui-related-record-card", inputs: { record: "record" }, ngImport: i0, template: "<a\n class=\"w-72 h-96 overflow-hidden rounded-lg bg-white cursor-pointer block hover:-translate-y-2 duration-[180ms]\"\n [routerLink]=\"['/dataset', record.uniqueIdentifier]\"\n target=\"_blank\"\n>\n <div class=\"h-52 bg-gray-100\">\n <gn-ui-thumbnail\n class=\"h-52 w-full object-cover\"\n [thumbnailUrl]=\"record.overviews?.[0]?.url.toString()\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col justify-between h-44 px-5 pt-4 pb-6\">\n <h4\n class=\"max-h-24 font-title text-21 text-black text-ellipsis overflow-hidden\"\n >\n {{ record.title }}\n </h4>\n <div>\n <button\n mat-raised-button\n [matTooltip]=\"'tooltip.url.open' | translate\"\n matTooltipPosition=\"above\"\n >\n <mat-icon class=\"material-symbols-outlined align-middle text-secondary\"\n >open_in_new</mat-icon\n >\n </button>\n </div>\n </div>\n</a>\n", styles: [""], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"], outputs: ["placeholderShown"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
27
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RelatedRecordCardComponent, selector: "gn-ui-related-record-card", inputs: { record: "record", extraClass: "extraClass" }, ngImport: i0, template: "<a\n [class]=\"classList\"\n [routerLink]=\"['/dataset', record.uniqueIdentifier]\"\n target=\"_blank\"\n>\n <div class=\"h-52 bg-gray-100\">\n <gn-ui-thumbnail\n class=\"h-52 w-full object-cover\"\n [thumbnailUrl]=\"record.overviews?.[0]?.url.toString()\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col justify-between h-44 px-5 pt-4 pb-6\">\n <h4\n class=\"max-h-24 font-title text-21 text-black text-ellipsis overflow-hidden\"\n >\n {{ record.title }}\n </h4>\n <div>\n <button\n mat-raised-button\n [matTooltip]=\"'tooltip.url.open' | translate\"\n matTooltipPosition=\"above\"\n >\n <mat-icon class=\"material-symbols-outlined align-middle text-secondary\"\n >open_in_new</mat-icon\n >\n </button>\n </div>\n </div>\n</a>\n", styles: [""], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"], outputs: ["placeholderShown"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
11
28
  }
12
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RelatedRecordCardComponent, decorators: [{
13
30
  type: Component,
14
- args: [{ selector: 'gn-ui-related-record-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<a\n class=\"w-72 h-96 overflow-hidden rounded-lg bg-white cursor-pointer block hover:-translate-y-2 duration-[180ms]\"\n [routerLink]=\"['/dataset', record.uniqueIdentifier]\"\n target=\"_blank\"\n>\n <div class=\"h-52 bg-gray-100\">\n <gn-ui-thumbnail\n class=\"h-52 w-full object-cover\"\n [thumbnailUrl]=\"record.overviews?.[0]?.url.toString()\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col justify-between h-44 px-5 pt-4 pb-6\">\n <h4\n class=\"max-h-24 font-title text-21 text-black text-ellipsis overflow-hidden\"\n >\n {{ record.title }}\n </h4>\n <div>\n <button\n mat-raised-button\n [matTooltip]=\"'tooltip.url.open' | translate\"\n matTooltipPosition=\"above\"\n >\n <mat-icon class=\"material-symbols-outlined align-middle text-secondary\"\n >open_in_new</mat-icon\n >\n </button>\n </div>\n </div>\n</a>\n" }]
15
- }], propDecorators: { record: [{
31
+ args: [{ selector: 'gn-ui-related-record-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<a\n [class]=\"classList\"\n [routerLink]=\"['/dataset', record.uniqueIdentifier]\"\n target=\"_blank\"\n>\n <div class=\"h-52 bg-gray-100\">\n <gn-ui-thumbnail\n class=\"h-52 w-full object-cover\"\n [thumbnailUrl]=\"record.overviews?.[0]?.url.toString()\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col justify-between h-44 px-5 pt-4 pb-6\">\n <h4\n class=\"max-h-24 font-title text-21 text-black text-ellipsis overflow-hidden\"\n >\n {{ record.title }}\n </h4>\n <div>\n <button\n mat-raised-button\n [matTooltip]=\"'tooltip.url.open' | translate\"\n matTooltipPosition=\"above\"\n >\n <mat-icon class=\"material-symbols-outlined align-middle text-secondary\"\n >open_in_new</mat-icon\n >\n </button>\n </div>\n </div>\n</a>\n" }]
32
+ }], ctorParameters: function () { return []; }, propDecorators: { record: [{
33
+ type: Input
34
+ }], extraClass: [{
16
35
  type: Input
17
36
  }] } });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRlZC1yZWNvcmQtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvcmVsYXRlZC1yZWNvcmQtY2FyZC9yZWxhdGVkLXJlY29yZC1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9yZWxhdGVkLXJlY29yZC1jYXJkL3JlbGF0ZWQtcmVjb3JkLWNhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUE7Ozs7Ozs7QUFTekUsTUFBTSxPQUFPLDBCQUEwQjsrR0FBMUIsMEJBQTBCO21HQUExQiwwQkFBMEIsK0ZDVHZDLCs2QkE4QkE7OzRGRHJCYSwwQkFBMEI7a0JBTnRDLFNBQVM7K0JBQ0UsMkJBQTJCLG1CQUdwQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDYXRhbG9nUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1yZWxhdGVkLXJlY29yZC1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JlbGF0ZWQtcmVjb3JkLWNhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yZWxhdGVkLXJlY29yZC1jYXJkLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFJlbGF0ZWRSZWNvcmRDYXJkQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcmVjb3JkOiBDYXRhbG9nUmVjb3JkXG59XG4iLCI8YVxuICBjbGFzcz1cInctNzIgaC05NiBvdmVyZmxvdy1oaWRkZW4gcm91bmRlZC1sZyBiZy13aGl0ZSBjdXJzb3ItcG9pbnRlciBibG9jayBob3ZlcjotdHJhbnNsYXRlLXktMiBkdXJhdGlvbi1bMTgwbXNdXCJcbiAgW3JvdXRlckxpbmtdPVwiWycvZGF0YXNldCcsIHJlY29yZC51bmlxdWVJZGVudGlmaWVyXVwiXG4gIHRhcmdldD1cIl9ibGFua1wiXG4+XG4gIDxkaXYgY2xhc3M9XCJoLTUyIGJnLWdyYXktMTAwXCI+XG4gICAgPGduLXVpLXRodW1ibmFpbFxuICAgICAgY2xhc3M9XCJoLTUyIHctZnVsbCBvYmplY3QtY292ZXJcIlxuICAgICAgW3RodW1ibmFpbFVybF09XCJyZWNvcmQub3ZlcnZpZXdzPy5bMF0/LnVybC50b1N0cmluZygpXCJcbiAgICA+PC9nbi11aS10aHVtYm5haWw+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBqdXN0aWZ5LWJldHdlZW4gaC00NCBweC01IHB0LTQgcGItNlwiPlxuICAgIDxoNFxuICAgICAgY2xhc3M9XCJtYXgtaC0yNCBmb250LXRpdGxlIHRleHQtMjEgdGV4dC1ibGFjayB0ZXh0LWVsbGlwc2lzIG92ZXJmbG93LWhpZGRlblwiXG4gICAgPlxuICAgICAge3sgcmVjb3JkLnRpdGxlIH19XG4gICAgPC9oND5cbiAgICA8ZGl2PlxuICAgICAgPGJ1dHRvblxuICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICBbbWF0VG9vbHRpcF09XCIndG9vbHRpcC51cmwub3BlbicgfCB0cmFuc2xhdGVcIlxuICAgICAgICBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiXG4gICAgICA+XG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgYWxpZ24tbWlkZGxlIHRleHQtc2Vjb25kYXJ5XCJcbiAgICAgICAgICA+b3Blbl9pbl9uZXc8L21hdC1pY29uXG4gICAgICAgID5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvYT5cbiJdfQ==
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRlZC1yZWNvcmQtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvcmVsYXRlZC1yZWNvcmQtY2FyZC9yZWxhdGVkLXJlY29yZC1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9yZWxhdGVkLXJlY29yZC1jYXJkL3JlbGF0ZWQtcmVjb3JkLWNhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUE7Ozs7Ozs7QUFTekUsTUFBTSxPQUFPLDBCQUEwQjtJQU1yQztRQUZTLGVBQVUsR0FBRyxFQUFFLENBQUE7UUFHdEIsSUFBSSxDQUFDLFdBQVcsR0FBRztZQUNqQixNQUFNO1lBQ04sTUFBTTtZQUNOLGlCQUFpQjtZQUNqQixZQUFZO1lBQ1osVUFBVTtZQUNWLGdCQUFnQjtZQUNoQixPQUFPO1lBQ1AsdUJBQXVCO1lBQ3ZCLGtCQUFrQjtTQUNuQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNiLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDakQsQ0FBQzsrR0F0QlUsMEJBQTBCO21HQUExQiwwQkFBMEIseUhDVHZDLGsxQkE4QkE7OzRGRHJCYSwwQkFBMEI7a0JBTnRDLFNBQVM7K0JBQ0UsMkJBQTJCLG1CQUdwQix1QkFBdUIsQ0FBQyxNQUFNOzBFQUt0QyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENhdGFsb2dSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLXJlbGF0ZWQtcmVjb3JkLWNhcmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVsYXRlZC1yZWNvcmQtY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JlbGF0ZWQtcmVjb3JkLWNhcmQuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUmVsYXRlZFJlY29yZENhcmRDb21wb25lbnQge1xuICBwcml2YXRlIHJlYWRvbmx5IGJhc2VDbGFzc2VzOiBzdHJpbmdcblxuICBASW5wdXQoKSByZWNvcmQ6IENhdGFsb2dSZWNvcmRcbiAgQElucHV0KCkgZXh0cmFDbGFzcyA9ICcnXG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5iYXNlQ2xhc3NlcyA9IFtcbiAgICAgICd3LTcyJyxcbiAgICAgICdoLTk2JyxcbiAgICAgICdvdmVyZmxvdy1oaWRkZW4nLFxuICAgICAgJ3JvdW5kZWQtbGcnLFxuICAgICAgJ2JnLXdoaXRlJyxcbiAgICAgICdjdXJzb3ItcG9pbnRlcicsXG4gICAgICAnYmxvY2snLFxuICAgICAgJ2hvdmVyOi10cmFuc2xhdGUteS0yICcsXG4gICAgICAnZHVyYXRpb24tWzE4MG1zXScsXG4gICAgXS5qb2luKCcgJylcbiAgfVxuXG4gIGdldCBjbGFzc0xpc3QoKSB7XG4gICAgcmV0dXJuIGAke3RoaXMuYmFzZUNsYXNzZXN9ICR7dGhpcy5leHRyYUNsYXNzfWBcbiAgfVxufVxuIiwiPGFcbiAgW2NsYXNzXT1cImNsYXNzTGlzdFwiXG4gIFtyb3V0ZXJMaW5rXT1cIlsnL2RhdGFzZXQnLCByZWNvcmQudW5pcXVlSWRlbnRpZmllcl1cIlxuICB0YXJnZXQ9XCJfYmxhbmtcIlxuPlxuICA8ZGl2IGNsYXNzPVwiaC01MiBiZy1ncmF5LTEwMFwiPlxuICAgIDxnbi11aS10aHVtYm5haWxcbiAgICAgIGNsYXNzPVwiaC01MiB3LWZ1bGwgb2JqZWN0LWNvdmVyXCJcbiAgICAgIFt0aHVtYm5haWxVcmxdPVwicmVjb3JkLm92ZXJ2aWV3cz8uWzBdPy51cmwudG9TdHJpbmcoKVwiXG4gICAgPjwvZ24tdWktdGh1bWJuYWlsPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wganVzdGlmeS1iZXR3ZWVuIGgtNDQgcHgtNSBwdC00IHBiLTZcIj5cbiAgICA8aDRcbiAgICAgIGNsYXNzPVwibWF4LWgtMjQgZm9udC10aXRsZSB0ZXh0LTIxIHRleHQtYmxhY2sgdGV4dC1lbGxpcHNpcyBvdmVyZmxvdy1oaWRkZW5cIlxuICAgID5cbiAgICAgIHt7IHJlY29yZC50aXRsZSB9fVxuICAgIDwvaDQ+XG4gICAgPGRpdj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgW21hdFRvb2x0aXBdPVwiJ3Rvb2x0aXAudXJsLm9wZW4nIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIlxuICAgICAgPlxuICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIGFsaWduLW1pZGRsZSB0ZXh0LXNlY29uZGFyeVwiXG4gICAgICAgICAgPm9wZW5faW5fbmV3PC9tYXQtaWNvblxuICAgICAgICA+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2E+XG4iXX0=
@@ -9,8 +9,8 @@ import { ContentGhostComponent } from './content-ghost/content-ghost.component';
9
9
  import { DownloadItemComponent } from './download-item/download-item.component';
10
10
  import { DownloadsListComponent } from './downloads-list/downloads-list.component';
11
11
  import { ApiCardComponent } from './api-card/api-card.component';
12
- import { UiWidgetsModule } from '../../../../../libs/ui/widgets/src';
13
- import { UiLayoutModule } from '../../../../../libs/ui/layout/src';
12
+ import { PopoverComponent, UiWidgetsModule } from '../../../../../libs/ui/widgets/src';
13
+ import { MaxLinesComponent, UiLayoutModule } from '../../../../../libs/ui/layout/src';
14
14
  import { TranslateModule } from '@ngx-translate/core';
15
15
  import { RelatedRecordCardComponent } from './related-record-card/related-record-card.component';
16
16
  import { MetadataContactComponent } from './metadata-contact/metadata-contact.component';
@@ -20,13 +20,12 @@ import { MetadataQualityItemComponent } from './metadata-quality-item/metadata-q
20
20
  import { ErrorComponent } from './error/error.component';
21
21
  import { PaginationComponent } from './pagination/pagination.component';
22
22
  import { ThumbnailComponent } from './thumbnail/thumbnail.component';
23
- import { BadgeComponent, UiInputsModule } from '../../../../../libs/ui/inputs/src';
23
+ import { BadgeComponent, TextInputComponent, UiInputsModule, } from '../../../../../libs/ui/inputs/src';
24
24
  import { FormsModule } from '@angular/forms';
25
25
  import { AvatarComponent } from './avatar/avatar.component';
26
26
  import { UserPreviewComponent } from './user-preview/user-preview.component';
27
27
  import { GnUiLinkifyDirective } from './metadata-info/linkify.directive';
28
28
  import { PaginationButtonsComponent } from './pagination-buttons/pagination-buttons.component';
29
- import { MaxLinesComponent } from './max-lines/max-lines.component';
30
29
  import { RecordApiFormComponent } from './record-api-form/record-api-form.component';
31
30
  import { MarkdownParserComponent } from './markdown-parser/markdown-parser.component';
32
31
  import { ImageOverlayPreviewComponent } from './image-overlay-preview/image-overlay-preview.component';
@@ -52,7 +51,6 @@ export class UiElementsModule {
52
51
  UserPreviewComponent,
53
52
  GnUiLinkifyDirective,
54
53
  PaginationButtonsComponent,
55
- MaxLinesComponent,
56
54
  RecordApiFormComponent,
57
55
  UserFeedbackItemComponent,
58
56
  ImageOverlayPreviewComponent], imports: [CommonModule,
@@ -64,10 +62,13 @@ export class UiElementsModule {
64
62
  UiInputsModule,
65
63
  FormsModule,
66
64
  NgOptimizedImage,
65
+ PopoverComponent,
67
66
  MarkdownParserComponent,
68
67
  ThumbnailComponent,
69
68
  TimeSincePipe,
70
- BadgeComponent], exports: [MetadataInfoComponent,
69
+ BadgeComponent,
70
+ MaxLinesComponent,
71
+ TextInputComponent], exports: [MetadataInfoComponent,
71
72
  ContentGhostComponent,
72
73
  DownloadItemComponent,
73
74
  DownloadsListComponent,
@@ -83,7 +84,6 @@ export class UiElementsModule {
83
84
  AvatarComponent,
84
85
  UserPreviewComponent,
85
86
  PaginationButtonsComponent,
86
- MaxLinesComponent,
87
87
  RecordApiFormComponent,
88
88
  MarkdownParserComponent,
89
89
  UserFeedbackItemComponent,
@@ -98,8 +98,11 @@ export class UiElementsModule {
98
98
  RouterModule,
99
99
  UiInputsModule,
100
100
  FormsModule,
101
+ PopoverComponent,
101
102
  ThumbnailComponent,
102
- BadgeComponent] }); }
103
+ BadgeComponent,
104
+ MaxLinesComponent,
105
+ TextInputComponent] }); }
103
106
  }
104
107
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UiElementsModule, decorators: [{
105
108
  type: NgModule,
@@ -116,10 +119,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
116
119
  UiInputsModule,
117
120
  FormsModule,
118
121
  NgOptimizedImage,
122
+ PopoverComponent,
119
123
  MarkdownParserComponent,
120
124
  ThumbnailComponent,
121
125
  TimeSincePipe,
122
126
  BadgeComponent,
127
+ MaxLinesComponent,
128
+ TextInputComponent,
123
129
  ],
124
130
  declarations: [
125
131
  MetadataInfoComponent,
@@ -138,7 +144,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
138
144
  UserPreviewComponent,
139
145
  GnUiLinkifyDirective,
140
146
  PaginationButtonsComponent,
141
- MaxLinesComponent,
142
147
  RecordApiFormComponent,
143
148
  UserFeedbackItemComponent,
144
149
  ImageOverlayPreviewComponent,
@@ -160,7 +165,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
160
165
  AvatarComponent,
161
166
  UserPreviewComponent,
162
167
  PaginationButtonsComponent,
163
- MaxLinesComponent,
164
168
  RecordApiFormComponent,
165
169
  MarkdownParserComponent,
166
170
  UserFeedbackItemComponent,
@@ -168,4 +172,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
168
172
  ],
169
173
  }]
170
174
  }] });
171
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZWxlbWVudHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL3VpLWVsZW1lbnRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFBO0FBQ2xGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFBO0FBQ2hHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFBO0FBQ3hGLE9BQU8sRUFBRSx3QkFB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ZUFBZSxDQUFDLFFBQVEsRUFBRTt3QkFDMUIsZ0JBQWdCO3dCQUNoQixZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsV0FBVzt3QkFDWCxnQkFBZ0I7d0JBQ2hCLHVCQUF1Qjt3QkFDdkIsa0JBQWtCO3dCQUNsQixhQUFhO3dCQUNiLGNBQWM7cUJBQ2Y7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLHNCQUFzQjt3QkFDdEIsZ0JBQWdCO3dCQUNoQiwwQkFBMEI7d0JBQzFCLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLDRCQUE0Qjt3QkFDNUIsY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixvQkFBb0I7d0JBQ3BCLDBCQUEwQjt3QkFDMUIsaUJBQWlCO3dCQUNqQixzQkFBc0I7d0JBQ3RCLHlCQUF5Qjt3QkFDekIsNEJBQTRCO3FCQUM3QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsc0JBQXNCO3dCQUN0QixnQkFBZ0I7d0JBQ2hCLDBCQUEwQjt3QkFDMUIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsNEJBQTRCO3dCQUM1QixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsMEJBQTBCO3dCQUMxQixpQkFBaUI7d0JBQ2pCLHNCQUFzQjt3QkFDdEIsdUJBQXVCO3dCQUN2Qix5QkFBeUI7d0JBQ3pCLDRCQUE0QjtxQkFDN0I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIE5nT3B0aW1pemVkSW1hZ2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJ1xuaW1wb3J0IHsgVXRpbFNoYXJlZE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHsgTWV0YWRhdGFJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1pbmZvL21ldGFkYXRhLWluZm8uY29tcG9uZW50J1xuaW1wb3J0IHsgQ29udGVudEdob3N0Q29tcG9uZW50IH0gZnJvbSAnLi9jb250ZW50LWdob3N0L2NvbnRlbnQtZ2hvc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgRG93bmxvYWRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9kb3dubG9hZC1pdGVtL2Rvd25sb2FkLWl0ZW0uY29tcG9uZW50J1xuaW1wb3J0IHsgRG93bmxvYWRzTGlzdENvbXBvbmVudCB9IGZyb20gJy4vZG93bmxvYWRzLWxpc3QvZG93bmxvYWRzLWxpc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgQXBpQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vYXBpLWNhcmQvYXBpLWNhcmQuY29tcG9uZW50J1xuaW1wb3J0IHsgVWlXaWRnZXRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS93aWRnZXRzL3NyYydcbmltcG9ydCB7IFVpTGF5b3V0TW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IFJlbGF0ZWRSZWNvcmRDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9yZWxhdGVkLXJlY29yZC1jYXJkL3JlbGF0ZWQtcmVjb3JkLWNhcmQuY29tcG9uZW50J1xuaW1wb3J0IHsgTWV0YWRhdGFDb250YWN0Q29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1jb250YWN0L21ldGFkYXRhLWNvbnRhY3QuY29tcG9uZW50J1xuaW1wb3J0IHsgTWV0YWRhdGFDYXRhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1jYXRhbG9nL21ldGFkYXRhLWNhdGFsb2cuY29tcG9uZW50J1xuaW1wb3J0IHsgTWV0YWRhdGFRdWFsaXR5Q29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1xdWFsaXR5L21ldGFkYXRhLXF1YWxpdHkuY29tcG9uZW50J1xuaW1wb3J0IHsgTWV0YWRhdGFRdWFsaXR5SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vbWV0YWRhdGEtcXVhbGl0eS1pdGVtL21ldGFkYXRhLXF1YWxpdHktaXRlbS5jb21wb25lbnQnXG5pbXBvcnQgeyBFcnJvckNvbXBvbmVudCB9IGZyb20gJy4vZXJyb3IvZXJyb3IuY29tcG9uZW50J1xuaW1wb3J0IHsgUGFnaW5hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudCdcbmltcG9ydCB7IFRodW1ibmFpbENvbXBvbmVudCB9IGZyb20gJy4vdGh1bWJuYWlsL3RodW1ibmFpbC5jb21wb25lbnQnXG5pbXBvcnQgeyBCYWRnZUNvbXBvbmVudCwgVWlJbnB1dHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgQXZhdGFyQ29tcG9uZW50IH0gZnJvbSAnLi9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudCdcbmltcG9ydCB7IFVzZXJQcmV2aWV3Q29tcG9uZW50IH0gZnJvbSAnLi91c2VyLXByZXZpZXcvdXNlci1wcmV2aWV3LmNvbXBvbmVudCdcbmltcG9ydCB7IEduVWlMaW5raWZ5RGlyZWN0aXZlIH0gZnJvbSAnLi9tZXRhZGF0YS1pbmZvL2xpbmtpZnkuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgUGFnaW5hdGlvbkJ1dHRvbnNDb21wb25lbnQgfSBmcm9tICcuL3BhZ2luYXRpb24tYnV0dG9ucy9wYWdpbmF0aW9uLWJ1dHRvbnMuY29tcG9uZW50J1xuaW1wb3J0IHsgTWF4TGluZXNDb21wb25lbnQgfSBmcm9tICcuL21heC1saW5lcy9tYXgtbGluZXMuY29tcG9uZW50J1xuaW1wb3J0IHsgUmVjb3JkQXBpRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vcmVjb3JkLWFwaS1mb3JtL3JlY29yZC1hcGktZm9ybS5jb21wb25lbnQnXG5pbXBvcnQgeyBNYXJrZG93blBhcnNlckNvbXBvbmVudCB9IGZyb20gJy4vbWFya2Rvd24tcGFyc2VyL21hcmtkb3duLXBhcnNlci5jb21wb25lbnQnXG5pbXBvcnQgeyBJbWFnZU92ZXJsYXlQcmV2aWV3Q29tcG9uZW50IH0gZnJvbSAnLi9pbWFnZS1vdmVybGF5LXByZXZpZXcvaW1hZ2Utb3ZlcmxheS1wcmV2aWV3LmNvbXBvbmVudCdcbmltcG9ydCB7IFVzZXJGZWVkYmFja0l0ZW1Db21wb25lbnQgfSBmcm9tICcuL3VzZXItZmVlZGJhY2staXRlbS91c2VyLWZlZWRiYWNrLWl0ZW0uY29tcG9uZW50J1xuaW1wb3J0IHsgVGltZVNpbmNlUGlwZSB9IGZyb20gJy4vdXNlci1mZWVkYmFjay1pdGVtL3RpbWUtc2luY2UucGlwZSdcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgVWlXaWRnZXRzTW9kdWxlLFxuICAgIFVpTGF5b3V0TW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZS5mb3JDaGlsZCgpLFxuICAgIFV0aWxTaGFyZWRNb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlLFxuICAgIFVpSW5wdXRzTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE5nT3B0aW1pemVkSW1hZ2UsXG4gICAgTWFya2Rvd25QYXJzZXJDb21wb25lbnQsXG4gICAgVGh1bWJuYWlsQ29tcG9uZW50LFxuICAgIFRpbWVTaW5jZVBpcGUsXG4gICAgQmFkZ2VDb21wb25lbnQsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIE1ldGFkYXRhSW5mb0NvbXBvbmVudCxcbiAgICBDb250ZW50R2hvc3RDb21wb25lbnQsXG4gICAgRG93bmxvYWRJdGVtQ29tcG9uZW50LFxuICAgIERvd25sb2Fkc0xpc3RDb21wb25lbnQsXG4gICAgQXBpQ2FyZENvbXBvbmVudCxcbiAgICBSZWxhdGVkUmVjb3JkQ2FyZENvbXBvbmVudCxcbiAgICBNZXRhZGF0YUNvbnRhY3RDb21wb25lbnQsXG4gICAgTWV0YWRhdGFDYXRhbG9nQ29tcG9uZW50LFxuICAgIE1ldGFkYXRhUXVhbGl0eUNvbXBvbmVudCxcbiAgICBNZXRhZGF0YVF1YWxpdHlJdGVtQ29tcG9uZW50LFxuICAgIEVycm9yQ29tcG9uZW50LFxuICAgIFBhZ2luYXRpb25Db21wb25lbnQsXG4gICAgQXZhdGFyQ29tcG9uZW50LFxuICAgIFVzZXJQcmV2aWV3Q29tcG9uZW50LFxuICAgIEduVWlMaW5raWZ5RGlyZWN0aXZlLFxuICAgIFBhZ2luYXRpb25CdXR0b25zQ29tcG9uZW50LFxuICAgIE1heExpbmVzQ29tcG9uZW50LFxuICAgIFJlY29yZEFwaUZvcm1Db21wb25lbnQsXG4gICAgVXNlckZlZWRiYWNrSXRlbUNvbXBvbmVudCxcbiAgICBJbWFnZU92ZXJsYXlQcmV2aWV3Q29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgTWV0YWRhdGFJbmZvQ29tcG9uZW50LFxuICAgIENvbnRlbnRHaG9zdENvbXBvbmVudCxcbiAgICBEb3dubG9hZEl0ZW1Db21wb25lbnQsXG4gICAgRG93bmxvYWRzTGlzdENvbXBvbmVudCxcbiAgICBBcGlDYXJkQ29tcG9uZW50LFxuICAgIFJlbGF0ZWRSZWNvcmRDYXJkQ29tcG9uZW50LFxuICAgIE1ldGFkYXRhQ29udGFjdENvbXBvbmVudCxcbiAgICBNZXRhZGF0YUNhdGFsb2dDb21wb25lbnQsXG4gICAgTWV0YWRhdGFRdWFsaXR5Q29tcG9uZW50LFxuICAgIE1ldGFkYXRhUXVhbGl0eUl0ZW1Db21wb25lbnQsXG4gICAgRXJyb3JDb21wb25lbnQsXG4gICAgUGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgICBUaHVtYm5haWxDb21wb25lbnQsXG4gICAgQXZhdGFyQ29tcG9uZW50LFxuICAgIFVzZXJQcmV2aWV3Q29tcG9uZW50LFxuICAgIFBhZ2luYXRpb25CdXR0b25zQ29tcG9uZW50LFxuICAgIE1heExpbmVzQ29tcG9uZW50LFxuICAgIFJlY29yZEFwaUZvcm1Db21wb25lbnQsXG4gICAgTWFya2Rvd25QYXJzZXJDb21wb25lbnQsXG4gICAgVXNlckZlZWRiYWNrSXRlbUNvbXBvbmVudCxcbiAgICBJbWFnZU92ZXJsYXlQcmV2aWV3Q29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBVaUVsZW1lbnRzTW9kdWxlIHt9XG4iXX0=
175
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZWxlbWVudHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL3VpLWVsZW1lbnRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFBO0FBQ2xGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUN0RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDckYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFBO0FBQ2hHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxD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O3dCQUNiLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixjQUFjO3dCQUNkLGVBQWUsQ0FBQyxRQUFRLEVBQUU7d0JBQzFCLGdCQUFnQjt3QkFDaEIsWUFBWTt3QkFDWixjQUFjO3dCQUNkLFdBQVc7d0JBQ1gsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLHVCQUF1Qjt3QkFDdkIsa0JBQWtCO3dCQUNsQixhQUFhO3dCQUNiLGNBQWM7d0JBQ2QsaUJBQWlCO3dCQUNqQixrQkFBa0I7cUJBQ25CO29CQUNELFlBQVksRUFBRTt3QkFDWixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixzQkFBc0I7d0JBQ3RCLGdCQUFnQjt3QkFDaEIsMEJBQTBCO3dCQUMxQix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4Qiw0QkFBNEI7d0JBQzVCLGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsb0JBQW9CO3dCQUNwQiwwQkFBMEI7d0JBQzFCLHNCQUFzQjt3QkFDdEIseUJBQXlCO3dCQUN6Qiw0QkFBNEI7cUJBQzdCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixzQkFBc0I7d0JBQ3RCLGdCQUFnQjt3QkFDaEIsMEJBQTBCO3dCQUMxQix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4Qiw0QkFBNEI7d0JBQzVCLGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQixrQkFBa0I7d0JBQ2xCLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQiwwQkFBMEI7d0JBQzFCLHNCQUFzQjt3QkFDdEIsdUJBQXVCO3dCQUN2Qix5QkFBeUI7d0JBQ3pCLDRCQUE0QjtxQkFDN0I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIE5nT3B0aW1pemVkSW1hZ2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJ1xuaW1wb3J0IHsgVXRpbFNoYXJlZE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHsgTWV0YWRhdGFJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1pbmZvL21ldGFkYXRhLWluZm8uY29tcG9uZW50J1xuaW1wb3J0IHsgQ29udGVudEdob3N0Q29tcG9uZW50IH0gZnJvbSAnLi9jb250ZW50LWdob3N0L2NvbnRlbnQtZ2hvc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgRG93bmxvYWRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9kb3dubG9hZC1pdGVtL2Rvd25sb2FkLWl0ZW0uY29tcG9uZW50J1xuaW1wb3J0IHsgRG93bmxvYWRzTGlzdENvbXBvbmVudCB9IGZyb20gJy4vZG93bmxvYWRzLWxpc3QvZG93bmxvYWRzLWxpc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgQXBpQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vYXBpLWNhcmQvYXBpLWNhcmQuY29tcG9uZW50J1xuaW1wb3J0IHsgUG9wb3ZlckNvbXBvbmVudCwgVWlXaWRnZXRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS93aWRnZXRzL3NyYydcbmltcG9ydCB7IE1heExpbmVzQ29tcG9uZW50LCBVaUxheW91dE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbGF5b3V0L3NyYydcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBSZWxhdGVkUmVjb3JkQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vcmVsYXRlZC1yZWNvcmQtY2FyZC9yZWxhdGVkLXJlY29yZC1jYXJkLmNvbXBvbmVudCdcbmltcG9ydCB7IE1ldGFkYXRhQ29udGFjdENvbXBvbmVudCB9IGZyb20gJy4vbWV0YWRhdGEtY29udGFjdC9tZXRhZGF0YS1jb250YWN0LmNvbXBvbmVudCdcbmltcG9ydCB7IE1ldGFkYXRhQ2F0YWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vbWV0YWRhdGEtY2F0YWxvZy9tZXRhZGF0YS1jYXRhbG9nLmNvbXBvbmVudCdcbmltcG9ydCB7IE1ldGFkYXRhUXVhbGl0eUNvbXBvbmVudCB9IGZyb20gJy4vbWV0YWRhdGEtcXVhbGl0eS9tZXRhZGF0YS1xdWFsaXR5LmNvbXBvbmVudCdcbmltcG9ydCB7IE1ldGFkYXRhUXVhbGl0eUl0ZW1Db21wb25lbnQgfSBmcm9tICcuL21ldGFkYXRhLXF1YWxpdHktaXRlbS9tZXRhZGF0YS1xdWFsaXR5LWl0ZW0uY29tcG9uZW50J1xuaW1wb3J0IHsgRXJyb3JDb21wb25lbnQgfSBmcm9tICcuL2Vycm9yL2Vycm9yLmNvbXBvbmVudCdcbmltcG9ydCB7IFBhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQnXG5pbXBvcnQgeyBUaHVtYm5haWxDb21wb25lbnQgfSBmcm9tICcuL3RodW1ibmFpbC90aHVtYm5haWwuY29tcG9uZW50J1xuaW1wb3J0IHtcbiAgQmFkZ2VDb21wb25lbnQsXG4gIFRleHRJbnB1dENvbXBvbmVudCxcbiAgVWlJbnB1dHNNb2R1bGUsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBBdmF0YXJDb21wb25lbnQgfSBmcm9tICcuL2F2YXRhci9hdmF0YXIuY29tcG9uZW50J1xuaW1wb3J0IHsgVXNlclByZXZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VzZXItcHJldmlldy91c2VyLXByZXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgR25VaUxpbmtpZnlEaXJlY3RpdmUgfSBmcm9tICcuL21ldGFkYXRhLWluZm8vbGlua2lmeS5kaXJlY3RpdmUnXG5pbXBvcnQgeyBQYWdpbmF0aW9uQnV0dG9uc0NvbXBvbmVudCB9IGZyb20gJy4vcGFnaW5hdGlvbi1idXR0b25zL3BhZ2luYXRpb24tYnV0dG9ucy5jb21wb25lbnQnXG5pbXBvcnQgeyBSZWNvcmRBcGlGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9yZWNvcmQtYXBpLWZvcm0vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudCdcbmltcG9ydCB7IE1hcmtkb3duUGFyc2VyQ29tcG9uZW50IH0gZnJvbSAnLi9tYXJrZG93bi1wYXJzZXIvbWFya2Rvd24tcGFyc2VyLmNvbXBvbmVudCdcbmltcG9ydCB7IEltYWdlT3ZlcmxheVByZXZpZXdDb21wb25lbnQgfSBmcm9tICcuL2ltYWdlLW92ZXJsYXktcHJldmlldy9pbWFnZS1vdmVybGF5LXByZXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgVXNlckZlZWRiYWNrSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vdXNlci1mZWVkYmFjay1pdGVtL3VzZXItZmVlZGJhY2staXRlbS5jb21wb25lbnQnXG5pbXBvcnQgeyBUaW1lU2luY2VQaXBlIH0gZnJvbSAnLi91c2VyLWZlZWRiYWNrLWl0ZW0vdGltZS1zaW5jZS5waXBlJ1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBVaVdpZGdldHNNb2R1bGUsXG4gICAgVWlMYXlvdXRNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLmZvckNoaWxkKCksXG4gICAgVXRpbFNoYXJlZE1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gICAgVWlJbnB1dHNNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTmdPcHRpbWl6ZWRJbWFnZSxcbiAgICBQb3BvdmVyQ29tcG9uZW50LFxuICAgIE1hcmtkb3duUGFyc2VyQ29tcG9uZW50LFxuICAgIFRodW1ibmFpbENvbXBvbmVudCxcbiAgICBUaW1lU2luY2VQaXBlLFxuICAgIEJhZGdlQ29tcG9uZW50LFxuICAgIE1heExpbmVzQ29tcG9uZW50LFxuICAgIFRleHRJbnB1dENvbXBvbmVudCxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgTWV0YWRhdGFJbmZvQ29tcG9uZW50LFxuICAgIENvbnRlbnRHaG9zdENvbXBvbmVudCxcbiAgICBEb3dubG9hZEl0ZW1Db21wb25lbnQsXG4gICAgRG93bmxvYWRzTGlzdENvbXBvbmVudCxcbiAgICBBcGlDYXJkQ29tcG9uZW50LFxuICAgIFJlbGF0ZWRSZWNvcmRDYXJkQ29tcG9uZW50LFxuICAgIE1ldGFkYXRhQ29udGFjdENvbXBvbmVudCxcbiAgICBNZXRhZGF0YUNhdGFsb2dDb21wb25lbnQsXG4gICAgTWV0YWRhdGFRdWFsaXR5Q29tcG9uZW50LFxuICAgIE1ldGFkYXRhUXVhbGl0eUl0ZW1Db21wb25lbnQsXG4gICAgRXJyb3JDb21wb25lbnQsXG4gICAgUGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgICBBdmF0YXJDb21wb25lbnQsXG4gICAgVXNlclByZXZpZXdDb21wb25lbnQsXG4gICAgR25VaUxpbmtpZnlEaXJlY3RpdmUsXG4gICAgUGFnaW5hdGlvbkJ1dHRvbnNDb21wb25lbnQsXG4gICAgUmVjb3JkQXBpRm9ybUNvbXBvbmVudCxcbiAgICBVc2VyRmVlZGJhY2tJdGVtQ29tcG9uZW50LFxuICAgIEltYWdlT3ZlcmxheVByZXZpZXdDb21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBNZXRhZGF0YUluZm9Db21wb25lbnQsXG4gICAgQ29udGVudEdob3N0Q29tcG9uZW50LFxuICAgIERvd25sb2FkSXRlbUNvbXBvbmVudCxcbiAgICBEb3dubG9hZHNMaXN0Q29tcG9uZW50LFxuICAgIEFwaUNhcmRDb21wb25lbnQsXG4gICAgUmVsYXRlZFJlY29yZENhcmRDb21wb25lbnQsXG4gICAgTWV0YWRhdGFDb250YWN0Q29tcG9uZW50LFxuICAgIE1ldGFkYXRhQ2F0YWxvZ0NvbXBvbmVudCxcbiAgICBNZXRhZGF0YVF1YWxpdHlDb21wb25lbnQsXG4gICAgTWV0YWRhdGFRdWFsaXR5SXRlbUNvbXBvbmVudCxcbiAgICBFcnJvckNvbXBvbmVudCxcbiAgICBQYWdpbmF0aW9uQ29tcG9uZW50LFxuICAgIFRodW1ibmFpbENvbXBvbmVudCxcbiAgICBBdmF0YXJDb21wb25lbnQsXG4gICAgVXNlclByZXZpZXdDb21wb25lbnQsXG4gICAgUGFnaW5hdGlvbkJ1dHRvbnNDb21wb25lbnQsXG4gICAgUmVjb3JkQXBpRm9ybUNvbXBvbmVudCxcbiAgICBNYXJrZG93blBhcnNlckNvbXBvbmVudCxcbiAgICBVc2VyRmVlZGJhY2tJdGVtQ29tcG9uZW50LFxuICAgIEltYWdlT3ZlcmxheVByZXZpZXdDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFVpRWxlbWVudHNNb2R1bGUge31cbiJdfQ==
@@ -7,14 +7,14 @@ export class UserPreviewComponent {
7
7
  return (this.user.name + ' ' + this.user.surname).trim();
8
8
  }
9
9
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UserPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: UserPreviewComponent, selector: "gn-ui-user-preview", inputs: { user: "user", avatarPlaceholder: "avatarPlaceholder" }, ngImport: i0, template: "<figure class=\"text-center\">\n <div\n class=\"w-12 h-12 border border-primary rounded-full capitalize\"\n [matTooltip]=\"userFullName\"\n >\n <gn-ui-avatar\n [avatarUrl]=\"user.profileIcon\"\n [avatarPlaceholder]=\"avatarPlaceholder\"\n ></gn-ui-avatar>\n </div>\n</figure>\n", dependencies: [{ kind: "directive", type: i1.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i2.AvatarComponent, selector: "gn-ui-avatar", inputs: ["avatarUrl", "avatarPlaceholder"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: UserPreviewComponent, selector: "gn-ui-user-preview", inputs: { user: "user", avatarPlaceholder: "avatarPlaceholder" }, ngImport: i0, template: "<figure class=\"text-center\">\n <div\n class=\"w-10 h-10 border border-primary rounded-full capitalize\"\n [matTooltip]=\"userFullName\"\n >\n <gn-ui-avatar\n [avatarUrl]=\"user.profileIcon\"\n [avatarPlaceholder]=\"avatarPlaceholder\"\n ></gn-ui-avatar>\n </div>\n</figure>\n", dependencies: [{ kind: "directive", type: i1.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i2.AvatarComponent, selector: "gn-ui-avatar", inputs: ["avatarUrl", "avatarPlaceholder"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
11
11
  }
12
12
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UserPreviewComponent, decorators: [{
13
13
  type: Component,
14
- args: [{ selector: 'gn-ui-user-preview', changeDetection: ChangeDetectionStrategy.OnPush, template: "<figure class=\"text-center\">\n <div\n class=\"w-12 h-12 border border-primary rounded-full capitalize\"\n [matTooltip]=\"userFullName\"\n >\n <gn-ui-avatar\n [avatarUrl]=\"user.profileIcon\"\n [avatarPlaceholder]=\"avatarPlaceholder\"\n ></gn-ui-avatar>\n </div>\n</figure>\n" }]
14
+ args: [{ selector: 'gn-ui-user-preview', changeDetection: ChangeDetectionStrategy.OnPush, template: "<figure class=\"text-center\">\n <div\n class=\"w-10 h-10 border border-primary rounded-full capitalize\"\n [matTooltip]=\"userFullName\"\n >\n <gn-ui-avatar\n [avatarUrl]=\"user.profileIcon\"\n [avatarPlaceholder]=\"avatarPlaceholder\"\n ></gn-ui-avatar>\n </div>\n</figure>\n" }]
15
15
  }], propDecorators: { user: [{
16
16
  type: Input
17
17
  }], avatarPlaceholder: [{
18
18
  type: Input
19
19
  }] } });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi91c2VyLXByZXZpZXcvdXNlci1wcmV2aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi91c2VyLXByZXZpZXcvdXNlci1wcmV2aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBOzs7O0FBUXpFLE1BQU0sT0FBTyxvQkFBb0I7SUFJL0IsSUFBSSxZQUFZO1FBQ2QsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFBO0lBQzFELENBQUM7K0dBTlUsb0JBQW9CO21HQUFwQixvQkFBb0IsNEhDUmpDLGdUQVdBOzs0RkRIYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUViLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLElBQUk7c0JBQVosS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBVc2VyTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC91c2VyL3VzZXIubW9kZWwnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLXVzZXItcHJldmlldycsXG4gIHRlbXBsYXRlVXJsOiAnLi91c2VyLXByZXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVXNlclByZXZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSB1c2VyOiBVc2VyTW9kZWxcbiAgQElucHV0KCkgYXZhdGFyUGxhY2Vob2xkZXI/OiBzdHJpbmdcblxuICBnZXQgdXNlckZ1bGxOYW1lKCkge1xuICAgIHJldHVybiAodGhpcy51c2VyLm5hbWUgKyAnICcgKyB0aGlzLnVzZXIuc3VybmFtZSkudHJpbSgpXG4gIH1cbn1cbiIsIjxmaWd1cmUgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJ3LTEyIGgtMTIgYm9yZGVyIGJvcmRlci1wcmltYXJ5IHJvdW5kZWQtZnVsbCBjYXBpdGFsaXplXCJcbiAgICBbbWF0VG9vbHRpcF09XCJ1c2VyRnVsbE5hbWVcIlxuICA+XG4gICAgPGduLXVpLWF2YXRhclxuICAgICAgW2F2YXRhclVybF09XCJ1c2VyLnByb2ZpbGVJY29uXCJcbiAgICAgIFthdmF0YXJQbGFjZWhvbGRlcl09XCJhdmF0YXJQbGFjZWhvbGRlclwiXG4gICAgPjwvZ24tdWktYXZhdGFyPlxuICA8L2Rpdj5cbjwvZmlndXJlPlxuIl19
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi91c2VyLXByZXZpZXcvdXNlci1wcmV2aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi91c2VyLXByZXZpZXcvdXNlci1wcmV2aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBOzs7O0FBUXpFLE1BQU0sT0FBTyxvQkFBb0I7SUFJL0IsSUFBSSxZQUFZO1FBQ2QsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFBO0lBQzFELENBQUM7K0dBTlUsb0JBQW9CO21HQUFwQixvQkFBb0IsNEhDUmpDLGdUQVdBOzs0RkRIYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUViLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLElBQUk7c0JBQVosS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBVc2VyTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC91c2VyL3VzZXIubW9kZWwnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLXVzZXItcHJldmlldycsXG4gIHRlbXBsYXRlVXJsOiAnLi91c2VyLXByZXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVXNlclByZXZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSB1c2VyOiBVc2VyTW9kZWxcbiAgQElucHV0KCkgYXZhdGFyUGxhY2Vob2xkZXI/OiBzdHJpbmdcblxuICBnZXQgdXNlckZ1bGxOYW1lKCkge1xuICAgIHJldHVybiAodGhpcy51c2VyLm5hbWUgKyAnICcgKyB0aGlzLnVzZXIuc3VybmFtZSkudHJpbSgpXG4gIH1cbn1cbiIsIjxmaWd1cmUgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJ3LTEwIGgtMTAgYm9yZGVyIGJvcmRlci1wcmltYXJ5IHJvdW5kZWQtZnVsbCBjYXBpdGFsaXplXCJcbiAgICBbbWF0VG9vbHRpcF09XCJ1c2VyRnVsbE5hbWVcIlxuICA+XG4gICAgPGduLXVpLWF2YXRhclxuICAgICAgW2F2YXRhclVybF09XCJ1c2VyLnByb2ZpbGVJY29uXCJcbiAgICAgIFthdmF0YXJQbGFjZWhvbGRlcl09XCJhdmF0YXJQbGFjZWhvbGRlclwiXG4gICAgPjwvZ24tdWktYXZhdGFyPlxuICA8L2Rpdj5cbjwvZmlndXJlPlxuIl19
@@ -19,6 +19,11 @@ export * from './lib/star-toggle/star-toggle.component';
19
19
  export * from './lib/text-area/text-area.component';
20
20
  export * from './lib/text-input/text-input.component';
21
21
  export * from './lib/ui-inputs.module';
22
+ export * from './lib/url-input/url-input.component';
22
23
  export * from './lib/viewport-intersector/viewport-intersector.component';
23
24
  export * from './lib/previous-next-buttons/previous-next-buttons.component';
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQ0FBMkMsQ0FBQTtBQUN6RCxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsK0JBQStCLENBQUE7QUFDN0MsY0FBYywyQ0FBMkMsQ0FBQTtBQUN6RCxjQUFjLG1DQUFtQyxDQUFBO0FBQ2pELGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLHlDQUF5QyxDQUFBO0FBQ3ZELGNBQWMscURBQXFELENBQUE7QUFDbkUsY0FBYyxtRUFBbUUsQ0FBQTtBQUNqRixjQUFjLDJEQUEyRCxDQUFBO0FBQ3pFLGNBQWMsdURBQXVELENBQUE7QUFDckUsY0FBYyxxREFBcUQsQ0FBQTtBQUNuRSxjQUFjLGlEQUFpRCxDQUFBO0FBQy9ELGNBQWMsK0NBQStDLENBQUE7QUFDN0QsY0FBYyxxREFBcUQsQ0FBQTtBQUNuRSxjQUFjLDJDQUEyQyxDQUFBO0FBQ3pELGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYyxxQ0FBcUMsQ0FBQTtBQUNuRCxjQUFjLHVDQUF1QyxDQUFBO0FBQ3JELGNBQWMsd0JBQXdCLENBQUE7QUFDdEMsY0FBYywyREFBMkQsQ0FBQTtBQUN6RSxjQUFjLDZEQUE2RCxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9iYWRnZS9iYWRnZS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NoZWNrLXRvZ2dsZS9jaGVjay10b2dnbGUuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hpcHMtaW5wdXQvY2hpcHMtaW5wdXQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29weS10ZXh0LWJ1dHRvbi9jb3B5LXRleHQtYnV0dG9uLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGUtcmFuZ2UtcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyYWctYW5kLWRyb3AtZmlsZS1pbnB1dC9kcmFnLWFuZC1kcm9wLWZpbGUtaW5wdXQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24tbXVsdGlzZWxlY3QvZHJvcGRvd24tbXVsdGlzZWxlY3QuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24tbXVsdGlzZWxlY3QvZHJvcGRvd24tbXVsdGlzZWxlY3QubW9kZWwnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kcm9wZG93bi1zZWxlY3Rvci9kcm9wZG93bi1zZWxlY3Rvci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kcm9wZG93bi1zZWxlY3Rvci9kcm9wZG93bi1zZWxlY3Rvci5tb2RlbCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VkaXRhYmxlLWxhYmVsL2VkaXRhYmxlLWxhYmVsLmRpcmVjdGl2ZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL25hdmlnYXRpb24tYnV0dG9uL25hdmlnYXRpb24tYnV0dG9uLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlYXJjaC1pbnB1dC9zZWFyY2gtaW5wdXQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc3Rhci10b2dnbGUvc3Rhci10b2dnbGUuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGV4dC1hcmVhL3RleHQtYXJlYS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi90ZXh0LWlucHV0L3RleHQtaW5wdXQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWktaW5wdXRzLm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZpZXdwb3J0LWludGVyc2VjdG9yL3ZpZXdwb3J0LWludGVyc2VjdG9yLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ByZXZpb3VzLW5leHQtYnV0dG9ucy9wcmV2aW91cy1uZXh0LWJ1dHRvbnMuY29tcG9uZW50J1xuIl19
25
+ export * from './lib/switch-toggle/switch-toggle.component';
26
+ export * from './lib/file-input/file-input.component';
27
+ export * from './lib/image-input/image-input.component';
28
+ export * from './lib/url-input/url-input.component';
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQ0FBMkMsQ0FBQTtBQUN6RCxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsK0JBQStCLENBQUE7QUFDN0MsY0FBYywyQ0FBMkMsQ0FBQTtBQUN6RCxjQUFjLG1DQUFtQyxDQUFBO0FBQ2pELGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLHlDQUF5QyxDQUFBO0FBQ3ZELGNBQWMscURBQXFELENBQUE7QUFDbkUsY0FBYyxtRUFBbUUsQ0FBQTtBQUNqRixjQUFjLDJEQUEyRCxDQUFBO0FBQ3pFLGNBQWMsdURBQXVELENBQUE7QUFDckUsY0FBYyxxREFBcUQsQ0FBQTtBQUNuRSxjQUFjLGlEQUFpRCxDQUFBO0FBQy9ELGNBQWMsK0NBQStDLENBQUE7QUFDN0QsY0FBYyxxREFBcUQsQ0FBQTtBQUNuRSxjQUFjLDJDQUEyQyxDQUFBO0FBQ3pELGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYyxxQ0FBcUMsQ0FBQTtBQUNuRCxjQUFjLHVDQUF1QyxDQUFBO0FBQ3JELGNBQWMsd0JBQXdCLENBQUE7QUFDdEMsY0FBYyxxQ0FBcUMsQ0FBQTtBQUNuRCxjQUFjLDJEQUEyRCxDQUFBO0FBQ3pFLGNBQWMsNkRBQTZELENBQUE7QUFDM0UsY0FBYyw2Q0FBNkMsQ0FBQTtBQUMzRCxjQUFjLHVDQUF1QyxDQUFBO0FBQ3JELGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYyxxQ0FBcUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYmFkZ2UvYmFkZ2UuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaGVjay10b2dnbGUvY2hlY2stdG9nZ2xlLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NoaXBzLWlucHV0L2NoaXBzLWlucHV0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcHktdGV4dC1idXR0b24vY29weS10ZXh0LWJ1dHRvbi5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLXJhbmdlLXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kcmFnLWFuZC1kcm9wLWZpbGUtaW5wdXQvZHJhZy1hbmQtZHJvcC1maWxlLWlucHV0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Ryb3Bkb3duLW11bHRpc2VsZWN0L2Ryb3Bkb3duLW11bHRpc2VsZWN0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Ryb3Bkb3duLW11bHRpc2VsZWN0L2Ryb3Bkb3duLW11bHRpc2VsZWN0Lm1vZGVsJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24tc2VsZWN0b3IvZHJvcGRvd24tc2VsZWN0b3IuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24tc2VsZWN0b3IvZHJvcGRvd24tc2VsZWN0b3IubW9kZWwnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9lZGl0YWJsZS1sYWJlbC9lZGl0YWJsZS1sYWJlbC5kaXJlY3RpdmUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uYXZpZ2F0aW9uLWJ1dHRvbi9uYXZpZ2F0aW9uLWJ1dHRvbi5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZWFyY2gtaW5wdXQvc2VhcmNoLWlucHV0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXItdG9nZ2xlL3N0YXItdG9nZ2xlLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RleHQtYXJlYS90ZXh0LWFyZWEuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGV4dC1pbnB1dC90ZXh0LWlucHV0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpLWlucHV0cy5tb2R1bGUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi91cmwtaW5wdXQvdXJsLWlucHV0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZpZXdwb3J0LWludGVyc2VjdG9yL3ZpZXdwb3J0LWludGVyc2VjdG9yLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ByZXZpb3VzLW5leHQtYnV0dG9ucy9wcmV2aW91cy1uZXh0LWJ1dHRvbnMuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc3dpdGNoLXRvZ2dsZS9zd2l0Y2gtdG9nZ2xlLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZpbGUtaW5wdXQvZmlsZS1pbnB1dC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbWFnZS1pbnB1dC9pbWFnZS1pbnB1dC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi91cmwtaW5wdXQvdXJsLWlucHV0LmNvbXBvbmVudCdcbiJdfQ==
@@ -1,52 +1,80 @@
1
1
  import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
2
- import { UntypedFormControl } from '@angular/forms';
3
- import { MatAutocomplete, MatAutocompleteTrigger, } from '@angular/material/autocomplete';
4
- import { merge, of, ReplaySubject, Subscription } from 'rxjs';
5
- import { catchError, debounceTime, distinctUntilChanged, filter, finalize, first, map, switchMap, take, tap, } from 'rxjs/operators';
2
+ import { ReactiveFormsModule, UntypedFormControl } from '@angular/forms';
3
+ import { MatAutocomplete, MatAutocompleteModule, MatAutocompleteTrigger, } from '@angular/material/autocomplete';
4
+ import { first, merge, of, ReplaySubject, Subscription } from 'rxjs';
5
+ import { catchError, debounceTime, distinctUntilChanged, filter, finalize, map, switchMap, take, tap, } from 'rxjs/operators';
6
+ import { MatIconModule } from '@angular/material/icon';
7
+ import { PopupAlertComponent } from '../../../../../../libs/ui/widgets/src';
8
+ import { CommonModule } from '@angular/common';
9
+ import { TranslateModule } from '@ngx-translate/core';
10
+ import { ButtonComponent } from '../button/button.component';
6
11
  import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/common";
8
- import * as i2 from "@ngx-translate/core";
9
- import * as i3 from "@angular/forms";
10
- import * as i4 from "@angular/material/autocomplete";
11
- import * as i5 from "@angular/material/core";
12
- import * as i6 from "@angular/material/icon";
13
- import * as i7 from "../../../../widgets/src/lib/popup-alert/popup-alert.component";
12
+ import * as i1 from "@angular/material/icon";
13
+ import * as i2 from "@angular/material/autocomplete";
14
+ import * as i3 from "@angular/material/core";
15
+ import * as i4 from "@angular/common";
16
+ import * as i5 from "@ngx-translate/core";
17
+ import * as i6 from "@angular/forms";
14
18
  export class AutocompleteComponent {
15
19
  constructor(cdRef) {
16
20
  this.cdRef = cdRef;
17
21
  this.clearOnSelection = false;
22
+ this.preventCompleteOnSelection = false;
18
23
  this.autoFocus = false;
24
+ this.minCharacterCount = 3;
25
+ // this will show a submit button next to the input; if false, a search icon will appear on the left
26
+ this.allowSubmit = false;
19
27
  this.itemSelected = new EventEmitter();
20
28
  this.inputSubmitted = new EventEmitter();
21
29
  this.inputCleared = new EventEmitter();
22
30
  this.control = new UntypedFormControl();
23
- this.subscription = new Subscription();
24
31
  this.cancelEnter = true;
25
32
  this.selectionSubject = new ReplaySubject(1);
26
33
  this.lastInputValue$ = new ReplaySubject(1);
27
34
  this.error = null;
28
- this.displayWithFn = (item) => item;
35
+ this.subscription = new Subscription();
36
+ this.displayWithFn = (item) => item.toString();
37
+ this.displayWithFnInternal = (item) => {
38
+ if (item === null || item === undefined)
39
+ return null;
40
+ return this.displayWithFn(item);
41
+ };
29
42
  }
30
43
  ngOnChanges(changes) {
31
44
  const { value } = changes;
32
45
  if (value) {
33
- const previousTextValue = this.displayWithFn(value.previousValue);
34
- const currentTextValue = this.displayWithFn(value.currentValue);
46
+ const previousTextValue = this.displayWithFnInternal(value.previousValue);
47
+ const currentTextValue = this.displayWithFnInternal(value.currentValue);
35
48
  if (previousTextValue !== currentTextValue) {
36
49
  this.updateInputValue(value.currentValue);
37
50
  }
38
51
  }
39
52
  }
40
53
  ngOnInit() {
41
- this.suggestions$ = merge(this.control.valueChanges.pipe(filter((value) => typeof value === 'string'), filter((value) => value.length > 2), debounceTime(400), distinctUntilChanged(), tap(() => (this.searching = true))), this.control.valueChanges.pipe(filter((value) => typeof value === 'object' && value.title), map((item) => item.title))).pipe(switchMap((value) => (value ? this.action(value) : of([]))), catchError((error) => {
54
+ const newValue$ = merge(of(''), this.inputCleared.pipe(map(() => '')), this.control.valueChanges.pipe(filter((value) => typeof value === 'string'), distinctUntilChanged(), debounceTime(400)));
55
+ const externalValueChange$ = this.control.valueChanges.pipe(filter((value) => typeof value === 'object' && value.title), map((item) => item.title));
56
+ // this observable emits arrays of suggestions loaded using the given action
57
+ const suggestionsFromAction = merge(newValue$.pipe(filter((value) => value.length >= this.minCharacterCount)), externalValueChange$).pipe(tap(() => {
58
+ this.searching = true;
59
+ this.error = null;
60
+ }), switchMap((value) => this.action(value)), catchError((error) => {
42
61
  this.error = error.message;
43
62
  return of([]);
44
63
  }), finalize(() => (this.searching = false)));
45
- this.subscription = this.control.valueChanges.subscribe((any) => {
64
+ this.suggestions$ = merge(suggestionsFromAction,
65
+ // if a new value is under the min char count, clear suggestions
66
+ newValue$.pipe(filter((value) => value.length < this.minCharacterCount), map(() => [])));
67
+ // close the panel whenever suggestions are cleared
68
+ this.subscription.add(this.suggestions$
69
+ .pipe(filter((suggestions) => suggestions.length === 0))
70
+ .subscribe(() => {
71
+ this.triggerRef?.closePanel();
72
+ }));
73
+ this.subscription.add(this.control.valueChanges.subscribe((any) => {
46
74
  if (any !== '') {
47
75
  this.cancelEnter = false;
48
76
  }
49
- });
77
+ }));
50
78
  this.control.valueChanges
51
79
  .pipe(filter((value) => typeof value === 'string'))
52
80
  .subscribe(this.lastInputValue$);
@@ -59,7 +87,7 @@ export class AutocompleteComponent {
59
87
  }
60
88
  }
61
89
  ngOnDestroy() {
62
- this.subscription.unsubscribe();
90
+ this.subscription?.unsubscribe();
63
91
  }
64
92
  updateInputValue(value) {
65
93
  if (value) {
@@ -76,33 +104,49 @@ export class AutocompleteComponent {
76
104
  .pipe(take(1))
77
105
  .subscribe((selection) => selection && selection.option.deselect());
78
106
  this.inputRef.nativeElement.focus();
79
- this.triggerRef.closePanel();
80
107
  }
81
108
  handleEnter(any) {
82
- if (!this.cancelEnter) {
109
+ if (!this.cancelEnter && this.allowSubmit) {
83
110
  this.inputSubmitted.emit(any);
84
- this.triggerRef.closePanel();
85
111
  }
86
112
  }
87
113
  handleClickSearch() {
88
114
  this.inputSubmitted.emit(this.inputRef.nativeElement.value);
89
- this.triggerRef.closePanel();
90
115
  }
116
+ /**
117
+ * This function is triggered when an item is selected in the list of displayed items.
118
+ * If preventCompleteOnSelection is true then the input will be left as entered by the user.
119
+ * If preventCompleteOnSelection is false (by default) then the input will be completed with the item selected by the user.
120
+ * If clearOnSelection is true then the input will be cleared upon selection.
121
+ * @param event
122
+ */
91
123
  handleSelection(event) {
92
124
  this.cancelEnter = true;
93
125
  this.itemSelected.emit(event.option.value);
94
- if (this.clearOnSelection) {
95
- this.lastInputValue$.pipe(first()).subscribe((any) => {
96
- this.inputRef.nativeElement.value = any;
126
+ if (this.preventCompleteOnSelection) {
127
+ this.lastInputValue$.pipe(first()).subscribe((lastInputValue) => {
128
+ this.inputRef.nativeElement.value = lastInputValue;
97
129
  });
130
+ return;
131
+ }
132
+ if (this.clearOnSelection) {
133
+ this.inputRef.nativeElement.value = '';
98
134
  }
99
135
  }
100
136
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AutocompleteComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
101
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AutocompleteComponent, selector: "gn-ui-autocomplete", inputs: { placeholder: "placeholder", action: "action", value: "value", clearOnSelection: "clearOnSelection", autoFocus: "autoFocus", displayWithFn: "displayWithFn" }, outputs: { itemSelected: "itemSelected", inputSubmitted: "inputSubmitted", inputCleared: "inputCleared" }, viewQueries: [{ propertyName: "triggerRef", first: true, predicate: MatAutocompleteTrigger, descendants: true }, { propertyName: "autocomplete", first: true, predicate: MatAutocomplete, descendants: true }, { propertyName: "inputRef", first: true, predicate: ["searchInput"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"relative\">\n <input\n #searchInput\n type=\"text\"\n class=\"appearance-none focus:outline-white focus:outline-2 focus:outline-dotted focus:outline-offset-2 leading-tight rounded w-full text-black shadow-xl focus:shadow-[0_0_24px_0_rgba(21,40,184,0.09)]\"\n [placeholder]=\"placeholder\"\n [formControl]=\"control\"\n [matAutocomplete]=\"auto\"\n (keyup.enter)=\"handleEnter(searchInput.value)\"\n />\n <button\n type=\"button\"\n class=\"text-primary-lightest hover:text-primary hover:bg-gray-50 absolute transition-all duration-100 clear-btn inset-y-0\"\n *ngIf=\"searchInput.value\"\n aria-label=\"Clear\"\n (click)=\"clear()\"\n >\n <mat-icon class=\"material-symbols-outlined\">close</mat-icon>\n </button>\n <button\n type=\"button\"\n class=\"text-primary bg-white hover:text-primary-darkest hover:bg-gray-100 border-gray-300 hover:border-gray-500 absolute transition-all duration-100 search-btn rounded-r inset-y-0 right-0\"\n aria-label=\"Trigger search\"\n (click)=\"handleClickSearch()\"\n >\n <mat-icon class=\"material-symbols-outlined\">search</mat-icon>\n </button>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n class=\"absolute mt-2 w-full top-[100%] left-0\"\n icon=\"error_outline\"\n position=\"top\"\n type=\"warning\"\n >\n <span translate>search.autocomplete.error</span>\n {{ error }}\n </gn-ui-popup-alert>\n</div>\n<mat-autocomplete\n #auto=\"matAutocomplete\"\n (optionSelected)=\"handleSelection($event)\"\n [displayWith]=\"displayWithFn\"\n>\n <mat-option\n *ngFor=\"let suggestion of suggestions$ | async\"\n [value]=\"suggestion\"\n class=\"p-2 suggestion\"\n >\n {{ displayWithFn(suggestion) }}\n </mat-option>\n</mat-autocomplete>\n", styles: [":host{--input-height: 3.5em}.clear-btn{width:var(--input-height);right:var(--input-height);height:100%}.search-btn{width:var(--input-height);height:100%;border-left-width:.1em}mat-icon{width:100%;height:100%;padding:.65em;font-size:1.5em}input{height:var(--input-height);padding:1.05em;padding-right:calc(2 * var(--input-height))}input:placeholder-shown{text-overflow:ellipsis}.mat-mdc-option.suggestion.mat-mdc-option-active{background-color:var(--color-primary-lightest)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i4.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
137
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AutocompleteComponent, isStandalone: true, selector: "gn-ui-autocomplete", inputs: { placeholder: "placeholder", action: "action", value: "value", clearOnSelection: "clearOnSelection", preventCompleteOnSelection: "preventCompleteOnSelection", autoFocus: "autoFocus", minCharacterCount: "minCharacterCount", allowSubmit: "allowSubmit", displayWithFn: "displayWithFn" }, outputs: { itemSelected: "itemSelected", inputSubmitted: "inputSubmitted", inputCleared: "inputCleared" }, viewQueries: [{ propertyName: "triggerRef", first: true, predicate: MatAutocompleteTrigger, descendants: true }, { propertyName: "autocomplete", first: true, predicate: MatAutocomplete, descendants: true }, { propertyName: "inputRef", first: true, predicate: ["searchInput"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<span class=\"w-full inline-block relative\">\n <div\n class=\"absolute inset-y-[--icon-padding] left-[--icon-padding] w-[--icon-width] pointer-events-none\"\n *ngIf=\"!allowSubmit\"\n >\n <mat-icon class=\"material-symbols-outlined text-primary\"> search </mat-icon>\n </div>\n <input\n #searchInput\n type=\"text\"\n class=\"gn-ui-text-input\"\n [ngClass]=\"{\n 'px-[--icon-width]': !allowSubmit\n }\"\n [placeholder]=\"placeholder\"\n [formControl]=\"control\"\n [matAutocomplete]=\"auto\"\n (keyup.enter)=\"handleEnter(searchInput.value)\"\n />\n <gn-ui-button\n type=\"light\"\n extraClass=\"border-0 text-primary-lightest hover:text-primary focus:text-primary absolute inset-y-[--icon-padding] {{\n allowSubmit\n ? 'right-[calc(var(--icon-width)+var(--icon-padding))]'\n : 'right-[--icon-padding]'\n }}\"\n data-test=\"clear-btn\"\n *ngIf=\"searchInput.value\"\n aria-label=\"Clear\"\n (buttonClick)=\"clear()\"\n >\n <mat-icon class=\"material-symbols-outlined\">close</mat-icon>\n </gn-ui-button>\n <gn-ui-button\n type=\"light\"\n extraClass=\"border-0 border-l-[1px] border-gray-300 hover:border-gray-500 text-primary hover:text-primary-darkest focus:text-primary-darkest absolute inset-y-[--icon-padding] right-[--icon-padding]\"\n aria-label=\"Trigger search\"\n *ngIf=\"allowSubmit\"\n data-test=\"autocomplete-submit-btn\"\n (buttonClick)=\"handleClickSearch()\"\n >\n <mat-icon class=\"material-symbols-outlined\">search</mat-icon>\n </gn-ui-button>\n\n <gn-ui-popup-alert\n *ngIf=\"error\"\n class=\"absolute mt-2 w-full top-[100%] left-0\"\n icon=\"error_outline\"\n position=\"top\"\n type=\"warning\"\n >\n <span translate>search.autocomplete.error</span>\n {{ error }}\n </gn-ui-popup-alert>\n</span>\n\n<mat-autocomplete\n #auto=\"matAutocomplete\"\n (optionSelected)=\"handleSelection($event)\"\n [displayWith]=\"displayWithFnInternal\"\n>\n <mat-option\n *ngFor=\"let suggestion of suggestions$ | async\"\n [value]=\"suggestion\"\n class=\"p-2 suggestion\"\n >\n {{ displayWithFnInternal(suggestion) }}\n </mat-option>\n</mat-autocomplete>\n", styles: ["span{--icon-padding: var(--gn-ui-text-input-border-size, 2px);--icon-width: calc(var(--gn-ui-text-input-padding, .6em) * 2 + 1.25em)}span>*:not(gn-ui-popup-alert){font-size:var(--gn-ui-text-input-font-size, 1em)}input:placeholder-shown{text-overflow:ellipsis}gn-ui-button{--gn-ui-button-rounded: 0;--gn-ui-button-width: var(--icon-width);--gn-ui-button-padding: 0;font-size:1em}mat-icon{width:100%;height:100%;font-size:calc(.9em + 11px);line-height:.8em;display:grid;align-items:center;justify-content:center}gn-ui-button:last-of-type{--gn-ui-button-rounded: 0 var(--gn-ui-text-input-rounded, .25em) var(--gn-ui-text-input-rounded, .25em) 0}.mat-mdc-option.suggestion.mat-mdc-option-active{background-color:var(--color-primary-lightest)}\n"], dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i2.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i3.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i2.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i5.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
102
138
  }
103
139
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AutocompleteComponent, decorators: [{
104
140
  type: Component,
105
- args: [{ selector: 'gn-ui-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"relative\">\n <input\n #searchInput\n type=\"text\"\n class=\"appearance-none focus:outline-white focus:outline-2 focus:outline-dotted focus:outline-offset-2 leading-tight rounded w-full text-black shadow-xl focus:shadow-[0_0_24px_0_rgba(21,40,184,0.09)]\"\n [placeholder]=\"placeholder\"\n [formControl]=\"control\"\n [matAutocomplete]=\"auto\"\n (keyup.enter)=\"handleEnter(searchInput.value)\"\n />\n <button\n type=\"button\"\n class=\"text-primary-lightest hover:text-primary hover:bg-gray-50 absolute transition-all duration-100 clear-btn inset-y-0\"\n *ngIf=\"searchInput.value\"\n aria-label=\"Clear\"\n (click)=\"clear()\"\n >\n <mat-icon class=\"material-symbols-outlined\">close</mat-icon>\n </button>\n <button\n type=\"button\"\n class=\"text-primary bg-white hover:text-primary-darkest hover:bg-gray-100 border-gray-300 hover:border-gray-500 absolute transition-all duration-100 search-btn rounded-r inset-y-0 right-0\"\n aria-label=\"Trigger search\"\n (click)=\"handleClickSearch()\"\n >\n <mat-icon class=\"material-symbols-outlined\">search</mat-icon>\n </button>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n class=\"absolute mt-2 w-full top-[100%] left-0\"\n icon=\"error_outline\"\n position=\"top\"\n type=\"warning\"\n >\n <span translate>search.autocomplete.error</span>\n {{ error }}\n </gn-ui-popup-alert>\n</div>\n<mat-autocomplete\n #auto=\"matAutocomplete\"\n (optionSelected)=\"handleSelection($event)\"\n [displayWith]=\"displayWithFn\"\n>\n <mat-option\n *ngFor=\"let suggestion of suggestions$ | async\"\n [value]=\"suggestion\"\n class=\"p-2 suggestion\"\n >\n {{ displayWithFn(suggestion) }}\n </mat-option>\n</mat-autocomplete>\n", styles: [":host{--input-height: 3.5em}.clear-btn{width:var(--input-height);right:var(--input-height);height:100%}.search-btn{width:var(--input-height);height:100%;border-left-width:.1em}mat-icon{width:100%;height:100%;padding:.65em;font-size:1.5em}input{height:var(--input-height);padding:1.05em;padding-right:calc(2 * var(--input-height))}input:placeholder-shown{text-overflow:ellipsis}.mat-mdc-option.suggestion.mat-mdc-option-active{background-color:var(--color-primary-lightest)}\n"] }]
141
+ args: [{ selector: 'gn-ui-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
142
+ MatIconModule,
143
+ PopupAlertComponent,
144
+ MatAutocompleteModule,
145
+ CommonModule,
146
+ TranslateModule,
147
+ ReactiveFormsModule,
148
+ ButtonComponent,
149
+ ], template: "<span class=\"w-full inline-block relative\">\n <div\n class=\"absolute inset-y-[--icon-padding] left-[--icon-padding] w-[--icon-width] pointer-events-none\"\n *ngIf=\"!allowSubmit\"\n >\n <mat-icon class=\"material-symbols-outlined text-primary\"> search </mat-icon>\n </div>\n <input\n #searchInput\n type=\"text\"\n class=\"gn-ui-text-input\"\n [ngClass]=\"{\n 'px-[--icon-width]': !allowSubmit\n }\"\n [placeholder]=\"placeholder\"\n [formControl]=\"control\"\n [matAutocomplete]=\"auto\"\n (keyup.enter)=\"handleEnter(searchInput.value)\"\n />\n <gn-ui-button\n type=\"light\"\n extraClass=\"border-0 text-primary-lightest hover:text-primary focus:text-primary absolute inset-y-[--icon-padding] {{\n allowSubmit\n ? 'right-[calc(var(--icon-width)+var(--icon-padding))]'\n : 'right-[--icon-padding]'\n }}\"\n data-test=\"clear-btn\"\n *ngIf=\"searchInput.value\"\n aria-label=\"Clear\"\n (buttonClick)=\"clear()\"\n >\n <mat-icon class=\"material-symbols-outlined\">close</mat-icon>\n </gn-ui-button>\n <gn-ui-button\n type=\"light\"\n extraClass=\"border-0 border-l-[1px] border-gray-300 hover:border-gray-500 text-primary hover:text-primary-darkest focus:text-primary-darkest absolute inset-y-[--icon-padding] right-[--icon-padding]\"\n aria-label=\"Trigger search\"\n *ngIf=\"allowSubmit\"\n data-test=\"autocomplete-submit-btn\"\n (buttonClick)=\"handleClickSearch()\"\n >\n <mat-icon class=\"material-symbols-outlined\">search</mat-icon>\n </gn-ui-button>\n\n <gn-ui-popup-alert\n *ngIf=\"error\"\n class=\"absolute mt-2 w-full top-[100%] left-0\"\n icon=\"error_outline\"\n position=\"top\"\n type=\"warning\"\n >\n <span translate>search.autocomplete.error</span>\n {{ error }}\n </gn-ui-popup-alert>\n</span>\n\n<mat-autocomplete\n #auto=\"matAutocomplete\"\n (optionSelected)=\"handleSelection($event)\"\n [displayWith]=\"displayWithFnInternal\"\n>\n <mat-option\n *ngFor=\"let suggestion of suggestions$ | async\"\n [value]=\"suggestion\"\n class=\"p-2 suggestion\"\n >\n {{ displayWithFnInternal(suggestion) }}\n </mat-option>\n</mat-autocomplete>\n", styles: ["span{--icon-padding: var(--gn-ui-text-input-border-size, 2px);--icon-width: calc(var(--gn-ui-text-input-padding, .6em) * 2 + 1.25em)}span>*:not(gn-ui-popup-alert){font-size:var(--gn-ui-text-input-font-size, 1em)}input:placeholder-shown{text-overflow:ellipsis}gn-ui-button{--gn-ui-button-rounded: 0;--gn-ui-button-width: var(--icon-width);--gn-ui-button-padding: 0;font-size:1em}mat-icon{width:100%;height:100%;font-size:calc(.9em + 11px);line-height:.8em;display:grid;align-items:center;justify-content:center}gn-ui-button:last-of-type{--gn-ui-button-rounded: 0 var(--gn-ui-text-input-rounded, .25em) var(--gn-ui-text-input-rounded, .25em) 0}.mat-mdc-option.suggestion.mat-mdc-option-active{background-color:var(--color-primary-lightest)}\n"] }]
106
150
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { placeholder: [{
107
151
  type: Input
108
152
  }], action: [{
@@ -111,8 +155,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
111
155
  type: Input
112
156
  }], clearOnSelection: [{
113
157
  type: Input
158
+ }], preventCompleteOnSelection: [{
159
+ type: Input
114
160
  }], autoFocus: [{
115
161
  type: Input
162
+ }], minCharacterCount: [{
163
+ type: Input
164
+ }], allowSubmit: [{
165
+ type: Input
116
166
  }], itemSelected: [{
117
167
  type: Output
118
168
  }], inputSubmitted: [{
@@ -131,4 +181,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
131
181
  }], displayWithFn: [{
132
182
  type: Input
133
183
  }] } });
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYy9saWIvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMvbGliL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUlMLE1BQU0sRUFFTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDbkQsT0FBTyxFQUNMLGVBQWUsRUFFZixzQkFBc0IsR0FDdkIsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUN2QyxPQUFPLEVBQUUsS0FBSyxFQUFjLEVBQUUsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ3pFLE9BQU8sRUFDTCxVQUFVLEVBQ1YsWUFBWSxFQUNaLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sUUFBUSxFQUNSLEtBQUssRUFDTCxHQUFHLEVBQ0gsU0FBUyxFQUNULElBQUksRUFDSixHQUFHLEdBQ0osTUFBTSxnQkFBZ0IsQ0FBQTs7Ozs7Ozs7O0FBVXZCLE1BQU0sT0FBTyxxQkFBcUI7SUEwQmhDLFlBQW9CLEtBQXdCO1FBQXhCLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBcEJuQyxxQkFBZ0IsR0FBRyxLQUFLLENBQUE7UUFDeEIsY0FBUyxHQUFHLEtBQUssQ0FBQTtRQUNoQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFvQixDQUFBO1FBQ25ELG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVB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QUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDNEIsVUFBVTtzQkFBNUMsU0FBUzt1QkFBQyxzQkFBc0I7Z0JBQ0wsWUFBWTtzQkFBdkMsU0FBUzt1QkFBQyxlQUFlO2dCQUNBLFFBQVE7c0JBQWpDLFNBQVM7dUJBQUMsYUFBYTtnQkFXZixhQUFhO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQge1xuICBNYXRBdXRvY29tcGxldGUsXG4gIE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQsXG4gIE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSdcbmltcG9ydCB7IG1lcmdlLCBPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcydcbmltcG9ydCB7XG4gIGNhdGNoRXJyb3IsXG4gIGRlYm91bmNlVGltZSxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZpbHRlcixcbiAgZmluYWxpemUsXG4gIGZpcnN0LFxuICBtYXAsXG4gIHN3aXRjaE1hcCxcbiAgdGFrZSxcbiAgdGFwLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuZXhwb3J0IHR5cGUgQXV0b2NvbXBsZXRlSXRlbSA9IHVua25vd25cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktYXV0b2NvbXBsZXRlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2F1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2F1dG9jb21wbGV0ZS5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBBdXRvY29tcGxldGVDb21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzXG57XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmdcbiAgQElucHV0KCkgYWN0aW9uOiAodmFsdWU6IHN0cmluZykgPT4gT2JzZXJ2YWJsZTxBdXRvY29tcGxldGVJdGVtW10+XG4gIEBJbnB1dCgpIHZhbHVlPzogQXV0b2NvbXBsZXRlSXRlbVxuICBASW5wdXQoKSBjbGVhck9uU2VsZWN0aW9uID0gZmFsc2VcbiAgQElucHV0KCkgYXV0b0ZvY3VzID0gZmFsc2VcbiAgQE91dHB1dCgpIGl0ZW1TZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8QXV0b2NvbXBsZXRlSXRlbT4oKVxuICBAT3V0cHV0KCkgaW5wdXRTdWJtaXR0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKVxuICBAT3V0cHV0KCkgaW5wdXRDbGVhcmVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpXG4gIEBWaWV3Q2hpbGQoTWF0QXV0b2NvbXBsZXRlVHJpZ2dlcikgdHJpZ2dlclJlZjogTWF0QXV0b2NvbXBsZXRlVHJpZ2dlclxuICBAVmlld0NoaWxkKE1hdEF1dG9jb21wbGV0ZSkgYXV0b2NvbXBsZXRlOiBNYXRBdXRvY29tcGxldGVcbiAgQFZpZXdDaGlsZCgnc2VhcmNoSW5wdXQnKSBpbnB1dFJlZjogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PlxuXG4gIHNlYXJjaGluZzogYm9vbGVhblxuICBzdWdnZXN0aW9ucyQ6IE9ic2VydmFibGU8QXV0b2NvbXBsZXRlSXRlbVtdPlxuICBjb250cm9sID0gbmV3IFVudHlwZWRGb3JtQ29udHJvbCgpXG4gIHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKVxuICBjYW5jZWxFbnRlciA9IHRydWVcbiAgc2VsZWN0aW9uU3ViamVjdCA9IG5ldyBSZXBsYXlTdWJqZWN0PE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQ+KDEpXG4gIGxhc3RJbnB1dFZhbHVlJCA9IG5ldyBSZXBsYXlTdWJqZWN0PHN0cmluZz4oMSlcbiAgZXJyb3I6IHN0cmluZyB8IG51bGwgPSBudWxsXG5cbiAgQElucHV0KCkgZGlzcGxheVdpdGhGbjogKEF1dG9jb21wbGV0ZUl0ZW0pID0+IHN0cmluZyA9IChpdGVtKSA9PiBpdGVtXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zdCB7IHZhbHVlIH0gPSBjaGFuZ2VzXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBjb25zdCBwcmV2aW91c1RleHRWYWx1ZSA9IHRoaXMuZGlzcGxheVdpdGhGbih2YWx1ZS5wcmV2aW91c1ZhbHVlKVxuICAgICAgY29uc3QgY3VycmVudFRleHRWYWx1ZSA9IHRoaXMuZGlzcGxheVdpdGhGbih2YWx1ZS5jdXJyZW50VmFsdWUpXG4gICAgICBpZiAocHJldmlvdXNUZXh0VmFsdWUgIT09IGN1cnJlbnRUZXh0VmFsdWUpIHtcbiAgICAgICAgdGhpcy51cGRhdGVJbnB1dFZhbHVlKHZhbHVlLmN1cnJlbnRWYWx1ZSlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1Z2dlc3Rpb25zJCA9IG1lcmdlKFxuICAgICAgdGhpcy5jb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICBmaWx0ZXIoKHZhbHVlKSA9PiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSxcbiAgICAgICAgZmlsdGVyKCh2YWx1ZTogc3RyaW5nKSA9PiB2YWx1ZS5sZW5ndGggPiAyKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDQwMCksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIHRhcCgoKSA9PiAodGhpcy5zZWFyY2hpbmcgPSB0cnVlKSlcbiAgICAgICksXG4gICAgICB0aGlzLmNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgIGZpbHRlcigodmFsdWUpID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgdmFsdWUudGl0bGUpLFxuICAgICAgICBtYXAoKGl0ZW0pID0+IGl0ZW0udGl0bGUpXG4gICAgICApXG4gICAgKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCh2YWx1ZSkgPT4gKHZhbHVlID8gdGhpcy5hY3Rpb24odmFsdWUpIDogb2YoW10pKSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5lcnJvciA9IGVycm9yLm1lc3NhZ2VcbiAgICAgICAgcmV0dXJuIG9mKFtdKVxuICAgICAgfSksXG4gICAgICBmaW5hbGl6ZSgoKSA9PiAodGhpcy5zZWFyY2hpbmcgPSBmYWxzZSkpXG4gICAgKVxuXG4gICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLmNvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoYW55KSA9PiB7XG4gICAgICBpZiAoYW55ICE9PSAnJykge1xuICAgICAgICB0aGlzLmNhbmNlbEVudGVyID0gZmFsc2VcbiAgICAgIH1cbiAgICB9KVxuICAgIHRoaXMuY29udHJvbC52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKGZpbHRlcigodmFsdWUpID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpKVxuICAgICAgLnN1YnNjcmliZSh0aGlzLmxhc3RJbnB1dFZhbHVlJClcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmF1dG9jb21wbGV0ZS5vcHRpb25TZWxlY3RlZC5zdWJzY3JpYmUodGhpcy5zZWxlY3Rpb25TdWJqZWN0KVxuICAgIGlmICh0aGlzLmF1dG9Gb2N1cykge1xuICAgICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpXG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKVxuICB9XG5cbiAgdXBkYXRlSW5wdXRWYWx1ZSh2YWx1ZTogQXV0b2NvbXBsZXRlSXRlbSkge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5jb250cm9sLnNldFZhbHVlKHZhbHVlKVxuICAgIH1cbiAgICBpZiAodGhpcy5pbnB1dFJlZikge1xuICAgICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gKHZhbHVlIGFzIGFueSk/LnRpdGxlIHx8ICcnXG4gICAgfVxuICB9XG5cbiAgY2xlYXIoKTogdm9pZCB7XG4gICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gJydcbiAgICB0aGlzLmlucHV0Q2xlYXJlZC5lbWl0KClcbiAgICB0aGlzLnNlbGVjdGlvblN1YmplY3RcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChzZWxlY3Rpb24pID0+IHNlbGVjdGlvbiAmJiBzZWxlY3Rpb24ub3B0aW9uLmRlc2VsZWN0KCkpXG4gICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgICB0aGlzLnRyaWdnZXJSZWYuY2xvc2VQYW5lbCgpXG4gIH1cblxuICBoYW5kbGVFbnRlcihhbnk6IHN0cmluZykge1xuICAgIGlmICghdGhpcy5jYW5jZWxFbnRlcikge1xuICAgICAgdGhpcy5pbnB1dFN1Ym1pdHRlZC5lbWl0KGFueSlcbiAgICAgIHRoaXMudHJpZ2dlclJlZi5jbG9zZVBhbmVsKClcbiAgICB9XG4gIH1cblxuICBoYW5kbGVDbGlja1NlYXJjaCgpIHtcbiAgICB0aGlzLmlucHV0U3VibWl0dGVkLmVtaXQodGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlKVxuICAgIHRoaXMudHJpZ2dlclJlZi5jbG9zZVBhbmVsKClcbiAgfVxuXG4gIGhhbmRsZVNlbGVjdGlvbihldmVudDogTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCkge1xuICAgIHRoaXMuY2FuY2VsRW50ZXIgPSB0cnVlXG4gICAgdGhpcy5pdGVtU2VsZWN0ZWQuZW1pdChldmVudC5vcHRpb24udmFsdWUpXG4gICAgaWYgKHRoaXMuY2xlYXJPblNlbGVjdGlvbikge1xuICAgICAgdGhpcy5sYXN0SW5wdXRWYWx1ZSQucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKGFueSkgPT4ge1xuICAgICAgICB0aGlzLmlucHV0UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSBhbnlcbiAgICAgIH0pXG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIj5cbiAgPGlucHV0XG4gICAgI3NlYXJjaElucHV0XG4gICAgdHlwZT1cInRleHRcIlxuICAgIGNsYXNzPVwiYXBwZWFyYW5jZS1ub25lIGZvY3VzOm91dGxpbmUtd2hpdGUgZm9jdXM6b3V0bGluZS0yIGZvY3VzOm91dGxpbmUtZG90dGVkIGZvY3VzOm91dGxpbmUtb2Zmc2V0LTIgbGVhZGluZy10aWdodCByb3VuZGVkIHctZnVsbCB0ZXh0LWJsYWNrIHNoYWRvdy14bCBmb2N1czpzaGFkb3ctWzBfMF8yNHB4XzBfcmdiYSgyMSw0MCwxODQsMC4wOSldXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIlxuICAgIChrZXl1cC5lbnRlcik9XCJoYW5kbGVFbnRlcihzZWFyY2hJbnB1dC52YWx1ZSlcIlxuICAvPlxuICA8YnV0dG9uXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgY2xhc3M9XCJ0ZXh0LXByaW1hcnktbGlnaHRlc3QgaG92ZXI6dGV4dC1wcmltYXJ5IGhvdmVyOmJnLWdyYXktNTAgYWJzb2x1dGUgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMTAwIGNsZWFyLWJ0biBpbnNldC15LTBcIlxuICAgICpuZ0lmPVwic2VhcmNoSW5wdXQudmFsdWVcIlxuICAgIGFyaWEtbGFiZWw9XCJDbGVhclwiXG4gICAgKGNsaWNrKT1cImNsZWFyKClcIlxuICA+XG4gICAgPG1hdC1pY29uIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZFwiPmNsb3NlPC9tYXQtaWNvbj5cbiAgPC9idXR0b24+XG4gIDxidXR0b25cbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBjbGFzcz1cInRleHQtcHJpbWFyeSBiZy13aGl0ZSBob3Zlcjp0ZXh0LXByaW1hcnktZGFya2VzdCBob3ZlcjpiZy1ncmF5LTEwMCBib3JkZXItZ3JheS0zMDAgaG92ZXI6Ym9yZGVyLWdyYXktNTAwIGFic29sdXRlIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTEwMCBzZWFyY2gtYnRuIHJvdW5kZWQtciBpbnNldC15LTAgcmlnaHQtMFwiXG4gICAgYXJpYS1sYWJlbD1cIlRyaWdnZXIgc2VhcmNoXCJcbiAgICAoY2xpY2spPVwiaGFuZGxlQ2xpY2tTZWFyY2goKVwiXG4gID5cbiAgICA8bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+c2VhcmNoPC9tYXQtaWNvbj5cbiAgPC9idXR0b24+XG4gIDxnbi11aS1wb3B1cC1hbGVydFxuICAgICpuZ0lmPVwiZXJyb3JcIlxuICAgIGNsYXNzPVwiYWJzb2x1dGUgbXQtMiB3LWZ1bGwgdG9wLVsxMDAlXSBsZWZ0LTBcIlxuICAgIGljb249XCJlcnJvcl9vdXRsaW5lXCJcbiAgICBwb3NpdGlvbj1cInRvcFwiXG4gICAgdHlwZT1cIndhcm5pbmdcIlxuICA+XG4gICAgPHNwYW4gdHJhbnNsYXRlPnNlYXJjaC5hdXRvY29tcGxldGUuZXJyb3I8L3NwYW4+XG4gICAge3sgZXJyb3IgfX1cbiAgPC9nbi11aS1wb3B1cC1hbGVydD5cbjwvZGl2PlxuPG1hdC1hdXRvY29tcGxldGVcbiAgI2F1dG89XCJtYXRBdXRvY29tcGxldGVcIlxuICAob3B0aW9uU2VsZWN0ZWQpPVwiaGFuZGxlU2VsZWN0aW9uKCRldmVudClcIlxuICBbZGlzcGxheVdpdGhdPVwiZGlzcGxheVdpdGhGblwiXG4+XG4gIDxtYXQtb3B0aW9uXG4gICAgKm5nRm9yPVwibGV0IHN1Z2dlc3Rpb24gb2Ygc3VnZ2VzdGlvbnMkIHwgYXN5bmNcIlxuICAgIFt2YWx1ZV09XCJzdWdnZXN0aW9uXCJcbiAgICBjbGFzcz1cInAtMiBzdWdnZXN0aW9uXCJcbiAgPlxuICAgIHt7IGRpc3BsYXlXaXRoRm4oc3VnZ2VzdGlvbikgfX1cbiAgPC9tYXQtb3B0aW9uPlxuPC9tYXQtYXV0b2NvbXBsZXRlPlxuIl19
184
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYy9saWIvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMvbGliL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUlMLE1BQU0sRUFFTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDeEUsT0FBTyxFQUNMLGVBQWUsRUFDZixxQkFBcUIsRUFFckIsc0JBQXNCLEdBQ3ZCLE1BQU0sZ0NBQWdDLENBQUE7QUFDdkMsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDaEYsT0FBTyxFQUNMLFVBQVUsRUFDVixZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLE1BQU0sRUFDTixRQUFRLEVBQ1IsR0FBRyxFQUNILFNBQVMsRUFDVCxJQUFJLEVBQ0osR0FBRyxHQUNKLE1BQU0sZ0JBQWdCLENBQUE7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFBO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7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Z2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBVbnR5cGVkRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7XG4gIE1hdEF1dG9jb21wbGV0ZSxcbiAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxuICBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50LFxuICBNYXRBdXRvY29tcGxldGVUcmlnZ2VyLFxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnXG5pbXBvcnQgeyBmaXJzdCwgbWVyZ2UsIE9ic2VydmFibGUsIG9mLCBSZXBsYXlTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHtcbiAgY2F0Y2hFcnJvcixcbiAgZGVib3VuY2VUaW1lLFxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbiAgZmlsdGVyLFxuICBmaW5hbGl6ZSxcbiAgbWFwLFxuICBzd2l0Y2hNYXAsXG4gIHRha2UsXG4gIHRhcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IFBvcHVwQWxlcnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL3dpZGdldHMvc3JjJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uL2J1dHRvbi9idXR0b24uY29tcG9uZW50J1xuXG5leHBvcnQgdHlwZSBBdXRvY29tcGxldGVJdGVtID0gdW5rbm93blxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1hdXRvY29tcGxldGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIFBvcHVwQWxlcnRDb21wb25lbnQsXG4gICAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEF1dG9jb21wbGV0ZUNvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXNcbntcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZ1xuICBASW5wdXQoKSBhY3Rpb246ICh2YWx1ZTogc3RyaW5nKSA9PiBPYnNlcnZhYmxlPEF1dG9jb21wbGV0ZUl0ZW1bXT5cbiAgQElucHV0KCkgdmFsdWU/OiBBdXRvY29tcGxldGVJdGVtXG4gIEBJbnB1dCgpIGNsZWFyT25TZWxlY3Rpb24gPSBmYWxzZVxuICBASW5wdXQoKSBwcmV2ZW50Q29tcGxldGVPblNlbGVjdGlvbiA9IGZhbHNlXG4gIEBJbnB1dCgpIGF1dG9Gb2N1cyA9IGZhbHNlXG4gIEBJbnB1dCgpIG1pbkNoYXJhY3RlckNvdW50PyA9IDNcbiAgLy8gdGhpcyB3aWxsIHNob3cgYSBzdWJtaXQgYnV0dG9uIG5leHQgdG8gdGhlIGlucHV0OyBpZiBmYWxzZSwgYSBzZWFyY2ggaWNvbiB3aWxsIGFwcGVhciBvbiB0aGUgbGVmdFxuICBASW5wdXQoKSBhbGxvd1N1Ym1pdCA9IGZhbHNlXG4gIEBPdXRwdXQoKSBpdGVtU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEF1dG9jb21wbGV0ZUl0ZW0+KClcbiAgQE91dHB1dCgpIGlucHV0U3VibWl0dGVkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KClcbiAgQE91dHB1dCgpIGlucHV0Q2xlYXJlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKVxuICBAVmlld0NoaWxkKE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIpIHRyaWdnZXJSZWY6IE1hdEF1dG9jb21wbGV0ZVRyaWdnZXJcbiAgQFZpZXdDaGlsZChNYXRBdXRvY29tcGxldGUpIGF1dG9jb21wbGV0ZTogTWF0QXV0b2NvbXBsZXRlXG4gIEBWaWV3Q2hpbGQoJ3NlYXJjaElucHV0JykgaW5wdXRSZWY6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD5cblxuICBzZWFyY2hpbmc6IGJvb2xlYW5cbiAgY29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woKVxuICBjYW5jZWxFbnRlciA9IHRydWVcbiAgc2VsZWN0aW9uU3ViamVjdCA9IG5ldyBSZXBsYXlTdWJqZWN0PE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQ+KDEpXG4gIGxhc3RJbnB1dFZhbHVlJCA9IG5ldyBSZXBsYXlTdWJqZWN0PHN0cmluZz4oMSlcbiAgZXJyb3I6IHN0cmluZyB8IG51bGwgPSBudWxsXG4gIHN1Z2dlc3Rpb25zJDogT2JzZXJ2YWJsZTxBdXRvY29tcGxldGVJdGVtW10+XG4gIHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKVxuXG4gIEBJbnB1dCgpIGRpc3BsYXlXaXRoRm46IChpdGVtOiBBdXRvY29tcGxldGVJdGVtKSA9PiBzdHJpbmcgPSAoaXRlbSkgPT5cbiAgICBpdGVtLnRvU3RyaW5nKClcblxuICBkaXNwbGF5V2l0aEZuSW50ZXJuYWwgPSAoaXRlbT86IEF1dG9jb21wbGV0ZUl0ZW0pID0+IHtcbiAgICBpZiAoaXRlbSA9PT0gbnVsbCB8fCBpdGVtID09PSB1bmRlZmluZWQpIHJldHVybiBudWxsXG4gICAgcmV0dXJuIHRoaXMuZGlzcGxheVdpdGhGbihpdGVtKVxuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zdCB7IHZhbHVlIH0gPSBjaGFuZ2VzXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBjb25zdCBwcmV2aW91c1RleHRWYWx1ZSA9IHRoaXMuZGlzcGxheVdpdGhGbkludGVybmFsKHZhbHVlLnByZXZpb3VzVmFsdWUpXG4gICAgICBjb25zdCBjdXJyZW50VGV4dFZhbHVlID0gdGhpcy5kaXNwbGF5V2l0aEZuSW50ZXJuYWwodmFsdWUuY3VycmVudFZhbHVlKVxuICAgICAgaWYgKHByZXZpb3VzVGV4dFZhbHVlICE9PSBjdXJyZW50VGV4dFZhbHVlKSB7XG4gICAgICAgIHRoaXMudXBkYXRlSW5wdXRWYWx1ZSh2YWx1ZS5jdXJyZW50VmFsdWUpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgbmV3VmFsdWUkID0gbWVyZ2UoXG4gICAgICBvZignJyksXG4gICAgICB0aGlzLmlucHV0Q2xlYXJlZC5waXBlKG1hcCgoKSA9PiAnJykpLFxuICAgICAgdGhpcy5jb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICBmaWx0ZXIoKHZhbHVlKSA9PiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDQwMClcbiAgICAgIClcbiAgICApXG5cbiAgICBjb25zdCBleHRlcm5hbFZhbHVlQ2hhbmdlJCA9IHRoaXMuY29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgIGZpbHRlcigodmFsdWUpID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgdmFsdWUudGl0bGUpLFxuICAgICAgbWFwKChpdGVtKSA9PiBpdGVtLnRpdGxlKVxuICAgIClcblxuICAgIC8vIHRoaXMgb2JzZXJ2YWJsZSBlbWl0cyBhcnJheXMgb2Ygc3VnZ2VzdGlvbnMgbG9hZGVkIHVzaW5nIHRoZSBnaXZlbiBhY3Rpb25cbiAgICBjb25zdCBzdWdnZXN0aW9uc0Zyb21BY3Rpb24gPSBtZXJnZShcbiAgICAgIG5ld1ZhbHVlJC5waXBlKFxuICAgICAgICBmaWx0ZXIoKHZhbHVlOiBzdHJpbmcpID0+IHZhbHVlLmxlbmd0aCA+PSB0aGlzLm1pbkNoYXJhY3RlckNvdW50KVxuICAgICAgKSxcbiAgICAgIGV4dGVybmFsVmFsdWVDaGFuZ2UkXG4gICAgKS5waXBlKFxuICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgdGhpcy5zZWFyY2hpbmcgPSB0cnVlXG4gICAgICAgIHRoaXMuZXJyb3IgPSBudWxsXG4gICAgICB9KSxcbiAgICAgIHN3aXRjaE1hcCgodmFsdWUpID0+IHRoaXMuYWN0aW9uKHZhbHVlKSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5lcnJvciA9IGVycm9yLm1lc3NhZ2VcbiAgICAgICAgcmV0dXJuIG9mKFtdKVxuICAgICAgfSksXG4gICAgICBmaW5hbGl6ZSgoKSA9PiAodGhpcy5zZWFyY2hpbmcgPSBmYWxzZSkpXG4gICAgKVxuXG4gICAgdGhpcy5zdWdnZXN0aW9ucyQgPSBtZXJnZShcbiAgICAgIHN1Z2dlc3Rpb25zRnJvbUFjdGlvbixcbiAgICAgIC8vIGlmIGEgbmV3IHZhbHVlIGlzIHVuZGVyIHRoZSBtaW4gY2hhciBjb3VudCwgY2xlYXIgc3VnZ2VzdGlvbnNcbiAgICAgIG5ld1ZhbHVlJC5waXBlKFxuICAgICAgICBmaWx0ZXIoKHZhbHVlOiBzdHJpbmcpID0+IHZhbHVlLmxlbmd0aCA8IHRoaXMubWluQ2hhcmFjdGVyQ291bnQpLFxuICAgICAgICBtYXAoKCkgPT4gW10pXG4gICAgICApXG4gICAgKVxuXG4gICAgLy8gY2xvc2UgdGhlIHBhbmVsIHdoZW5ldmVyIHN1Z2dlc3Rpb25zIGFyZSBjbGVhcmVkXG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKFxuICAgICAgdGhpcy5zdWdnZXN0aW9ucyRcbiAgICAgICAgLnBpcGUoZmlsdGVyKChzdWdnZXN0aW9ucykgPT4gc3VnZ2VzdGlvbnMubGVuZ3RoID09PSAwKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy50cmlnZ2VyUmVmPy5jbG9zZVBhbmVsKClcbiAgICAgICAgfSlcbiAgICApXG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoXG4gICAgICB0aGlzLmNvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoYW55KSA9PiB7XG4gICAgICAgIGlmIChhbnkgIT09ICcnKSB7XG4gICAgICAgICAgdGhpcy5jYW5jZWxFbnRlciA9IGZhbHNlXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKVxuXG4gICAgdGhpcy5jb250cm9sLnZhbHVlQ2hhbmdlc1xuICAgICAgLnBpcGUoZmlsdGVyKCh2YWx1ZSkgPT4gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykpXG4gICAgICAuc3Vic2NyaWJlKHRoaXMubGFzdElucHV0VmFsdWUkKVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYXV0b2NvbXBsZXRlLm9wdGlvblNlbGVjdGVkLnN1YnNjcmliZSh0aGlzLnNlbGVjdGlvblN1YmplY3QpXG4gICAgaWYgKHRoaXMuYXV0b0ZvY3VzKSB7XG4gICAgICB0aGlzLmlucHV0UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKVxuICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKClcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKVxuICB9XG5cbiAgdXBkYXRlSW5wdXRWYWx1ZSh2YWx1ZTogQXV0b2NvbXBsZXRlSXRlbSkge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5jb250cm9sLnNldFZhbHVlKHZhbHVlKVxuICAgIH1cbiAgICBpZiAodGhpcy5pbnB1dFJlZikge1xuICAgICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gKHZhbHVlIGFzIGFueSk/LnRpdGxlIHx8ICcnXG4gICAgfVxuICB9XG5cbiAgY2xlYXIoKTogdm9pZCB7XG4gICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gJydcbiAgICB0aGlzLmlucHV0Q2xlYXJlZC5lbWl0KClcbiAgICB0aGlzLnNlbGVjdGlvblN1YmplY3RcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChzZWxlY3Rpb24pID0+IHNlbGVjdGlvbiAmJiBzZWxlY3Rpb24ub3B0aW9uLmRlc2VsZWN0KCkpXG4gICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgfVxuXG4gIGhhbmRsZUVudGVyKGFueTogc3RyaW5nKSB7XG4gICAgaWYgKCF0aGlzLmNhbmNlbEVudGVyICYmIHRoaXMuYWxsb3dTdWJtaXQpIHtcbiAgICAgIHRoaXMuaW5wdXRTdWJtaXR0ZWQuZW1pdChhbnkpXG4gICAgfVxuICB9XG5cbiAgaGFuZGxlQ2xpY2tTZWFyY2goKSB7XG4gICAgdGhpcy5pbnB1dFN1Ym1pdHRlZC5lbWl0KHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSlcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIGZ1bmN0aW9uIGlzIHRyaWdnZXJlZCB3aGVuIGFuIGl0ZW0gaXMgc2VsZWN0ZWQgaW4gdGhlIGxpc3Qgb2YgZGlzcGxheWVkIGl0ZW1zLlxuICAgKiBJZiBwcmV2ZW50Q29tcGxldGVPblNlbGVjdGlvbiBpcyB0cnVlIHRoZW4gdGhlIGlucHV0IHdpbGwgYmUgbGVmdCBhcyBlbnRlcmVkIGJ5IHRoZSB1c2VyLlxuICAgKiBJZiBwcmV2ZW50Q29tcGxldGVPblNlbGVjdGlvbiBpcyBmYWxzZSAoYnkgZGVmYXVsdCkgdGhlbiB0aGUgaW5wdXQgd2lsbCBiZSBjb21wbGV0ZWQgd2l0aCB0aGUgaXRlbSBzZWxlY3RlZCBieSB0aGUgdXNlci5cbiAgICogSWYgY2xlYXJPblNlbGVjdGlvbiBpcyB0cnVlIHRoZW4gdGhlIGlucHV0IHdpbGwgYmUgY2xlYXJlZCB1cG9uIHNlbGVjdGlvbi5cbiAgICogQHBhcmFtIGV2ZW50XG4gICAqL1xuICBoYW5kbGVTZWxlY3Rpb24oZXZlbnQ6IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQpIHtcbiAgICB0aGlzLmNhbmNlbEVudGVyID0gdHJ1ZVxuICAgIHRoaXMuaXRlbVNlbGVjdGVkLmVtaXQoZXZlbnQub3B0aW9uLnZhbHVlKVxuICAgIGlmICh0aGlzLnByZXZlbnRDb21wbGV0ZU9uU2VsZWN0aW9uKSB7XG4gICAgICB0aGlzLmxhc3RJbnB1dFZhbHVlJC5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgobGFzdElucHV0VmFsdWUpID0+IHtcbiAgICAgICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gbGFzdElucHV0VmFsdWVcbiAgICAgIH0pXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgaWYgKHRoaXMuY2xlYXJPblNlbGVjdGlvbikge1xuICAgICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gJydcbiAgICB9XG4gIH1cbn1cbiIsIjxzcGFuIGNsYXNzPVwidy1mdWxsIGlubGluZS1ibG9jayByZWxhdGl2ZVwiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJhYnNvbHV0ZSBpbnNldC15LVstLWljb24tcGFkZGluZ10gbGVmdC1bLS1pY29uLXBhZGRpbmddIHctWy0taWNvbi13aWR0aF0gcG9pbnRlci1ldmVudHMtbm9uZVwiXG4gICAgKm5nSWY9XCIhYWxsb3dTdWJtaXRcIlxuICA+XG4gICAgPG1hdC1pY29uIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCB0ZXh0LXByaW1hcnlcIj4gc2VhcmNoIDwvbWF0LWljb24+XG4gIDwvZGl2PlxuICA8aW5wdXRcbiAgICAjc2VhcmNoSW5wdXRcbiAgICB0eXBlPVwidGV4dFwiXG4gICAgY2xhc3M9XCJnbi11aS10ZXh0LWlucHV0XCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAncHgtWy0taWNvbi13aWR0aF0nOiAhYWxsb3dTdWJtaXRcbiAgICB9XCJcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIlxuICAgIChrZXl1cC5lbnRlcik9XCJoYW5kbGVFbnRlcihzZWFyY2hJbnB1dC52YWx1ZSlcIlxuICAvPlxuICA8Z24tdWktYnV0dG9uXG4gICAgdHlwZT1cImxpZ2h0XCJcbiAgICBleHRyYUNsYXNzPVwiYm9yZGVyLTAgdGV4dC1wcmltYXJ5LWxpZ2h0ZXN0IGhvdmVyOnRleHQtcHJpbWFyeSBmb2N1czp0ZXh0LXByaW1hcnkgYWJzb2x1dGUgaW5zZXQteS1bLS1pY29uLXBhZGRpbmddIHt7XG4gICAgICBhbGxvd1N1Ym1pdFxuICAgICAgICA/ICdyaWdodC1bY2FsYyh2YXIoLS1pY29uLXdpZHRoKSt2YXIoLS1pY29uLXBhZGRpbmcpKV0nXG4gICAgICAgIDogJ3JpZ2h0LVstLWljb24tcGFkZGluZ10nXG4gICAgfX1cIlxuICAgIGRhdGEtdGVzdD1cImNsZWFyLWJ0blwiXG4gICAgKm5nSWY9XCJzZWFyY2hJbnB1dC52YWx1ZVwiXG4gICAgYXJpYS1sYWJlbD1cIkNsZWFyXCJcbiAgICAoYnV0dG9uQ2xpY2spPVwiY2xlYXIoKVwiXG4gID5cbiAgICA8bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+Y2xvc2U8L21hdC1pY29uPlxuICA8L2duLXVpLWJ1dHRvbj5cbiAgPGduLXVpLWJ1dHRvblxuICAgIHR5cGU9XCJsaWdodFwiXG4gICAgZXh0cmFDbGFzcz1cImJvcmRlci0wIGJvcmRlci1sLVsxcHhdIGJvcmRlci1ncmF5LTMwMCBob3Zlcjpib3JkZXItZ3JheS01MDAgdGV4dC1wcmltYXJ5IGhvdmVyOnRleHQtcHJpbWFyeS1kYXJrZXN0IGZvY3VzOnRleHQtcHJpbWFyeS1kYXJrZXN0IGFic29sdXRlIGluc2V0LXktWy0taWNvbi1wYWRkaW5nXSByaWdodC1bLS1pY29uLXBhZGRpbmddXCJcbiAgICBhcmlhLWxhYmVsPVwiVHJpZ2dlciBzZWFyY2hcIlxuICAgICpuZ0lmPVwiYWxsb3dTdWJtaXRcIlxuICAgIGRhdGEtdGVzdD1cImF1dG9jb21wbGV0ZS1zdWJtaXQtYnRuXCJcbiAgICAoYnV0dG9uQ2xpY2spPVwiaGFuZGxlQ2xpY2tTZWFyY2goKVwiXG4gID5cbiAgICA8bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+c2VhcmNoPC9tYXQtaWNvbj5cbiAgPC9nbi11aS1idXR0b24+XG5cbiAgPGduLXVpLXBvcHVwLWFsZXJ0XG4gICAgKm5nSWY9XCJlcnJvclwiXG4gICAgY2xhc3M9XCJhYnNvbHV0ZSBtdC0yIHctZnVsbCB0b3AtWzEwMCVdIGxlZnQtMFwiXG4gICAgaWNvbj1cImVycm9yX291dGxpbmVcIlxuICAgIHBvc2l0aW9uPVwidG9wXCJcbiAgICB0eXBlPVwid2FybmluZ1wiXG4gID5cbiAgICA8c3BhbiB0cmFuc2xhdGU+c2VhcmNoLmF1dG9jb21wbGV0ZS5lcnJvcjwvc3Bhbj5cbiAgICB7eyBlcnJvciB9fVxuICA8L2duLXVpLXBvcHVwLWFsZXJ0PlxuPC9zcGFuPlxuXG48bWF0LWF1dG9jb21wbGV0ZVxuICAjYXV0bz1cIm1hdEF1dG9jb21wbGV0ZVwiXG4gIChvcHRpb25TZWxlY3RlZCk9XCJoYW5kbGVTZWxlY3Rpb24oJGV2ZW50KVwiXG4gIFtkaXNwbGF5V2l0aF09XCJkaXNwbGF5V2l0aEZuSW50ZXJuYWxcIlxuPlxuICA8bWF0LW9wdGlvblxuICAgICpuZ0Zvcj1cImxldCBzdWdnZXN0aW9uIG9mIHN1Z2dlc3Rpb25zJCB8IGFzeW5jXCJcbiAgICBbdmFsdWVdPVwic3VnZ2VzdGlvblwiXG4gICAgY2xhc3M9XCJwLTIgc3VnZ2VzdGlvblwiXG4gID5cbiAgICB7eyBkaXNwbGF5V2l0aEZuSW50ZXJuYWwoc3VnZ2VzdGlvbikgfX1cbiAgPC9tYXQtb3B0aW9uPlxuPC9tYXQtYXV0b2NvbXBsZXRlPlxuIl19