geonetwork-ui 2.6.0-dev.f073bbb4e → 2.7.0-dev.035ba2871

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 (884) hide show
  1. package/README.md +2 -3
  2. package/esm2022/libs/api/metadata-converter/src/index.mjs +2 -1
  3. package/esm2022/libs/api/metadata-converter/src/lib/base.converter.mjs +1 -1
  4. package/esm2022/libs/api/metadata-converter/src/lib/common/distribution.mapper.mjs +3 -1
  5. package/esm2022/libs/api/metadata-converter/src/lib/common/resource-types.mjs +17 -15
  6. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.mjs +11 -2
  7. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.mjs +3 -3
  8. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +59 -15
  9. package/esm2022/libs/api/metadata-converter/src/lib/gn4/metadata-url.service.mjs +3 -3
  10. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
  11. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +6 -6
  12. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +3 -3
  13. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +14 -6
  14. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +7 -7
  15. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/status.mapper.mjs +4 -1
  16. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +12 -8
  17. package/esm2022/libs/api/metadata-converter/src/lib/translate-utils.mjs +17 -0
  18. package/esm2022/libs/api/repository/src/lib/gn4/auth/auth.service.mjs +4 -4
  19. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/constant.mjs +5 -2
  20. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +21 -27
  21. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +79 -16
  22. package/esm2022/libs/api/repository/src/lib/gn4/gn4.provider.mjs +7 -1
  23. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.mjs +8 -8
  24. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +14 -11
  25. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +91 -46
  26. package/esm2022/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.mjs +2 -1
  27. package/esm2022/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.mjs +1 -1
  28. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +5 -1
  29. package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
  30. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  31. package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +7 -31
  32. package/esm2022/libs/feature/catalog/src/lib/sources/sources.service.mjs +9 -8
  33. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +59 -11
  34. package/esm2022/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.mjs +4 -5
  35. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +2 -2
  36. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +42 -3
  37. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +31 -8
  38. package/esm2022/libs/feature/editor/src/index.mjs +3 -4
  39. package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +2 -1
  40. package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +13 -7
  41. package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +4 -1
  42. package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +5 -1
  43. package/esm2022/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.mjs +5 -7
  44. package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +8 -13
  45. package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +5 -6
  46. package/esm2022/libs/feature/editor/src/lib/components/metadata-quality-panel/metadata-quality-panel.component.mjs +80 -0
  47. package/esm2022/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.mjs +275 -0
  48. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +5 -15
  49. package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +5 -5
  50. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.mjs +5 -8
  51. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.mjs +4 -5
  52. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.mjs +6 -10
  53. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.mjs +9 -14
  54. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +4 -15
  55. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.mjs +4 -4
  56. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.mjs +4 -4
  57. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.mjs +4 -4
  58. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +7 -7
  59. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +4 -4
  60. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +4 -4
  61. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +6 -17
  62. package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +4 -5
  63. package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +12 -30
  64. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +1 -3
  65. package/esm2022/libs/feature/editor/src/lib/models/index.mjs +1 -3
  66. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +5 -6
  67. package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +11 -8
  68. package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +11 -8
  69. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +11 -6
  70. package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +10 -5
  71. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +3 -36
  72. package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +5 -11
  73. package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +6 -6
  74. package/esm2022/libs/feature/record/src/index.mjs +2 -4
  75. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +50 -26
  76. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +10 -15
  77. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +5 -6
  78. package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +12 -17
  79. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +7 -4
  80. package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +8 -22
  81. package/esm2022/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.mjs +5 -5
  82. package/esm2022/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.mjs +15 -7
  83. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +151 -24
  84. package/esm2022/libs/feature/record/src/lib/record-meta/record-meta.component.mjs +1 -1
  85. package/esm2022/libs/feature/record/src/lib/state/mdview.actions.mjs +3 -1
  86. package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +16 -5
  87. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +13 -15
  88. package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +7 -1
  89. package/esm2022/libs/feature/record/src/lib/state/mdview.selectors.mjs +3 -1
  90. package/esm2022/libs/feature/router/src/lib/default/constants.mjs +3 -1
  91. package/esm2022/libs/feature/router/src/lib/default/router.config.mjs +1 -1
  92. package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +10 -2
  93. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +9 -3
  94. package/esm2022/libs/feature/search/src/index.mjs +2 -2
  95. package/esm2022/libs/feature/search/src/lib/constants.mjs +4 -2
  96. package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +12 -8
  97. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +33 -42
  98. package/esm2022/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.mjs +3 -3
  99. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +8 -6
  100. package/esm2022/libs/feature/search/src/lib/record-url.token.mjs +4 -2
  101. package/esm2022/libs/feature/search/src/lib/results-hits/results-hits.container.component.mjs +44 -0
  102. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +35 -15
  103. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +13 -10
  104. package/esm2022/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.mjs +5 -7
  105. package/esm2022/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.mjs +4 -4
  106. package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +74 -4
  107. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +4 -3
  108. package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +3 -3
  109. package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +4 -5
  110. package/esm2022/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.mjs +4 -5
  111. package/esm2022/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.mjs +4 -5
  112. package/esm2022/libs/ui/dataviz/src/index.mjs +1 -2
  113. package/esm2022/libs/ui/dataviz/src/lib/chart/chart.component.mjs +5 -3
  114. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.component.mjs +14 -8
  115. package/esm2022/libs/ui/dataviz/src/lib/figure/figure.component.mjs +5 -5
  116. package/esm2022/libs/ui/elements/src/index.mjs +7 -4
  117. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +7 -7
  118. package/esm2022/libs/ui/elements/src/lib/application-banner/application-banner.component.mjs +5 -5
  119. package/esm2022/libs/ui/elements/src/lib/avatar/avatar.component.mjs +4 -3
  120. package/esm2022/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.mjs +5 -3
  121. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +5 -6
  122. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +20 -9
  123. package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +4 -5
  124. package/esm2022/libs/ui/elements/src/lib/external-link-card/external-link-card.component.mjs +59 -0
  125. package/esm2022/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.mjs +54 -0
  126. package/esm2022/libs/ui/elements/src/lib/image-input/image-input.component.mjs +4 -5
  127. package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +3 -3
  128. package/esm2022/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.mjs +89 -0
  129. package/esm2022/libs/ui/elements/src/lib/kind-badge/kind-badge.component.mjs +70 -0
  130. package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +3 -6
  131. package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +4 -5
  132. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +5 -6
  133. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +10 -8
  134. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +27 -26
  135. package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +8 -5
  136. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +9 -6
  137. package/esm2022/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.mjs +70 -0
  138. package/esm2022/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.mjs +170 -0
  139. package/esm2022/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.mjs +4 -5
  140. package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +5 -4
  141. package/esm2022/libs/ui/inputs/src/index.mjs +3 -3
  142. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +10 -13
  143. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +2 -2
  144. package/esm2022/libs/ui/inputs/src/lib/checkbox/checkbox.component.mjs +4 -3
  145. package/esm2022/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.mjs +7 -6
  146. package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +29 -7
  147. package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +5 -6
  148. package/esm2022/libs/ui/inputs/src/lib/file-input/file-input.component.mjs +5 -7
  149. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.mjs +43 -0
  150. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.mjs +2 -0
  151. package/esm2022/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.mjs +73 -0
  152. package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +8 -3
  153. package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +4 -5
  154. package/esm2022/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.mjs +3 -3
  155. package/esm2022/libs/ui/layout/src/index.mjs +3 -2
  156. package/esm2022/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.mjs +44 -3
  157. package/esm2022/libs/ui/layout/src/lib/block-list/block-list.component.mjs +61 -14
  158. package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +3 -3
  159. package/esm2022/libs/ui/layout/src/lib/cell-popin/cell-popin.component.mjs +110 -0
  160. package/esm2022/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.mjs +34 -13
  161. package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +4 -5
  162. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +26 -5
  163. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +4 -5
  164. package/esm2022/libs/ui/layout/src/lib/pagination/pagination.component.mjs +4 -5
  165. package/esm2022/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +6 -6
  166. package/esm2022/libs/ui/layout/src/lib/sticky-header/sticky-header.component.mjs +4 -3
  167. package/esm2022/libs/ui/layout/src/lib/truncated-text/truncated-text.component.mjs +71 -0
  168. package/esm2022/libs/ui/map/src/index.mjs +2 -1
  169. package/esm2022/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.mjs +29 -4
  170. package/esm2022/libs/ui/map/src/lib/components/map-container/map-container.component.mjs +4 -5
  171. package/esm2022/libs/ui/map/src/lib/components/map-legend/map-legend.component.mjs +2 -2
  172. package/esm2022/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.mjs +80 -0
  173. package/esm2022/libs/ui/search/src/index.mjs +3 -1
  174. package/esm2022/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.mjs +6 -6
  175. package/esm2022/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.mjs +17 -10
  176. package/esm2022/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.mjs +3 -3
  177. package/esm2022/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.mjs +53 -0
  178. package/esm2022/libs/ui/search/src/lib/results-list/results-layout.config.mjs +2 -2
  179. package/esm2022/libs/ui/search/src/lib/results-list/results-list.component.mjs +3 -3
  180. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +24 -17
  181. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +45 -20
  182. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +39 -26
  183. package/esm2022/libs/ui/widgets/src/index.mjs +1 -2
  184. package/esm2022/libs/ui/widgets/src/lib/color-scale/color-scale.component.mjs +3 -3
  185. package/esm2022/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.mjs +3 -3
  186. package/esm2022/libs/util/app-config/src/lib/app-config.mjs +6 -3
  187. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +3 -1
  188. package/esm2022/libs/util/app-config/src/lib/model.mjs +1 -1
  189. package/esm2022/libs/util/i18n/src/index.mjs +2 -3
  190. package/esm2022/libs/util/i18n/src/lib/embedded.translate.loader.mjs +3 -2
  191. package/esm2022/libs/util/i18n/src/lib/i18n.constants.mjs +36 -28
  192. package/esm2022/libs/util/i18n/src/lib/i18n.interceptor.mjs +10 -9
  193. package/esm2022/libs/util/i18n/src/lib/i18n.providers.mjs +41 -0
  194. package/esm2022/libs/util/i18n/src/lib/language-codes.mjs +63 -3
  195. package/esm2022/libs/util/shared/src/index.mjs +3 -2
  196. package/esm2022/libs/util/shared/src/lib/gn-ui-version.mjs +6 -0
  197. package/esm2022/libs/util/shared/src/lib/image-fallback.directive.mjs +3 -2
  198. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +5 -1
  199. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +27 -7
  200. package/esm2022/libs/util/shared/src/lib/record/index.mjs +3 -0
  201. package/esm2022/libs/util/shared/src/lib/record/quality-score.util.mjs +45 -0
  202. package/esm2022/libs/util/shared/src/lib/record/record.util.mjs +56 -0
  203. package/esm2022/translations/de.json +98 -24
  204. package/esm2022/translations/en.json +98 -24
  205. package/esm2022/translations/es.json +97 -23
  206. package/esm2022/translations/fr.json +100 -26
  207. package/esm2022/translations/it.json +97 -24
  208. package/esm2022/translations/nl.json +97 -23
  209. package/esm2022/translations/pt.json +97 -23
  210. package/esm2022/translations/sk.json +615 -0
  211. package/fesm2022/geonetwork-ui.mjs +12372 -9881
  212. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  213. package/libs/api/metadata-converter/src/index.d.ts +1 -0
  214. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  215. package/libs/api/metadata-converter/src/lib/base.converter.d.ts.map +1 -1
  216. package/libs/api/metadata-converter/src/lib/common/distribution.mapper.d.ts.map +1 -1
  217. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts +21 -0
  218. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts.map +1 -1
  219. package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts.map +1 -1
  220. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +4 -4
  221. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  222. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +0 -1
  223. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  224. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +1 -0
  225. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  226. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -1
  227. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  228. package/libs/api/metadata-converter/src/lib/iso19139/utils/status.mapper.d.ts.map +1 -1
  229. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  230. package/libs/api/metadata-converter/src/lib/translate-utils.d.ts +2 -0
  231. package/libs/api/metadata-converter/src/lib/translate-utils.d.ts.map +1 -0
  232. package/libs/api/repository/src/lib/gn4/auth/auth.service.d.ts.map +1 -1
  233. package/libs/api/repository/src/lib/gn4/elasticsearch/constant.d.ts.map +1 -1
  234. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +9 -7
  235. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
  236. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +14 -3
  237. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  238. package/libs/api/repository/src/lib/gn4/gn4.provider.d.ts.map +1 -1
  239. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts +1 -0
  240. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts.map +1 -1
  241. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts +4 -4
  242. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts.map +1 -1
  243. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +10 -4
  244. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  245. package/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.d.ts +1 -0
  246. package/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.d.ts.map +1 -1
  247. package/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.d.ts +8 -1
  248. package/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.d.ts.map +1 -1
  249. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +26 -17
  250. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  251. package/libs/common/domain/src/lib/platform.service.interface.d.ts +2 -1
  252. package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
  253. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +7 -1
  254. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  255. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts +4 -8
  256. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts.map +1 -1
  257. package/libs/feature/catalog/src/lib/sources/sources.service.d.ts +3 -3
  258. package/libs/feature/catalog/src/lib/sources/sources.service.d.ts.map +1 -1
  259. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +14 -9
  260. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  261. package/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.d.ts.map +1 -1
  262. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +3 -0
  263. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  264. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +6 -3
  265. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  266. package/libs/feature/editor/src/index.d.ts +2 -3
  267. package/libs/feature/editor/src/index.d.ts.map +1 -1
  268. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +8 -1
  269. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -1
  270. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts +10 -12
  271. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -1
  272. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +2 -1
  273. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -1
  274. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -1
  275. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +1 -1
  276. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -1
  277. package/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.d.ts.map +1 -1
  278. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts.map +1 -1
  279. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts.map +1 -1
  280. package/libs/feature/editor/src/lib/components/metadata-quality-panel/metadata-quality-panel.component.d.ts +19 -0
  281. package/libs/feature/editor/src/lib/components/metadata-quality-panel/metadata-quality-panel.component.d.ts.map +1 -0
  282. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts +52 -0
  283. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts.map +1 -0
  284. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -1
  285. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts +6 -6
  286. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts.map +1 -1
  287. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.d.ts.map +1 -1
  288. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts.map +1 -1
  289. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts.map +1 -1
  290. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -1
  291. 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 -1
  292. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.d.ts.map +1 -1
  293. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts.map +1 -1
  294. 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
  295. 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
  296. 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
  297. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  298. package/libs/feature/editor/src/lib/feature-editor.module.d.ts +10 -17
  299. package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
  300. package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
  301. package/libs/feature/editor/src/lib/models/index.d.ts +0 -2
  302. package/libs/feature/editor/src/lib/models/index.d.ts.map +1 -1
  303. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts.map +1 -1
  304. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -1
  305. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
  306. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -1
  307. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts.map +1 -1
  308. package/libs/feature/map/src/lib/feature-map.module.d.ts +2 -11
  309. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  310. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts.map +1 -1
  311. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
  312. package/libs/feature/record/src/index.d.ts +1 -3
  313. package/libs/feature/record/src/index.d.ts.map +1 -1
  314. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +23 -7
  315. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  316. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +2 -3
  317. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
  318. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +1 -2
  319. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
  320. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +2 -1
  321. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  322. package/libs/feature/record/src/lib/feature-record.module.d.ts +8 -12
  323. package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
  324. package/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.d.ts.map +1 -1
  325. package/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.d.ts.map +1 -1
  326. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +22 -8
  327. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  328. package/libs/feature/record/src/lib/record-meta/record-meta.component.d.ts +2 -2
  329. package/libs/feature/record/src/lib/state/mdview.actions.d.ts +13 -3
  330. package/libs/feature/record/src/lib/state/mdview.actions.d.ts.map +1 -1
  331. package/libs/feature/record/src/lib/state/mdview.effects.d.ts +9 -1
  332. package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
  333. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +30 -23
  334. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  335. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts +4 -2
  336. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts.map +1 -1
  337. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts +3 -1
  338. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts.map +1 -1
  339. package/libs/feature/router/src/lib/default/constants.d.ts +2 -0
  340. package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
  341. package/libs/feature/router/src/lib/default/router.config.d.ts +2 -0
  342. package/libs/feature/router/src/lib/default/router.config.d.ts.map +1 -1
  343. package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
  344. package/libs/feature/router/src/lib/default/state/router.facade.d.ts +5 -0
  345. package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
  346. package/libs/feature/search/src/index.d.ts +1 -1
  347. package/libs/feature/search/src/index.d.ts.map +1 -1
  348. package/libs/feature/search/src/lib/constants.d.ts.map +1 -1
  349. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts +2 -1
  350. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts.map +1 -1
  351. package/libs/feature/search/src/lib/feature-search.module.d.ts +24 -22
  352. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  353. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts +2 -1
  354. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
  355. package/libs/feature/search/src/lib/record-url.token.d.ts +3 -1
  356. package/libs/feature/search/src/lib/record-url.token.d.ts.map +1 -1
  357. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts +22 -0
  358. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts.map +1 -0
  359. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts +5 -3
  360. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts.map +1 -1
  361. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +6 -5
  362. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -1
  363. package/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.d.ts +1 -2
  364. package/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.d.ts.map +1 -1
  365. package/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.d.ts.map +1 -1
  366. package/libs/feature/search/src/lib/utils/service/fields.d.ts +22 -2
  367. package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
  368. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  369. package/libs/ui/dataviz/src/index.d.ts +0 -1
  370. package/libs/ui/dataviz/src/index.d.ts.map +1 -1
  371. package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts +2 -1
  372. package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts.map +1 -1
  373. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts +6 -1
  374. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts.map +1 -1
  375. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts +1 -1
  376. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts.map +1 -1
  377. package/libs/ui/elements/src/index.d.ts +6 -3
  378. package/libs/ui/elements/src/index.d.ts.map +1 -1
  379. package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts.map +1 -1
  380. package/libs/ui/elements/src/lib/avatar/avatar.component.d.ts +1 -1
  381. package/libs/ui/elements/src/lib/avatar/avatar.component.d.ts.map +1 -1
  382. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts +2 -0
  383. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts.map +1 -1
  384. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +1 -1
  385. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  386. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -1
  387. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  388. package/libs/ui/elements/src/lib/{link-card/link-card.component.d.ts → external-link-card/external-link-card.component.d.ts} +5 -5
  389. package/libs/ui/elements/src/lib/external-link-card/external-link-card.component.d.ts.map +1 -0
  390. package/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.d.ts +15 -0
  391. package/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.d.ts.map +1 -0
  392. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts +30 -0
  393. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts.map +1 -0
  394. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts +14 -0
  395. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts.map +1 -0
  396. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts.map +1 -1
  397. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +2 -2
  398. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
  399. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +8 -4
  400. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
  401. package/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.d.ts.map +1 -1
  402. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
  403. package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts +27 -0
  404. package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts.map +1 -0
  405. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts +31 -0
  406. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts.map +1 -0
  407. package/libs/ui/elements/src/lib/user-preview/user-preview.component.d.ts +1 -1
  408. package/libs/ui/elements/src/lib/user-preview/user-preview.component.d.ts.map +1 -1
  409. package/libs/ui/inputs/src/index.d.ts +2 -2
  410. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  411. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts +1 -2
  412. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
  413. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  414. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  415. package/libs/ui/inputs/src/lib/checkbox/checkbox.component.d.ts +1 -1
  416. package/libs/ui/inputs/src/lib/checkbox/checkbox.component.d.ts.map +1 -1
  417. package/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.d.ts +1 -1
  418. package/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.d.ts.map +1 -1
  419. package/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.d.ts +1 -1
  420. package/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.d.ts.map +1 -1
  421. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts.map +1 -1
  422. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts +14 -0
  423. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts.map +1 -0
  424. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts +6 -0
  425. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts.map +1 -0
  426. package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts +17 -0
  427. package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts.map +1 -0
  428. package/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.d.ts +2 -1
  429. package/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.d.ts.map +1 -1
  430. package/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.d.ts +1 -1
  431. package/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.d.ts.map +1 -1
  432. package/libs/ui/layout/src/index.d.ts +2 -1
  433. package/libs/ui/layout/src/index.d.ts.map +1 -1
  434. package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts +10 -3
  435. package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts.map +1 -1
  436. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts +11 -3
  437. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts.map +1 -1
  438. package/libs/ui/layout/src/lib/cell-popin/cell-popin.component.d.ts +28 -0
  439. package/libs/ui/layout/src/lib/cell-popin/cell-popin.component.d.ts.map +1 -0
  440. package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts +15 -8
  441. package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts.map +1 -1
  442. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +5 -1
  443. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -1
  444. package/libs/ui/layout/src/lib/sticky-header/sticky-header.component.d.ts +1 -1
  445. package/libs/ui/layout/src/lib/sticky-header/sticky-header.component.d.ts.map +1 -1
  446. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts +22 -0
  447. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts.map +1 -0
  448. package/libs/ui/map/src/index.d.ts +1 -0
  449. package/libs/ui/map/src/index.d.ts.map +1 -1
  450. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts +6 -2
  451. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts.map +1 -1
  452. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts +15 -0
  453. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts.map +1 -0
  454. package/libs/ui/search/src/index.d.ts +2 -0
  455. package/libs/ui/search/src/index.d.ts.map +1 -1
  456. package/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.d.ts +2 -0
  457. package/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.d.ts.map +1 -1
  458. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts +17 -0
  459. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts.map +1 -0
  460. package/libs/ui/search/src/lib/results-list/results-list.component.d.ts.map +1 -1
  461. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +4 -3
  462. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -1
  463. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +10 -4
  464. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  465. package/libs/ui/search/src/lib/ui-search.module.d.ts +22 -19
  466. package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
  467. package/libs/ui/widgets/src/index.d.ts +0 -1
  468. package/libs/ui/widgets/src/index.d.ts.map +1 -1
  469. package/libs/ui/widgets/src/lib/color-scale/color-scale.component.d.ts +1 -1
  470. package/libs/ui/widgets/src/lib/color-scale/color-scale.component.d.ts.map +1 -1
  471. package/libs/util/app-config/src/lib/app-config.d.ts +0 -1
  472. package/libs/util/app-config/src/lib/app-config.d.ts.map +1 -1
  473. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  474. package/libs/util/app-config/src/lib/model.d.ts +2 -0
  475. package/libs/util/app-config/src/lib/model.d.ts.map +1 -1
  476. package/libs/util/i18n/src/index.d.ts +1 -2
  477. package/libs/util/i18n/src/index.d.ts.map +1 -1
  478. package/libs/util/i18n/src/lib/embedded.translate.loader.d.ts +1 -1
  479. package/libs/util/i18n/src/lib/embedded.translate.loader.d.ts.map +1 -1
  480. package/libs/util/i18n/src/lib/i18n.constants.d.ts +6 -15
  481. package/libs/util/i18n/src/lib/i18n.constants.d.ts.map +1 -1
  482. package/libs/util/i18n/src/lib/i18n.interceptor.d.ts +5 -5
  483. package/libs/util/i18n/src/lib/i18n.interceptor.d.ts.map +1 -1
  484. package/libs/util/i18n/src/lib/i18n.providers.d.ts +4 -0
  485. package/libs/util/i18n/src/lib/i18n.providers.d.ts.map +1 -0
  486. package/libs/util/i18n/src/lib/language-codes.d.ts +15 -19
  487. package/libs/util/i18n/src/lib/language-codes.d.ts.map +1 -1
  488. package/libs/util/shared/src/index.d.ts +2 -1
  489. package/libs/util/shared/src/index.d.ts.map +1 -1
  490. package/libs/util/shared/src/lib/gn-ui-version.d.ts +3 -0
  491. package/libs/util/shared/src/lib/gn-ui-version.d.ts.map +1 -0
  492. package/libs/util/shared/src/lib/image-fallback.directive.d.ts +1 -1
  493. package/libs/util/shared/src/lib/image-fallback.directive.d.ts.map +1 -1
  494. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  495. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  496. package/libs/util/shared/src/lib/links/link-utils.d.ts +16 -8
  497. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  498. package/libs/util/shared/src/lib/record/index.d.ts +3 -0
  499. package/libs/util/shared/src/lib/record/index.d.ts.map +1 -0
  500. package/libs/util/shared/src/lib/record/quality-score.util.d.ts +13 -0
  501. package/libs/util/shared/src/lib/record/quality-score.util.d.ts.map +1 -0
  502. package/libs/util/shared/src/lib/record/record.util.d.ts +3 -0
  503. package/libs/util/shared/src/lib/record/record.util.d.ts.map +1 -0
  504. package/package.json +4 -4
  505. package/src/libs/api/metadata-converter/src/index.ts +1 -0
  506. package/src/libs/api/metadata-converter/src/lib/base.converter.ts +1 -4
  507. package/src/libs/api/metadata-converter/src/lib/common/distribution.mapper.ts +1 -0
  508. package/src/libs/api/metadata-converter/src/lib/common/resource-types.ts +29 -15
  509. package/src/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.ts +10 -1
  510. package/src/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.ts +2 -2
  511. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/status.mapper.ts +3 -0
  512. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.service+eaux-usees.ts +2 -2
  513. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +3 -3
  514. package/src/libs/api/metadata-converter/src/lib/fixtures/metadata-for-i18n.records.ts +4240 -0
  515. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +2 -2
  516. package/src/libs/api/metadata-converter/src/lib/fixtures/wallonie.records.service+napitswallonia.ts +2 -2
  517. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +81 -11
  518. package/src/libs/api/metadata-converter/src/lib/gn4/metadata-url.service.ts +4 -4
  519. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +0 -1
  520. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +11 -5
  521. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +2 -2
  522. package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +14 -8
  523. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +12 -8
  524. package/src/libs/api/metadata-converter/src/lib/iso19139/utils/status.mapper.ts +3 -0
  525. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +12 -7
  526. package/src/libs/api/metadata-converter/src/lib/translate-utils.ts +17 -0
  527. package/src/libs/api/repository/src/lib/gn4/auth/auth.service.ts +3 -6
  528. package/src/libs/api/repository/src/lib/gn4/elasticsearch/constant.ts +4 -1
  529. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +17 -17
  530. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +119 -16
  531. package/src/libs/api/repository/src/lib/gn4/gn4.provider.ts +6 -0
  532. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.ts +8 -7
  533. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +13 -6
  534. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +113 -69
  535. package/src/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.ts +3 -0
  536. package/src/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.ts +10 -1
  537. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +31 -11
  538. package/src/libs/common/domain/src/lib/platform.service.interface.ts +4 -1
  539. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +11 -1
  540. package/src/libs/common/fixtures/src/lib/editor/editor.fixtures.ts +0 -3
  541. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +36 -26
  542. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +16 -2
  543. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +5 -5
  544. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +114 -1
  545. package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +4 -17
  546. package/src/libs/feature/catalog/src/lib/sources/sources.service.ts +7 -3
  547. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.html +12 -9
  548. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +70 -13
  549. package/src/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.ts +2 -2
  550. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +49 -1
  551. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.html +1 -0
  552. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +33 -3
  553. package/src/libs/feature/editor/src/index.ts +2 -3
  554. package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +9 -1
  555. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +23 -12
  556. package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +13 -1
  557. package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +9 -1
  558. package/src/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.ts +3 -4
  559. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +5 -16
  560. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +7 -5
  561. package/src/libs/feature/editor/src/lib/components/metadata-quality-panel/metadata-quality-panel.component.html +37 -0
  562. package/src/libs/feature/editor/src/lib/components/metadata-quality-panel/metadata-quality-panel.component.ts +93 -0
  563. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.html +121 -0
  564. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.ts +331 -0
  565. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +3 -12
  566. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +5 -4
  567. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.ts +3 -4
  568. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.ts +2 -2
  569. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.ts +4 -11
  570. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +6 -9
  571. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +2 -17
  572. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.ts +2 -2
  573. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.ts +2 -2
  574. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.ts +2 -2
  575. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +2 -2
  576. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +2 -2
  577. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +4 -4
  578. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +2 -2
  579. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +2 -2
  580. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +2 -15
  581. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +2 -2
  582. package/src/libs/feature/editor/src/lib/feature-editor.module.ts +4 -17
  583. package/src/libs/feature/editor/src/lib/fields.config.ts +0 -2
  584. package/src/libs/feature/editor/src/lib/models/index.ts +0 -2
  585. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.ts +2 -1
  586. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +8 -3
  587. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +10 -3
  588. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +8 -2
  589. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.ts +8 -2
  590. package/src/libs/feature/map/src/lib/feature-map.module.ts +0 -17
  591. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +3 -8
  592. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +3 -2
  593. package/src/libs/feature/record/src/index.ts +1 -3
  594. package/src/libs/feature/record/src/lib/data-view/data-view.component.html +19 -11
  595. package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +56 -30
  596. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +4 -5
  597. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +1 -1
  598. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.ts +2 -2
  599. package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +6 -7
  600. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.html +2 -2
  601. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +3 -2
  602. package/src/libs/feature/record/src/lib/feature-record.module.ts +4 -13
  603. package/src/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.ts +4 -3
  604. package/src/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.ts +10 -4
  605. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +43 -13
  606. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +189 -25
  607. package/src/libs/feature/record/src/lib/record-meta/record-meta.component.ts +2 -2
  608. package/src/libs/feature/record/src/lib/state/mdview.actions.ts +12 -2
  609. package/src/libs/feature/record/src/lib/state/mdview.effects.ts +31 -3
  610. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +23 -19
  611. package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +14 -2
  612. package/src/libs/feature/record/src/lib/state/mdview.selectors.ts +9 -0
  613. package/src/libs/feature/router/src/lib/default/constants.ts +2 -0
  614. package/src/libs/feature/router/src/lib/default/router.config.ts +2 -0
  615. package/src/libs/feature/router/src/lib/default/router.service.ts +10 -0
  616. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +10 -1
  617. package/src/libs/feature/search/src/index.ts +1 -1
  618. package/src/libs/feature/search/src/lib/constants.ts +3 -1
  619. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.html +2 -7
  620. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +16 -7
  621. package/src/libs/feature/search/src/lib/feature-search.module.ts +17 -23
  622. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +1 -1
  623. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +5 -0
  624. package/src/libs/feature/search/src/lib/record-url.token.ts +10 -1
  625. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.html +17 -0
  626. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.ts +60 -0
  627. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.css +6 -0
  628. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.html +1 -0
  629. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +26 -5
  630. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +1 -0
  631. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +13 -3
  632. package/src/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.ts +10 -4
  633. package/src/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.ts +2 -2
  634. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +4 -5
  635. package/src/libs/feature/search/src/lib/utils/service/fields.ts +103 -3
  636. package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html +1 -1
  637. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.ts +2 -2
  638. package/src/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.ts +2 -2
  639. package/src/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.ts +2 -2
  640. package/src/libs/ui/dataviz/src/index.ts +0 -1
  641. package/src/libs/ui/dataviz/src/lib/chart/chart.component.ts +2 -1
  642. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.html +6 -3
  643. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.ts +12 -6
  644. package/src/libs/ui/dataviz/src/lib/figure/figure.component.html +0 -1
  645. package/src/libs/ui/dataviz/src/lib/figure/figure.component.ts +4 -0
  646. package/src/libs/ui/elements/src/index.ts +6 -3
  647. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +4 -4
  648. package/src/libs/ui/elements/src/lib/api-card/api-card.component.ts +3 -2
  649. package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.html +6 -6
  650. package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.ts +2 -2
  651. package/src/libs/ui/elements/src/lib/avatar/avatar.component.ts +3 -0
  652. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.html +6 -2
  653. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.ts +5 -1
  654. package/src/libs/ui/elements/src/lib/download-item/download-item.component.html +8 -5
  655. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +4 -4
  656. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +42 -11
  657. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +28 -4
  658. package/src/libs/ui/elements/src/lib/error/error.component.ts +2 -2
  659. package/src/libs/ui/elements/src/lib/external-link-card/external-link-card.component.css +0 -0
  660. package/src/libs/ui/elements/src/lib/{link-card/link-card.component.html → external-link-card/external-link-card.component.html} +5 -2
  661. package/src/libs/ui/elements/src/lib/{link-card/link-card.component.ts → external-link-card/external-link-card.component.ts} +9 -13
  662. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.css +4 -0
  663. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.html +13 -0
  664. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.ts +54 -0
  665. package/src/libs/ui/elements/src/lib/image-input/image-input.component.ts +2 -2
  666. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +1 -1
  667. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.html +88 -0
  668. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.scss +115 -0
  669. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.ts +102 -0
  670. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.css +6 -0
  671. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.html +15 -0
  672. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.ts +72 -0
  673. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +1 -4
  674. package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.html +3 -5
  675. package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.ts +2 -2
  676. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +12 -9
  677. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.ts +2 -2
  678. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +9 -0
  679. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +24 -7
  680. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +11 -6
  681. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +21 -21
  682. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +27 -22
  683. package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.ts +6 -2
  684. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +6 -3
  685. package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.html +107 -0
  686. package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.ts +82 -0
  687. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.css +0 -0
  688. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.html +110 -0
  689. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.ts +196 -0
  690. package/src/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.ts +2 -2
  691. package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.ts +4 -0
  692. package/src/libs/ui/inputs/src/index.ts +2 -2
  693. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +3 -3
  694. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +6 -9
  695. package/src/libs/ui/inputs/src/lib/button/button.component.ts +2 -2
  696. package/src/libs/ui/inputs/src/lib/checkbox/checkbox.component.ts +3 -0
  697. package/src/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.html +1 -1
  698. package/src/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.ts +4 -0
  699. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +1 -1
  700. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.ts +27 -0
  701. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +1 -1
  702. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.ts +2 -2
  703. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +3 -4
  704. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.html +23 -0
  705. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.ts +47 -0
  706. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.ts +5 -0
  707. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.css +0 -0
  708. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.html +43 -0
  709. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.ts +83 -0
  710. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.css +0 -1
  711. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.html +11 -8
  712. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.ts +4 -1
  713. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +2 -2
  714. package/src/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.ts +1 -0
  715. package/src/libs/ui/layout/src/index.ts +2 -1
  716. package/src/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.ts +47 -2
  717. package/src/libs/ui/layout/src/lib/block-list/block-list.component.css +22 -0
  718. package/src/libs/ui/layout/src/lib/block-list/block-list.component.html +2 -3
  719. package/src/libs/ui/layout/src/lib/block-list/block-list.component.ts +57 -9
  720. package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +0 -1
  721. package/src/libs/ui/layout/src/lib/carousel/carousel.component.html +1 -1
  722. package/src/libs/ui/layout/src/lib/cell-popin/cell-popin.component.html +40 -0
  723. package/src/libs/ui/layout/src/lib/cell-popin/cell-popin.component.ts +141 -0
  724. package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.html +24 -8
  725. package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.ts +36 -10
  726. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +2 -2
  727. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +4 -7
  728. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +22 -2
  729. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.html +1 -1
  730. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.ts +2 -2
  731. package/src/libs/ui/layout/src/lib/pagination/pagination.component.ts +2 -2
  732. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.html +17 -5
  733. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.ts +3 -3
  734. package/src/libs/ui/layout/src/lib/sticky-header/sticky-header.component.ts +3 -0
  735. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.html +27 -0
  736. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.ts +84 -0
  737. package/src/libs/ui/map/src/index.ts +1 -0
  738. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.html +3 -3
  739. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.ts +27 -3
  740. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +2 -2
  741. package/src/libs/ui/map/src/lib/components/map-legend/map-legend.component.ts +1 -1
  742. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.css +0 -0
  743. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.html +4 -0
  744. package/src/libs/{feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.ts → ui/map/src/lib/components/spatial-extent/spatial-extent.component.ts} +8 -8
  745. package/src/libs/ui/search/src/index.ts +2 -0
  746. package/src/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.html +4 -1
  747. package/src/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.html +9 -81
  748. package/src/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.ts +14 -1
  749. package/src/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.html +1 -1
  750. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.html +25 -0
  751. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.ts +53 -0
  752. package/src/libs/ui/search/src/lib/results-list/results-layout.config.ts +2 -2
  753. package/src/libs/ui/search/src/lib/results-list/results-list.component.html +1 -0
  754. package/src/libs/ui/search/src/lib/results-list/results-list.component.ts +0 -1
  755. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +16 -6
  756. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +18 -15
  757. package/src/libs/ui/search/src/lib/results-table/results-table.component.css +4 -0
  758. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +29 -24
  759. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +49 -17
  760. package/src/libs/ui/search/src/lib/ui-search.module.ts +19 -10
  761. package/src/libs/ui/widgets/src/index.ts +0 -1
  762. package/src/libs/ui/widgets/src/lib/color-scale/color-scale.component.ts +1 -0
  763. package/src/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.html +4 -3
  764. package/src/libs/util/app-config/src/lib/app-config.ts +6 -2
  765. package/src/libs/util/app-config/src/lib/fixtures.ts +2 -0
  766. package/src/libs/util/app-config/src/lib/model.ts +2 -0
  767. package/src/libs/util/i18n/src/index.ts +1 -2
  768. package/src/libs/util/i18n/src/lib/embedded.translate.loader.ts +4 -3
  769. package/src/libs/util/i18n/src/lib/i18n.constants.ts +39 -29
  770. package/src/libs/util/i18n/src/lib/i18n.interceptor.ts +11 -9
  771. package/src/libs/util/i18n/src/lib/i18n.providers.ts +68 -0
  772. package/src/libs/util/i18n/src/lib/language-codes.ts +67 -2
  773. package/src/libs/util/shared/src/index.ts +2 -1
  774. package/src/libs/util/shared/src/lib/gn-ui-version.ts +8 -0
  775. package/src/libs/util/shared/src/lib/image-fallback.directive.ts +1 -0
  776. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +15 -3
  777. package/src/libs/util/shared/src/lib/links/link-utils.ts +44 -13
  778. package/src/libs/util/shared/src/lib/record/index.ts +2 -0
  779. package/src/libs/util/shared/src/lib/record/quality-score.util.ts +69 -0
  780. package/src/libs/util/shared/src/lib/record/record.util.ts +114 -0
  781. package/tailwind.base.config.js +3 -0
  782. package/tailwind.base.css +24 -26
  783. package/translations/de.json +98 -24
  784. package/translations/en.json +98 -24
  785. package/translations/es.json +97 -23
  786. package/translations/fr.json +100 -26
  787. package/translations/it.json +97 -24
  788. package/translations/nl.json +97 -23
  789. package/translations/pt.json +97 -23
  790. package/translations/sk.json +97 -23
  791. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +0 -79
  792. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.mjs +0 -44
  793. package/esm2022/libs/feature/editor/src/lib/components/wizard/wizard.component.mjs +0 -75
  794. package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +0 -160
  795. package/esm2022/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.mjs +0 -53
  796. package/esm2022/libs/feature/editor/src/lib/models/wizard-field.model.mjs +0 -2
  797. package/esm2022/libs/feature/editor/src/lib/models/wizard-field.type.mjs +0 -8
  798. package/esm2022/libs/feature/editor/src/lib/services/wizard.service.mjs +0 -87
  799. package/esm2022/libs/feature/record/src/lib/gn-ui-version.token.mjs +0 -3
  800. package/esm2022/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.mjs +0 -18
  801. package/esm2022/libs/ui/dataviz/src/lib/ui-dataviz.module.mjs +0 -47
  802. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +0 -60
  803. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +0 -46
  804. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +0 -106
  805. package/esm2022/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.mjs +0 -16
  806. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +0 -161
  807. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +0 -31
  808. package/esm2022/libs/ui/widgets/src/lib/ui-widgets.module.mjs +0 -46
  809. package/esm2022/libs/util/i18n/src/lib/lang.service.mjs +0 -31
  810. package/esm2022/libs/util/i18n/src/lib/util-i18n.module.mjs +0 -37
  811. package/esm2022/libs/util/shared/src/lib/util-shared.module.mjs +0 -18
  812. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +0 -15
  813. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts.map +0 -1
  814. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts +0 -14
  815. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts.map +0 -1
  816. package/libs/feature/editor/src/lib/components/wizard/wizard.component.d.ts +0 -31
  817. package/libs/feature/editor/src/lib/components/wizard/wizard.component.d.ts.map +0 -1
  818. package/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.d.ts +0 -43
  819. package/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.d.ts.map +0 -1
  820. package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts +0 -17
  821. package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts.map +0 -1
  822. package/libs/feature/editor/src/lib/models/wizard-field.model.d.ts +0 -10
  823. package/libs/feature/editor/src/lib/models/wizard-field.model.d.ts.map +0 -1
  824. package/libs/feature/editor/src/lib/models/wizard-field.type.d.ts +0 -7
  825. package/libs/feature/editor/src/lib/models/wizard-field.type.d.ts.map +0 -1
  826. package/libs/feature/editor/src/lib/services/wizard.service.d.ts +0 -33
  827. package/libs/feature/editor/src/lib/services/wizard.service.d.ts.map +0 -1
  828. package/libs/feature/record/src/lib/gn-ui-version.token.d.ts +0 -3
  829. package/libs/feature/record/src/lib/gn-ui-version.token.d.ts.map +0 -1
  830. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts +0 -9
  831. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts.map +0 -1
  832. package/libs/ui/dataviz/src/lib/ui-dataviz.module.d.ts +0 -11
  833. package/libs/ui/dataviz/src/lib/ui-dataviz.module.d.ts.map +0 -1
  834. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +0 -1
  835. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +0 -12
  836. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +0 -1
  837. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +0 -27
  838. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +0 -1
  839. package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts +0 -8
  840. package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts.map +0 -1
  841. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +0 -34
  842. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +0 -1
  843. package/libs/ui/layout/src/lib/ui-layout.module.d.ts +0 -12
  844. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +0 -1
  845. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts +0 -15
  846. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts.map +0 -1
  847. package/libs/util/i18n/src/lib/lang.service.d.ts +0 -13
  848. package/libs/util/i18n/src/lib/lang.service.d.ts.map +0 -1
  849. package/libs/util/i18n/src/lib/util-i18n.module.d.ts +0 -12
  850. package/libs/util/i18n/src/lib/util-i18n.module.d.ts.map +0 -1
  851. package/libs/util/shared/src/lib/util-shared.module.d.ts +0 -9
  852. package/libs/util/shared/src/lib/util-shared.module.d.ts.map +0 -1
  853. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +0 -1
  854. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.css +0 -5
  855. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.html +0 -22
  856. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.ts +0 -93
  857. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.css +0 -31
  858. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +0 -62
  859. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.ts +0 -206
  860. package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.css +0 -3
  861. package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.html +0 -21
  862. package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.ts +0 -58
  863. package/src/libs/feature/editor/src/lib/models/wizard-field.model.ts +0 -10
  864. package/src/libs/feature/editor/src/lib/models/wizard-field.type.ts +0 -6
  865. package/src/libs/feature/editor/src/lib/services/wizard.service.ts +0 -105
  866. package/src/libs/feature/record/src/lib/gn-ui-version.token.ts +0 -3
  867. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.html +0 -4
  868. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.ts +0 -10
  869. package/src/libs/ui/dataviz/src/lib/ui-dataviz.module.ts +0 -27
  870. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +0 -30
  871. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +0 -48
  872. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +0 -61
  873. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.css +0 -3
  874. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.html +0 -9
  875. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.ts +0 -15
  876. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +0 -96
  877. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +0 -18
  878. package/src/libs/ui/widgets/src/lib/ui-widgets.module.ts +0 -25
  879. package/src/libs/util/i18n/src/lib/lang.service.ts +0 -23
  880. package/src/libs/util/i18n/src/lib/util-i18n.module.ts +0 -26
  881. package/src/libs/util/shared/src/lib/util-shared.module.ts +0 -10
  882. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-map-container/form-field-map-container.component.css → metadata-quality-panel/metadata-quality-panel.component.css} +0 -0
  883. /package/src/libs/{ui/elements/src/lib/link-card/link-card.component.css → feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.css} +0 -0
  884. /package/src/libs/{ui/elements/src/lib/related-record-card/related-record-card.component.css → feature/search/src/lib/results-hits/results-hits.container.component.css} +0 -0
@@ -7,14 +7,13 @@ import { ButtonComponent, FilesDropDirective, TextInputComponent, UrlInputCompon
7
7
  import { downgradeImage, megabytesToBytes } from '../../../../../../libs/util/shared/src';
8
8
  import { NgIconComponent, provideIcons, provideNgIconsConfig, } from '@ng-icons/core';
9
9
  import { iconoirBin, iconoirFramePlusIn, iconoirLink, iconoirMediaImage, iconoirMediaImageXmark, iconoirPlus, } from '@ng-icons/iconoir';
10
- import { TranslateModule } from '@ngx-translate/core';
10
+ import { TranslatePipe } from '@ngx-translate/core';
11
11
  import { firstValueFrom } from 'rxjs';
12
12
  import { ImageOverlayPreviewComponent } from '../image-overlay-preview/image-overlay-preview.component';
13
13
  import * as i0 from "@angular/core";
14
14
  import * as i1 from "@angular/common/http";
15
15
  import * as i2 from "@angular/common";
16
16
  import * as i3 from "@angular/material/progress-spinner";
17
- import * as i4 from "@ngx-translate/core";
18
17
  export class ImageInputComponent {
19
18
  get altText() {
20
19
  return this._altText;
@@ -175,7 +174,7 @@ export class ImageInputComponent {
175
174
  provideNgIconsConfig({
176
175
  size: '1.5rem',
177
176
  }),
178
- ], ngImport: i0, template: "<ng-container *ngIf=\"previewUrl; then withImage; else withoutImage\">\n</ng-container>\n\n<ng-template #withImage>\n <div class=\"w-80 h-full flex flex-col gap-2\">\n <gn-ui-image-overlay-preview class=\"h-48\" [imageUrl]=\"previewUrl\">\n </gn-ui-image-overlay-preview>\n <gn-ui-text-input\n *ngIf=\"showAltTextInput\"\n [placeholder]=\"'input.image.altTextPlaceholder' | translate\"\n [value]=\"altText ?? ''\"\n (valueChange)=\"handleAltTextChange($event)\"\n extraClass=\"gn-ui-editor-textarea\"\n ></gn-ui-text-input>\n <div class=\"flex flex-row gap-2 mt-2\">\n <gn-ui-button\n type=\"gray\"\n (buttonClick)=\"handleDelete()\"\n data-cy=\"delete-image\"\n >\n <ng-icon class=\"me-1 text-primary\" name=\"iconoirBin\"></ng-icon>\n {{ 'input.image.delete' | translate }}\n </gn-ui-button>\n <gn-ui-button\n *ngIf=\"!showAltTextInput\"\n type=\"gray\"\n (buttonClick)=\"toggleAltTextInput()\"\n >\n <ng-icon name=\"iconoirPlus\" class=\"me-1 text-primary\"></ng-icon>\n {{ 'input.image.displayAltTextInput' | translate }}\n </gn-ui-button>\n </div>\n </div>\n</ng-template>\n\n<ng-template #withoutImage>\n <div class=\"w-full h-full flex flex-col gap-2\">\n <label\n gnUiFilesDrop\n class=\"flex-1 border-2 border-dashed rounded-lg p-6 flex flex-col items-center justify-center gap-4 transition-colors duration-100\"\n [ngClass]=\"{\n 'border-primary-lighter bg-primary-white': dragFilesOver,\n 'border-gray-300': !dragFilesOver,\n 'cursor-pointer hover:border-gray-500': !getIsActionBlocked(),\n 'cursor-not-allowed': disabled,\n }\"\n [attr.tabindex]=\"getIsActionBlocked() ? null : 0\"\n (keydown.enter)=\"fileInput.click()\"\n (dragFilesOver)=\"handleDragFilesOver($event)\"\n (dropFiles)=\"handleDropFiles($event)\"\n >\n <div\n class=\"w-14 h-14 rounded-md bg-gray-50 grid\"\n *ngIf=\"!isUploadInProgress && !imageFileError\"\n >\n <ng-icon\n *ngIf=\"!dragFilesOver\"\n class=\"place-self-center text-primary\"\n name=\"iconoirMediaImage\"\n ></ng-icon>\n <ng-icon\n *ngIf=\"dragFilesOver\"\n class=\"place-self-center text-primary\"\n name=\"iconoirFramePlusIn\"\n ></ng-icon>\n </div>\n\n <div\n *ngIf=\"isUploadInProgress && !imageFileError\"\n class=\"w-14 h-14 grid items-center justify-center relative\"\n >\n <div class=\"text-gray-100 absolute\">\n <mat-progress-spinner\n class=\"place-self-center\"\n [diameter]=\"56\"\n mode=\"determinate\"\n [value]=\"100\"\n ></mat-progress-spinner>\n </div>\n <div class=\"text-primary absolute\">\n <mat-progress-spinner\n class=\"place-self-center\"\n [diameter]=\"56\"\n mode=\"determinate\"\n [value]=\"uploadProgress\"\n ></mat-progress-spinner>\n </div>\n <span class=\"text-sm text-main font-bold\">{{ uploadProgress }}%</span>\n </div>\n\n <div class=\"w-14 h-14 rounded-md bg-gray-50 grid\" *ngIf=\"imageFileError\">\n <ng-icon\n name=\"iconoirMediaImageXmark\"\n class=\"place-self-center text-rose-500\"\n data-cy=\"imgErrorIcon\"\n ></ng-icon>\n </div>\n\n <div class=\"flex flex-col items-center gap-1\">\n <p class=\"font-medium\" data-cy=\"imgInputMsgPrimary\">\n {{ getPrimaryText() | translate }}\n </p>\n <p\n class=\"text-sm\"\n data-cy=\"imgInputMsgSecondary\"\n [class]=\"\n isUploadInProgress\n ? 'font-bold text-blue-500 cursor-pointer'\n : 'font-medium text-gray-500'\n \"\n (click)=\"handleSecondaryTextClick($event)\"\n >\n {{ getSecondaryText() | translate }}\n </p>\n </div>\n <input\n #fileInput\n accept=\"image/*\"\n type=\"file\"\n class=\"hidden\"\n (change)=\"handleFileInput($event)\"\n [disabled]=\"isUploadInProgress || disabled\"\n />\n </label>\n\n <div *ngIf=\"!showUrlInput\" class=\"flex-none mt-2\">\n <gn-ui-button\n data-cy=\"imgUrlBtn\"\n (buttonClick)=\"displayUrlInput()\"\n type=\"gray\"\n [disabled]=\"disabled\"\n [extraClass]=\"disabled && 'cursor-not-allowed'\"\n >\n <ng-icon class=\"me-1 text-primary\" name=\"iconoirLink\"></ng-icon>\n {{ 'input.image.displayUrlInput' | translate }}\n </gn-ui-button>\n </div>\n\n <gn-ui-url-input\n *ngIf=\"showUrlInput\"\n class=\"mt-3.5\"\n data-cy=\"imgUrlInput\"\n (uploadClick)=\"downloadUrl($event)\"\n [disabled]=\"isUploadInProgress || disabled\"\n >\n </gn-ui-url-input>\n </div>\n</ng-template>\n", styles: [":host{--gn-ui-button-padding: 8px 8px;--gn-ui-button-rounded: 8px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "directive", type: FilesDropDirective, selector: "[gnUiFilesDrop]", outputs: ["dragFilesOver", "dropFiles"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i3.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "component", type: UrlInputComponent, selector: "gn-ui-url-input", inputs: ["value", "extraClass", "placeholder", "disabled", "showValidateButton", "resetUrlOnChange"], outputs: ["valueChange", "uploadClick"] }, { kind: "component", type: TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "extraClass", "placeholder", "required", "disabled"], outputs: ["valueChange"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "component", type: ImageOverlayPreviewComponent, selector: "gn-ui-image-overlay-preview", inputs: ["imageUrl"], outputs: ["isPlaceholderShown"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
177
+ ], ngImport: i0, template: "<ng-container *ngIf=\"previewUrl; then withImage; else withoutImage\">\n</ng-container>\n\n<ng-template #withImage>\n <div class=\"w-80 h-full flex flex-col gap-2\">\n <gn-ui-image-overlay-preview class=\"h-48\" [imageUrl]=\"previewUrl\">\n </gn-ui-image-overlay-preview>\n <gn-ui-text-input\n *ngIf=\"showAltTextInput\"\n [placeholder]=\"'input.image.altTextPlaceholder' | translate\"\n [value]=\"altText ?? ''\"\n (valueChange)=\"handleAltTextChange($event)\"\n extraClass=\"gn-ui-editor-textarea\"\n ></gn-ui-text-input>\n <div class=\"flex flex-row gap-2 mt-2\">\n <gn-ui-button\n type=\"gray\"\n (buttonClick)=\"handleDelete()\"\n data-cy=\"delete-image\"\n >\n <ng-icon class=\"me-1 text-primary\" name=\"iconoirBin\"></ng-icon>\n {{ 'input.image.delete' | translate }}\n </gn-ui-button>\n <gn-ui-button\n *ngIf=\"!showAltTextInput\"\n type=\"gray\"\n (buttonClick)=\"toggleAltTextInput()\"\n >\n <ng-icon name=\"iconoirPlus\" class=\"me-1 text-primary\"></ng-icon>\n {{ 'input.image.displayAltTextInput' | translate }}\n </gn-ui-button>\n </div>\n </div>\n</ng-template>\n\n<ng-template #withoutImage>\n <div class=\"w-full h-full flex flex-col gap-2\">\n <label\n gnUiFilesDrop\n class=\"flex-1 border-2 border-dashed rounded-lg p-6 flex flex-col items-center justify-center gap-4 transition-colors duration-100\"\n [ngClass]=\"{\n 'border-primary-lighter bg-primary-white': dragFilesOver,\n 'border-gray-300': !dragFilesOver,\n 'cursor-pointer hover:border-gray-500': !getIsActionBlocked(),\n 'cursor-not-allowed': disabled,\n }\"\n [attr.tabindex]=\"getIsActionBlocked() ? null : 0\"\n (keydown.enter)=\"fileInput.click()\"\n (dragFilesOver)=\"handleDragFilesOver($event)\"\n (dropFiles)=\"handleDropFiles($event)\"\n >\n <div\n class=\"w-14 h-14 rounded-md bg-gray-50 grid\"\n *ngIf=\"!isUploadInProgress && !imageFileError\"\n >\n <ng-icon\n *ngIf=\"!dragFilesOver\"\n class=\"place-self-center text-primary\"\n name=\"iconoirMediaImage\"\n ></ng-icon>\n <ng-icon\n *ngIf=\"dragFilesOver\"\n class=\"place-self-center text-primary\"\n name=\"iconoirFramePlusIn\"\n ></ng-icon>\n </div>\n\n <div\n *ngIf=\"isUploadInProgress && !imageFileError\"\n class=\"w-14 h-14 grid items-center justify-center relative\"\n >\n <div class=\"text-gray-100 absolute\">\n <mat-progress-spinner\n class=\"place-self-center\"\n [diameter]=\"56\"\n mode=\"determinate\"\n [value]=\"100\"\n ></mat-progress-spinner>\n </div>\n <div class=\"text-primary absolute\">\n <mat-progress-spinner\n class=\"place-self-center\"\n [diameter]=\"56\"\n mode=\"determinate\"\n [value]=\"uploadProgress\"\n ></mat-progress-spinner>\n </div>\n <span class=\"text-sm text-main font-bold\">{{ uploadProgress }}%</span>\n </div>\n\n <div class=\"w-14 h-14 rounded-md bg-gray-50 grid\" *ngIf=\"imageFileError\">\n <ng-icon\n name=\"iconoirMediaImageXmark\"\n class=\"place-self-center text-rose-500\"\n data-cy=\"imgErrorIcon\"\n ></ng-icon>\n </div>\n\n <div class=\"flex flex-col items-center gap-1\">\n <p class=\"font-medium\" data-cy=\"imgInputMsgPrimary\">\n {{ getPrimaryText() | translate }}\n </p>\n <p\n class=\"text-sm\"\n data-cy=\"imgInputMsgSecondary\"\n [class]=\"\n isUploadInProgress\n ? 'font-bold text-blue-500 cursor-pointer'\n : 'font-medium text-gray-500'\n \"\n (click)=\"handleSecondaryTextClick($event)\"\n >\n {{ getSecondaryText() | translate }}\n </p>\n </div>\n <input\n #fileInput\n accept=\"image/*\"\n type=\"file\"\n class=\"hidden\"\n (change)=\"handleFileInput($event)\"\n [disabled]=\"isUploadInProgress || disabled\"\n />\n </label>\n\n <div *ngIf=\"!showUrlInput\" class=\"flex-none mt-2\">\n <gn-ui-button\n data-cy=\"imgUrlBtn\"\n (buttonClick)=\"displayUrlInput()\"\n type=\"gray\"\n [disabled]=\"disabled\"\n [extraClass]=\"disabled && 'cursor-not-allowed'\"\n >\n <ng-icon class=\"me-1 text-primary\" name=\"iconoirLink\"></ng-icon>\n {{ 'input.image.displayUrlInput' | translate }}\n </gn-ui-button>\n </div>\n\n <gn-ui-url-input\n *ngIf=\"showUrlInput\"\n class=\"mt-3.5\"\n data-cy=\"imgUrlInput\"\n (uploadClick)=\"downloadUrl($event)\"\n [disabled]=\"isUploadInProgress || disabled\"\n >\n </gn-ui-url-input>\n </div>\n</ng-template>\n", styles: [":host{--gn-ui-button-padding: 8px 8px;--gn-ui-button-rounded: 8px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "directive", type: FilesDropDirective, selector: "[gnUiFilesDrop]", outputs: ["dragFilesOver", "dropFiles"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i3.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: UrlInputComponent, selector: "gn-ui-url-input", inputs: ["value", "extraClass", "placeholder", "disabled", "showValidateButton", "resetUrlOnChange"], outputs: ["valueChange", "uploadClick"] }, { kind: "component", type: TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "extraClass", "placeholder", "required", "disabled"], outputs: ["valueChange"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "component", type: ImageOverlayPreviewComponent, selector: "gn-ui-image-overlay-preview", inputs: ["imageUrl"], outputs: ["isPlaceholderShown"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
179
178
  }
180
179
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ImageInputComponent, decorators: [{
181
180
  type: Component,
@@ -184,7 +183,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
184
183
  ButtonComponent,
185
184
  FilesDropDirective,
186
185
  MatProgressSpinnerModule,
187
- TranslateModule,
186
+ TranslatePipe,
188
187
  UrlInputComponent,
189
188
  TextInputComponent,
190
189
  NgIconComponent,
@@ -225,4 +224,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
225
224
  }], altTextChange: [{
226
225
  type: Output
227
226
  }] } });
228
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL2ltYWdlLWlucHV0L2ltYWdlLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9pbWFnZS1pbnB1dC9pbWFnZS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ2pELE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUM3RSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDaEUsT0FBTyxFQUNMLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLGlCQUFpQixHQUNsQixNQUFNLHNDQUFzQyxDQUFBO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUN6RixPQUFPLEVBQ0wsZUFBZSxFQUNmLFlBQVksRUFDWixvQkFBb0IsR0FDckIsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN2QixPQUFPLEVBQ0wsVUFBVSxFQUNWLGtCQUFrQixFQUNsQixXQUFXLEVBQ1gsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0QixXQUFXLEdBQ1osTUFBTSxtQkFBbUIsQ0FBQTtBQUMxQixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQs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VUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcidcbmltcG9ydCB7IG1hcmtlciB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcidcbmltcG9ydCB7XG4gIEJ1dHRvbkNvbXBvbmVudCxcbiAgRmlsZXNEcm9wRGlyZWN0aXZlLFxuICBUZXh0SW5wdXRDb21wb25lbnQsXG4gIFVybElucHV0Q29tcG9uZW50LFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBkb3duZ3JhZGVJbWFnZSwgbWVnYWJ5dGVzVG9CeXRlcyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHtcbiAgTmdJY29uQ29tcG9uZW50LFxuICBwcm92aWRlSWNvbnMsXG4gIHByb3ZpZGVOZ0ljb25zQ29uZmlnLFxufSBmcm9tICdAbmctaWNvbnMvY29yZSdcbmltcG9ydCB7XG4gIGljb25vaXJCaW4sXG4gIGljb25vaXJGcmFtZVBsdXNJbixcbiAgaWNvbm9pckxpbmssXG4gIGljb25vaXJNZWRpYUltYWdlLFxuICBpY29ub2lyTWVkaWFJbWFnZVhtYXJrLFxuICBpY29ub2lyUGx1cyxcbn0gZnJvbSAnQG5nLWljb25zL2ljb25vaXInXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgSW1hZ2VPdmVybGF5UHJldmlld0NvbXBvbmVudCB9IGZyb20gJy4uL2ltYWdlLW92ZXJsYXktcHJldmlldy9pbWFnZS1vdmVybGF5LXByZXZpZXcuY29tcG9uZW50J1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1pbWFnZS1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbWFnZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ltYWdlLWlucHV0LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQnV0dG9uQ29tcG9uZW50LFxuICAgIEZpbGVzRHJvcERpcmVjdGl2ZSxcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIFVybElucHV0Q29tcG9uZW50LFxuICAgIFRleHRJbnB1dENvbXBvbmVudCxcbiAgICBOZ0ljb25Db21wb25lbnQsXG4gICAgSW1hZ2VPdmVybGF5UHJldmlld0NvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgcHJvdmlkZUljb25zKHtcbiAgICAgIGljb25vaXJNZWRpYUltYWdlLFxuICAgICAgaWNvbm9pckZyYW1lUGx1c0luLFxuICAgICAgaWNvbm9pck1lZGlhSW1hZ2VYbWFyayxcbiAgICAgIGljb25vaXJCaW4sXG4gICAgICBpY29ub2lyUGx1cyxcbiAgICAgIGljb25vaXJMaW5rLFxuICAgIH0pLFxuICAgIHByb3ZpZGVOZ0ljb25zQ29uZmlnKHtcbiAgICAgIHNpemU6ICcxLjVyZW0nLFxuICAgIH0pLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBJbWFnZUlucHV0Q29tcG9uZW50IHtcbiAgcHJpdmF0ZSBfYWx0VGV4dD86IHN0cmluZ1xuXG4gIEBJbnB1dCgpIHByZXZpZXdVcmw/OiBzdHJpbmdcbiAgQElucHV0KClcbiAgZ2V0IGFsdFRleHQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fYWx0VGV4dFxuICB9XG4gIHNldCBhbHRUZXh0KHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAodmFsdWUgIT09ICdLTycgJiYgdGhpcy5fYWx0VGV4dCA9PT0gJ0tPJykge1xuICAgICAgLy9UaGlzIGlzIGEgZGF0YXNldCByb2xsYmFjayBhZnRlciB1cGxvYWQgZXJyb3JcbiAgICAgIHRoaXMucmVzZXRFcnJvcnMoKVxuICAgIH1cbiAgICB0aGlzLl9hbHRUZXh0ID0gdmFsdWVcbiAgfVxuXG4gIEBJbnB1dCgpIG1heFNpemVNQjogbnVtYmVyXG4gIEBJbnB1dCgpIHVwbG9hZFByb2dyZXNzPzogbnVtYmVyXG4gIEBJbnB1dCgpIHVwbG9hZEVycm9yPzogYm9vbGVhblxuICBASW5wdXQoKSBkaXNhYmxlZD86IGJvb2xlYW4gPSBmYWxzZVxuICBAT3V0cHV0KCkgZmlsZUNoYW5nZTogRXZlbnRFbWl0dGVyPEZpbGU+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG4gIEBPdXRwdXQoKSB1cmxDaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG4gIEBPdXRwdXQoKSB1cGxvYWRDYW5jZWw6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuICBAT3V0cHV0KCkgZGVsZXRlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKClcbiAgQE91dHB1dCgpIGFsdFRleHRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG5cbiAgZHJhZ0ZpbGVzT3ZlciA9IGZhbHNlXG4gIHNob3dVcmxJbnB1dCA9IGZhbHNlXG4gIGltYWdlRmlsZUVycm9yID0gdGhpcy51cGxvYWRFcnJvclxuICBzaG93QWx0VGV4dElucHV0ID0gZmFsc2VcbiAgcGVuZGluZ0FsdFRleHQ6IHN0cmluZ1xuXG4gIGdldCBpc1VwbG9hZEluUHJvZ3Jlc3MoKSB7XG4gICAgcmV0dXJuIHRoaXMudXBsb2FkUHJvZ3Jlc3MgIT09IHVuZGVmaW5lZFxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBnZXRJc0FjdGlvbkJsb2NrZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuaXNVcGxvYWRJblByb2dyZXNzIHx8IHRoaXMuZGlzYWJsZWRcbiAgfVxuXG4gIGdldFByaW1hcnlUZXh0KCkge1xuICAgIGlmICh0aGlzLmltYWdlRmlsZUVycm9yKSB7XG4gICAgICByZXR1cm4gbWFya2VyKCdpbnB1dC5pbWFnZS51cGxvYWRFcnJvckxhYmVsJylcbiAgICB9XG4gICAgaWYgKHRoaXMudXBsb2FkUHJvZ3Jlc3MpIHtcbiAgICAgIHJldHVybiBtYXJrZXIoJ2lucHV0LmltYWdlLnVwbG9hZFByb2dyZXNzTGFiZWwnKVxuICAgIH1cbiAgICByZXR1cm4gbWFya2VyKCdpbnB1dC5pbWFnZS5zZWxlY3RGaWxlTGFiZWwnKVxuICB9XG5cbiAgZ2V0U2Vjb25kYXJ5VGV4dCgpIHtcbiAgICBpZiAodGhpcy5pbWFnZUZpbGVFcnJvcikge1xuICAgICAgcmV0dXJuICdcXHUwMEEwJyAvLyAob25seSB0byBrZWVwIHNhbWUgc3BhY2luZywgbmV4dCBzdGVwIGlzIHRvIGhhbmRsZSBcIlJldHJ5XCIpXG4gICAgfVxuICAgIGlmICh0aGlzLnVwbG9hZFByb2dyZXNzKSB7XG4gICAgICByZXR1cm4gbWFya2VyKCdpbnB1dC5pbWFnZS51cGxvYWRQcm9ncmVzc0NhbmNlbCcpXG4gICAgfVxuICAgIHJldHVybiBtYXJrZXIoJ2lucHV0LmltYWdlLmRyb3BGaWxlTGFiZWwnKVxuICB9XG5cbiAgaGFuZGxlRHJhZ0ZpbGVzT3ZlcihkcmFnRmlsZXNPdmVyOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLnNob3dVcmxJbnB1dCkge1xuICAgICAgdGhpcy5kcmFnRmlsZXNPdmVyID0gZHJhZ0ZpbGVzT3ZlclxuICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKVxuICAgIH1cbiAgfVxuXG4gIGhhbmRsZURyb3BGaWxlcyhmaWxlczogRmlsZVtdKSB7XG4gICAgdGhpcy5yZXNldEVycm9ycygpXG4gICAgY29uc3QgdmFsaWRGaWxlcyA9IHRoaXMuZmlsdGVyVHlwZUltYWdlKGZpbGVzKVxuICAgIGlmICh2YWxpZEZpbGVzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuc2hvd1VybElucHV0ID0gZmFsc2VcbiAgICAgIHRoaXMucmVzaXplQW5kRW1pdCh2YWxpZEZpbGVzWzBdKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmltYWdlRmlsZUVycm9yID0gdHJ1ZVxuICAgICAgdGhpcy5oYW5kbGVBbHRUZXh0Q2hhbmdlKCdLTycpXG4gICAgfVxuICB9XG5cbiAgaGFuZGxlRmlsZUlucHV0KGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMucmVzZXRFcnJvcnMoKVxuICAgIGNvbnN0IGlucHV0RmlsZXMgPSBBcnJheS5mcm9tKChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuZmlsZXMpXG4gICAgY29uc3QgdmFsaWRGaWxlcyA9IHRoaXMuZmlsdGVyVHlwZUltYWdlKGlucHV0RmlsZXMpXG4gICAgaWYgKHZhbGlkRmlsZXMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5yZXNpemVBbmRFbWl0KHZhbGlkRmlsZXNbMF0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW1hZ2VGaWxlRXJyb3IgPSB0cnVlXG4gICAgICB0aGlzLmhhbmRsZUFsdFRleHRDaGFuZ2UoJ0tPJylcbiAgICB9XG4gIH1cblxuICBkaXNwbGF5VXJsSW5wdXQoKSB7XG4gICAgdGhpcy51cGxvYWRDYW5jZWwuZW1pdCgpXG4gICAgdGhpcy5zaG93VXJsSW5wdXQgPSB0cnVlXG4gIH1cblxuICBhc3luYyBkb3dubG9hZFVybCh1cmw6IHN0cmluZykge1xuICAgIHRoaXMucmVzZXRFcnJvcnMoKVxuICAgIGNvbnN0IG5hbWUgPSB1cmwuc3BsaXQoJy8nKS5wb3AoKVxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKFxuICAgICAgICB0aGlzLmh0dHAuaGVhZCh1cmwsIHsgb2JzZXJ2ZTogJ3Jlc3BvbnNlJyB9KVxuICAgICAgKVxuICAgICAgaWYgKFxuICAgICAgICByZXNwb25zZS5oZWFkZXJzLmdldCgnY29udGVudC10eXBlJyk/LnN0YXJ0c1dpdGgoJ2ltYWdlLycpICYmXG4gICAgICAgIHBhcnNlSW50KHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdjb250ZW50LWxlbmd0aCcpKSA8XG4gICAgICAgICAgbWVnYWJ5dGVzVG9CeXRlcyh0aGlzLm1heFNpemVNQilcbiAgICAgICkge1xuICAgICAgICB0aGlzLmh0dHAuZ2V0KHVybCwgeyByZXNwb25zZVR5cGU6ICdibG9iJyB9KS5zdWJzY3JpYmUoe1xuICAgICAgICAgIG5leHQ6IChibG9iKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpXG4gICAgICAgICAgICBjb25zdCBmaWxlID0gbmV3IEZpbGUoW2Jsb2JdLCBuYW1lKVxuICAgICAgICAgICAgdGhpcy5maWxlQ2hhbmdlLmVtaXQoZmlsZSlcbiAgICAgICAgICB9LFxuICAgICAgICAgIGVycm9yOiAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmltYWdlRmlsZUVycm9yID0gdHJ1ZVxuICAgICAgICAgICAgdGhpcy5oYW5kbGVBbHRUZXh0Q2hhbmdlKCdLTycpXG4gICAgICAgICAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpXG4gICAgICAgICAgICB0aGlzLnVybENoYW5nZS5lbWl0KHVybClcbiAgICAgICAgICB9LFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0gY2F0Y2gge1xuICAgICAgdGhpcy5pbWFnZUZpbGVFcnJvciA9IHRydWVcbiAgICAgIHRoaXMuaGFuZGxlQWx0VGV4dENoYW5nZSgnS08nKVxuICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICB9XG5cbiAgaGFuZGxlU2Vjb25kYXJ5VGV4dENsaWNrKGV2ZW50OiBFdmVudCkge1xuICAgIGlmICh0aGlzLnVwbG9hZFByb2dyZXNzKSB7XG4gICAgICB0aGlzLmhhbmRsZUNhbmNlbFVwbG9hZCgpXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgfVxuICB9XG5cbiAgaGFuZGxlQ2FuY2VsVXBsb2FkKCkge1xuICAgIHRoaXMudXBsb2FkQ2FuY2VsLmVtaXQoKVxuICB9XG5cbiAgaGFuZGxlRGVsZXRlKCkge1xuICAgIHRoaXMuZGVsZXRlLmVtaXQoKVxuICB9XG5cbiAgcmVzZXRFcnJvcnMoKSB7XG4gICAgdGhpcy5pbWFnZUZpbGVFcnJvciA9IGZhbHNlXG4gICAgdGhpcy51cGxvYWRFcnJvciA9IGZhbHNlXG4gIH1cblxuICB0b2dnbGVBbHRUZXh0SW5wdXQoKSB7XG4gICAgdGhpcy5zaG93QWx0VGV4dElucHV0ID0gIXRoaXMuc2hvd0FsdFRleHRJbnB1dFxuICB9XG5cbiAgaGFuZGxlQWx0VGV4dENoYW5nZShhbHRUZXh0OiBzdHJpbmcpIHtcbiAgICB0aGlzLmFsdFRleHRDaGFuZ2UuZW1pdChhbHRUZXh0KVxuICB9XG4gIHByaXZhdGUgZmlsdGVyVHlwZUltYWdlKGZpbGVzOiBGaWxlW10pIHtcbiAgICByZXR1cm4gZmlsZXMuZmlsdGVyKChmaWxlKSA9PiB7XG4gICAgICByZXR1cm4gZmlsZS50eXBlLnN0YXJ0c1dpdGgoJ2ltYWdlLycpXG4gICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgcmVzaXplQW5kRW1pdChpbWFnZVRvUmVzaXplOiBGaWxlKSB7XG4gICAgY29uc3QgbWF4U2l6ZUJ5dGVzID0gbWVnYWJ5dGVzVG9CeXRlcyh0aGlzLm1heFNpemVNQilcbiAgICBkb3duZ3JhZGVJbWFnZShpbWFnZVRvUmVzaXplLCBtYXhTaXplQnl0ZXMpLnRoZW4oKHJlc2l6ZWRJbWFnZSkgPT4ge1xuICAgICAgY29uc3QgZmlsZVRvRW1pdCA9IG5ldyBGaWxlKFtyZXNpemVkSW1hZ2VdLCBpbWFnZVRvUmVzaXplLm5hbWUpXG4gICAgICB0aGlzLmZpbGVDaGFuZ2UuZW1pdChmaWxlVG9FbWl0KVxuICAgIH0pXG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJwcmV2aWV3VXJsOyB0aGVuIHdpdGhJbWFnZTsgZWxzZSB3aXRob3V0SW1hZ2VcIj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGUgI3dpdGhJbWFnZT5cbiAgPGRpdiBjbGFzcz1cInctODAgaC1mdWxsIGZsZXggZmxleC1jb2wgZ2FwLTJcIj5cbiAgICA8Z24tdWktaW1hZ2Utb3ZlcmxheS1wcmV2aWV3IGNsYXNzPVwiaC00OFwiIFtpbWFnZVVybF09XCJwcmV2aWV3VXJsXCI+XG4gICAgPC9nbi11aS1pbWFnZS1vdmVybGF5LXByZXZpZXc+XG4gICAgPGduLXVpLXRleHQtaW5wdXRcbiAgICAgICpuZ0lmPVwic2hvd0FsdFRleHRJbnB1dFwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiJ2lucHV0LmltYWdlLmFsdFRleHRQbGFjZWhvbGRlcicgfCB0cmFuc2xhdGVcIlxuICAgICAgW3ZhbHVlXT1cImFsdFRleHQgPz8gJydcIlxuICAgICAgKHZhbHVlQ2hhbmdlKT1cImhhbmRsZUFsdFRleHRDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICBleHRyYUNsYXNzPVwiZ24tdWktZWRpdG9yLXRleHRhcmVhXCJcbiAgICA+PC9nbi11aS10ZXh0LWlucHV0PlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGdhcC0yIG10LTJcIj5cbiAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgdHlwZT1cImdyYXlcIlxuICAgICAgICAoYnV0dG9uQ2xpY2spPVwiaGFuZGxlRGVsZXRlKClcIlxuICAgICAgICBkYXRhLWN5PVwiZGVsZXRlLWltYWdlXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWljb24gY2xhc3M9XCJtZS0xIHRleHQtcHJpbWFyeVwiIG5hbWU9XCJpY29ub2lyQmluXCI+PC9uZy1pY29uPlxuICAgICAgICB7eyAnaW5wdXQuaW1hZ2UuZGVsZXRlJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9nbi11aS1idXR0b24+XG4gICAgICA8Z24tdWktYnV0dG9uXG4gICAgICAgICpuZ0lmPVwiIXNob3dBbHRUZXh0SW5wdXRcIlxuICAgICAgICB0eXBlPVwiZ3JheVwiXG4gICAgICAgIChidXR0b25DbGljayk9XCJ0b2dnbGVBbHRUZXh0SW5wdXQoKVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1pY29uIG5hbWU9XCJpY29ub2lyUGx1c1wiIGNsYXNzPVwibWUtMSB0ZXh0LXByaW1hcnlcIj48L25nLWljb24+XG4gICAgICAgIHt7ICdpbnB1dC5pbWFnZS5kaXNwbGF5QWx0VGV4dElucHV0JyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9nbi11aS1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICN3aXRob3V0SW1hZ2U+XG4gIDxkaXYgY2xhc3M9XCJ3LWZ1bGwgaC1mdWxsIGZsZXggZmxleC1jb2wgZ2FwLTJcIj5cbiAgICA8bGFiZWxcbiAgICAgIGduVWlGaWxlc0Ryb3BcbiAgICAgIGNsYXNzPVwiZmxleC0xIGJvcmRlci0yIGJvcmRlci1kYXNoZWQgcm91bmRlZC1sZyBwLTYgZmxleCBmbGV4LWNvbCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgZ2FwLTQgdHJhbnNpdGlvbi1jb2xvcnMgZHVyYXRpb24tMTAwXCJcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgJ2JvcmRlci1wcmltYXJ5LWxpZ2h0ZXIgYmctcHJpbWFyeS13aGl0ZSc6IGRyYWdGaWxlc092ZXIsXG4gICAgICAgICdib3JkZXItZ3JheS0zMDAnOiAhZHJhZ0ZpbGVzT3ZlcixcbiAgICAgICAgJ2N1cnNvci1wb2ludGVyIGhvdmVyOmJvcmRlci1ncmF5LTUwMCc6ICFnZXRJc0FjdGlvbkJsb2NrZWQoKSxcbiAgICAgICAgJ2N1cnNvci1ub3QtYWxsb3dlZCc6IGRpc2FibGVkLFxuICAgICAgfVwiXG4gICAgICBbYXR0ci50YWJpbmRleF09XCJnZXRJc0FjdGlvbkJsb2NrZWQoKSA/IG51bGwgOiAwXCJcbiAgICAgIChrZXlkb3duLmVudGVyKT1cImZpbGVJbnB1dC5jbGljaygpXCJcbiAgICAgIChkcmFnRmlsZXNPdmVyKT1cImhhbmRsZURyYWdGaWxlc092ZXIoJGV2ZW50KVwiXG4gICAgICAoZHJvcEZpbGVzKT1cImhhbmRsZURyb3BGaWxlcygkZXZlbnQpXCJcbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwidy0xNCBoLTE0IHJvdW5kZWQtbWQgYmctZ3JheS01MCBncmlkXCJcbiAgICAgICAgKm5nSWY9XCIhaXNVcGxvYWRJblByb2dyZXNzICYmICFpbWFnZUZpbGVFcnJvclwiXG4gICAgICA+XG4gICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgKm5nSWY9XCIhZHJhZ0ZpbGVzT3ZlclwiXG4gICAgICAgICAgY2xhc3M9XCJwbGFjZS1zZWxmLWNlbnRlciB0ZXh0LXByaW1hcnlcIlxuICAgICAgICAgIG5hbWU9XCJpY29ub2lyTWVkaWFJbWFnZVwiXG4gICAgICAgID48L25nLWljb24+XG4gICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgKm5nSWY9XCJkcmFnRmlsZXNPdmVyXCJcbiAgICAgICAgICBjbGFzcz1cInBsYWNlLXNlbGYtY2VudGVyIHRleHQtcHJpbWFyeVwiXG4gICAgICAgICAgbmFtZT1cImljb25vaXJGcmFtZVBsdXNJblwiXG4gICAgICAgID48L25nLWljb24+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdlxuICAgICAgICAqbmdJZj1cImlzVXBsb2FkSW5Qcm9ncmVzcyAmJiAhaW1hZ2VGaWxlRXJyb3JcIlxuICAgICAgICBjbGFzcz1cInctMTQgaC0xNCBncmlkIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciByZWxhdGl2ZVwiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWdyYXktMTAwIGFic29sdXRlXCI+XG4gICAgICAgICAgPG1hdC1wcm9ncmVzcy1zcGlubmVyXG4gICAgICAgICAgICBjbGFzcz1cInBsYWNlLXNlbGYtY2VudGVyXCJcbiAgICAgICAgICAgIFtkaWFtZXRlcl09XCI1NlwiXG4gICAgICAgICAgICBtb2RlPVwiZGV0ZXJtaW5hdGVcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cIjEwMFwiXG4gICAgICAgICAgPjwvbWF0LXByb2dyZXNzLXNwaW5uZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1wcmltYXJ5IGFic29sdXRlXCI+XG4gICAgICAgICAgPG1hdC1wcm9ncmVzcy1zcGlubmVyXG4gICAgICAgICAgICBjbGFzcz1cInBsYWNlLXNlbGYtY2VudGVyXCJcbiAgICAgICAgICAgIFtkaWFtZXRlcl09XCI1NlwiXG4gICAgICAgICAgICBtb2RlPVwiZGV0ZXJtaW5hdGVcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cInVwbG9hZFByb2dyZXNzXCJcbiAgICAgICAgICA+PC9tYXQtcHJvZ3Jlc3Mtc3Bpbm5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1zbSB0ZXh0LW1haW4gZm9udC1ib2xkXCI+e3sgdXBsb2FkUHJvZ3Jlc3MgfX0lPC9zcGFuPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJ3LTE0IGgtMTQgcm91bmRlZC1tZCBiZy1ncmF5LTUwIGdyaWRcIiAqbmdJZj1cImltYWdlRmlsZUVycm9yXCI+XG4gICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgbmFtZT1cImljb25vaXJNZWRpYUltYWdlWG1hcmtcIlxuICAgICAgICAgIGNsYXNzPVwicGxhY2Utc2VsZi1jZW50ZXIgdGV4dC1yb3NlLTUwMFwiXG4gICAgICAgICAgZGF0YS1jeT1cImltZ0Vycm9ySWNvblwiXG4gICAgICAgID48L25nLWljb24+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgaXRlbXMtY2VudGVyIGdhcC0xXCI+XG4gICAgICAgIDxwIGNsYXNzPVwiZm9udC1tZWRpdW1cIiBkYXRhLWN5PVwiaW1nSW5wdXRNc2dQcmltYXJ5XCI+XG4gICAgICAgICAge3sgZ2V0UHJpbWFyeVRleHQoKSB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L3A+XG4gICAgICAgIDxwXG4gICAgICAgICAgY2xhc3M9XCJ0ZXh0LXNtXCJcbiAgICAgICAgICBkYXRhLWN5PVwiaW1nSW5wdXRNc2dTZWNvbmRhcnlcIlxuICAgICAgICAgIFtjbGFzc109XCJcbiAgICAgICAgICAgIGlzVXBsb2FkSW5Qcm9ncmVzc1xuICAgICAgICAgICAgICA/ICdmb250LWJvbGQgdGV4dC1ibHVlLTUwMCBjdXJzb3ItcG9pbnRlcidcbiAgICAgICAgICAgICAgOiAnZm9udC1tZWRpdW0gdGV4dC1ncmF5LTUwMCdcbiAgICAgICAgICBcIlxuICAgICAgICAgIChjbGljayk9XCJoYW5kbGVTZWNvbmRhcnlUZXh0Q2xpY2soJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBnZXRTZWNvbmRhcnlUZXh0KCkgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9wPlxuICAgICAgPC9kaXY+XG4gICAgICA8aW5wdXRcbiAgICAgICAgI2ZpbGVJbnB1dFxuICAgICAgICBhY2NlcHQ9XCJpbWFnZS8qXCJcbiAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICBjbGFzcz1cImhpZGRlblwiXG4gICAgICAgIChjaGFuZ2UpPVwiaGFuZGxlRmlsZUlucHV0KCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiaXNVcGxvYWRJblByb2dyZXNzIHx8IGRpc2FibGVkXCJcbiAgICAgIC8+XG4gICAgPC9sYWJlbD5cblxuICAgIDxkaXYgKm5nSWY9XCIhc2hvd1VybElucHV0XCIgY2xhc3M9XCJmbGV4LW5vbmUgbXQtMlwiPlxuICAgICAgPGduLXVpLWJ1dHRvblxuICAgICAgICBkYXRhLWN5PVwiaW1nVXJsQnRuXCJcbiAgICAgICAgKGJ1dHRvbkNsaWNrKT1cImRpc3BsYXlVcmxJbnB1dCgpXCJcbiAgICAgICAgdHlwZT1cImdyYXlcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbZXh0cmFDbGFzc109XCJkaXNhYmxlZCAmJiAnY3Vyc29yLW5vdC1hbGxvd2VkJ1wiXG4gICAgICA+XG4gICAgICAgIDxuZy1pY29uIGNsYXNzPVwibWUtMSB0ZXh0LXByaW1hcnlcIiBuYW1lPVwiaWNvbm9pckxpbmtcIj48L25nLWljb24+XG4gICAgICAgIHt7ICdpbnB1dC5pbWFnZS5kaXNwbGF5VXJsSW5wdXQnIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2duLXVpLWJ1dHRvbj5cbiAgICA8L2Rpdj5cblxuICAgIDxnbi11aS11cmwtaW5wdXRcbiAgICAgICpuZ0lmPVwic2hvd1VybElucHV0XCJcbiAgICAgIGNsYXNzPVwibXQtMy41XCJcbiAgICAgIGRhdGEtY3k9XCJpbWdVcmxJbnB1dFwiXG4gICAgICAodXBsb2FkQ2xpY2spPVwiZG93bmxvYWRVcmwoJGV2ZW50KVwiXG4gICAgICBbZGlzYWJsZWRdPVwiaXNVcGxvYWRJblByb2dyZXNzIHx8IGRpc2FibGVkXCJcbiAgICA+XG4gICAgPC9nbi11aS11cmwtaW5wdXQ+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
227
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL2ltYWdlLWlucHV0L2ltYWdlLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9pbWFnZS1pbnB1dC9pbWFnZS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ2pELE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUM3RSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDaEUsT0FBTyxFQUNMLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLGlCQUFpQixHQUNsQixNQUFNLHNDQUFzQyxDQUFBO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUN6RixPQUFPLEVBQ0wsZUFBZSxFQUNmLFlBQVksRUFDWixvQkFBb0IsR0FDckIsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN2QixPQUFPLEVBQ0wsVUFBVSxFQUNWLGtCQUFrQixFQUNsQixXQUFXLEVBQ1gsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0QixXQUFXLEdBQ1osTUFBTSxtQkFBbUIsQ0FBQTtBQUMxQixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDbkQs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QUFVO3NCQUFuQixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCdcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHtcbiAgQnV0dG9uQ29tcG9uZW50LFxuICBGaWxlc0Ryb3BEaXJlY3RpdmUsXG4gIFRleHRJbnB1dENvbXBvbmVudCxcbiAgVXJsSW5wdXRDb21wb25lbnQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IGRvd25ncmFkZUltYWdlLCBtZWdhYnl0ZXNUb0J5dGVzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5pbXBvcnQge1xuICBOZ0ljb25Db21wb25lbnQsXG4gIHByb3ZpZGVJY29ucyxcbiAgcHJvdmlkZU5nSWNvbnNDb25maWcsXG59IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHtcbiAgaWNvbm9pckJpbixcbiAgaWNvbm9pckZyYW1lUGx1c0luLFxuICBpY29ub2lyTGluayxcbiAgaWNvbm9pck1lZGlhSW1hZ2UsXG4gIGljb25vaXJNZWRpYUltYWdlWG1hcmssXG4gIGljb25vaXJQbHVzLFxufSBmcm9tICdAbmctaWNvbnMvaWNvbm9pcidcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgSW1hZ2VPdmVybGF5UHJldmlld0NvbXBvbmVudCB9IGZyb20gJy4uL2ltYWdlLW92ZXJsYXktcHJldmlldy9pbWFnZS1vdmVybGF5LXByZXZpZXcuY29tcG9uZW50J1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1pbWFnZS1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbWFnZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ltYWdlLWlucHV0LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQnV0dG9uQ29tcG9uZW50LFxuICAgIEZpbGVzRHJvcERpcmVjdGl2ZSxcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXG4gICAgVHJhbnNsYXRlUGlwZSxcbiAgICBVcmxJbnB1dENvbXBvbmVudCxcbiAgICBUZXh0SW5wdXRDb21wb25lbnQsXG4gICAgTmdJY29uQ29tcG9uZW50LFxuICAgIEltYWdlT3ZlcmxheVByZXZpZXdDb21wb25lbnQsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHByb3ZpZGVJY29ucyh7XG4gICAgICBpY29ub2lyTWVkaWFJbWFnZSxcbiAgICAgIGljb25vaXJGcmFtZVBsdXNJbixcbiAgICAgIGljb25vaXJNZWRpYUltYWdlWG1hcmssXG4gICAgICBpY29ub2lyQmluLFxuICAgICAgaWNvbm9pclBsdXMsXG4gICAgICBpY29ub2lyTGluayxcbiAgICB9KSxcbiAgICBwcm92aWRlTmdJY29uc0NvbmZpZyh7XG4gICAgICBzaXplOiAnMS41cmVtJyxcbiAgICB9KSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgSW1hZ2VJbnB1dENvbXBvbmVudCB7XG4gIHByaXZhdGUgX2FsdFRleHQ/OiBzdHJpbmdcblxuICBASW5wdXQoKSBwcmV2aWV3VXJsPzogc3RyaW5nXG4gIEBJbnB1dCgpXG4gIGdldCBhbHRUZXh0KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX2FsdFRleHRcbiAgfVxuICBzZXQgYWx0VGV4dCh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKHZhbHVlICE9PSAnS08nICYmIHRoaXMuX2FsdFRleHQgPT09ICdLTycpIHtcbiAgICAgIC8vVGhpcyBpcyBhIGRhdGFzZXQgcm9sbGJhY2sgYWZ0ZXIgdXBsb2FkIGVycm9yXG4gICAgICB0aGlzLnJlc2V0RXJyb3JzKClcbiAgICB9XG4gICAgdGhpcy5fYWx0VGV4dCA9IHZhbHVlXG4gIH1cblxuICBASW5wdXQoKSBtYXhTaXplTUI6IG51bWJlclxuICBASW5wdXQoKSB1cGxvYWRQcm9ncmVzcz86IG51bWJlclxuICBASW5wdXQoKSB1cGxvYWRFcnJvcj86IGJvb2xlYW5cbiAgQElucHV0KCkgZGlzYWJsZWQ/OiBib29sZWFuID0gZmFsc2VcbiAgQE91dHB1dCgpIGZpbGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxGaWxlPiA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuICBAT3V0cHV0KCkgdXJsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuICBAT3V0cHV0KCkgdXBsb2FkQ2FuY2VsOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKClcbiAgQE91dHB1dCgpIGRlbGV0ZTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG4gIEBPdXRwdXQoKSBhbHRUZXh0Q2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuXG4gIGRyYWdGaWxlc092ZXIgPSBmYWxzZVxuICBzaG93VXJsSW5wdXQgPSBmYWxzZVxuICBpbWFnZUZpbGVFcnJvciA9IHRoaXMudXBsb2FkRXJyb3JcbiAgc2hvd0FsdFRleHRJbnB1dCA9IGZhbHNlXG4gIHBlbmRpbmdBbHRUZXh0OiBzdHJpbmdcblxuICBnZXQgaXNVcGxvYWRJblByb2dyZXNzKCkge1xuICAgIHJldHVybiB0aGlzLnVwbG9hZFByb2dyZXNzICE9PSB1bmRlZmluZWRcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIGNkOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgZ2V0SXNBY3Rpb25CbG9ja2VkKCkge1xuICAgIHJldHVybiB0aGlzLmlzVXBsb2FkSW5Qcm9ncmVzcyB8fCB0aGlzLmRpc2FibGVkXG4gIH1cblxuICBnZXRQcmltYXJ5VGV4dCgpIHtcbiAgICBpZiAodGhpcy5pbWFnZUZpbGVFcnJvcikge1xuICAgICAgcmV0dXJuIG1hcmtlcignaW5wdXQuaW1hZ2UudXBsb2FkRXJyb3JMYWJlbCcpXG4gICAgfVxuICAgIGlmICh0aGlzLnVwbG9hZFByb2dyZXNzKSB7XG4gICAgICByZXR1cm4gbWFya2VyKCdpbnB1dC5pbWFnZS51cGxvYWRQcm9ncmVzc0xhYmVsJylcbiAgICB9XG4gICAgcmV0dXJuIG1hcmtlcignaW5wdXQuaW1hZ2Uuc2VsZWN0RmlsZUxhYmVsJylcbiAgfVxuXG4gIGdldFNlY29uZGFyeVRleHQoKSB7XG4gICAgaWYgKHRoaXMuaW1hZ2VGaWxlRXJyb3IpIHtcbiAgICAgIHJldHVybiAnXFx1MDBBMCcgLy8gKG9ubHkgdG8ga2VlcCBzYW1lIHNwYWNpbmcsIG5leHQgc3RlcCBpcyB0byBoYW5kbGUgXCJSZXRyeVwiKVxuICAgIH1cbiAgICBpZiAodGhpcy51cGxvYWRQcm9ncmVzcykge1xuICAgICAgcmV0dXJuIG1hcmtlcignaW5wdXQuaW1hZ2UudXBsb2FkUHJvZ3Jlc3NDYW5jZWwnKVxuICAgIH1cbiAgICByZXR1cm4gbWFya2VyKCdpbnB1dC5pbWFnZS5kcm9wRmlsZUxhYmVsJylcbiAgfVxuXG4gIGhhbmRsZURyYWdGaWxlc092ZXIoZHJhZ0ZpbGVzT3ZlcjogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5zaG93VXJsSW5wdXQpIHtcbiAgICAgIHRoaXMuZHJhZ0ZpbGVzT3ZlciA9IGRyYWdGaWxlc092ZXJcbiAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKClcbiAgICB9XG4gIH1cblxuICBoYW5kbGVEcm9wRmlsZXMoZmlsZXM6IEZpbGVbXSkge1xuICAgIHRoaXMucmVzZXRFcnJvcnMoKVxuICAgIGNvbnN0IHZhbGlkRmlsZXMgPSB0aGlzLmZpbHRlclR5cGVJbWFnZShmaWxlcylcbiAgICBpZiAodmFsaWRGaWxlcy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnNob3dVcmxJbnB1dCA9IGZhbHNlXG4gICAgICB0aGlzLnJlc2l6ZUFuZEVtaXQodmFsaWRGaWxlc1swXSlcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbWFnZUZpbGVFcnJvciA9IHRydWVcbiAgICAgIHRoaXMuaGFuZGxlQWx0VGV4dENoYW5nZSgnS08nKVxuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUZpbGVJbnB1dChldmVudDogRXZlbnQpIHtcbiAgICB0aGlzLnJlc2V0RXJyb3JzKClcbiAgICBjb25zdCBpbnB1dEZpbGVzID0gQXJyYXkuZnJvbSgoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLmZpbGVzKVxuICAgIGNvbnN0IHZhbGlkRmlsZXMgPSB0aGlzLmZpbHRlclR5cGVJbWFnZShpbnB1dEZpbGVzKVxuICAgIGlmICh2YWxpZEZpbGVzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMucmVzaXplQW5kRW1pdCh2YWxpZEZpbGVzWzBdKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmltYWdlRmlsZUVycm9yID0gdHJ1ZVxuICAgICAgdGhpcy5oYW5kbGVBbHRUZXh0Q2hhbmdlKCdLTycpXG4gICAgfVxuICB9XG5cbiAgZGlzcGxheVVybElucHV0KCkge1xuICAgIHRoaXMudXBsb2FkQ2FuY2VsLmVtaXQoKVxuICAgIHRoaXMuc2hvd1VybElucHV0ID0gdHJ1ZVxuICB9XG5cbiAgYXN5bmMgZG93bmxvYWRVcmwodXJsOiBzdHJpbmcpIHtcbiAgICB0aGlzLnJlc2V0RXJyb3JzKClcbiAgICBjb25zdCBuYW1lID0gdXJsLnNwbGl0KCcvJykucG9wKClcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgICAgdGhpcy5odHRwLmhlYWQodXJsLCB7IG9ic2VydmU6ICdyZXNwb25zZScgfSlcbiAgICAgIClcbiAgICAgIGlmIChcbiAgICAgICAgcmVzcG9uc2UuaGVhZGVycy5nZXQoJ2NvbnRlbnQtdHlwZScpPy5zdGFydHNXaXRoKCdpbWFnZS8nKSAmJlxuICAgICAgICBwYXJzZUludChyZXNwb25zZS5oZWFkZXJzLmdldCgnY29udGVudC1sZW5ndGgnKSkgPFxuICAgICAgICAgIG1lZ2FieXRlc1RvQnl0ZXModGhpcy5tYXhTaXplTUIpXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5odHRwLmdldCh1cmwsIHsgcmVzcG9uc2VUeXBlOiAnYmxvYicgfSkuc3Vic2NyaWJlKHtcbiAgICAgICAgICBuZXh0OiAoYmxvYikgPT4ge1xuICAgICAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKVxuICAgICAgICAgICAgY29uc3QgZmlsZSA9IG5ldyBGaWxlKFtibG9iXSwgbmFtZSlcbiAgICAgICAgICAgIHRoaXMuZmlsZUNoYW5nZS5lbWl0KGZpbGUpXG4gICAgICAgICAgfSxcbiAgICAgICAgICBlcnJvcjogKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pbWFnZUZpbGVFcnJvciA9IHRydWVcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlQWx0VGV4dENoYW5nZSgnS08nKVxuICAgICAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKVxuICAgICAgICAgICAgdGhpcy51cmxDaGFuZ2UuZW1pdCh1cmwpXG4gICAgICAgICAgfSxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9IGNhdGNoIHtcbiAgICAgIHRoaXMuaW1hZ2VGaWxlRXJyb3IgPSB0cnVlXG4gICAgICB0aGlzLmhhbmRsZUFsdFRleHRDaGFuZ2UoJ0tPJylcbiAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKClcbiAgICAgIHJldHVyblxuICAgIH1cbiAgfVxuXG4gIGhhbmRsZVNlY29uZGFyeVRleHRDbGljayhldmVudDogRXZlbnQpIHtcbiAgICBpZiAodGhpcy51cGxvYWRQcm9ncmVzcykge1xuICAgICAgdGhpcy5oYW5kbGVDYW5jZWxVcGxvYWQoKVxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUNhbmNlbFVwbG9hZCgpIHtcbiAgICB0aGlzLnVwbG9hZENhbmNlbC5lbWl0KClcbiAgfVxuXG4gIGhhbmRsZURlbGV0ZSgpIHtcbiAgICB0aGlzLmRlbGV0ZS5lbWl0KClcbiAgfVxuXG4gIHJlc2V0RXJyb3JzKCkge1xuICAgIHRoaXMuaW1hZ2VGaWxlRXJyb3IgPSBmYWxzZVxuICAgIHRoaXMudXBsb2FkRXJyb3IgPSBmYWxzZVxuICB9XG5cbiAgdG9nZ2xlQWx0VGV4dElucHV0KCkge1xuICAgIHRoaXMuc2hvd0FsdFRleHRJbnB1dCA9ICF0aGlzLnNob3dBbHRUZXh0SW5wdXRcbiAgfVxuXG4gIGhhbmRsZUFsdFRleHRDaGFuZ2UoYWx0VGV4dDogc3RyaW5nKSB7XG4gICAgdGhpcy5hbHRUZXh0Q2hhbmdlLmVtaXQoYWx0VGV4dClcbiAgfVxuICBwcml2YXRlIGZpbHRlclR5cGVJbWFnZShmaWxlczogRmlsZVtdKSB7XG4gICAgcmV0dXJuIGZpbGVzLmZpbHRlcigoZmlsZSkgPT4ge1xuICAgICAgcmV0dXJuIGZpbGUudHlwZS5zdGFydHNXaXRoKCdpbWFnZS8nKVxuICAgIH0pXG4gIH1cblxuICBwcml2YXRlIHJlc2l6ZUFuZEVtaXQoaW1hZ2VUb1Jlc2l6ZTogRmlsZSkge1xuICAgIGNvbnN0IG1heFNpemVCeXRlcyA9IG1lZ2FieXRlc1RvQnl0ZXModGhpcy5tYXhTaXplTUIpXG4gICAgZG93bmdyYWRlSW1hZ2UoaW1hZ2VUb1Jlc2l6ZSwgbWF4U2l6ZUJ5dGVzKS50aGVuKChyZXNpemVkSW1hZ2UpID0+IHtcbiAgICAgIGNvbnN0IGZpbGVUb0VtaXQgPSBuZXcgRmlsZShbcmVzaXplZEltYWdlXSwgaW1hZ2VUb1Jlc2l6ZS5uYW1lKVxuICAgICAgdGhpcy5maWxlQ2hhbmdlLmVtaXQoZmlsZVRvRW1pdClcbiAgICB9KVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwicHJldmlld1VybDsgdGhlbiB3aXRoSW1hZ2U7IGVsc2Ugd2l0aG91dEltYWdlXCI+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICN3aXRoSW1hZ2U+XG4gIDxkaXYgY2xhc3M9XCJ3LTgwIGgtZnVsbCBmbGV4IGZsZXgtY29sIGdhcC0yXCI+XG4gICAgPGduLXVpLWltYWdlLW92ZXJsYXktcHJldmlldyBjbGFzcz1cImgtNDhcIiBbaW1hZ2VVcmxdPVwicHJldmlld1VybFwiPlxuICAgIDwvZ24tdWktaW1hZ2Utb3ZlcmxheS1wcmV2aWV3PlxuICAgIDxnbi11aS10ZXh0LWlucHV0XG4gICAgICAqbmdJZj1cInNob3dBbHRUZXh0SW5wdXRcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cIidpbnB1dC5pbWFnZS5hbHRUZXh0UGxhY2Vob2xkZXInIHwgdHJhbnNsYXRlXCJcbiAgICAgIFt2YWx1ZV09XCJhbHRUZXh0ID8/ICcnXCJcbiAgICAgICh2YWx1ZUNoYW5nZSk9XCJoYW5kbGVBbHRUZXh0Q2hhbmdlKCRldmVudClcIlxuICAgICAgZXh0cmFDbGFzcz1cImduLXVpLWVkaXRvci10ZXh0YXJlYVwiXG4gICAgPjwvZ24tdWktdGV4dC1pbnB1dD5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBnYXAtMiBtdC0yXCI+XG4gICAgICA8Z24tdWktYnV0dG9uXG4gICAgICAgIHR5cGU9XCJncmF5XCJcbiAgICAgICAgKGJ1dHRvbkNsaWNrKT1cImhhbmRsZURlbGV0ZSgpXCJcbiAgICAgICAgZGF0YS1jeT1cImRlbGV0ZS1pbWFnZVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1pY29uIGNsYXNzPVwibWUtMSB0ZXh0LXByaW1hcnlcIiBuYW1lPVwiaWNvbm9pckJpblwiPjwvbmctaWNvbj5cbiAgICAgICAge3sgJ2lucHV0LmltYWdlLmRlbGV0ZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvZ24tdWktYnV0dG9uPlxuICAgICAgPGduLXVpLWJ1dHRvblxuICAgICAgICAqbmdJZj1cIiFzaG93QWx0VGV4dElucHV0XCJcbiAgICAgICAgdHlwZT1cImdyYXlcIlxuICAgICAgICAoYnV0dG9uQ2xpY2spPVwidG9nZ2xlQWx0VGV4dElucHV0KClcIlxuICAgICAgPlxuICAgICAgICA8bmctaWNvbiBuYW1lPVwiaWNvbm9pclBsdXNcIiBjbGFzcz1cIm1lLTEgdGV4dC1wcmltYXJ5XCI+PC9uZy1pY29uPlxuICAgICAgICB7eyAnaW5wdXQuaW1hZ2UuZGlzcGxheUFsdFRleHRJbnB1dCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvZ24tdWktYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjd2l0aG91dEltYWdlPlxuICA8ZGl2IGNsYXNzPVwidy1mdWxsIGgtZnVsbCBmbGV4IGZsZXgtY29sIGdhcC0yXCI+XG4gICAgPGxhYmVsXG4gICAgICBnblVpRmlsZXNEcm9wXG4gICAgICBjbGFzcz1cImZsZXgtMSBib3JkZXItMiBib3JkZXItZGFzaGVkIHJvdW5kZWQtbGcgcC02IGZsZXggZmxleC1jb2wgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGdhcC00IHRyYW5zaXRpb24tY29sb3JzIGR1cmF0aW9uLTEwMFwiXG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICdib3JkZXItcHJpbWFyeS1saWdodGVyIGJnLXByaW1hcnktd2hpdGUnOiBkcmFnRmlsZXNPdmVyLFxuICAgICAgICAnYm9yZGVyLWdyYXktMzAwJzogIWRyYWdGaWxlc092ZXIsXG4gICAgICAgICdjdXJzb3ItcG9pbnRlciBob3Zlcjpib3JkZXItZ3JheS01MDAnOiAhZ2V0SXNBY3Rpb25CbG9ja2VkKCksXG4gICAgICAgICdjdXJzb3Itbm90LWFsbG93ZWQnOiBkaXNhYmxlZCxcbiAgICAgIH1cIlxuICAgICAgW2F0dHIudGFiaW5kZXhdPVwiZ2V0SXNBY3Rpb25CbG9ja2VkKCkgPyBudWxsIDogMFwiXG4gICAgICAoa2V5ZG93bi5lbnRlcik9XCJmaWxlSW5wdXQuY2xpY2soKVwiXG4gICAgICAoZHJhZ0ZpbGVzT3Zlcik9XCJoYW5kbGVEcmFnRmlsZXNPdmVyKCRldmVudClcIlxuICAgICAgKGRyb3BGaWxlcyk9XCJoYW5kbGVEcm9wRmlsZXMoJGV2ZW50KVwiXG4gICAgPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cInctMTQgaC0xNCByb3VuZGVkLW1kIGJnLWdyYXktNTAgZ3JpZFwiXG4gICAgICAgICpuZ0lmPVwiIWlzVXBsb2FkSW5Qcm9ncmVzcyAmJiAhaW1hZ2VGaWxlRXJyb3JcIlxuICAgICAgPlxuICAgICAgICA8bmctaWNvblxuICAgICAgICAgICpuZ0lmPVwiIWRyYWdGaWxlc092ZXJcIlxuICAgICAgICAgIGNsYXNzPVwicGxhY2Utc2VsZi1jZW50ZXIgdGV4dC1wcmltYXJ5XCJcbiAgICAgICAgICBuYW1lPVwiaWNvbm9pck1lZGlhSW1hZ2VcIlxuICAgICAgICA+PC9uZy1pY29uPlxuICAgICAgICA8bmctaWNvblxuICAgICAgICAgICpuZ0lmPVwiZHJhZ0ZpbGVzT3ZlclwiXG4gICAgICAgICAgY2xhc3M9XCJwbGFjZS1zZWxmLWNlbnRlciB0ZXh0LXByaW1hcnlcIlxuICAgICAgICAgIG5hbWU9XCJpY29ub2lyRnJhbWVQbHVzSW5cIlxuICAgICAgICA+PC9uZy1pY29uPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXZcbiAgICAgICAgKm5nSWY9XCJpc1VwbG9hZEluUHJvZ3Jlc3MgJiYgIWltYWdlRmlsZUVycm9yXCJcbiAgICAgICAgY2xhc3M9XCJ3LTE0IGgtMTQgZ3JpZCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcmVsYXRpdmVcIlxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1ncmF5LTEwMCBhYnNvbHV0ZVwiPlxuICAgICAgICAgIDxtYXQtcHJvZ3Jlc3Mtc3Bpbm5lclxuICAgICAgICAgICAgY2xhc3M9XCJwbGFjZS1zZWxmLWNlbnRlclwiXG4gICAgICAgICAgICBbZGlhbWV0ZXJdPVwiNTZcIlxuICAgICAgICAgICAgbW9kZT1cImRldGVybWluYXRlXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCIxMDBcIlxuICAgICAgICAgID48L21hdC1wcm9ncmVzcy1zcGlubmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtcHJpbWFyeSBhYnNvbHV0ZVwiPlxuICAgICAgICAgIDxtYXQtcHJvZ3Jlc3Mtc3Bpbm5lclxuICAgICAgICAgICAgY2xhc3M9XCJwbGFjZS1zZWxmLWNlbnRlclwiXG4gICAgICAgICAgICBbZGlhbWV0ZXJdPVwiNTZcIlxuICAgICAgICAgICAgbW9kZT1cImRldGVybWluYXRlXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJ1cGxvYWRQcm9ncmVzc1wiXG4gICAgICAgICAgPjwvbWF0LXByb2dyZXNzLXNwaW5uZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtc20gdGV4dC1tYWluIGZvbnQtYm9sZFwiPnt7IHVwbG9hZFByb2dyZXNzIH19JTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwidy0xNCBoLTE0IHJvdW5kZWQtbWQgYmctZ3JheS01MCBncmlkXCIgKm5nSWY9XCJpbWFnZUZpbGVFcnJvclwiPlxuICAgICAgICA8bmctaWNvblxuICAgICAgICAgIG5hbWU9XCJpY29ub2lyTWVkaWFJbWFnZVhtYXJrXCJcbiAgICAgICAgICBjbGFzcz1cInBsYWNlLXNlbGYtY2VudGVyIHRleHQtcm9zZS01MDBcIlxuICAgICAgICAgIGRhdGEtY3k9XCJpbWdFcnJvckljb25cIlxuICAgICAgICA+PC9uZy1pY29uPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGl0ZW1zLWNlbnRlciBnYXAtMVwiPlxuICAgICAgICA8cCBjbGFzcz1cImZvbnQtbWVkaXVtXCIgZGF0YS1jeT1cImltZ0lucHV0TXNnUHJpbWFyeVwiPlxuICAgICAgICAgIHt7IGdldFByaW1hcnlUZXh0KCkgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9wPlxuICAgICAgICA8cFxuICAgICAgICAgIGNsYXNzPVwidGV4dC1zbVwiXG4gICAgICAgICAgZGF0YS1jeT1cImltZ0lucHV0TXNnU2Vjb25kYXJ5XCJcbiAgICAgICAgICBbY2xhc3NdPVwiXG4gICAgICAgICAgICBpc1VwbG9hZEluUHJvZ3Jlc3NcbiAgICAgICAgICAgICAgPyAnZm9udC1ib2xkIHRleHQtYmx1ZS01MDAgY3Vyc29yLXBvaW50ZXInXG4gICAgICAgICAgICAgIDogJ2ZvbnQtbWVkaXVtIHRleHQtZ3JheS01MDAnXG4gICAgICAgICAgXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlU2Vjb25kYXJ5VGV4dENsaWNrKCRldmVudClcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgZ2V0U2Vjb25kYXJ5VGV4dCgpIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvcD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGlucHV0XG4gICAgICAgICNmaWxlSW5wdXRcbiAgICAgICAgYWNjZXB0PVwiaW1hZ2UvKlwiXG4gICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgY2xhc3M9XCJoaWRkZW5cIlxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZUZpbGVJbnB1dCgkZXZlbnQpXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImlzVXBsb2FkSW5Qcm9ncmVzcyB8fCBkaXNhYmxlZFwiXG4gICAgICAvPlxuICAgIDwvbGFiZWw+XG5cbiAgICA8ZGl2ICpuZ0lmPVwiIXNob3dVcmxJbnB1dFwiIGNsYXNzPVwiZmxleC1ub25lIG10LTJcIj5cbiAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgZGF0YS1jeT1cImltZ1VybEJ0blwiXG4gICAgICAgIChidXR0b25DbGljayk9XCJkaXNwbGF5VXJsSW5wdXQoKVwiXG4gICAgICAgIHR5cGU9XCJncmF5XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2V4dHJhQ2xhc3NdPVwiZGlzYWJsZWQgJiYgJ2N1cnNvci1ub3QtYWxsb3dlZCdcIlxuICAgICAgPlxuICAgICAgICA8bmctaWNvbiBjbGFzcz1cIm1lLTEgdGV4dC1wcmltYXJ5XCIgbmFtZT1cImljb25vaXJMaW5rXCI+PC9uZy1pY29uPlxuICAgICAgICB7eyAnaW5wdXQuaW1hZ2UuZGlzcGxheVVybElucHV0JyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9nbi11aS1idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8Z24tdWktdXJsLWlucHV0XG4gICAgICAqbmdJZj1cInNob3dVcmxJbnB1dFwiXG4gICAgICBjbGFzcz1cIm10LTMuNVwiXG4gICAgICBkYXRhLWN5PVwiaW1nVXJsSW5wdXRcIlxuICAgICAgKHVwbG9hZENsaWNrKT1cImRvd25sb2FkVXJsKCRldmVudClcIlxuICAgICAgW2Rpc2FibGVkXT1cImlzVXBsb2FkSW5Qcm9ncmVzcyB8fCBkaXNhYmxlZFwiXG4gICAgPlxuICAgIDwvZ24tdWktdXJsLWlucHV0PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -16,7 +16,7 @@ export class ImageOverlayPreviewComponent {
16
16
  basicLightbox.create(`<img src="${src}"/>`).show();
17
17
  }
18
18
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ImageOverlayPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
19
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ImageOverlayPreviewComponent, isStandalone: true, selector: "gn-ui-image-overlay-preview", inputs: { imageUrl: "imageUrl" }, outputs: { isPlaceholderShown: "isPlaceholderShown" }, ngImport: i0, template: "<gn-ui-content-ghost\n [showContent]=\"imageUrl !== undefined\"\n ghostClass=\"h-full w-full\"\n>\n <div\n *ngIf=\"imageUrl\"\n data-cy=\"record-thumbnail\"\n class=\"shrink-0 bg-gray-100 rounded-lg overflow-hidden border border-gray-300 group-hover:shadow-xl group-hover:border-0 h-full w-full\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"imageUrl\"\n fit=\"cover\"\n (placeholderShown)=\"isPlaceholderShown.emit($event)\"\n ></gn-ui-thumbnail>\n <div class=\"relative\">\n <gn-ui-button\n class=\"absolute bottom-0 right-0 z-10 mr-2 mb-2\"\n [type]=\"'outline'\"\n [extraClass]=\"'!py-2 !px-0'\"\n (buttonClick)=\"openLightbox(imageUrl)\"\n >\n <ng-icon name=\"matZoomOutMap\"></ng-icon>\n </gn-ui-button>\n </div>\n </div>\n</gn-ui-content-ghost>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ContentGhostComponent, selector: "gn-ui-content-ghost", inputs: ["showContent", "ghostClass"] }, { kind: "component", type: ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"], outputs: ["placeholderShown"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], viewProviders: [provideIcons({ matZoomOutMap })] }); }
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ImageOverlayPreviewComponent, isStandalone: true, selector: "gn-ui-image-overlay-preview", inputs: { imageUrl: "imageUrl" }, outputs: { isPlaceholderShown: "isPlaceholderShown" }, ngImport: i0, template: "<gn-ui-content-ghost\n [showContent]=\"imageUrl !== undefined\"\n ghostClass=\"h-full w-full\"\n>\n <div\n *ngIf=\"imageUrl\"\n data-cy=\"record-thumbnail\"\n class=\"shrink-0 rounded-lg overflow-hidden group-hover:shadow-xl group-hover:border-0 h-full w-full\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"imageUrl\"\n fit=\"cover\"\n (placeholderShown)=\"isPlaceholderShown.emit($event)\"\n ></gn-ui-thumbnail>\n <div class=\"relative\">\n <gn-ui-button\n class=\"absolute bottom-0 right-0 z-10 mr-2 mb-2\"\n [type]=\"'outline'\"\n [extraClass]=\"'!py-2 !px-0'\"\n (buttonClick)=\"openLightbox(imageUrl)\"\n >\n <ng-icon name=\"matZoomOutMap\"></ng-icon>\n </gn-ui-button>\n </div>\n </div>\n</gn-ui-content-ghost>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ContentGhostComponent, selector: "gn-ui-content-ghost", inputs: ["showContent", "ghostClass"] }, { kind: "component", type: ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"], outputs: ["placeholderShown"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], viewProviders: [provideIcons({ matZoomOutMap })] }); }
20
20
  }
21
21
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ImageOverlayPreviewComponent, decorators: [{
22
22
  type: Component,
@@ -26,10 +26,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
26
26
  ThumbnailComponent,
27
27
  ButtonComponent,
28
28
  NgIcon,
29
- ], viewProviders: [provideIcons({ matZoomOutMap })], template: "<gn-ui-content-ghost\n [showContent]=\"imageUrl !== undefined\"\n ghostClass=\"h-full w-full\"\n>\n <div\n *ngIf=\"imageUrl\"\n data-cy=\"record-thumbnail\"\n class=\"shrink-0 bg-gray-100 rounded-lg overflow-hidden border border-gray-300 group-hover:shadow-xl group-hover:border-0 h-full w-full\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"imageUrl\"\n fit=\"cover\"\n (placeholderShown)=\"isPlaceholderShown.emit($event)\"\n ></gn-ui-thumbnail>\n <div class=\"relative\">\n <gn-ui-button\n class=\"absolute bottom-0 right-0 z-10 mr-2 mb-2\"\n [type]=\"'outline'\"\n [extraClass]=\"'!py-2 !px-0'\"\n (buttonClick)=\"openLightbox(imageUrl)\"\n >\n <ng-icon name=\"matZoomOutMap\"></ng-icon>\n </gn-ui-button>\n </div>\n </div>\n</gn-ui-content-ghost>\n" }]
29
+ ], viewProviders: [provideIcons({ matZoomOutMap })], template: "<gn-ui-content-ghost\n [showContent]=\"imageUrl !== undefined\"\n ghostClass=\"h-full w-full\"\n>\n <div\n *ngIf=\"imageUrl\"\n data-cy=\"record-thumbnail\"\n class=\"shrink-0 rounded-lg overflow-hidden group-hover:shadow-xl group-hover:border-0 h-full w-full\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"imageUrl\"\n fit=\"cover\"\n (placeholderShown)=\"isPlaceholderShown.emit($event)\"\n ></gn-ui-thumbnail>\n <div class=\"relative\">\n <gn-ui-button\n class=\"absolute bottom-0 right-0 z-10 mr-2 mb-2\"\n [type]=\"'outline'\"\n [extraClass]=\"'!py-2 !px-0'\"\n (buttonClick)=\"openLightbox(imageUrl)\"\n >\n <ng-icon name=\"matZoomOutMap\"></ng-icon>\n </gn-ui-button>\n </div>\n </div>\n</gn-ui-content-ghost>\n" }]
30
30
  }], propDecorators: { imageUrl: [{
31
31
  type: Input
32
32
  }], isPlaceholderShown: [{
33
33
  type: Output
34
34
  }] } });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2Utb3ZlcmxheS1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9pbWFnZS1vdmVybGF5LXByZXZpZXcvaW1hZ2Utb3ZlcmxheS1wcmV2aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9pbWFnZS1vdmVybGF5LXByZXZpZXcvaW1hZ2Utb3ZlcmxheS1wcmV2aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDdEUsT0FBTyxLQUFLLGFBQWEsTUFBTSxlQUFlLENBQUE7QUFDOUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUE7QUFDaEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTs7O0FBZ0I5QyxNQUFNLE9BQU8sNEJBQTRCO0lBZHpDO1FBZ0JZLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUE7S0FJM0Q7SUFIQyxZQUFZLENBQUMsR0FBVztRQUN0QixhQUFhLENBQUMsTUFBTSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUNwRCxDQUFDOytHQUxVLDRCQUE0QjttR0FBNUIsNEJBQTRCLGdMQ3ZCekMsbTNCQTJCQSx5RERaSSxZQUFZLG1JQUNaLHFCQUFxQix1R0FDckIsa0JBQWtCLDRIQUNsQixlQUFlLCtIQUNmLE1BQU0sa0dBRU8sQ0FBQyxZQUFZLENBQUMsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDOzs0RkFFckMsNEJBQTRCO2tCQWR4QyxTQUFTOytCQUNFLDZCQUE2QixjQUczQixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixxQkFBcUI7d0JBQ3JCLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixNQUFNO3FCQUNQLGlCQUNjLENBQUMsWUFBWSxDQUFDLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQzs4QkFHdkMsUUFBUTtzQkFBaEIsS0FBSztnQkFDSSxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgKiBhcyBiYXNpY0xpZ2h0Ym94IGZyb20gJ2Jhc2ljbGlnaHRib3gnXG5pbXBvcnQgeyBDb250ZW50R2hvc3RDb21wb25lbnQgfSBmcm9tICcuLi9jb250ZW50LWdob3N0L2NvbnRlbnQtZ2hvc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgVGh1bWJuYWlsQ29tcG9uZW50IH0gZnJvbSAnLi4vdGh1bWJuYWlsL3RodW1ibmFpbC5jb21wb25lbnQnXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBOZ0ljb24sIHByb3ZpZGVJY29ucyB9IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHsgbWF0Wm9vbU91dE1hcCB9IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9iYXNlbGluZSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktaW1hZ2Utb3ZlcmxheS1wcmV2aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ltYWdlLW92ZXJsYXktcHJldmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ltYWdlLW92ZXJsYXktcHJldmlldy5jb21wb25lbnQuY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQ29udGVudEdob3N0Q29tcG9uZW50LFxuICAgIFRodW1ibmFpbENvbXBvbmVudCxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgTmdJY29uLFxuICBdLFxuICB2aWV3UHJvdmlkZXJzOiBbcHJvdmlkZUljb25zKHsgbWF0Wm9vbU91dE1hcCB9KV0sXG59KVxuZXhwb3J0IGNsYXNzIEltYWdlT3ZlcmxheVByZXZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSBpbWFnZVVybDogc3RyaW5nXG4gIEBPdXRwdXQoKSBpc1BsYWNlaG9sZGVyU2hvd24gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KClcbiAgb3BlbkxpZ2h0Ym94KHNyYzogc3RyaW5nKSB7XG4gICAgYmFzaWNMaWdodGJveC5jcmVhdGUoYDxpbWcgc3JjPVwiJHtzcmN9XCIvPmApLnNob3coKVxuICB9XG59XG4iLCI8Z24tdWktY29udGVudC1naG9zdFxuICBbc2hvd0NvbnRlbnRdPVwiaW1hZ2VVcmwgIT09IHVuZGVmaW5lZFwiXG4gIGdob3N0Q2xhc3M9XCJoLWZ1bGwgdy1mdWxsXCJcbj5cbiAgPGRpdlxuICAgICpuZ0lmPVwiaW1hZ2VVcmxcIlxuICAgIGRhdGEtY3k9XCJyZWNvcmQtdGh1bWJuYWlsXCJcbiAgICBjbGFzcz1cInNocmluay0wIGJnLWdyYXktMTAwIHJvdW5kZWQtbGcgb3ZlcmZsb3ctaGlkZGVuIGJvcmRlciBib3JkZXItZ3JheS0zMDAgZ3JvdXAtaG92ZXI6c2hhZG93LXhsIGdyb3VwLWhvdmVyOmJvcmRlci0wIGgtZnVsbCB3LWZ1bGxcIlxuICA+XG4gICAgPGduLXVpLXRodW1ibmFpbFxuICAgICAgY2xhc3M9XCJyZWxhdGl2ZSBoLWZ1bGwgdy1mdWxsXCJcbiAgICAgIFt0aHVtYm5haWxVcmxdPVwiaW1hZ2VVcmxcIlxuICAgICAgZml0PVwiY292ZXJcIlxuICAgICAgKHBsYWNlaG9sZGVyU2hvd24pPVwiaXNQbGFjZWhvbGRlclNob3duLmVtaXQoJGV2ZW50KVwiXG4gICAgPjwvZ24tdWktdGh1bWJuYWlsPlxuICAgIDxkaXYgY2xhc3M9XCJyZWxhdGl2ZVwiPlxuICAgICAgPGduLXVpLWJ1dHRvblxuICAgICAgICBjbGFzcz1cImFic29sdXRlIGJvdHRvbS0wIHJpZ2h0LTAgei0xMCBtci0yIG1iLTJcIlxuICAgICAgICBbdHlwZV09XCInb3V0bGluZSdcIlxuICAgICAgICBbZXh0cmFDbGFzc109XCInIXB5LTIgIXB4LTAnXCJcbiAgICAgICAgKGJ1dHRvbkNsaWNrKT1cIm9wZW5MaWdodGJveChpbWFnZVVybClcIlxuICAgICAgPlxuICAgICAgICA8bmctaWNvbiBuYW1lPVwibWF0Wm9vbU91dE1hcFwiPjwvbmctaWNvbj5cbiAgICAgIDwvZ24tdWktYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZ24tdWktY29udGVudC1naG9zdD5cbiJdfQ==
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2Utb3ZlcmxheS1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9pbWFnZS1vdmVybGF5LXByZXZpZXcvaW1hZ2Utb3ZlcmxheS1wcmV2aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9pbWFnZS1vdmVybGF5LXByZXZpZXcvaW1hZ2Utb3ZlcmxheS1wcmV2aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDdEUsT0FBTyxLQUFLLGFBQWEsTUFBTSxlQUFlLENBQUE7QUFDOUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUE7QUFDaEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTs7O0FBZ0I5QyxNQUFNLE9BQU8sNEJBQTRCO0lBZHpDO1FBZ0JZLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUE7S0FJM0Q7SUFIQyxZQUFZLENBQUMsR0FBVztRQUN0QixhQUFhLENBQUMsTUFBTSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUNwRCxDQUFDOytHQUxVLDRCQUE0QjttR0FBNUIsNEJBQTRCLGdMQ3ZCekMsZzFCQTJCQSx5RERaSSxZQUFZLG1JQUNaLHFCQUFxQix1R0FDckIsa0JBQWtCLDRIQUNsQixlQUFlLCtIQUNmLE1BQU0sa0dBRU8sQ0FBQyxZQUFZLENBQUMsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDOzs0RkFFckMsNEJBQTRCO2tCQWR4QyxTQUFTOytCQUNFLDZCQUE2QixjQUczQixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixxQkFBcUI7d0JBQ3JCLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixNQUFNO3FCQUNQLGlCQUNjLENBQUMsWUFBWSxDQUFDLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQzs4QkFHdkMsUUFBUTtzQkFBaEIsS0FBSztnQkFDSSxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgKiBhcyBiYXNpY0xpZ2h0Ym94IGZyb20gJ2Jhc2ljbGlnaHRib3gnXG5pbXBvcnQgeyBDb250ZW50R2hvc3RDb21wb25lbnQgfSBmcm9tICcuLi9jb250ZW50LWdob3N0L2NvbnRlbnQtZ2hvc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgVGh1bWJuYWlsQ29tcG9uZW50IH0gZnJvbSAnLi4vdGh1bWJuYWlsL3RodW1ibmFpbC5jb21wb25lbnQnXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBOZ0ljb24sIHByb3ZpZGVJY29ucyB9IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHsgbWF0Wm9vbU91dE1hcCB9IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9iYXNlbGluZSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktaW1hZ2Utb3ZlcmxheS1wcmV2aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ltYWdlLW92ZXJsYXktcHJldmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ltYWdlLW92ZXJsYXktcHJldmlldy5jb21wb25lbnQuY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQ29udGVudEdob3N0Q29tcG9uZW50LFxuICAgIFRodW1ibmFpbENvbXBvbmVudCxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgTmdJY29uLFxuICBdLFxuICB2aWV3UHJvdmlkZXJzOiBbcHJvdmlkZUljb25zKHsgbWF0Wm9vbU91dE1hcCB9KV0sXG59KVxuZXhwb3J0IGNsYXNzIEltYWdlT3ZlcmxheVByZXZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSBpbWFnZVVybDogc3RyaW5nXG4gIEBPdXRwdXQoKSBpc1BsYWNlaG9sZGVyU2hvd24gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KClcbiAgb3BlbkxpZ2h0Ym94KHNyYzogc3RyaW5nKSB7XG4gICAgYmFzaWNMaWdodGJveC5jcmVhdGUoYDxpbWcgc3JjPVwiJHtzcmN9XCIvPmApLnNob3coKVxuICB9XG59XG4iLCI8Z24tdWktY29udGVudC1naG9zdFxuICBbc2hvd0NvbnRlbnRdPVwiaW1hZ2VVcmwgIT09IHVuZGVmaW5lZFwiXG4gIGdob3N0Q2xhc3M9XCJoLWZ1bGwgdy1mdWxsXCJcbj5cbiAgPGRpdlxuICAgICpuZ0lmPVwiaW1hZ2VVcmxcIlxuICAgIGRhdGEtY3k9XCJyZWNvcmQtdGh1bWJuYWlsXCJcbiAgICBjbGFzcz1cInNocmluay0wIHJvdW5kZWQtbGcgb3ZlcmZsb3ctaGlkZGVuIGdyb3VwLWhvdmVyOnNoYWRvdy14bCBncm91cC1ob3Zlcjpib3JkZXItMCBoLWZ1bGwgdy1mdWxsXCJcbiAgPlxuICAgIDxnbi11aS10aHVtYm5haWxcbiAgICAgIGNsYXNzPVwicmVsYXRpdmUgaC1mdWxsIHctZnVsbFwiXG4gICAgICBbdGh1bWJuYWlsVXJsXT1cImltYWdlVXJsXCJcbiAgICAgIGZpdD1cImNvdmVyXCJcbiAgICAgIChwbGFjZWhvbGRlclNob3duKT1cImlzUGxhY2Vob2xkZXJTaG93bi5lbWl0KCRldmVudClcIlxuICAgID48L2duLXVpLXRodW1ibmFpbD5cbiAgICA8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIj5cbiAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgY2xhc3M9XCJhYnNvbHV0ZSBib3R0b20tMCByaWdodC0wIHotMTAgbXItMiBtYi0yXCJcbiAgICAgICAgW3R5cGVdPVwiJ291dGxpbmUnXCJcbiAgICAgICAgW2V4dHJhQ2xhc3NdPVwiJyFweS0yICFweC0wJ1wiXG4gICAgICAgIChidXR0b25DbGljayk9XCJvcGVuTGlnaHRib3goaW1hZ2VVcmwpXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWljb24gbmFtZT1cIm1hdFpvb21PdXRNYXBcIj48L25nLWljb24+XG4gICAgICA8L2duLXVpLWJ1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2duLXVpLWNvbnRlbnQtZ2hvc3Q+XG4iXX0=
@@ -0,0 +1,89 @@
1
+ import { Component, ElementRef, EventEmitter, Input, Output, TemplateRef, } from '@angular/core';
2
+ import { NgClass, NgIf, NgTemplateOutlet } from '@angular/common';
3
+ import { fromEvent, Subscription } from 'rxjs';
4
+ import { iconoirBank } from '@ng-icons/iconoir';
5
+ import { NgIconComponent, provideIcons, provideNgIconsConfig, } from '@ng-icons/core';
6
+ import { matLocationSearchingOutline } from '@ng-icons/material-icons/outline';
7
+ import { KindBadgeComponent } from '../kind-badge/kind-badge.component';
8
+ import { MarkdownParserComponent } from '../markdown-parser/markdown-parser.component';
9
+ import { MetadataQualityComponent } from '../metadata-quality/metadata-quality.component';
10
+ import { ThumbnailComponent } from '../thumbnail/thumbnail.component';
11
+ import { removeWhitespace, stripHtml, } from '../../../../../../libs/util/shared/src';
12
+ import * as i0 from "@angular/core";
13
+ export class InternalLinkCardComponent {
14
+ set size(value) {
15
+ this._size = value;
16
+ this.cardClass = `size-${value}`;
17
+ }
18
+ get size() {
19
+ return this._size;
20
+ }
21
+ constructor(elementRef) {
22
+ this.elementRef = elementRef;
23
+ this.linkTarget = '_blank';
24
+ this.linkHref = null;
25
+ this.mdSelect = new EventEmitter();
26
+ this.subscription = new Subscription();
27
+ this._size = 'L';
28
+ }
29
+ ngOnInit() {
30
+ this.abstract = removeWhitespace(stripHtml(this.record?.abstract));
31
+ this.subscription.add(fromEvent(this.elementRef.nativeElement, 'click').subscribe(() => this.mdSelect.emit(this.record)));
32
+ }
33
+ get shouldShowThumbnail() {
34
+ return this.size === 'L' || this.size === 'M';
35
+ }
36
+ get displayContactIconOnly() {
37
+ const cardWidth = this.elementRef.nativeElement.getBoundingClientRect().width;
38
+ return (this.record.ownerOrganization?.name &&
39
+ this.metadataQualityDisplay &&
40
+ this.size === 'M' &&
41
+ cardWidth <= 490);
42
+ }
43
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InternalLinkCardComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
44
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: InternalLinkCardComponent, isStandalone: true, selector: "gn-ui-internal-link-card", inputs: { record: "record", linkTarget: "linkTarget", linkHref: "linkHref", metadataQualityDisplay: "metadataQualityDisplay", favoriteTemplate: "favoriteTemplate", size: "size" }, outputs: { mdSelect: "mdSelect" }, providers: [
45
+ provideIcons({
46
+ iconoirBank,
47
+ matLocationSearchingOutline,
48
+ }),
49
+ provideNgIconsConfig({
50
+ size: '1.2em',
51
+ }),
52
+ ], ngImport: i0, template: "<a\n [attr.href]=\"linkHref\"\n [target]=\"linkTarget\"\n class=\"record-card\"\n [ngClass]=\"cardClass\"\n>\n <div *ngIf=\"shouldShowThumbnail\" class=\"record-card__thumbnail\">\n <gn-ui-thumbnail\n class=\"w-full h-full object-cover\"\n [thumbnailUrl]=\"record.overviews?.[0]?.url?.toString() || ''\"\n [fit]=\"'cover'\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"grow pt-1\" [ngClass]=\"shouldShowThumbnail ? 'sm:w-0' : ''\">\n <div class=\"flex flex-col gap-2 h-full\">\n <h4\n class=\"record-card__title\"\n data-cy=\"recordTitle\"\n [title]=\"record.title\"\n >\n {{ record.title }}\n </h4>\n <div class=\"grow\">\n <gn-ui-markdown-parser\n data-cy=\"recordAbstract\"\n [textContent]=\"abstract\"\n [whitoutStyles]=\"true\"\n class=\"record-card__abstract\"\n [title]=\"abstract\"\n ></gn-ui-markdown-parser>\n </div>\n <div class=\"record-card__footer\">\n <div\n data-cy=\"recordOrg\"\n *ngIf=\"record.ownerOrganization?.name\"\n class=\"grow flex flex-row gap-1 items-center text-primary-lighter\"\n [ngClass]=\"displayContactIconOnly ? 'justify-center' : ''\"\n >\n <ng-icon\n name=\"iconoirBank\"\n class=\"text-primary -translate-y-[0.5px] shrink-0\"\n [title]=\"record.ownerOrganization.name\"\n ></ng-icon>\n <span\n *ngIf=\"!displayContactIconOnly\"\n data-cy=\"recordOrgName\"\n class=\"line-clamp-1\"\n [title]=\"record.ownerOrganization.name\"\n >{{ record.ownerOrganization.name }}</span\n >\n </div>\n <div class=\"record-card__footer__other\">\n <div\n class=\"xs:border-r last:border-r-0 flex grow gap-4 px-4 last:pr-0\"\n >\n <gn-ui-kind-badge\n [extraClass]=\"'text-[1.2em]'\"\n [styling]=\"'gray'\"\n [kind]=\"record?.kind\"\n [contentTemplate]=\"customTemplate\"\n class=\"pt-1\"\n >\n <ng-template #customTemplate></ng-template\n ></gn-ui-kind-badge>\n <gn-ui-metadata-quality\n *ngIf=\"metadataQualityDisplay\"\n class=\"flex items-center min-w-[113px]\"\n [smaller]=\"true\"\n [metadata]=\"record\"\n [metadataQualityDisplay]=\"metadataQualityDisplay\"\n [popoverDisplay]=\"true\"\n ></gn-ui-metadata-quality>\n </div>\n <div\n class=\"flex justify-center\"\n data-cy=\"recordFav\"\n [ngClass]=\"displayContactIconOnly ? 'px-1' : 'px-4'\"\n >\n <ng-container\n [ngTemplateOutlet]=\"favoriteTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: record }\"\n ></ng-container>\n </div>\n </div>\n </div>\n </div>\n </div>\n</a>\n", styles: [".record-card{@apply rounded-md bg-white hover:cursor-pointer hover:bg-slate-50 overflow-hidden items-stretch flex flex-row md:gap-0 justify-between py-3 pl-3 pr-5;}.record-card.size-L{@apply w-full md:h-[208px] gap-5;}.record-card.size-M{@apply max-w-[940px] md:h-[231px] gap-4;}.record-card.size-S{@apply max-w-[572px] md:h-[315px] gap-4;}.record-card.size-XS{@apply max-w-[280px] md:h-[315px] gap-4;}.record-card:hover .record-card__title{@apply text-primary;}.record-card__thumbnail{@apply border rounded-lg overflow-hidden shrink-0;}.size-L .record-card__thumbnail{@apply w-full w-[190px] h-[184px];}.size-M .record-card__thumbnail{@apply w-full w-[138px] h-[207px];}.record-card__title{@apply text-xl font-medium text-title leading-6;}.size-L .record-card__title{@apply line-clamp-2;}.size-M .record-card__title{@apply line-clamp-2 ml-2;}.size-S .record-card__title,.size-XS .record-card__title{@apply line-clamp-3 ml-2;}.record-card__abstract{@apply text-gray-900 overflow-hidden;}.size-L .record-card__abstract{@apply line-clamp-3;}.size-M .record-card__abstract{@apply line-clamp-3 ml-2;}.size-S .record-card__abstract,.size-XS .record-card__abstract{@apply line-clamp-4 ml-2;}.record-card__footer{@apply flex sm:flex-row flex-col flex-nowrap gap-3 justify-end items-center w-full border-t pt-1 overflow-hidden;}@media (max-width: 450px){.size-S .record-card__footer{@apply flex-col items-stretch;}}.size-XS .record-card__footer{@apply flex-col items-stretch gap-2;}.record-card__footer__other{@apply flex flex-col xs:flex-row flex-nowrap gap-3 xs:border-l first:border-l-0;}.record-card__footer__other>div{@apply py-1;}@media (max-width: 450px){.size-S .record-card__footer__other,.size-S .record-card__footer__other>div{@apply border-0 px-0 py-0;}}.size-XS .record-card__footer__other,.size-XS .record-card__footer__other>div{@apply border-0;}.size-XS .record-card__footer__other>div{@apply px-0 py-0;}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "component", type: MetadataQualityComponent, selector: "gn-ui-metadata-quality", inputs: ["metadata", "smaller", "metadataQualityDisplay", "popoverDisplay", "propsToValidate", "forceComputeScore"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: KindBadgeComponent, selector: "gn-ui-kind-badge", inputs: ["styling", "contentTemplate", "kind", "extraClass"] }, { kind: "component", type: MarkdownParserComponent, selector: "gn-ui-markdown-parser", inputs: ["textContent", "whitoutStyles"] }, { kind: "component", type: ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"], outputs: ["placeholderShown"] }] }); }
53
+ }
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InternalLinkCardComponent, decorators: [{
55
+ type: Component,
56
+ args: [{ selector: 'gn-ui-internal-link-card', standalone: true, imports: [
57
+ NgClass,
58
+ NgIf,
59
+ NgIconComponent,
60
+ MetadataQualityComponent,
61
+ NgTemplateOutlet,
62
+ KindBadgeComponent,
63
+ MarkdownParserComponent,
64
+ ThumbnailComponent,
65
+ ], providers: [
66
+ provideIcons({
67
+ iconoirBank,
68
+ matLocationSearchingOutline,
69
+ }),
70
+ provideNgIconsConfig({
71
+ size: '1.2em',
72
+ }),
73
+ ], template: "<a\n [attr.href]=\"linkHref\"\n [target]=\"linkTarget\"\n class=\"record-card\"\n [ngClass]=\"cardClass\"\n>\n <div *ngIf=\"shouldShowThumbnail\" class=\"record-card__thumbnail\">\n <gn-ui-thumbnail\n class=\"w-full h-full object-cover\"\n [thumbnailUrl]=\"record.overviews?.[0]?.url?.toString() || ''\"\n [fit]=\"'cover'\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"grow pt-1\" [ngClass]=\"shouldShowThumbnail ? 'sm:w-0' : ''\">\n <div class=\"flex flex-col gap-2 h-full\">\n <h4\n class=\"record-card__title\"\n data-cy=\"recordTitle\"\n [title]=\"record.title\"\n >\n {{ record.title }}\n </h4>\n <div class=\"grow\">\n <gn-ui-markdown-parser\n data-cy=\"recordAbstract\"\n [textContent]=\"abstract\"\n [whitoutStyles]=\"true\"\n class=\"record-card__abstract\"\n [title]=\"abstract\"\n ></gn-ui-markdown-parser>\n </div>\n <div class=\"record-card__footer\">\n <div\n data-cy=\"recordOrg\"\n *ngIf=\"record.ownerOrganization?.name\"\n class=\"grow flex flex-row gap-1 items-center text-primary-lighter\"\n [ngClass]=\"displayContactIconOnly ? 'justify-center' : ''\"\n >\n <ng-icon\n name=\"iconoirBank\"\n class=\"text-primary -translate-y-[0.5px] shrink-0\"\n [title]=\"record.ownerOrganization.name\"\n ></ng-icon>\n <span\n *ngIf=\"!displayContactIconOnly\"\n data-cy=\"recordOrgName\"\n class=\"line-clamp-1\"\n [title]=\"record.ownerOrganization.name\"\n >{{ record.ownerOrganization.name }}</span\n >\n </div>\n <div class=\"record-card__footer__other\">\n <div\n class=\"xs:border-r last:border-r-0 flex grow gap-4 px-4 last:pr-0\"\n >\n <gn-ui-kind-badge\n [extraClass]=\"'text-[1.2em]'\"\n [styling]=\"'gray'\"\n [kind]=\"record?.kind\"\n [contentTemplate]=\"customTemplate\"\n class=\"pt-1\"\n >\n <ng-template #customTemplate></ng-template\n ></gn-ui-kind-badge>\n <gn-ui-metadata-quality\n *ngIf=\"metadataQualityDisplay\"\n class=\"flex items-center min-w-[113px]\"\n [smaller]=\"true\"\n [metadata]=\"record\"\n [metadataQualityDisplay]=\"metadataQualityDisplay\"\n [popoverDisplay]=\"true\"\n ></gn-ui-metadata-quality>\n </div>\n <div\n class=\"flex justify-center\"\n data-cy=\"recordFav\"\n [ngClass]=\"displayContactIconOnly ? 'px-1' : 'px-4'\"\n >\n <ng-container\n [ngTemplateOutlet]=\"favoriteTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: record }\"\n ></ng-container>\n </div>\n </div>\n </div>\n </div>\n </div>\n</a>\n", styles: [".record-card{@apply rounded-md bg-white hover:cursor-pointer hover:bg-slate-50 overflow-hidden items-stretch flex flex-row md:gap-0 justify-between py-3 pl-3 pr-5;}.record-card.size-L{@apply w-full md:h-[208px] gap-5;}.record-card.size-M{@apply max-w-[940px] md:h-[231px] gap-4;}.record-card.size-S{@apply max-w-[572px] md:h-[315px] gap-4;}.record-card.size-XS{@apply max-w-[280px] md:h-[315px] gap-4;}.record-card:hover .record-card__title{@apply text-primary;}.record-card__thumbnail{@apply border rounded-lg overflow-hidden shrink-0;}.size-L .record-card__thumbnail{@apply w-full w-[190px] h-[184px];}.size-M .record-card__thumbnail{@apply w-full w-[138px] h-[207px];}.record-card__title{@apply text-xl font-medium text-title leading-6;}.size-L .record-card__title{@apply line-clamp-2;}.size-M .record-card__title{@apply line-clamp-2 ml-2;}.size-S .record-card__title,.size-XS .record-card__title{@apply line-clamp-3 ml-2;}.record-card__abstract{@apply text-gray-900 overflow-hidden;}.size-L .record-card__abstract{@apply line-clamp-3;}.size-M .record-card__abstract{@apply line-clamp-3 ml-2;}.size-S .record-card__abstract,.size-XS .record-card__abstract{@apply line-clamp-4 ml-2;}.record-card__footer{@apply flex sm:flex-row flex-col flex-nowrap gap-3 justify-end items-center w-full border-t pt-1 overflow-hidden;}@media (max-width: 450px){.size-S .record-card__footer{@apply flex-col items-stretch;}}.size-XS .record-card__footer{@apply flex-col items-stretch gap-2;}.record-card__footer__other{@apply flex flex-col xs:flex-row flex-nowrap gap-3 xs:border-l first:border-l-0;}.record-card__footer__other>div{@apply py-1;}@media (max-width: 450px){.size-S .record-card__footer__other,.size-S .record-card__footer__other>div{@apply border-0 px-0 py-0;}}.size-XS .record-card__footer__other,.size-XS .record-card__footer__other>div{@apply border-0;}.size-XS .record-card__footer__other>div{@apply px-0 py-0;}\n"] }]
74
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { record: [{
75
+ type: Input
76
+ }], linkTarget: [{
77
+ type: Input
78
+ }], linkHref: [{
79
+ type: Input
80
+ }], metadataQualityDisplay: [{
81
+ type: Input
82
+ }], favoriteTemplate: [{
83
+ type: Input
84
+ }], size: [{
85
+ type: Input
86
+ }], mdSelect: [{
87
+ type: Output
88
+ }] } });
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtbGluay1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9pbnRlcm5hbC1saW5rLWNhcmQvaW50ZXJuYWwtbGluay1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9pbnRlcm5hbC1saW5rLWNhcmQvaW50ZXJuYWwtbGluay1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFdBQVcsR0FDWixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUMvQyxPQUFPLEVBQ0wsZUFBZSxFQUNmLFlBQVksRUFDWixvQkFBb0IsR0FDckIsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN2QixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQTtBQUU5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQTtBQUN0RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQTtBQUN6RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQTtBQUNyRSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLFNBQVMsR0FFVixNQUFNLHdDQUF3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ZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBOZ0NsYXNzLCBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgaWNvbm9pckJhbmsgfSBmcm9tICdAbmctaWNvbnMvaWNvbm9pcidcbmltcG9ydCB7XG4gIE5nSWNvbkNvbXBvbmVudCxcbiAgcHJvdmlkZUljb25zLFxuICBwcm92aWRlTmdJY29uc0NvbmZpZyxcbn0gZnJvbSAnQG5nLWljb25zL2NvcmUnXG5pbXBvcnQgeyBtYXRMb2NhdGlvblNlYXJjaGluZ091dGxpbmUgfSBmcm9tICdAbmctaWNvbnMvbWF0ZXJpYWwtaWNvbnMvb3V0bGluZSdcbmltcG9ydCB7IENhdGFsb2dSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBLaW5kQmFkZ2VDb21wb25lbnQgfSBmcm9tICcuLi9raW5kLWJhZGdlL2tpbmQtYmFkZ2UuY29tcG9uZW50J1xuaW1wb3J0IHsgTWFya2Rvd25QYXJzZXJDb21wb25lbnQgfSBmcm9tICcuLi9tYXJrZG93bi1wYXJzZXIvbWFya2Rvd24tcGFyc2VyLmNvbXBvbmVudCdcbmltcG9ydCB7IE1ldGFkYXRhUXVhbGl0eUNvbXBvbmVudCB9IGZyb20gJy4uL21ldGFkYXRhLXF1YWxpdHkvbWV0YWRhdGEtcXVhbGl0eS5jb21wb25lbnQnXG5pbXBvcnQgeyBUaHVtYm5haWxDb21wb25lbnQgfSBmcm9tICcuLi90aHVtYm5haWwvdGh1bWJuYWlsLmNvbXBvbmVudCdcbmltcG9ydCB7XG4gIHJlbW92ZVdoaXRlc3BhY2UsXG4gIHN0cmlwSHRtbCxcbiAgdHlwZSBWYWxpZGF0b3JNYXBwZXJLZXlzLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcblxudHlwZSBDYXJkU2l6ZSA9ICdMJyB8ICdNJyB8ICdTJyB8ICdYUydcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktaW50ZXJuYWwtbGluay1jYXJkJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nQ2xhc3MsXG4gICAgTmdJZixcbiAgICBOZ0ljb25Db21wb25lbnQsXG4gICAgTWV0YWRhdGFRdWFsaXR5Q29tcG9uZW50LFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgS2luZEJhZGdlQ29tcG9uZW50LFxuICAgIE1hcmtkb3duUGFyc2VyQ29tcG9uZW50LFxuICAgIFRodW1ibmFpbENvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgcHJvdmlkZUljb25zKHtcbiAgICAgIGljb25vaXJCYW5rLFxuICAgICAgbWF0TG9jYXRpb25TZWFyY2hpbmdPdXRsaW5lLFxuICAgIH0pLFxuICAgIHByb3ZpZGVOZ0ljb25zQ29uZmlnKHtcbiAgICAgIHNpemU6ICcxLjJlbScsXG4gICAgfSksXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnRlcm5hbC1saW5rLWNhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pbnRlcm5hbC1saW5rLWNhcmQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgSW50ZXJuYWxMaW5rQ2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHJlY29yZDogQ2F0YWxvZ1JlY29yZFxuICBASW5wdXQoKSBsaW5rVGFyZ2V0ID0gJ19ibGFuaydcbiAgQElucHV0KCkgbGlua0hyZWY6IHN0cmluZyA9IG51bGxcbiAgQElucHV0KCkgbWV0YWRhdGFRdWFsaXR5RGlzcGxheTogYm9vbGVhblxuICBASW5wdXQoKSBmYXZvcml0ZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx7ICRpbXBsaWNpdDogQ2F0YWxvZ1JlY29yZCB9PlxuICBASW5wdXQoKSBzZXQgc2l6ZSh2YWx1ZTogQ2FyZFNpemUpIHtcbiAgICB0aGlzLl9zaXplID0gdmFsdWVcbiAgICB0aGlzLmNhcmRDbGFzcyA9IGBzaXplLSR7dmFsdWV9YFxuICB9XG4gIGdldCBzaXplKCk6IENhcmRTaXplIHtcbiAgICByZXR1cm4gdGhpcy5fc2l6ZVxuICB9XG4gIEBPdXRwdXQoKSBtZFNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8Q2F0YWxvZ1JlY29yZD4oKVxuICBzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKClcblxuICBhYnN0cmFjdDogc3RyaW5nXG4gIGNhcmRDbGFzczogc3RyaW5nXG5cbiAgcHJpdmF0ZSBfc2l6ZTogQ2FyZFNpemUgPSAnTCdcblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmFic3RyYWN0ID0gcmVtb3ZlV2hpdGVzcGFjZShzdHJpcEh0bWwodGhpcy5yZWNvcmQ/LmFic3RyYWN0KSlcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoXG4gICAgICBmcm9tRXZlbnQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjbGljaycpLnN1YnNjcmliZSgoKSA9PlxuICAgICAgICB0aGlzLm1kU2VsZWN0LmVtaXQodGhpcy5yZWNvcmQpXG4gICAgICApXG4gICAgKVxuICB9XG4gIGdldCBzaG91bGRTaG93VGh1bWJuYWlsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNpemUgPT09ICdMJyB8fCB0aGlzLnNpemUgPT09ICdNJ1xuICB9XG5cbiAgZ2V0IGRpc3BsYXlDb250YWN0SWNvbk9ubHkoKSB7XG4gICAgY29uc3QgY2FyZFdpZHRoID1cbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoXG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMucmVjb3JkLm93bmVyT3JnYW5pemF0aW9uPy5uYW1lICYmXG4gICAgICB0aGlzLm1ldGFkYXRhUXVhbGl0eURpc3BsYXkgJiZcbiAgICAgIHRoaXMuc2l6ZSA9PT0gJ00nICYmXG4gICAgICBjYXJkV2lkdGggPD0gNDkwXG4gICAgKVxuICB9XG59XG4iLCI8YVxuICBbYXR0ci5ocmVmXT1cImxpbmtIcmVmXCJcbiAgW3RhcmdldF09XCJsaW5rVGFyZ2V0XCJcbiAgY2xhc3M9XCJyZWNvcmQtY2FyZFwiXG4gIFtuZ0NsYXNzXT1cImNhcmRDbGFzc1wiXG4+XG4gIDxkaXYgKm5nSWY9XCJzaG91bGRTaG93VGh1bWJuYWlsXCIgY2xhc3M9XCJyZWNvcmQtY2FyZF9fdGh1bWJuYWlsXCI+XG4gICAgPGduLXVpLXRodW1ibmFpbFxuICAgICAgY2xhc3M9XCJ3LWZ1bGwgaC1mdWxsIG9iamVjdC1jb3ZlclwiXG4gICAgICBbdGh1bWJuYWlsVXJsXT1cInJlY29yZC5vdmVydmlld3M/LlswXT8udXJsPy50b1N0cmluZygpIHx8ICcnXCJcbiAgICAgIFtmaXRdPVwiJ2NvdmVyJ1wiXG4gICAgPjwvZ24tdWktdGh1bWJuYWlsPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImdyb3cgcHQtMVwiIFtuZ0NsYXNzXT1cInNob3VsZFNob3dUaHVtYm5haWwgPyAnc206dy0wJyA6ICcnXCI+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTIgaC1mdWxsXCI+XG4gICAgICA8aDRcbiAgICAgICAgY2xhc3M9XCJyZWNvcmQtY2FyZF9fdGl0bGVcIlxuICAgICAgICBkYXRhLWN5PVwicmVjb3JkVGl0bGVcIlxuICAgICAgICBbdGl0bGVdPVwicmVjb3JkLnRpdGxlXCJcbiAgICAgID5cbiAgICAgICAge3sgcmVjb3JkLnRpdGxlIH19XG4gICAgICA8L2g0PlxuICAgICAgPGRpdiBjbGFzcz1cImdyb3dcIj5cbiAgICAgICAgPGduLXVpLW1hcmtkb3duLXBhcnNlclxuICAgICAgICAgIGRhdGEtY3k9XCJyZWNvcmRBYnN0cmFjdFwiXG4gICAgICAgICAgW3RleHRDb250ZW50XT1cImFic3RyYWN0XCJcbiAgICAgICAgICBbd2hpdG91dFN0eWxlc109XCJ0cnVlXCJcbiAgICAgICAgICBjbGFzcz1cInJlY29yZC1jYXJkX19hYnN0cmFjdFwiXG4gICAgICAgICAgW3RpdGxlXT1cImFic3RyYWN0XCJcbiAgICAgICAgPjwvZ24tdWktbWFya2Rvd24tcGFyc2VyPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVjb3JkLWNhcmRfX2Zvb3RlclwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgZGF0YS1jeT1cInJlY29yZE9yZ1wiXG4gICAgICAgICAgKm5nSWY9XCJyZWNvcmQub3duZXJPcmdhbml6YXRpb24/Lm5hbWVcIlxuICAgICAgICAgIGNsYXNzPVwiZ3JvdyBmbGV4IGZsZXgtcm93IGdhcC0xIGl0ZW1zLWNlbnRlciB0ZXh0LXByaW1hcnktbGlnaHRlclwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwiZGlzcGxheUNvbnRhY3RJY29uT25seSA/ICdqdXN0aWZ5LWNlbnRlcicgOiAnJ1wiXG4gICAgICAgID5cbiAgICAgICAgICA8bmctaWNvblxuICAgICAgICAgICAgbmFtZT1cImljb25vaXJCYW5rXCJcbiAgICAgICAgICAgIGNsYXNzPVwidGV4dC1wcmltYXJ5IC10cmFuc2xhdGUteS1bMC41cHhdIHNocmluay0wXCJcbiAgICAgICAgICAgIFt0aXRsZV09XCJyZWNvcmQub3duZXJPcmdhbml6YXRpb24ubmFtZVwiXG4gICAgICAgICAgPjwvbmctaWNvbj5cbiAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgKm5nSWY9XCIhZGlzcGxheUNvbnRhY3RJY29uT25seVwiXG4gICAgICAgICAgICBkYXRhLWN5PVwicmVjb3JkT3JnTmFtZVwiXG4gICAgICAgICAgICBjbGFzcz1cImxpbmUtY2xhbXAtMVwiXG4gICAgICAgICAgICBbdGl0bGVdPVwicmVjb3JkLm93bmVyT3JnYW5pemF0aW9uLm5hbWVcIlxuICAgICAgICAgICAgPnt7IHJlY29yZC5vd25lck9yZ2FuaXphdGlvbi5uYW1lIH19PC9zcGFuXG4gICAgICAgICAgPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJlY29yZC1jYXJkX19mb290ZXJfX290aGVyXCI+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJ4czpib3JkZXItciBsYXN0OmJvcmRlci1yLTAgZmxleCBncm93IGdhcC00IHB4LTQgbGFzdDpwci0wXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8Z24tdWkta2luZC1iYWRnZVxuICAgICAgICAgICAgICBbZXh0cmFDbGFzc109XCIndGV4dC1bMS4yZW1dJ1wiXG4gICAgICAgICAgICAgIFtzdHlsaW5nXT1cIidncmF5J1wiXG4gICAgICAgICAgICAgIFtraW5kXT1cInJlY29yZD8ua2luZFwiXG4gICAgICAgICAgICAgIFtjb250ZW50VGVtcGxhdGVdPVwiY3VzdG9tVGVtcGxhdGVcIlxuICAgICAgICAgICAgICBjbGFzcz1cInB0LTFcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2N1c3RvbVRlbXBsYXRlPjwvbmctdGVtcGxhdGVcbiAgICAgICAgICAgID48L2duLXVpLWtpbmQtYmFkZ2U+XG4gICAgICAgICAgICA8Z24tdWktbWV0YWRhdGEtcXVhbGl0eVxuICAgICAgICAgICAgICAqbmdJZj1cIm1ldGFkYXRhUXVhbGl0eURpc3BsYXlcIlxuICAgICAgICAgICAgICBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIG1pbi13LVsxMTNweF1cIlxuICAgICAgICAgICAgICBbc21hbGxlcl09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgW21ldGFkYXRhXT1cInJlY29yZFwiXG4gICAgICAgICAgICAgIFttZXRhZGF0YVF1YWxpdHlEaXNwbGF5XT1cIm1ldGFkYXRhUXVhbGl0eURpc3BsYXlcIlxuICAgICAgICAgICAgICBbcG9wb3ZlckRpc3BsYXldPVwidHJ1ZVwiXG4gICAgICAgICAgICA+PC9nbi11aS1tZXRhZGF0YS1xdWFsaXR5PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNlbnRlclwiXG4gICAgICAgICAgICBkYXRhLWN5PVwicmVjb3JkRmF2XCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cImRpc3BsYXlDb250YWN0SWNvbk9ubHkgPyAncHgtMScgOiAncHgtNCdcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZmF2b3JpdGVUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogcmVjb3JkIH1cIlxuICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvYT5cbiJdfQ==
@@ -0,0 +1,70 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, Input, TemplateRef, } from '@angular/core';
3
+ import { NgIconComponent, provideIcons } from '@ng-icons/core';
4
+ import { iconoirDatabase, iconoirAppleWallet, iconoirCode, iconoirAppWindow, } from '@ng-icons/iconoir';
5
+ import { TranslatePipe } from '@ngx-translate/core';
6
+ import { marker } from '@biesbjerg/ngx-translate-extract-marker';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/common";
9
+ marker('record.kind.dataset');
10
+ marker('record.kind.reuse');
11
+ marker('record.kind.service');
12
+ var KindConfig;
13
+ (function (KindConfig) {
14
+ KindConfig["all"] = "iconoirAppleWallet";
15
+ KindConfig["dataset"] = "iconoirDatabase";
16
+ KindConfig["service"] = "iconoirCode";
17
+ KindConfig["reuse"] = "iconoirAppWindow";
18
+ })(KindConfig || (KindConfig = {}));
19
+ export class KindBadgeComponent {
20
+ constructor() {
21
+ this.styling = 'primary';
22
+ this.extraClass = 'text-[0.85em]';
23
+ this.hasProjectedContent = false;
24
+ }
25
+ get iconKind() {
26
+ return KindConfig[this.kind] || KindConfig.dataset;
27
+ }
28
+ get badgeClasses() {
29
+ const baseClasses = 'badge-btn text-xs px-2 font-bold shrink-0 flex items-center gap-2 h-6 min-h-6';
30
+ switch (this.styling) {
31
+ case 'outline':
32
+ return `${baseClasses} bg-transparent border border-current py-1.5`;
33
+ case 'primary':
34
+ return `${baseClasses} bg-primary py-0.5`;
35
+ case 'gray':
36
+ return `${baseClasses} bg-gray-100 text-gray-900 py-0.5`;
37
+ default:
38
+ return 'flex items-center gap-2';
39
+ }
40
+ }
41
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KindBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
42
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: KindBadgeComponent, isStandalone: true, selector: "gn-ui-kind-badge", inputs: { styling: "styling", contentTemplate: "contentTemplate", kind: "kind", extraClass: "extraClass" }, ngImport: i0, template: "<div\n [class]=\"badgeClasses\"\n *ngIf=\"kind\"\n [title]=\"'record.kind.' + kind | translate\"\n>\n <ng-icon [name]=\"iconKind\" [ngClass]=\"extraClass\"></ng-icon>\n\n <ng-container *ngIf=\"contentTemplate; else defaultContent\">\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #defaultContent>\n {{ 'record.kind.' + kind | translate }}\n</ng-template>\n", styles: [":host gn-ui-badge ng-icon{font-size:1.2rem;width:1.2rem;height:1.2rem;transform:translateY(-2px)}\n"], dependencies: [{ kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], viewProviders: [
43
+ provideIcons({
44
+ iconoirAppleWallet,
45
+ iconoirDatabase,
46
+ iconoirCode,
47
+ iconoirAppWindow,
48
+ }),
49
+ ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
50
+ }
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KindBadgeComponent, decorators: [{
52
+ type: Component,
53
+ args: [{ selector: 'gn-ui-kind-badge', viewProviders: [
54
+ provideIcons({
55
+ iconoirAppleWallet,
56
+ iconoirDatabase,
57
+ iconoirCode,
58
+ iconoirAppWindow,
59
+ }),
60
+ ], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgIconComponent, CommonModule, TranslatePipe], template: "<div\n [class]=\"badgeClasses\"\n *ngIf=\"kind\"\n [title]=\"'record.kind.' + kind | translate\"\n>\n <ng-icon [name]=\"iconKind\" [ngClass]=\"extraClass\"></ng-icon>\n\n <ng-container *ngIf=\"contentTemplate; else defaultContent\">\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #defaultContent>\n {{ 'record.kind.' + kind | translate }}\n</ng-template>\n", styles: [":host gn-ui-badge ng-icon{font-size:1.2rem;width:1.2rem;height:1.2rem;transform:translateY(-2px)}\n"] }]
61
+ }], propDecorators: { styling: [{
62
+ type: Input
63
+ }], contentTemplate: [{
64
+ type: Input
65
+ }], kind: [{
66
+ type: Input
67
+ }], extraClass: [{
68
+ type: Input
69
+ }] } });
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2luZC1iYWRnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIva2luZC1iYWRnZS9raW5kLWJhZGdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9raW5kLWJhZGdlL2tpbmQtYmFkZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFDTCxXQUFXLEdBQ1osTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM5RCxPQUFPLEVBQ0wsZUFBZSxFQUNmLGtCQUFrQixFQUNsQixXQUFXLEVBQ1gsZ0JBQWdCLEdBQ2pCLE1BQU0sbUJBQW1CLENBQUE7QUFDMUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTs7O0FBRWhFLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO0FBQzdCLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBO0FBQzNCLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO0FBRTdCLElBQUssVUFLSjtBQUxELFdBQUssVUFBVTtJQUNiLHdDQUEwQixDQUFBO0lBQzFCLHlDQUEyQixDQUFBO0lBQzNCLHFDQUF1QixDQUFBO0lBQ3ZCLHdDQUEwQixDQUFBO0FBQzVCLENBQUMsRUFMSSxVQUFVLEtBQVYsVUFBVSxRQUtkO0FBa0JELE1BQU0sT0FBTyxrQkFBa0I7SUFoQi9CO1FBaUJXLFlBQU8sR0FBRyxTQUFTLENBQUE7UUFHbkIsZUFBVSxHQUFHLGVBQWUsQ0FBQTtRQUVyQyx3QkFBbUIsR0FBRyxLQUFLLENBQUE7S0FxQjVCO0lBbkJDLElBQUksUUFBUTtRQUNWLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxVQUFVLENBQUMsT0FBTyxDQUFBO0lBQ3BELENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxNQUFNLFdBQVcsR0FDZiwrRUFBK0UsQ0FBQTtRQUVqRixRQUFRLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNyQixLQUFLLFNBQVM7Z0JBQ1osT0FBTyxHQUFHLFdBQVcsOENBQThDLENBQUE7WUFDckUsS0FBSyxTQUFTO2dCQUNaLE9BQU8sR0FBRyxXQUFXLG9CQUFvQixDQUFBO1lBQzNDLEtBQUssTUFBTTtnQkFDVCxPQUFPLEdBQUcsV0FBVyxtQ0FBbUMsQ0FBQTtZQUMxRDtnQkFDRSxPQUFPLHlCQUF5QixDQUFBO1FBQ3BDLENBQUM7SUFDSCxDQUFDOytHQTFCVSxrQkFBa0I7bUdBQWxCLGtCQUFrQix3TEM1Qy9CLGliQWVBLDZKRDJCWSxlQUFlLDRHQUFFLFlBQVksbVlBQUUsYUFBYSx1Q0FWdkM7WUFDYixZQUFZLENBQUM7Z0JBQ1gsa0JBQWtCO2dCQUNsQixlQUFlO2dCQUNmLFdBQVc7Z0JBQ1gsZ0JBQWdCO2FBQ2pCLENBQUM7U0FDSDs7NEZBS1Usa0JBQWtCO2tCQWhCOUIsU0FBUzsrQkFDRSxrQkFBa0IsaUJBR2I7d0JBQ2IsWUFBWSxDQUFDOzRCQUNYLGtCQUFrQjs0QkFDbEIsZUFBZTs0QkFDZixXQUFXOzRCQUNYLGdCQUFnQjt5QkFDakIsQ0FBQztxQkFDSCxtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxlQUFlLEVBQUUsWUFBWSxFQUFFLGFBQWEsQ0FBQzs4QkFHOUMsT0FBTztzQkFBZixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBOZ0ljb25Db21wb25lbnQsIHByb3ZpZGVJY29ucyB9IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHtcbiAgaWNvbm9pckRhdGFiYXNlLFxuICBpY29ub2lyQXBwbGVXYWxsZXQsXG4gIGljb25vaXJDb2RlLFxuICBpY29ub2lyQXBwV2luZG93LFxufSBmcm9tICdAbmctaWNvbnMvaWNvbm9pcidcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuXG5tYXJrZXIoJ3JlY29yZC5raW5kLmRhdGFzZXQnKVxubWFya2VyKCdyZWNvcmQua2luZC5yZXVzZScpXG5tYXJrZXIoJ3JlY29yZC5raW5kLnNlcnZpY2UnKVxuXG5lbnVtIEtpbmRDb25maWcge1xuICBhbGwgPSAnaWNvbm9pckFwcGxlV2FsbGV0JywgLy8gKHRoaXMgb25lIGlzIGZvciBmaWx0ZXIpXG4gIGRhdGFzZXQgPSAnaWNvbm9pckRhdGFiYXNlJyxcbiAgc2VydmljZSA9ICdpY29ub2lyQ29kZScsXG4gIHJldXNlID0gJ2ljb25vaXJBcHBXaW5kb3cnLFxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1raW5kLWJhZGdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2tpbmQtYmFkZ2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9raW5kLWJhZGdlLmNvbXBvbmVudC5jc3MnXSxcbiAgdmlld1Byb3ZpZGVyczogW1xuICAgIHByb3ZpZGVJY29ucyh7XG4gICAgICBpY29ub2lyQXBwbGVXYWxsZXQsXG4gICAgICBpY29ub2lyRGF0YWJhc2UsXG4gICAgICBpY29ub2lyQ29kZSxcbiAgICAgIGljb25vaXJBcHBXaW5kb3csXG4gICAgfSksXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdJY29uQ29tcG9uZW50LCBDb21tb25Nb2R1bGUsIFRyYW5zbGF0ZVBpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBLaW5kQmFkZ2VDb21wb25lbnQge1xuICBASW5wdXQoKSBzdHlsaW5nID0gJ3ByaW1hcnknXG4gIEBJbnB1dCgpIGNvbnRlbnRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj5cbiAgQElucHV0KCkga2luZDogc3RyaW5nXG4gIEBJbnB1dCgpIGV4dHJhQ2xhc3MgPSAndGV4dC1bMC44NWVtXSdcblxuICBoYXNQcm9qZWN0ZWRDb250ZW50ID0gZmFsc2VcblxuICBnZXQgaWNvbktpbmQoKSB7XG4gICAgcmV0dXJuIEtpbmRDb25maWdbdGhpcy5raW5kXSB8fCBLaW5kQ29uZmlnLmRhdGFzZXRcbiAgfVxuXG4gIGdldCBiYWRnZUNsYXNzZXMoKTogc3RyaW5nIHtcbiAgICBjb25zdCBiYXNlQ2xhc3NlcyA9XG4gICAgICAnYmFkZ2UtYnRuIHRleHQteHMgcHgtMiBmb250LWJvbGQgc2hyaW5rLTAgZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTIgaC02IG1pbi1oLTYnXG5cbiAgICBzd2l0Y2ggKHRoaXMuc3R5bGluZykge1xuICAgICAgY2FzZSAnb3V0bGluZSc6XG4gICAgICAgIHJldHVybiBgJHtiYXNlQ2xhc3Nlc30gYmctdHJhbnNwYXJlbnQgYm9yZGVyIGJvcmRlci1jdXJyZW50IHB5LTEuNWBcbiAgICAgIGNhc2UgJ3ByaW1hcnknOlxuICAgICAgICByZXR1cm4gYCR7YmFzZUNsYXNzZXN9IGJnLXByaW1hcnkgcHktMC41YFxuICAgICAgY2FzZSAnZ3JheSc6XG4gICAgICAgIHJldHVybiBgJHtiYXNlQ2xhc3Nlc30gYmctZ3JheS0xMDAgdGV4dC1ncmF5LTkwMCBweS0wLjVgXG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gJ2ZsZXggaXRlbXMtY2VudGVyIGdhcC0yJ1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICBbY2xhc3NdPVwiYmFkZ2VDbGFzc2VzXCJcbiAgKm5nSWY9XCJraW5kXCJcbiAgW3RpdGxlXT1cIidyZWNvcmQua2luZC4nICsga2luZCB8IHRyYW5zbGF0ZVwiXG4+XG4gIDxuZy1pY29uIFtuYW1lXT1cImljb25LaW5kXCIgW25nQ2xhc3NdPVwiZXh0cmFDbGFzc1wiPjwvbmctaWNvbj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29udGVudFRlbXBsYXRlOyBlbHNlIGRlZmF1bHRDb250ZW50XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRDb250ZW50PlxuICB7eyAncmVjb3JkLmtpbmQuJyArIGtpbmQgfCB0cmFuc2xhdGUgfX1cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -2,8 +2,7 @@ import { CommonModule } from '@angular/common';
2
2
  import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
3
3
  import { FormsModule } from '@angular/forms';
4
4
  import { MarkdownParserComponent } from '../markdown-parser/markdown-parser.component';
5
- import { TranslateModule } from '@ngx-translate/core';
6
- import { ButtonComponent, TextAreaComponent } from '../../../../../../libs/ui/inputs/src';
5
+ import { TextAreaComponent } from '../../../../../../libs/ui/inputs/src';
7
6
  import { MatTooltipModule } from '@angular/material/tooltip';
8
7
  import * as i0 from "@angular/core";
9
8
  export class MarkdownEditorComponent {
@@ -17,7 +16,7 @@ export class MarkdownEditorComponent {
17
16
  this.textContentChanged.emit(this.textContent);
18
17
  }
19
18
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MarkdownEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
20
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MarkdownEditorComponent, isStandalone: true, selector: "gn-ui-markdown-editor", inputs: { preview: "preview", placeholder: "placeholder", textContent: "textContent", textAreaExtraClass: "textAreaExtraClass" }, outputs: { textContentChanged: "textContentChanged" }, ngImport: i0, template: "<gn-ui-text-area\n [hidden]=\"preview\"\n [placeholder]=\"placeholder\"\n [value]=\"textContent\"\n [extraClass]=\"textAreaExtraClass + ' !leading-normal'\"\n (valueChange)=\"textContentChangedHandler($event)\"\n></gn-ui-text-area>\n\n<div\n class=\"gn-ui-text-input border-gray-100 hover:border-gray-100\"\n [hidden]=\"!preview\"\n>\n <gn-ui-markdown-parser [textContent]=\"textContent\"></gn-ui-markdown-parser>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "component", type: TextAreaComponent, selector: "gn-ui-text-area", inputs: ["value", "disabled", "extraClass", "placeholder", "required"], outputs: ["valueChange"] }, { kind: "component", type: MarkdownParserComponent, selector: "gn-ui-markdown-parser", inputs: ["textContent", "whitoutStyles"] }, { kind: "ngmodule", type: TranslateModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MarkdownEditorComponent, isStandalone: true, selector: "gn-ui-markdown-editor", inputs: { preview: "preview", placeholder: "placeholder", textContent: "textContent", textAreaExtraClass: "textAreaExtraClass" }, outputs: { textContentChanged: "textContentChanged" }, ngImport: i0, template: "<gn-ui-text-area\n [hidden]=\"preview\"\n [placeholder]=\"placeholder\"\n [value]=\"textContent\"\n [extraClass]=\"textAreaExtraClass + ' !leading-normal'\"\n (valueChange)=\"textContentChangedHandler($event)\"\n></gn-ui-text-area>\n\n<div\n class=\"gn-ui-text-input border-gray-100 hover:border-gray-100\"\n [hidden]=\"!preview\"\n>\n <gn-ui-markdown-parser [textContent]=\"textContent\"></gn-ui-markdown-parser>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "component", type: TextAreaComponent, selector: "gn-ui-text-area", inputs: ["value", "disabled", "extraClass", "placeholder", "required"], outputs: ["valueChange"] }, { kind: "component", type: MarkdownParserComponent, selector: "gn-ui-markdown-parser", inputs: ["textContent", "whitoutStyles"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
21
20
  }
22
21
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MarkdownEditorComponent, decorators: [{
23
22
  type: Component,
@@ -25,10 +24,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
25
24
  CommonModule,
26
25
  FormsModule,
27
26
  MatTooltipModule,
28
- ButtonComponent,
29
27
  TextAreaComponent,
30
28
  MarkdownParserComponent,
31
- TranslateModule,
32
29
  ], template: "<gn-ui-text-area\n [hidden]=\"preview\"\n [placeholder]=\"placeholder\"\n [value]=\"textContent\"\n [extraClass]=\"textAreaExtraClass + ' !leading-normal'\"\n (valueChange)=\"textContentChangedHandler($event)\"\n></gn-ui-text-area>\n\n<div\n class=\"gn-ui-text-input border-gray-100 hover:border-gray-100\"\n [hidden]=\"!preview\"\n>\n <gn-ui-markdown-parser [textContent]=\"textContent\"></gn-ui-markdown-parser>\n</div>\n" }]
33
30
  }], propDecorators: { preview: [{
34
31
  type: Input
@@ -41,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
41
38
  }], textContentChanged: [{
42
39
  type: Output
43
40
  }] } });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9tYXJrZG93bi1lZGl0b3IvbWFya2Rvd24tZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9tYXJrZG93bi1lZGl0b3IvbWFya2Rvd24tZWRpdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOENBQThDLENBQUE7QUFDdEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUN6RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTs7QUFrQjVELE1BQU0sT0FBTyx1QkFBdUI7SUFoQnBDO1FBaUJXLFlBQU8sR0FBRyxLQUFLLENBQUE7UUFHZix1QkFBa0IsR0FBRyxFQUFFLENBQUE7UUFDdEIsdUJBQWtCLEdBQzFCLElBQUksWUFBWSxFQUFVLENBQUE7S0FNN0I7SUFKQyx5QkFBeUIsQ0FBQyxXQUFtQjtRQUMzQyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQTtRQUM5QixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUNoRCxDQUFDOytHQVhVLHVCQUF1QjttR0FBdkIsdUJBQXVCLDBRQzlCcEMsaWJBY0EseURET0ksWUFBWSw4QkFDWixXQUFXLDhCQUNYLGdCQUFnQiwrQkFFaEIsaUJBQWlCLDhKQUNqQix1QkFBdUIsMkdBQ3ZCLGVBQWU7OzRGQUdOLHVCQUF1QjtrQkFoQm5DLFNBQVM7K0JBQ0UsdUJBQXVCLG1CQUdoQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsdUJBQXVCO3dCQUN2QixlQUFlO3FCQUNoQjs4QkFHUSxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDSSxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgTWFya2Rvd25QYXJzZXJDb21wb25lbnQgfSBmcm9tICcuLi9tYXJrZG93bi1wYXJzZXIvbWFya2Rvd24tcGFyc2VyLmNvbXBvbmVudCdcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQsIFRleHRBcmVhQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLW1hcmtkb3duLWVkaXRvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXJrZG93bi1lZGl0b3IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tYXJrZG93bi1lZGl0b3IuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBUZXh0QXJlYUNvbXBvbmVudCxcbiAgICBNYXJrZG93blBhcnNlckNvbXBvbmVudCxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE1hcmtkb3duRWRpdG9yQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHJldmlldyA9IGZhbHNlXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmdcbiAgQElucHV0KCkgdGV4dENvbnRlbnQ6IHN0cmluZ1xuICBASW5wdXQoKSB0ZXh0QXJlYUV4dHJhQ2xhc3MgPSAnJ1xuICBAT3V0cHV0KCkgdGV4dENvbnRlbnRDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KClcblxuICB0ZXh0Q29udGVudENoYW5nZWRIYW5kbGVyKHRleHRDb250ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLnRleHRDb250ZW50ID0gdGV4dENvbnRlbnRcbiAgICB0aGlzLnRleHRDb250ZW50Q2hhbmdlZC5lbWl0KHRoaXMudGV4dENvbnRlbnQpXG4gIH1cbn1cbiIsIjxnbi11aS10ZXh0LWFyZWFcbiAgW2hpZGRlbl09XCJwcmV2aWV3XCJcbiAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgW3ZhbHVlXT1cInRleHRDb250ZW50XCJcbiAgW2V4dHJhQ2xhc3NdPVwidGV4dEFyZWFFeHRyYUNsYXNzICsgJyAhbGVhZGluZy1ub3JtYWwnXCJcbiAgKHZhbHVlQ2hhbmdlKT1cInRleHRDb250ZW50Q2hhbmdlZEhhbmRsZXIoJGV2ZW50KVwiXG4+PC9nbi11aS10ZXh0LWFyZWE+XG5cbjxkaXZcbiAgY2xhc3M9XCJnbi11aS10ZXh0LWlucHV0IGJvcmRlci1ncmF5LTEwMCBob3Zlcjpib3JkZXItZ3JheS0xMDBcIlxuICBbaGlkZGVuXT1cIiFwcmV2aWV3XCJcbj5cbiAgPGduLXVpLW1hcmtkb3duLXBhcnNlciBbdGV4dENvbnRlbnRdPVwidGV4dENvbnRlbnRcIj48L2duLXVpLW1hcmtkb3duLXBhcnNlcj5cbjwvZGl2PlxuIl19
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9tYXJrZG93bi1lZGl0b3IvbWFya2Rvd24tZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9tYXJrZG93bi1lZGl0b3IvbWFya2Rvd24tZWRpdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOENBQThDLENBQUE7QUFDdEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDeEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUE7O0FBZ0I1RCxNQUFNLE9BQU8sdUJBQXVCO0lBZHBDO1FBZVcsWUFBTyxHQUFHLEtBQUssQ0FBQTtRQUdmLHVCQUFrQixHQUFHLEVBQUUsQ0FBQTtRQUN0Qix1QkFBa0IsR0FDMUIsSUFBSSxZQUFZLEVBQVUsQ0FBQTtLQU03QjtJQUpDLHlCQUF5QixDQUFDLFdBQW1CO1FBQzNDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFBO1FBQzlCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO0lBQ2hELENBQUM7K0dBWFUsdUJBQXVCO21HQUF2Qix1QkFBdUIsMFFDM0JwQyxpYkFjQSx5RERNSSxZQUFZLDhCQUNaLFdBQVcsOEJBQ1gsZ0JBQWdCLCtCQUNoQixpQkFBaUIsOEpBQ2pCLHVCQUF1Qjs7NEZBR2QsdUJBQXVCO2tCQWRuQyxTQUFTOytCQUNFLHVCQUF1QixtQkFHaEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQix1QkFBdUI7cUJBQ3hCOzhCQUdRLE9BQU87c0JBQWYsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNJLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBNYXJrZG93blBhcnNlckNvbXBvbmVudCB9IGZyb20gJy4uL21hcmtkb3duLXBhcnNlci9tYXJrZG93bi1wYXJzZXIuY29tcG9uZW50J1xuaW1wb3J0IHsgVGV4dEFyZWFDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktbWFya2Rvd24tZWRpdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hcmtkb3duLWVkaXRvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21hcmtkb3duLWVkaXRvci5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgVGV4dEFyZWFDb21wb25lbnQsXG4gICAgTWFya2Rvd25QYXJzZXJDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE1hcmtkb3duRWRpdG9yQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHJldmlldyA9IGZhbHNlXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmdcbiAgQElucHV0KCkgdGV4dENvbnRlbnQ6IHN0cmluZ1xuICBASW5wdXQoKSB0ZXh0QXJlYUV4dHJhQ2xhc3MgPSAnJ1xuICBAT3V0cHV0KCkgdGV4dENvbnRlbnRDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KClcblxuICB0ZXh0Q29udGVudENoYW5nZWRIYW5kbGVyKHRleHRDb250ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLnRleHRDb250ZW50ID0gdGV4dENvbnRlbnRcbiAgICB0aGlzLnRleHRDb250ZW50Q2hhbmdlZC5lbWl0KHRoaXMudGV4dENvbnRlbnQpXG4gIH1cbn1cbiIsIjxnbi11aS10ZXh0LWFyZWFcbiAgW2hpZGRlbl09XCJwcmV2aWV3XCJcbiAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgW3ZhbHVlXT1cInRleHRDb250ZW50XCJcbiAgW2V4dHJhQ2xhc3NdPVwidGV4dEFyZWFFeHRyYUNsYXNzICsgJyAhbGVhZGluZy1ub3JtYWwnXCJcbiAgKHZhbHVlQ2hhbmdlKT1cInRleHRDb250ZW50Q2hhbmdlZEhhbmRsZXIoJGV2ZW50KVwiXG4+PC9nbi11aS10ZXh0LWFyZWE+XG5cbjxkaXZcbiAgY2xhc3M9XCJnbi11aS10ZXh0LWlucHV0IGJvcmRlci1ncmF5LTEwMCBob3Zlcjpib3JkZXItZ3JheS0xMDBcIlxuICBbaGlkZGVuXT1cIiFwcmV2aWV3XCJcbj5cbiAgPGduLXVpLW1hcmtkb3duLXBhcnNlciBbdGV4dENvbnRlbnRdPVwidGV4dENvbnRlbnRcIj48L2duLXVpLW1hcmtkb3duLXBhcnNlcj5cbjwvZGl2PlxuIl19
@@ -1,15 +1,14 @@
1
1
  import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
- import { TranslateModule } from '@ngx-translate/core';
2
+ import { TranslateDirective } from '@ngx-translate/core';
3
3
  import * as i0 from "@angular/core";
4
- import * as i1 from "@ngx-translate/core";
5
4
  export class MetadataCatalogComponent {
6
5
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MetadataCatalogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MetadataCatalogComponent, isStandalone: true, selector: "gn-ui-metadata-catalog", inputs: { sourceLabel: "sourceLabel" }, ngImport: i0, template: "<div>\n <p class=\"text-gray-700 text-xs mb-3 uppercase\" translate>\n record.metadata.catalog\n </p>\n <p class=\"text-primary font-title text-21 mb-1\">\n {{ sourceLabel }}\n </p>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MetadataCatalogComponent, isStandalone: true, selector: "gn-ui-metadata-catalog", inputs: { sourceLabel: "sourceLabel" }, ngImport: i0, template: "<div class=\"text-black\">\n <p class=\"text-base mb-3\" translate>record.metadata.catalog</p>\n <p class=\"font-title text-21 mb-1\">\n {{ sourceLabel }}\n </p>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8
7
  }
9
8
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MetadataCatalogComponent, decorators: [{
10
9
  type: Component,
11
- args: [{ selector: 'gn-ui-metadata-catalog', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [TranslateModule], template: "<div>\n <p class=\"text-gray-700 text-xs mb-3 uppercase\" translate>\n record.metadata.catalog\n </p>\n <p class=\"text-primary font-title text-21 mb-1\">\n {{ sourceLabel }}\n </p>\n</div>\n" }]
10
+ args: [{ selector: 'gn-ui-metadata-catalog', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [TranslateDirective], template: "<div class=\"text-black\">\n <p class=\"text-base mb-3\" translate>record.metadata.catalog</p>\n <p class=\"font-title text-21 mb-1\">\n {{ sourceLabel }}\n </p>\n</div>\n" }]
12
11
  }], propDecorators: { sourceLabel: [{
13
12
  type: Input
14
13
  }] } });
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtY2F0YWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvbWV0YWRhdGEtY2F0YWxvZy9tZXRhZGF0YS1jYXRhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9tZXRhZGF0YS1jYXRhbG9nL21ldGFkYXRhLWNhdGFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBOzs7QUFVckQsTUFBTSxPQUFPLHdCQUF3QjsrR0FBeEIsd0JBQXdCO21HQUF4Qix3QkFBd0IsMEhDWHJDLDJNQVFBLHlERENZLGVBQWU7OzRGQUVkLHdCQUF3QjtrQkFScEMsU0FBUzsrQkFDRSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsZUFBZSxDQUFDOzhCQUdqQixXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktbWV0YWRhdGEtY2F0YWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZXRhZGF0YS1jYXRhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWV0YWRhdGEtY2F0YWxvZy5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbVHJhbnNsYXRlTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgTWV0YWRhdGFDYXRhbG9nQ29tcG9uZW50IHtcbiAgQElucHV0KCkgc291cmNlTGFiZWw6IHN0cmluZ1xufVxuIiwiPGRpdj5cbiAgPHAgY2xhc3M9XCJ0ZXh0LWdyYXktNzAwIHRleHQteHMgbWItMyB1cHBlcmNhc2VcIiB0cmFuc2xhdGU+XG4gICAgcmVjb3JkLm1ldGFkYXRhLmNhdGFsb2dcbiAgPC9wPlxuICA8cCBjbGFzcz1cInRleHQtcHJpbWFyeSBmb250LXRpdGxlIHRleHQtMjEgbWItMVwiPlxuICAgIHt7IHNvdXJjZUxhYmVsIH19XG4gIDwvcD5cbjwvZGl2PlxuIl19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtY2F0YWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvbWV0YWRhdGEtY2F0YWxvZy9tZXRhZGF0YS1jYXRhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9tZXRhZGF0YS1jYXRhbG9nL21ldGFkYXRhLWNhdGFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUE7O0FBVXhELE1BQU0sT0FBTyx3QkFBd0I7K0dBQXhCLHdCQUF3QjttR0FBeEIsd0JBQXdCLDBIQ1hyQyxtTEFNQSwwRERHWSxrQkFBa0I7OzRGQUVqQix3QkFBd0I7a0JBUnBDLFNBQVM7K0JBQ0Usd0JBQXdCLG1CQUdqQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLGtCQUFrQixDQUFDOzhCQUdwQixXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgVHJhbnNsYXRlRGlyZWN0aXZlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktbWV0YWRhdGEtY2F0YWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZXRhZGF0YS1jYXRhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWV0YWRhdGEtY2F0YWxvZy5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbVHJhbnNsYXRlRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgTWV0YWRhdGFDYXRhbG9nQ29tcG9uZW50IHtcbiAgQElucHV0KCkgc291cmNlTGFiZWw6IHN0cmluZ1xufVxuIiwiPGRpdiBjbGFzcz1cInRleHQtYmxhY2tcIj5cbiAgPHAgY2xhc3M9XCJ0ZXh0LWJhc2UgbWItM1wiIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEuY2F0YWxvZzwvcD5cbiAgPHAgY2xhc3M9XCJmb250LXRpdGxlIHRleHQtMjEgbWItMVwiPlxuICAgIHt7IHNvdXJjZUxhYmVsIH19XG4gIDwvcD5cbjwvZGl2PlxuIl19