geonetwork-ui 2.6.0-dev.f073bbb4e → 2.7.0-dev.30c4f9cfa

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 (860) 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/write-parts.mjs +8 -8
  16. package/esm2022/libs/api/metadata-converter/src/lib/translate-utils.mjs +17 -0
  17. package/esm2022/libs/api/repository/src/lib/gn4/auth/auth.service.mjs +4 -4
  18. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/constant.mjs +5 -2
  19. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +21 -27
  20. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +79 -16
  21. package/esm2022/libs/api/repository/src/lib/gn4/gn4.provider.mjs +7 -1
  22. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.mjs +8 -8
  23. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +14 -11
  24. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +64 -43
  25. package/esm2022/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.mjs +2 -1
  26. package/esm2022/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.mjs +1 -1
  27. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  28. package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
  29. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  30. package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +7 -31
  31. package/esm2022/libs/feature/catalog/src/lib/sources/sources.service.mjs +9 -8
  32. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +51 -11
  33. package/esm2022/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.mjs +4 -5
  34. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +2 -2
  35. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +42 -3
  36. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +31 -8
  37. package/esm2022/libs/feature/editor/src/index.mjs +2 -4
  38. package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +2 -1
  39. package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +13 -7
  40. package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +4 -1
  41. package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +5 -1
  42. package/esm2022/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.mjs +5 -7
  43. package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +8 -13
  44. package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +5 -6
  45. package/esm2022/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.mjs +275 -0
  46. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +5 -15
  47. package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +5 -5
  48. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.mjs +5 -8
  49. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.mjs +4 -5
  50. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.mjs +6 -10
  51. 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
  52. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +4 -15
  53. 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
  54. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.mjs +4 -4
  55. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.mjs +4 -4
  56. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +7 -7
  57. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +4 -4
  58. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +4 -4
  59. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +6 -17
  60. package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +4 -5
  61. package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +12 -30
  62. package/esm2022/libs/feature/editor/src/lib/models/index.mjs +1 -3
  63. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +5 -6
  64. package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +11 -8
  65. package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +11 -8
  66. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +11 -6
  67. package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +10 -5
  68. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +3 -36
  69. package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +5 -11
  70. package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +6 -6
  71. package/esm2022/libs/feature/record/src/index.mjs +2 -4
  72. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +24 -19
  73. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +10 -15
  74. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +5 -6
  75. package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +12 -17
  76. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +7 -4
  77. package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +8 -22
  78. package/esm2022/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.mjs +5 -5
  79. package/esm2022/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.mjs +15 -7
  80. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +101 -21
  81. package/esm2022/libs/feature/record/src/lib/record-meta/record-meta.component.mjs +1 -1
  82. package/esm2022/libs/feature/record/src/lib/state/mdview.actions.mjs +3 -1
  83. package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +14 -5
  84. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +13 -15
  85. package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +7 -1
  86. package/esm2022/libs/feature/record/src/lib/state/mdview.selectors.mjs +3 -1
  87. package/esm2022/libs/feature/router/src/lib/default/constants.mjs +3 -1
  88. package/esm2022/libs/feature/router/src/lib/default/router.config.mjs +1 -1
  89. package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +10 -2
  90. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +9 -3
  91. package/esm2022/libs/feature/search/src/index.mjs +2 -2
  92. package/esm2022/libs/feature/search/src/lib/constants.mjs +4 -2
  93. package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +12 -8
  94. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +33 -42
  95. package/esm2022/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.mjs +3 -3
  96. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +8 -6
  97. package/esm2022/libs/feature/search/src/lib/record-url.token.mjs +4 -2
  98. package/esm2022/libs/feature/search/src/lib/results-hits/results-hits.container.component.mjs +44 -0
  99. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +35 -15
  100. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +13 -10
  101. package/esm2022/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.mjs +5 -7
  102. package/esm2022/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.mjs +4 -4
  103. package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +74 -4
  104. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +4 -3
  105. package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +3 -3
  106. package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +4 -5
  107. package/esm2022/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.mjs +4 -5
  108. package/esm2022/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.mjs +4 -5
  109. package/esm2022/libs/ui/dataviz/src/index.mjs +1 -2
  110. package/esm2022/libs/ui/dataviz/src/lib/chart/chart.component.mjs +5 -3
  111. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.component.mjs +13 -8
  112. package/esm2022/libs/ui/dataviz/src/lib/figure/figure.component.mjs +5 -5
  113. package/esm2022/libs/ui/elements/src/index.mjs +7 -4
  114. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +7 -7
  115. package/esm2022/libs/ui/elements/src/lib/application-banner/application-banner.component.mjs +5 -5
  116. package/esm2022/libs/ui/elements/src/lib/avatar/avatar.component.mjs +4 -3
  117. package/esm2022/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.mjs +5 -3
  118. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +5 -6
  119. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +20 -9
  120. package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +4 -5
  121. package/esm2022/libs/ui/elements/src/lib/external-link-card/external-link-card.component.mjs +59 -0
  122. package/esm2022/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.mjs +54 -0
  123. package/esm2022/libs/ui/elements/src/lib/image-input/image-input.component.mjs +4 -5
  124. package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +3 -3
  125. package/esm2022/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.mjs +89 -0
  126. package/esm2022/libs/ui/elements/src/lib/kind-badge/kind-badge.component.mjs +70 -0
  127. package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +3 -6
  128. package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +4 -5
  129. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +5 -6
  130. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +10 -8
  131. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +40 -17
  132. package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +8 -5
  133. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +9 -6
  134. package/esm2022/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.mjs +70 -0
  135. package/esm2022/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.mjs +170 -0
  136. package/esm2022/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.mjs +4 -5
  137. package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +5 -4
  138. package/esm2022/libs/ui/inputs/src/index.mjs +3 -3
  139. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +10 -13
  140. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +2 -2
  141. package/esm2022/libs/ui/inputs/src/lib/checkbox/checkbox.component.mjs +4 -3
  142. package/esm2022/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.mjs +7 -6
  143. package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +29 -7
  144. package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +5 -6
  145. package/esm2022/libs/ui/inputs/src/lib/file-input/file-input.component.mjs +5 -7
  146. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.mjs +43 -0
  147. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.mjs +2 -0
  148. package/esm2022/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.mjs +73 -0
  149. package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +8 -3
  150. package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +4 -5
  151. package/esm2022/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.mjs +3 -3
  152. package/esm2022/libs/ui/layout/src/index.mjs +3 -2
  153. package/esm2022/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.mjs +44 -3
  154. package/esm2022/libs/ui/layout/src/lib/block-list/block-list.component.mjs +61 -14
  155. package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +3 -3
  156. package/esm2022/libs/ui/layout/src/lib/cell-popin/cell-popin.component.mjs +110 -0
  157. package/esm2022/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.mjs +34 -13
  158. package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +4 -5
  159. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +26 -5
  160. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +4 -5
  161. package/esm2022/libs/ui/layout/src/lib/pagination/pagination.component.mjs +4 -5
  162. package/esm2022/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +6 -6
  163. package/esm2022/libs/ui/layout/src/lib/sticky-header/sticky-header.component.mjs +4 -3
  164. package/esm2022/libs/ui/layout/src/lib/truncated-text/truncated-text.component.mjs +71 -0
  165. package/esm2022/libs/ui/map/src/index.mjs +2 -1
  166. package/esm2022/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.mjs +29 -4
  167. package/esm2022/libs/ui/map/src/lib/components/map-container/map-container.component.mjs +4 -5
  168. package/esm2022/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.mjs +80 -0
  169. package/esm2022/libs/ui/search/src/index.mjs +3 -1
  170. package/esm2022/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.mjs +6 -6
  171. package/esm2022/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.mjs +17 -10
  172. package/esm2022/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.mjs +3 -3
  173. package/esm2022/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.mjs +53 -0
  174. package/esm2022/libs/ui/search/src/lib/results-list/results-layout.config.mjs +2 -2
  175. package/esm2022/libs/ui/search/src/lib/results-list/results-list.component.mjs +3 -3
  176. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +24 -17
  177. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +45 -20
  178. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +39 -26
  179. package/esm2022/libs/ui/widgets/src/index.mjs +1 -2
  180. package/esm2022/libs/ui/widgets/src/lib/color-scale/color-scale.component.mjs +3 -3
  181. package/esm2022/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.mjs +3 -3
  182. package/esm2022/libs/util/app-config/src/lib/app-config.mjs +4 -3
  183. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +3 -1
  184. package/esm2022/libs/util/app-config/src/lib/model.mjs +1 -1
  185. package/esm2022/libs/util/i18n/src/index.mjs +2 -3
  186. package/esm2022/libs/util/i18n/src/lib/embedded.translate.loader.mjs +3 -2
  187. package/esm2022/libs/util/i18n/src/lib/i18n.constants.mjs +36 -28
  188. package/esm2022/libs/util/i18n/src/lib/i18n.interceptor.mjs +10 -9
  189. package/esm2022/libs/util/i18n/src/lib/i18n.providers.mjs +41 -0
  190. package/esm2022/libs/util/i18n/src/lib/language-codes.mjs +63 -3
  191. package/esm2022/libs/util/shared/src/index.mjs +3 -2
  192. package/esm2022/libs/util/shared/src/lib/gn-ui-version.mjs +6 -0
  193. package/esm2022/libs/util/shared/src/lib/image-fallback.directive.mjs +3 -2
  194. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +5 -1
  195. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +16 -6
  196. package/esm2022/libs/util/shared/src/lib/record.util.mjs +56 -0
  197. package/esm2022/translations/de.json +90 -24
  198. package/esm2022/translations/en.json +90 -24
  199. package/esm2022/translations/es.json +89 -23
  200. package/esm2022/translations/fr.json +91 -25
  201. package/esm2022/translations/it.json +89 -24
  202. package/esm2022/translations/nl.json +89 -23
  203. package/esm2022/translations/pt.json +89 -23
  204. package/esm2022/translations/sk.json +607 -0
  205. package/fesm2022/geonetwork-ui.mjs +12091 -9878
  206. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  207. package/libs/api/metadata-converter/src/index.d.ts +1 -0
  208. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  209. package/libs/api/metadata-converter/src/lib/base.converter.d.ts.map +1 -1
  210. package/libs/api/metadata-converter/src/lib/common/distribution.mapper.d.ts.map +1 -1
  211. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts +21 -0
  212. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts.map +1 -1
  213. package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts.map +1 -1
  214. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +4 -4
  215. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  216. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +0 -1
  217. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  218. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +1 -0
  219. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  220. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -1
  221. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  222. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  223. package/libs/api/metadata-converter/src/lib/translate-utils.d.ts +2 -0
  224. package/libs/api/metadata-converter/src/lib/translate-utils.d.ts.map +1 -0
  225. package/libs/api/repository/src/lib/gn4/auth/auth.service.d.ts.map +1 -1
  226. package/libs/api/repository/src/lib/gn4/elasticsearch/constant.d.ts.map +1 -1
  227. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +9 -7
  228. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
  229. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +14 -3
  230. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  231. package/libs/api/repository/src/lib/gn4/gn4.provider.d.ts.map +1 -1
  232. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts +1 -0
  233. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts.map +1 -1
  234. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts +4 -4
  235. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts.map +1 -1
  236. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +8 -4
  237. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  238. package/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.d.ts +1 -0
  239. package/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.d.ts.map +1 -1
  240. package/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.d.ts +7 -1
  241. package/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.d.ts.map +1 -1
  242. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +26 -17
  243. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  244. package/libs/common/domain/src/lib/platform.service.interface.d.ts +1 -1
  245. package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
  246. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +7 -1
  247. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  248. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts +4 -8
  249. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts.map +1 -1
  250. package/libs/feature/catalog/src/lib/sources/sources.service.d.ts +3 -3
  251. package/libs/feature/catalog/src/lib/sources/sources.service.d.ts.map +1 -1
  252. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +12 -8
  253. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  254. package/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.d.ts.map +1 -1
  255. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +3 -0
  256. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  257. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +6 -3
  258. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  259. package/libs/feature/editor/src/index.d.ts +1 -3
  260. package/libs/feature/editor/src/index.d.ts.map +1 -1
  261. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +8 -1
  262. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -1
  263. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts +10 -12
  264. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -1
  265. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +2 -1
  266. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -1
  267. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -1
  268. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +1 -1
  269. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -1
  270. package/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.d.ts.map +1 -1
  271. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts.map +1 -1
  272. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts.map +1 -1
  273. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts +52 -0
  274. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts.map +1 -0
  275. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -1
  276. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts +6 -6
  277. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts.map +1 -1
  278. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.d.ts.map +1 -1
  279. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts.map +1 -1
  280. 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
  281. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -1
  282. 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
  283. 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
  284. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts.map +1 -1
  285. 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
  286. 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
  287. 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
  288. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  289. package/libs/feature/editor/src/lib/feature-editor.module.d.ts +10 -17
  290. package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
  291. package/libs/feature/editor/src/lib/models/index.d.ts +0 -2
  292. package/libs/feature/editor/src/lib/models/index.d.ts.map +1 -1
  293. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts.map +1 -1
  294. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -1
  295. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
  296. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -1
  297. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts.map +1 -1
  298. package/libs/feature/map/src/lib/feature-map.module.d.ts +2 -11
  299. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  300. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts.map +1 -1
  301. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
  302. package/libs/feature/record/src/index.d.ts +1 -3
  303. package/libs/feature/record/src/index.d.ts.map +1 -1
  304. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +19 -7
  305. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  306. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +2 -3
  307. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
  308. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +1 -2
  309. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
  310. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +2 -1
  311. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  312. package/libs/feature/record/src/lib/feature-record.module.d.ts +8 -12
  313. package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
  314. package/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.d.ts.map +1 -1
  315. package/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.d.ts.map +1 -1
  316. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +13 -6
  317. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  318. package/libs/feature/record/src/lib/record-meta/record-meta.component.d.ts +2 -2
  319. package/libs/feature/record/src/lib/state/mdview.actions.d.ts +13 -3
  320. package/libs/feature/record/src/lib/state/mdview.actions.d.ts.map +1 -1
  321. package/libs/feature/record/src/lib/state/mdview.effects.d.ts +9 -1
  322. package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
  323. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +30 -23
  324. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  325. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts +4 -2
  326. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts.map +1 -1
  327. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts +3 -1
  328. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts.map +1 -1
  329. package/libs/feature/router/src/lib/default/constants.d.ts +2 -0
  330. package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
  331. package/libs/feature/router/src/lib/default/router.config.d.ts +2 -0
  332. package/libs/feature/router/src/lib/default/router.config.d.ts.map +1 -1
  333. package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
  334. package/libs/feature/router/src/lib/default/state/router.facade.d.ts +5 -0
  335. package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
  336. package/libs/feature/search/src/index.d.ts +1 -1
  337. package/libs/feature/search/src/index.d.ts.map +1 -1
  338. package/libs/feature/search/src/lib/constants.d.ts.map +1 -1
  339. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts +2 -1
  340. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts.map +1 -1
  341. package/libs/feature/search/src/lib/feature-search.module.d.ts +24 -22
  342. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  343. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts +2 -1
  344. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
  345. package/libs/feature/search/src/lib/record-url.token.d.ts +3 -1
  346. package/libs/feature/search/src/lib/record-url.token.d.ts.map +1 -1
  347. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts +22 -0
  348. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts.map +1 -0
  349. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts +5 -3
  350. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts.map +1 -1
  351. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +6 -5
  352. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -1
  353. package/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.d.ts +1 -2
  354. package/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.d.ts.map +1 -1
  355. package/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.d.ts.map +1 -1
  356. package/libs/feature/search/src/lib/utils/service/fields.d.ts +22 -2
  357. package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
  358. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  359. package/libs/ui/dataviz/src/index.d.ts +0 -1
  360. package/libs/ui/dataviz/src/index.d.ts.map +1 -1
  361. package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts +2 -1
  362. package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts.map +1 -1
  363. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts +6 -1
  364. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts.map +1 -1
  365. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts +1 -1
  366. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts.map +1 -1
  367. package/libs/ui/elements/src/index.d.ts +6 -3
  368. package/libs/ui/elements/src/index.d.ts.map +1 -1
  369. package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts.map +1 -1
  370. package/libs/ui/elements/src/lib/avatar/avatar.component.d.ts +1 -1
  371. package/libs/ui/elements/src/lib/avatar/avatar.component.d.ts.map +1 -1
  372. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts +2 -0
  373. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts.map +1 -1
  374. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +1 -1
  375. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  376. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -1
  377. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  378. package/libs/ui/elements/src/lib/{link-card/link-card.component.d.ts → external-link-card/external-link-card.component.d.ts} +5 -5
  379. package/libs/ui/elements/src/lib/external-link-card/external-link-card.component.d.ts.map +1 -0
  380. package/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.d.ts +15 -0
  381. package/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.d.ts.map +1 -0
  382. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts +30 -0
  383. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts.map +1 -0
  384. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts +14 -0
  385. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts.map +1 -0
  386. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts.map +1 -1
  387. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +2 -2
  388. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
  389. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +3 -0
  390. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
  391. package/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.d.ts.map +1 -1
  392. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
  393. package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts +27 -0
  394. package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts.map +1 -0
  395. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts +31 -0
  396. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts.map +1 -0
  397. package/libs/ui/elements/src/lib/user-preview/user-preview.component.d.ts +1 -1
  398. package/libs/ui/elements/src/lib/user-preview/user-preview.component.d.ts.map +1 -1
  399. package/libs/ui/inputs/src/index.d.ts +2 -2
  400. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  401. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts +1 -2
  402. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
  403. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  404. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  405. package/libs/ui/inputs/src/lib/checkbox/checkbox.component.d.ts +1 -1
  406. package/libs/ui/inputs/src/lib/checkbox/checkbox.component.d.ts.map +1 -1
  407. package/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.d.ts +1 -1
  408. package/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.d.ts.map +1 -1
  409. package/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.d.ts +1 -1
  410. package/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.d.ts.map +1 -1
  411. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts.map +1 -1
  412. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts +14 -0
  413. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts.map +1 -0
  414. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts +6 -0
  415. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts.map +1 -0
  416. package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts +17 -0
  417. package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts.map +1 -0
  418. package/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.d.ts +2 -1
  419. package/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.d.ts.map +1 -1
  420. package/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.d.ts +1 -1
  421. package/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.d.ts.map +1 -1
  422. package/libs/ui/layout/src/index.d.ts +2 -1
  423. package/libs/ui/layout/src/index.d.ts.map +1 -1
  424. package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts +10 -3
  425. package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts.map +1 -1
  426. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts +11 -3
  427. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts.map +1 -1
  428. package/libs/ui/layout/src/lib/cell-popin/cell-popin.component.d.ts +28 -0
  429. package/libs/ui/layout/src/lib/cell-popin/cell-popin.component.d.ts.map +1 -0
  430. package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts +15 -8
  431. package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts.map +1 -1
  432. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +5 -1
  433. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -1
  434. package/libs/ui/layout/src/lib/sticky-header/sticky-header.component.d.ts +1 -1
  435. package/libs/ui/layout/src/lib/sticky-header/sticky-header.component.d.ts.map +1 -1
  436. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts +22 -0
  437. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts.map +1 -0
  438. package/libs/ui/map/src/index.d.ts +1 -0
  439. package/libs/ui/map/src/index.d.ts.map +1 -1
  440. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts +6 -2
  441. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts.map +1 -1
  442. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts +15 -0
  443. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts.map +1 -0
  444. package/libs/ui/search/src/index.d.ts +2 -0
  445. package/libs/ui/search/src/index.d.ts.map +1 -1
  446. package/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.d.ts +2 -0
  447. package/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.d.ts.map +1 -1
  448. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts +17 -0
  449. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts.map +1 -0
  450. package/libs/ui/search/src/lib/results-list/results-list.component.d.ts.map +1 -1
  451. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +4 -3
  452. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -1
  453. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +10 -4
  454. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  455. package/libs/ui/search/src/lib/ui-search.module.d.ts +22 -19
  456. package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
  457. package/libs/ui/widgets/src/index.d.ts +0 -1
  458. package/libs/ui/widgets/src/index.d.ts.map +1 -1
  459. package/libs/ui/widgets/src/lib/color-scale/color-scale.component.d.ts +1 -1
  460. package/libs/ui/widgets/src/lib/color-scale/color-scale.component.d.ts.map +1 -1
  461. package/libs/util/app-config/src/lib/app-config.d.ts +0 -1
  462. package/libs/util/app-config/src/lib/app-config.d.ts.map +1 -1
  463. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  464. package/libs/util/app-config/src/lib/model.d.ts +1 -0
  465. package/libs/util/app-config/src/lib/model.d.ts.map +1 -1
  466. package/libs/util/i18n/src/index.d.ts +1 -2
  467. package/libs/util/i18n/src/index.d.ts.map +1 -1
  468. package/libs/util/i18n/src/lib/embedded.translate.loader.d.ts +1 -1
  469. package/libs/util/i18n/src/lib/embedded.translate.loader.d.ts.map +1 -1
  470. package/libs/util/i18n/src/lib/i18n.constants.d.ts +6 -15
  471. package/libs/util/i18n/src/lib/i18n.constants.d.ts.map +1 -1
  472. package/libs/util/i18n/src/lib/i18n.interceptor.d.ts +5 -5
  473. package/libs/util/i18n/src/lib/i18n.interceptor.d.ts.map +1 -1
  474. package/libs/util/i18n/src/lib/i18n.providers.d.ts +4 -0
  475. package/libs/util/i18n/src/lib/i18n.providers.d.ts.map +1 -0
  476. package/libs/util/i18n/src/lib/language-codes.d.ts +15 -19
  477. package/libs/util/i18n/src/lib/language-codes.d.ts.map +1 -1
  478. package/libs/util/shared/src/index.d.ts +2 -1
  479. package/libs/util/shared/src/index.d.ts.map +1 -1
  480. package/libs/util/shared/src/lib/gn-ui-version.d.ts +3 -0
  481. package/libs/util/shared/src/lib/gn-ui-version.d.ts.map +1 -0
  482. package/libs/util/shared/src/lib/image-fallback.directive.d.ts +1 -1
  483. package/libs/util/shared/src/lib/image-fallback.directive.d.ts.map +1 -1
  484. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  485. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  486. package/libs/util/shared/src/lib/links/link-utils.d.ts +14 -7
  487. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  488. package/libs/util/shared/src/lib/record.util.d.ts +3 -0
  489. package/libs/util/shared/src/lib/record.util.d.ts.map +1 -0
  490. package/package.json +4 -4
  491. package/src/libs/api/metadata-converter/src/index.ts +1 -0
  492. package/src/libs/api/metadata-converter/src/lib/base.converter.ts +1 -4
  493. package/src/libs/api/metadata-converter/src/lib/common/distribution.mapper.ts +1 -0
  494. package/src/libs/api/metadata-converter/src/lib/common/resource-types.ts +29 -15
  495. package/src/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.ts +10 -1
  496. package/src/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.ts +2 -2
  497. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.service+eaux-usees.ts +2 -2
  498. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +3 -3
  499. package/src/libs/api/metadata-converter/src/lib/fixtures/metadata-for-i18n.records.ts +4240 -0
  500. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +2 -2
  501. package/src/libs/api/metadata-converter/src/lib/fixtures/wallonie.records.service+napitswallonia.ts +2 -2
  502. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +81 -11
  503. package/src/libs/api/metadata-converter/src/lib/gn4/metadata-url.service.ts +4 -4
  504. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +0 -1
  505. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +11 -5
  506. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +2 -2
  507. package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +14 -8
  508. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +12 -8
  509. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +8 -7
  510. package/src/libs/api/metadata-converter/src/lib/translate-utils.ts +17 -0
  511. package/src/libs/api/repository/src/lib/gn4/auth/auth.service.ts +3 -6
  512. package/src/libs/api/repository/src/lib/gn4/elasticsearch/constant.ts +4 -1
  513. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +17 -17
  514. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +119 -16
  515. package/src/libs/api/repository/src/lib/gn4/gn4.provider.ts +6 -0
  516. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.ts +8 -7
  517. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +13 -6
  518. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +77 -65
  519. package/src/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.ts +3 -0
  520. package/src/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.ts +9 -1
  521. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +27 -11
  522. package/src/libs/common/domain/src/lib/platform.service.interface.ts +2 -1
  523. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +11 -1
  524. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +36 -26
  525. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +16 -2
  526. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +5 -5
  527. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +114 -1
  528. package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +4 -17
  529. package/src/libs/feature/catalog/src/lib/sources/sources.service.ts +7 -3
  530. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.html +12 -9
  531. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +60 -12
  532. package/src/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.ts +2 -2
  533. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +49 -1
  534. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.html +1 -0
  535. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +33 -3
  536. package/src/libs/feature/editor/src/index.ts +1 -3
  537. package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +9 -1
  538. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +23 -12
  539. package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +13 -1
  540. package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +9 -1
  541. package/src/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.ts +3 -4
  542. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +5 -16
  543. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +7 -5
  544. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.html +120 -0
  545. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.ts +331 -0
  546. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +3 -12
  547. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +5 -4
  548. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.ts +3 -4
  549. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.ts +2 -2
  550. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.ts +4 -11
  551. 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
  552. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +2 -17
  553. 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
  554. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.ts +2 -2
  555. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.ts +2 -2
  556. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +2 -2
  557. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +2 -2
  558. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +4 -4
  559. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +2 -2
  560. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +2 -2
  561. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +2 -15
  562. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +2 -2
  563. package/src/libs/feature/editor/src/lib/feature-editor.module.ts +4 -17
  564. package/src/libs/feature/editor/src/lib/models/index.ts +0 -2
  565. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.ts +2 -1
  566. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +8 -3
  567. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +10 -3
  568. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +8 -2
  569. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.ts +8 -2
  570. package/src/libs/feature/map/src/lib/feature-map.module.ts +0 -17
  571. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +3 -8
  572. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +3 -2
  573. package/src/libs/feature/record/src/index.ts +1 -3
  574. package/src/libs/feature/record/src/lib/data-view/data-view.component.html +17 -11
  575. package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +29 -22
  576. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +4 -5
  577. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +1 -1
  578. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.ts +2 -2
  579. package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +6 -7
  580. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.html +2 -2
  581. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +3 -2
  582. package/src/libs/feature/record/src/lib/feature-record.module.ts +4 -13
  583. package/src/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.ts +4 -3
  584. package/src/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.ts +10 -4
  585. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +38 -11
  586. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +140 -21
  587. package/src/libs/feature/record/src/lib/record-meta/record-meta.component.ts +2 -2
  588. package/src/libs/feature/record/src/lib/state/mdview.actions.ts +12 -2
  589. package/src/libs/feature/record/src/lib/state/mdview.effects.ts +27 -3
  590. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +23 -19
  591. package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +14 -2
  592. package/src/libs/feature/record/src/lib/state/mdview.selectors.ts +9 -0
  593. package/src/libs/feature/router/src/lib/default/constants.ts +2 -0
  594. package/src/libs/feature/router/src/lib/default/router.config.ts +2 -0
  595. package/src/libs/feature/router/src/lib/default/router.service.ts +10 -0
  596. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +10 -1
  597. package/src/libs/feature/search/src/index.ts +1 -1
  598. package/src/libs/feature/search/src/lib/constants.ts +3 -1
  599. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.html +2 -7
  600. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +16 -7
  601. package/src/libs/feature/search/src/lib/feature-search.module.ts +17 -23
  602. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +1 -1
  603. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +5 -0
  604. package/src/libs/feature/search/src/lib/record-url.token.ts +10 -1
  605. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.html +17 -0
  606. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.ts +60 -0
  607. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.css +6 -0
  608. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.html +1 -0
  609. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +26 -5
  610. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +1 -0
  611. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +13 -3
  612. package/src/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.ts +10 -4
  613. package/src/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.ts +2 -2
  614. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +4 -5
  615. package/src/libs/feature/search/src/lib/utils/service/fields.ts +103 -3
  616. package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html +1 -1
  617. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.ts +2 -2
  618. package/src/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.ts +2 -2
  619. package/src/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.ts +2 -2
  620. package/src/libs/ui/dataviz/src/index.ts +0 -1
  621. package/src/libs/ui/dataviz/src/lib/chart/chart.component.ts +2 -1
  622. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.html +6 -3
  623. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.ts +7 -6
  624. package/src/libs/ui/dataviz/src/lib/figure/figure.component.html +0 -1
  625. package/src/libs/ui/dataviz/src/lib/figure/figure.component.ts +4 -0
  626. package/src/libs/ui/elements/src/index.ts +6 -3
  627. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +4 -4
  628. package/src/libs/ui/elements/src/lib/api-card/api-card.component.ts +3 -2
  629. package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.html +6 -6
  630. package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.ts +2 -2
  631. package/src/libs/ui/elements/src/lib/avatar/avatar.component.ts +3 -0
  632. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.html +6 -2
  633. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.ts +5 -1
  634. package/src/libs/ui/elements/src/lib/download-item/download-item.component.html +8 -5
  635. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +4 -4
  636. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +42 -11
  637. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +28 -4
  638. package/src/libs/ui/elements/src/lib/error/error.component.ts +2 -2
  639. package/src/libs/ui/elements/src/lib/{link-card/link-card.component.html → external-link-card/external-link-card.component.html} +5 -2
  640. package/src/libs/ui/elements/src/lib/{link-card/link-card.component.ts → external-link-card/external-link-card.component.ts} +9 -13
  641. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.css +4 -0
  642. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.html +13 -0
  643. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.ts +54 -0
  644. package/src/libs/ui/elements/src/lib/image-input/image-input.component.ts +2 -2
  645. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +1 -1
  646. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.html +87 -0
  647. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.scss +115 -0
  648. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.ts +98 -0
  649. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.css +6 -0
  650. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.html +15 -0
  651. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.ts +72 -0
  652. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +1 -4
  653. package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.html +3 -5
  654. package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.ts +2 -2
  655. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +12 -9
  656. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.ts +2 -2
  657. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +9 -0
  658. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +24 -7
  659. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +11 -6
  660. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +20 -21
  661. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +51 -13
  662. package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.ts +6 -2
  663. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +6 -3
  664. package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.html +107 -0
  665. package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.ts +82 -0
  666. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.css +0 -0
  667. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.html +110 -0
  668. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.ts +196 -0
  669. package/src/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.ts +2 -2
  670. package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.ts +4 -0
  671. package/src/libs/ui/inputs/src/index.ts +2 -2
  672. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +3 -3
  673. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +6 -9
  674. package/src/libs/ui/inputs/src/lib/button/button.component.ts +2 -2
  675. package/src/libs/ui/inputs/src/lib/checkbox/checkbox.component.ts +3 -0
  676. package/src/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.html +1 -1
  677. package/src/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.ts +4 -0
  678. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +1 -1
  679. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.ts +27 -0
  680. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +1 -1
  681. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.ts +2 -2
  682. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +3 -4
  683. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.html +23 -0
  684. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.ts +47 -0
  685. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.ts +5 -0
  686. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.css +0 -0
  687. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.html +43 -0
  688. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.ts +83 -0
  689. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.css +0 -1
  690. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.html +11 -8
  691. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.ts +4 -1
  692. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +2 -2
  693. package/src/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.ts +1 -0
  694. package/src/libs/ui/layout/src/index.ts +2 -1
  695. package/src/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.ts +47 -2
  696. package/src/libs/ui/layout/src/lib/block-list/block-list.component.css +22 -0
  697. package/src/libs/ui/layout/src/lib/block-list/block-list.component.html +2 -3
  698. package/src/libs/ui/layout/src/lib/block-list/block-list.component.ts +57 -9
  699. package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +0 -1
  700. package/src/libs/ui/layout/src/lib/carousel/carousel.component.html +1 -1
  701. package/src/libs/ui/layout/src/lib/cell-popin/cell-popin.component.html +40 -0
  702. package/src/libs/ui/layout/src/lib/cell-popin/cell-popin.component.ts +141 -0
  703. package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.html +24 -8
  704. package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.ts +36 -10
  705. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +2 -2
  706. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +4 -7
  707. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +22 -2
  708. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.html +1 -1
  709. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.ts +2 -2
  710. package/src/libs/ui/layout/src/lib/pagination/pagination.component.ts +2 -2
  711. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.html +17 -5
  712. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.ts +3 -3
  713. package/src/libs/ui/layout/src/lib/sticky-header/sticky-header.component.ts +3 -0
  714. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.html +27 -0
  715. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.ts +84 -0
  716. package/src/libs/ui/map/src/index.ts +1 -0
  717. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.html +3 -3
  718. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.ts +27 -3
  719. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +2 -2
  720. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.css +0 -0
  721. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.html +4 -0
  722. 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
  723. package/src/libs/ui/search/src/index.ts +2 -0
  724. package/src/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.html +4 -1
  725. package/src/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.html +9 -81
  726. package/src/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.ts +14 -1
  727. package/src/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.html +1 -1
  728. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.html +25 -0
  729. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.ts +53 -0
  730. package/src/libs/ui/search/src/lib/results-list/results-layout.config.ts +2 -2
  731. package/src/libs/ui/search/src/lib/results-list/results-list.component.html +1 -0
  732. package/src/libs/ui/search/src/lib/results-list/results-list.component.ts +0 -1
  733. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +16 -6
  734. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +18 -15
  735. package/src/libs/ui/search/src/lib/results-table/results-table.component.css +4 -0
  736. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +29 -24
  737. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +49 -17
  738. package/src/libs/ui/search/src/lib/ui-search.module.ts +19 -10
  739. package/src/libs/ui/widgets/src/index.ts +0 -1
  740. package/src/libs/ui/widgets/src/lib/color-scale/color-scale.component.ts +1 -0
  741. package/src/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.html +4 -3
  742. package/src/libs/util/app-config/src/lib/app-config.ts +4 -2
  743. package/src/libs/util/app-config/src/lib/fixtures.ts +2 -0
  744. package/src/libs/util/app-config/src/lib/model.ts +1 -0
  745. package/src/libs/util/i18n/src/index.ts +1 -2
  746. package/src/libs/util/i18n/src/lib/embedded.translate.loader.ts +4 -3
  747. package/src/libs/util/i18n/src/lib/i18n.constants.ts +39 -29
  748. package/src/libs/util/i18n/src/lib/i18n.interceptor.ts +11 -9
  749. package/src/libs/util/i18n/src/lib/i18n.providers.ts +68 -0
  750. package/src/libs/util/i18n/src/lib/language-codes.ts +67 -2
  751. package/src/libs/util/shared/src/index.ts +2 -1
  752. package/src/libs/util/shared/src/lib/gn-ui-version.ts +8 -0
  753. package/src/libs/util/shared/src/lib/image-fallback.directive.ts +1 -0
  754. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +15 -3
  755. package/src/libs/util/shared/src/lib/links/link-utils.ts +33 -12
  756. package/src/libs/util/shared/src/lib/record.util.ts +114 -0
  757. package/tailwind.base.config.js +3 -0
  758. package/tailwind.base.css +24 -26
  759. package/translations/de.json +90 -24
  760. package/translations/en.json +90 -24
  761. package/translations/es.json +89 -23
  762. package/translations/fr.json +91 -25
  763. package/translations/it.json +89 -24
  764. package/translations/nl.json +89 -23
  765. package/translations/pt.json +89 -23
  766. package/translations/sk.json +89 -23
  767. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +0 -79
  768. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.mjs +0 -44
  769. package/esm2022/libs/feature/editor/src/lib/components/wizard/wizard.component.mjs +0 -75
  770. package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +0 -160
  771. package/esm2022/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.mjs +0 -53
  772. package/esm2022/libs/feature/editor/src/lib/models/wizard-field.model.mjs +0 -2
  773. package/esm2022/libs/feature/editor/src/lib/models/wizard-field.type.mjs +0 -8
  774. package/esm2022/libs/feature/editor/src/lib/services/wizard.service.mjs +0 -87
  775. package/esm2022/libs/feature/record/src/lib/gn-ui-version.token.mjs +0 -3
  776. package/esm2022/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.mjs +0 -18
  777. package/esm2022/libs/ui/dataviz/src/lib/ui-dataviz.module.mjs +0 -47
  778. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +0 -60
  779. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +0 -46
  780. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +0 -106
  781. package/esm2022/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.mjs +0 -16
  782. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +0 -161
  783. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +0 -31
  784. package/esm2022/libs/ui/widgets/src/lib/ui-widgets.module.mjs +0 -46
  785. package/esm2022/libs/util/i18n/src/lib/lang.service.mjs +0 -31
  786. package/esm2022/libs/util/i18n/src/lib/util-i18n.module.mjs +0 -37
  787. package/esm2022/libs/util/shared/src/lib/util-shared.module.mjs +0 -18
  788. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +0 -15
  789. 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
  790. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts +0 -14
  791. 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
  792. package/libs/feature/editor/src/lib/components/wizard/wizard.component.d.ts +0 -31
  793. package/libs/feature/editor/src/lib/components/wizard/wizard.component.d.ts.map +0 -1
  794. package/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.d.ts +0 -43
  795. package/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.d.ts.map +0 -1
  796. package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts +0 -17
  797. package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts.map +0 -1
  798. package/libs/feature/editor/src/lib/models/wizard-field.model.d.ts +0 -10
  799. package/libs/feature/editor/src/lib/models/wizard-field.model.d.ts.map +0 -1
  800. package/libs/feature/editor/src/lib/models/wizard-field.type.d.ts +0 -7
  801. package/libs/feature/editor/src/lib/models/wizard-field.type.d.ts.map +0 -1
  802. package/libs/feature/editor/src/lib/services/wizard.service.d.ts +0 -33
  803. package/libs/feature/editor/src/lib/services/wizard.service.d.ts.map +0 -1
  804. package/libs/feature/record/src/lib/gn-ui-version.token.d.ts +0 -3
  805. package/libs/feature/record/src/lib/gn-ui-version.token.d.ts.map +0 -1
  806. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts +0 -9
  807. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts.map +0 -1
  808. package/libs/ui/dataviz/src/lib/ui-dataviz.module.d.ts +0 -11
  809. package/libs/ui/dataviz/src/lib/ui-dataviz.module.d.ts.map +0 -1
  810. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +0 -1
  811. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +0 -12
  812. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +0 -1
  813. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +0 -27
  814. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +0 -1
  815. package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts +0 -8
  816. package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts.map +0 -1
  817. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +0 -34
  818. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +0 -1
  819. package/libs/ui/layout/src/lib/ui-layout.module.d.ts +0 -12
  820. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +0 -1
  821. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts +0 -15
  822. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts.map +0 -1
  823. package/libs/util/i18n/src/lib/lang.service.d.ts +0 -13
  824. package/libs/util/i18n/src/lib/lang.service.d.ts.map +0 -1
  825. package/libs/util/i18n/src/lib/util-i18n.module.d.ts +0 -12
  826. package/libs/util/i18n/src/lib/util-i18n.module.d.ts.map +0 -1
  827. package/libs/util/shared/src/lib/util-shared.module.d.ts +0 -9
  828. package/libs/util/shared/src/lib/util-shared.module.d.ts.map +0 -1
  829. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +0 -1
  830. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.css +0 -5
  831. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.html +0 -22
  832. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.ts +0 -93
  833. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.css +0 -31
  834. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +0 -62
  835. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.ts +0 -206
  836. package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.css +0 -3
  837. package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.html +0 -21
  838. package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.ts +0 -58
  839. package/src/libs/feature/editor/src/lib/models/wizard-field.model.ts +0 -10
  840. package/src/libs/feature/editor/src/lib/models/wizard-field.type.ts +0 -6
  841. package/src/libs/feature/editor/src/lib/services/wizard.service.ts +0 -105
  842. package/src/libs/feature/record/src/lib/gn-ui-version.token.ts +0 -3
  843. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.html +0 -4
  844. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.ts +0 -10
  845. package/src/libs/ui/dataviz/src/lib/ui-dataviz.module.ts +0 -27
  846. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +0 -30
  847. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +0 -48
  848. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +0 -61
  849. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.css +0 -3
  850. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.html +0 -9
  851. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.ts +0 -15
  852. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +0 -96
  853. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +0 -18
  854. package/src/libs/ui/widgets/src/lib/ui-widgets.module.ts +0 -25
  855. package/src/libs/util/i18n/src/lib/lang.service.ts +0 -23
  856. package/src/libs/util/i18n/src/lib/util-i18n.module.ts +0 -26
  857. package/src/libs/util/shared/src/lib/util-shared.module.ts +0 -10
  858. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-map-container/form-field-map-container.component.css → multilingual-panel/multilingual-panel.component.css} +0 -0
  859. /package/src/libs/{ui/elements/src/lib/link-card/link-card.component.css → feature/search/src/lib/results-hits/results-hits.container.component.css} +0 -0
  860. /package/src/libs/ui/elements/src/lib/{related-record-card/related-record-card.component.css → external-link-card/external-link-card.component.css} +0 -0
@@ -55,11 +55,11 @@ export class CarouselComponent {
55
55
  .on('select', this.refreshSteps);
56
56
  }
57
57
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CarouselComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
58
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CarouselComponent, isStandalone: true, selector: "gn-ui-carousel", inputs: { containerClass: "containerClass", stepsContainerClass: "stepsContainerClass" }, outputs: { currentStepChange: "currentStepChange" }, viewQueries: [{ propertyName: "carouselOverflowContainer", first: true, predicate: ["carouselOverflowContainer"], descendants: true }], ngImport: i0, template: "<div #carouselOverflowContainer class=\"w-full\">\n <div class=\"carousel-container flex\" [ngClass]=\"containerClass\">\n <ng-content></ng-content>\n </div>\n</div>\n<gn-ui-pagination-dots\n [containerClass]=\"'absolute ' + stepsContainerClass\"\n [listComponent]=\"this\"\n></gn-ui-pagination-dots>\n", styles: [":host{position:relative;display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: PaginationDotsComponent, selector: "gn-ui-pagination-dots", inputs: ["listComponent", "containerClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
58
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CarouselComponent, isStandalone: true, selector: "gn-ui-carousel", inputs: { containerClass: "containerClass", stepsContainerClass: "stepsContainerClass" }, outputs: { currentStepChange: "currentStepChange" }, viewQueries: [{ propertyName: "carouselOverflowContainer", first: true, predicate: ["carouselOverflowContainer"], descendants: true }], ngImport: i0, template: "<div #carouselOverflowContainer class=\"w-full block\">\n <div class=\"carousel-container flex\" [ngClass]=\"containerClass\">\n <ng-content></ng-content>\n </div>\n</div>\n<gn-ui-pagination-dots\n [containerClass]=\"'absolute ' + stepsContainerClass\"\n [listComponent]=\"this\"\n></gn-ui-pagination-dots>\n", styles: [":host{position:relative}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: PaginationDotsComponent, selector: "gn-ui-pagination-dots", inputs: ["listComponent", "containerClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
59
59
  }
60
60
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CarouselComponent, decorators: [{
61
61
  type: Component,
62
- args: [{ selector: 'gn-ui-carousel', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, PaginationDotsComponent], template: "<div #carouselOverflowContainer class=\"w-full\">\n <div class=\"carousel-container flex\" [ngClass]=\"containerClass\">\n <ng-content></ng-content>\n </div>\n</div>\n<gn-ui-pagination-dots\n [containerClass]=\"'absolute ' + stepsContainerClass\"\n [listComponent]=\"this\"\n></gn-ui-pagination-dots>\n", styles: [":host{position:relative;display:block}\n"] }]
62
+ args: [{ selector: 'gn-ui-carousel', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, PaginationDotsComponent], template: "<div #carouselOverflowContainer class=\"w-full block\">\n <div class=\"carousel-container flex\" [ngClass]=\"containerClass\">\n <ng-content></ng-content>\n </div>\n</div>\n<gn-ui-pagination-dots\n [containerClass]=\"'absolute ' + stepsContainerClass\"\n [listComponent]=\"this\"\n></gn-ui-pagination-dots>\n", styles: [":host{position:relative}\n"] }]
63
63
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { carouselOverflowContainer: [{
64
64
  type: ViewChild,
65
65
  args: ['carouselOverflowContainer']
@@ -70,4 +70,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
70
70
  }], currentStepChange: [{
71
71
  type: Output
72
72
  }] } });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fyb3VzZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjL2xpYi9jYXJvdXNlbC9jYXJvdXNlbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2Nhcm91c2VsL2Nhcm91c2VsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sYUFBb0MsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOENBQThDLENBQUE7OztBQVV0RixNQUFNLE9BQU8saUJBQWlCO0lBa0I1QixnQkFBZ0I7SUFDaEIsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLENBQUMsQ0FBQTtJQUMvQixDQUFDO0lBQ0QsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQTtJQUNuRCxDQUFDO0lBQ0QsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQSxDQUFDLGtCQUFrQjtJQUNoRCxDQUFDO0lBQ0QsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQTtJQUMxQixDQUFDO0lBQ00sUUFBUSxDQUFDLFNBQWlCO1FBQy9CLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQSxDQUFDLGtCQUFrQjtJQUMxRCxDQUFDO0lBQ00sWUFBWTtRQUNqQixJQUFJLElBQUksQ0FBQyxXQUFXO1lBQUUsT0FBTTtRQUM1QixJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFBO0lBQzVCLENBQUM7SUFDTSxZQUFZO1FBQ2pCLElBQUksSUFBSSxDQUFDLFVBQVU7WUFBRSxPQUFNO1FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDNUIsQ0FBQztJQUVELFlBQW9CLGNBQWlDO1FBQWpDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQXhDNUMsbUJBQWMsR0FBRyxFQUFFLENBQUE7UUFDbkIsd0JBQW1CLEdBQUcsMEJBQTBCLENBQUE7UUFDL0Msc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQTtRQUU5QyxVQUFLLEdBQWEsRUFBRSxDQUFBO1FBRXBCLGdCQUFXLEdBQUcsQ0FBQyxDQUFBO1FBRWYsaUJBQVksR0FBRyxHQUFHLEVBQUU7WUFDNUIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxDQUFBO1lBQzNDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1lBQ3JELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBQzdDLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDckMsQ0FBQyxDQUFBO0lBMkJ1RCxDQUFDO0lBRXpELGVBQWU7UUFDYixJQUFJLENBQUMsUUFBUSxHQUFHLGFBQWEsQ0FDM0IsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGFBQWEsRUFDNUM7WUFDRSxRQUFRLEVBQUUsRUFBRTtTQUNiLENBQ0YsQ0FBQTtRQUVELElBQUksQ0FBQyxRQUFRO2FBQ1YsRUFBRSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDO2FBQzdCLEVBQUUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQzthQUMvQixFQUFFLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQTtJQUNwQyxDQUFDOytHQXpEVSxpQkFBaUI7bUdBQWpCLGlCQUFpQixpV0N4QjlCLHVUQVNBLGlHRGFZLFlBQVksNkhBQUUsdUJBQXVCOzs0RkFFcEMsaUJBQWlCO2tCQVI3QixTQUFTOytCQUNFLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSx1QkFBdUIsQ0FBQztzRkFHUix5QkFBeUI7c0JBQWhFLFNBQVM7dUJBQUMsMkJBQTJCO2dCQUU3QixjQUFjO3NCQUF0QixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDSSxpQkFBaUI7c0JBQTFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgRW1ibGFDYXJvdXNlbCwgeyBFbWJsYUNhcm91c2VsVHlwZSB9IGZyb20gJ2VtYmxhLWNhcm91c2VsJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgUGFnaW5hYmxlIH0gZnJvbSAnLi4vcGFnaW5hYmxlLmludGVyZmFjZSdcbmltcG9ydCB7IFBhZ2luYXRpb25Eb3RzQ29tcG9uZW50IH0gZnJvbSAnLi4vcGFnaW5hdGlvbi1kb3RzL3BhZ2luYXRpb24tZG90cy5jb21wb25lbnQnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWNhcm91c2VsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Nhcm91c2VsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2Fyb3VzZWwuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUGFnaW5hdGlvbkRvdHNDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBDYXJvdXNlbENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIFBhZ2luYWJsZSB7XG4gIEBWaWV3Q2hpbGQoJ2Nhcm91c2VsT3ZlcmZsb3dDb250YWluZXInKSBjYXJvdXNlbE92ZXJmbG93Q29udGFpbmVyOiBFbGVtZW50UmVmXG5cbiAgQElucHV0KCkgY29udGFpbmVyQ2xhc3MgPSAnJ1xuICBASW5wdXQoKSBzdGVwc0NvbnRhaW5lckNsYXNzID0gJ3ctZnVsbCBib3R0b20tMCB0b3AtYXV0bydcbiAgQE91dHB1dCgpIGN1cnJlbnRTdGVwQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KClcblxuICBwcm90ZWN0ZWQgc3RlcHM6IG51bWJlcltdID0gW11cbiAgcHJvdGVjdGVkIGVtYmxhQXBpOiBFbWJsYUNhcm91c2VsVHlwZVxuICBwcm90ZWN0ZWQgY3VycmVudFN0ZXAgPSAwXG5cbiAgcHJvdGVjdGVkIHJlZnJlc2hTdGVwcyA9ICgpID0+IHtcbiAgICB0aGlzLnN0ZXBzID0gdGhpcy5lbWJsYUFwaS5zY3JvbGxTbmFwTGlzdCgpXG4gICAgdGhpcy5jdXJyZW50U3RlcCA9IHRoaXMuZW1ibGFBcGkuc2VsZWN0ZWRTY3JvbGxTbmFwKClcbiAgICB0aGlzLmN1cnJlbnRTdGVwQ2hhbmdlLmVtaXQodGhpcy5jdXJyZW50U3RlcClcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKVxuICB9XG5cbiAgLy8gUGFnaW5hYmxlIEFQSVxuICBnZXQgaXNGaXJzdFBhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFN0ZXAgPT09IDBcbiAgfVxuICBnZXQgaXNMYXN0UGFnZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50U3RlcCA9PT0gdGhpcy5zdGVwcy5sZW5ndGggLSAxXG4gIH1cbiAgZ2V0IGN1cnJlbnRQYWdlKCkge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRTdGVwICsgMSAvLyB0aGlzIGlzIDEtYmFzZWRcbiAgfVxuICBnZXQgcGFnZXNDb3VudCgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGVwcy5sZW5ndGhcbiAgfVxuICBwdWJsaWMgZ29Ub1BhZ2Uoc3RlcEluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLmVtYmxhQXBpLnNjcm9sbFRvKHN0ZXBJbmRleCAtIDEpIC8vIHRoaXMgaXMgMC1iYXNlZFxuICB9XG4gIHB1YmxpYyBnb1RvUHJldlBhZ2UoKSB7XG4gICAgaWYgKHRoaXMuaXNGaXJzdFBhZ2UpIHJldHVyblxuICAgIHRoaXMuZW1ibGFBcGkuc2Nyb2xsUHJldigpXG4gIH1cbiAgcHVibGljIGdvVG9OZXh0UGFnZSgpIHtcbiAgICBpZiAodGhpcy5pc0xhc3RQYWdlKSByZXR1cm5cbiAgICB0aGlzLmVtYmxhQXBpLnNjcm9sbE5leHQoKVxuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuZW1ibGFBcGkgPSBFbWJsYUNhcm91c2VsKFxuICAgICAgdGhpcy5jYXJvdXNlbE92ZXJmbG93Q29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICB7XG4gICAgICAgIGR1cmF0aW9uOiAxNSxcbiAgICAgIH1cbiAgICApXG5cbiAgICB0aGlzLmVtYmxhQXBpXG4gICAgICAub24oJ2luaXQnLCB0aGlzLnJlZnJlc2hTdGVwcylcbiAgICAgIC5vbigncmVJbml0JywgdGhpcy5yZWZyZXNoU3RlcHMpXG4gICAgICAub24oJ3NlbGVjdCcsIHRoaXMucmVmcmVzaFN0ZXBzKVxuICB9XG59XG4iLCI8ZGl2ICNjYXJvdXNlbE92ZXJmbG93Q29udGFpbmVyIGNsYXNzPVwidy1mdWxsXCI+XG4gIDxkaXYgY2xhc3M9XCJjYXJvdXNlbC1jb250YWluZXIgZmxleFwiIFtuZ0NsYXNzXT1cImNvbnRhaW5lckNsYXNzXCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvZGl2PlxuPGduLXVpLXBhZ2luYXRpb24tZG90c1xuICBbY29udGFpbmVyQ2xhc3NdPVwiJ2Fic29sdXRlICcgKyBzdGVwc0NvbnRhaW5lckNsYXNzXCJcbiAgW2xpc3RDb21wb25lbnRdPVwidGhpc1wiXG4+PC9nbi11aS1wYWdpbmF0aW9uLWRvdHM+XG4iXX0=
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fyb3VzZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjL2xpYi9jYXJvdXNlbC9jYXJvdXNlbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2Nhcm91c2VsL2Nhcm91c2VsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sYUFBb0MsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOENBQThDLENBQUE7OztBQVV0RixNQUFNLE9BQU8saUJBQWlCO0lBa0I1QixnQkFBZ0I7SUFDaEIsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLENBQUMsQ0FBQTtJQUMvQixDQUFDO0lBQ0QsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQTtJQUNuRCxDQUFDO0lBQ0QsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQSxDQUFDLGtCQUFrQjtJQUNoRCxDQUFDO0lBQ0QsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQTtJQUMxQixDQUFDO0lBQ00sUUFBUSxDQUFDLFNBQWlCO1FBQy9CLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQSxDQUFDLGtCQUFrQjtJQUMxRCxDQUFDO0lBQ00sWUFBWTtRQUNqQixJQUFJLElBQUksQ0FBQyxXQUFXO1lBQUUsT0FBTTtRQUM1QixJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFBO0lBQzVCLENBQUM7SUFDTSxZQUFZO1FBQ2pCLElBQUksSUFBSSxDQUFDLFVBQVU7WUFBRSxPQUFNO1FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDNUIsQ0FBQztJQUVELFlBQW9CLGNBQWlDO1FBQWpDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQXhDNUMsbUJBQWMsR0FBRyxFQUFFLENBQUE7UUFDbkIsd0JBQW1CLEdBQUcsMEJBQTBCLENBQUE7UUFDL0Msc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQTtRQUU5QyxVQUFLLEdBQWEsRUFBRSxDQUFBO1FBRXBCLGdCQUFXLEdBQUcsQ0FBQyxDQUFBO1FBRWYsaUJBQVksR0FBRyxHQUFHLEVBQUU7WUFDNUIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxDQUFBO1lBQzNDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1lBQ3JELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBQzdDLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDckMsQ0FBQyxDQUFBO0lBMkJ1RCxDQUFDO0lBRXpELGVBQWU7UUFDYixJQUFJLENBQUMsUUFBUSxHQUFHLGFBQWEsQ0FDM0IsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGFBQWEsRUFDNUM7WUFDRSxRQUFRLEVBQUUsRUFBRTtTQUNiLENBQ0YsQ0FBQTtRQUVELElBQUksQ0FBQyxRQUFRO2FBQ1YsRUFBRSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDO2FBQzdCLEVBQUUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQzthQUMvQixFQUFFLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQTtJQUNwQyxDQUFDOytHQXpEVSxpQkFBaUI7bUdBQWpCLGlCQUFpQixpV0N4QjlCLDZUQVNBLG1GRGFZLFlBQVksNkhBQUUsdUJBQXVCOzs0RkFFcEMsaUJBQWlCO2tCQVI3QixTQUFTOytCQUNFLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSx1QkFBdUIsQ0FBQztzRkFHUix5QkFBeUI7c0JBQWhFLFNBQVM7dUJBQUMsMkJBQTJCO2dCQUU3QixjQUFjO3NCQUF0QixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDSSxpQkFBaUI7c0JBQTFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgRW1ibGFDYXJvdXNlbCwgeyBFbWJsYUNhcm91c2VsVHlwZSB9IGZyb20gJ2VtYmxhLWNhcm91c2VsJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgUGFnaW5hYmxlIH0gZnJvbSAnLi4vcGFnaW5hYmxlLmludGVyZmFjZSdcbmltcG9ydCB7IFBhZ2luYXRpb25Eb3RzQ29tcG9uZW50IH0gZnJvbSAnLi4vcGFnaW5hdGlvbi1kb3RzL3BhZ2luYXRpb24tZG90cy5jb21wb25lbnQnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWNhcm91c2VsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Nhcm91c2VsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2Fyb3VzZWwuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUGFnaW5hdGlvbkRvdHNDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBDYXJvdXNlbENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIFBhZ2luYWJsZSB7XG4gIEBWaWV3Q2hpbGQoJ2Nhcm91c2VsT3ZlcmZsb3dDb250YWluZXInKSBjYXJvdXNlbE92ZXJmbG93Q29udGFpbmVyOiBFbGVtZW50UmVmXG5cbiAgQElucHV0KCkgY29udGFpbmVyQ2xhc3MgPSAnJ1xuICBASW5wdXQoKSBzdGVwc0NvbnRhaW5lckNsYXNzID0gJ3ctZnVsbCBib3R0b20tMCB0b3AtYXV0bydcbiAgQE91dHB1dCgpIGN1cnJlbnRTdGVwQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KClcblxuICBwcm90ZWN0ZWQgc3RlcHM6IG51bWJlcltdID0gW11cbiAgcHJvdGVjdGVkIGVtYmxhQXBpOiBFbWJsYUNhcm91c2VsVHlwZVxuICBwcm90ZWN0ZWQgY3VycmVudFN0ZXAgPSAwXG5cbiAgcHJvdGVjdGVkIHJlZnJlc2hTdGVwcyA9ICgpID0+IHtcbiAgICB0aGlzLnN0ZXBzID0gdGhpcy5lbWJsYUFwaS5zY3JvbGxTbmFwTGlzdCgpXG4gICAgdGhpcy5jdXJyZW50U3RlcCA9IHRoaXMuZW1ibGFBcGkuc2VsZWN0ZWRTY3JvbGxTbmFwKClcbiAgICB0aGlzLmN1cnJlbnRTdGVwQ2hhbmdlLmVtaXQodGhpcy5jdXJyZW50U3RlcClcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKVxuICB9XG5cbiAgLy8gUGFnaW5hYmxlIEFQSVxuICBnZXQgaXNGaXJzdFBhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFN0ZXAgPT09IDBcbiAgfVxuICBnZXQgaXNMYXN0UGFnZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50U3RlcCA9PT0gdGhpcy5zdGVwcy5sZW5ndGggLSAxXG4gIH1cbiAgZ2V0IGN1cnJlbnRQYWdlKCkge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRTdGVwICsgMSAvLyB0aGlzIGlzIDEtYmFzZWRcbiAgfVxuICBnZXQgcGFnZXNDb3VudCgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGVwcy5sZW5ndGhcbiAgfVxuICBwdWJsaWMgZ29Ub1BhZ2Uoc3RlcEluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLmVtYmxhQXBpLnNjcm9sbFRvKHN0ZXBJbmRleCAtIDEpIC8vIHRoaXMgaXMgMC1iYXNlZFxuICB9XG4gIHB1YmxpYyBnb1RvUHJldlBhZ2UoKSB7XG4gICAgaWYgKHRoaXMuaXNGaXJzdFBhZ2UpIHJldHVyblxuICAgIHRoaXMuZW1ibGFBcGkuc2Nyb2xsUHJldigpXG4gIH1cbiAgcHVibGljIGdvVG9OZXh0UGFnZSgpIHtcbiAgICBpZiAodGhpcy5pc0xhc3RQYWdlKSByZXR1cm5cbiAgICB0aGlzLmVtYmxhQXBpLnNjcm9sbE5leHQoKVxuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuZW1ibGFBcGkgPSBFbWJsYUNhcm91c2VsKFxuICAgICAgdGhpcy5jYXJvdXNlbE92ZXJmbG93Q29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICB7XG4gICAgICAgIGR1cmF0aW9uOiAxNSxcbiAgICAgIH1cbiAgICApXG5cbiAgICB0aGlzLmVtYmxhQXBpXG4gICAgICAub24oJ2luaXQnLCB0aGlzLnJlZnJlc2hTdGVwcylcbiAgICAgIC5vbigncmVJbml0JywgdGhpcy5yZWZyZXNoU3RlcHMpXG4gICAgICAub24oJ3NlbGVjdCcsIHRoaXMucmVmcmVzaFN0ZXBzKVxuICB9XG59XG4iLCI8ZGl2ICNjYXJvdXNlbE92ZXJmbG93Q29udGFpbmVyIGNsYXNzPVwidy1mdWxsIGJsb2NrXCI+XG4gIDxkaXYgY2xhc3M9XCJjYXJvdXNlbC1jb250YWluZXIgZmxleFwiIFtuZ0NsYXNzXT1cImNvbnRhaW5lckNsYXNzXCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvZGl2PlxuPGduLXVpLXBhZ2luYXRpb24tZG90c1xuICBbY29udGFpbmVyQ2xhc3NdPVwiJ2Fic29sdXRlICcgKyBzdGVwc0NvbnRhaW5lckNsYXNzXCJcbiAgW2xpc3RDb21wb25lbnRdPVwidGhpc1wiXG4+PC9nbi11aS1wYWdpbmF0aW9uLWRvdHM+XG4iXX0=
@@ -0,0 +1,110 @@
1
+ import { Component, Input, ElementRef, ViewChild, ChangeDetectorRef, } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { provideIcons, NgIconComponent } from '@ng-icons/core';
4
+ import { iconoirReduce } from '@ng-icons/iconoir';
5
+ import { MatButtonModule } from '@angular/material/button';
6
+ import { OverlayModule, ScrollDispatcher, CdkScrollable, } from '@angular/cdk/overlay';
7
+ import { ButtonComponent } from '../../../../../../libs/ui/inputs/src';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@angular/cdk/overlay";
10
+ import * as i2 from "@angular/common";
11
+ export class CellPopinComponent {
12
+ set activePopin(active) {
13
+ this._activePopin = !!active;
14
+ this.updateIntersectionObserver();
15
+ }
16
+ get activePopin() {
17
+ return this._activePopin;
18
+ }
19
+ constructor(scrollDispatcher, cdr) {
20
+ this.scrollDispatcher = scrollDispatcher;
21
+ this.cdr = cdr;
22
+ this.extraClass = '';
23
+ this.isOpen = false;
24
+ this.isVisible = true;
25
+ this.overlayPositions = [
26
+ {
27
+ originX: 'end',
28
+ originY: 'top',
29
+ overlayX: 'end',
30
+ overlayY: 'top',
31
+ },
32
+ {
33
+ originX: 'start',
34
+ originY: 'top',
35
+ overlayX: 'start',
36
+ overlayY: 'top',
37
+ },
38
+ ];
39
+ this.firstCheck = true;
40
+ this._activePopin = true;
41
+ }
42
+ ngAfterViewInit() {
43
+ if (!this.activePopin) {
44
+ return;
45
+ }
46
+ if (this.cdkScrollContainer) {
47
+ this.scrollDispatcher.register(this.cdkScrollContainer);
48
+ }
49
+ this.updateIntersectionObserver();
50
+ }
51
+ ngOnDestroy() {
52
+ this.intersectionObserver?.disconnect();
53
+ this.scrollDispatcher.deregister(this.cdkScrollContainer);
54
+ }
55
+ updateIntersectionObserver() {
56
+ if (!this.scrollContainer || !this.anchorRef) {
57
+ return;
58
+ }
59
+ if (this.intersectionObserver) {
60
+ this.intersectionObserver?.disconnect();
61
+ }
62
+ this.intersectionObserver = new IntersectionObserver(([entry]) => {
63
+ const visible = entry.intersectionRatio >= 1;
64
+ // Ignore first visibility if first time opening it
65
+ if (this.firstCheck && !visible) {
66
+ this.firstCheck = false;
67
+ return;
68
+ }
69
+ this.firstCheck = false;
70
+ if (this.isVisible !== visible) {
71
+ this.isVisible = visible;
72
+ this.cdr.detectChanges();
73
+ }
74
+ }, {
75
+ root: this.scrollContainer.nativeElement,
76
+ threshold: 1.0,
77
+ });
78
+ this.intersectionObserver.observe(this.anchorRef.nativeElement);
79
+ }
80
+ openOverlay() {
81
+ this.isOpen = true;
82
+ }
83
+ closeOverlay() {
84
+ this.isOpen = false;
85
+ }
86
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CellPopinComponent, deps: [{ token: i1.ScrollDispatcher }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
87
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CellPopinComponent, isStandalone: true, selector: "gn-ui-cell-popin", inputs: { extraClass: "extraClass", cdkScrollContainer: "cdkScrollContainer", scrollContainer: "scrollContainer", activePopin: "activePopin" }, providers: [provideIcons({ iconoirReduce })], viewQueries: [{ propertyName: "anchorRef", first: true, predicate: ["anchorRef"], descendants: true }], ngImport: i0, template: "<div\n class=\"h-full flex items-center justify-center\"\n cdkOverlayOrigin\n #anchorRef\n #trigger=\"cdkOverlayOrigin\"\n [class]=\"extraClass\"\n data-cy=\"cell-popin\"\n>\n <ng-content select=\"[cellContent]\"></ng-content>\n <ng-template\n *ngIf=\"activePopin\"\n cdkConnectedOverlay\n [cdkConnectedOverlayPush]=\"false\"\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"isOpen\"\n [cdkConnectedOverlayPositions]=\"overlayPositions\"\n [cdkConnectedOverlayWidth]=\"'auto'\"\n [cdkConnectedOverlayFlexibleDimensions]=\"true\"\n [cdkConnectedOverlayGrowAfterOpen]=\"true\"\n (detach)=\"closeOverlay()\"\n >\n <div\n *ngIf=\"activePopin && isVisible\"\n class=\"bg-white shadow-lg border border-gray-300 relative\"\n data-cy=\"cell-popin-content\"\n >\n <ng-content select=\"[popinContent]\"></ng-content>\n <gn-ui-button\n data-cy=\"cell-popin-close\"\n [style.--gn-ui-button-background]=\"'bg-transparent'\"\n class=\"absolute top-2 right-2\"\n type=\"light\"\n (buttonClick)=\"closeOverlay()\"\n extraClass=\"w-10 h-8 px-1\"\n >\n <ng-icon name=\"iconoirReduce\" size=\"24\"></ng-icon>\n </gn-ui-button>\n </div>\n </ng-template>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i1.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }] }); }
88
+ }
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CellPopinComponent, decorators: [{
90
+ type: Component,
91
+ args: [{ selector: 'gn-ui-cell-popin', standalone: true, imports: [
92
+ CommonModule,
93
+ MatButtonModule,
94
+ OverlayModule,
95
+ ButtonComponent,
96
+ NgIconComponent,
97
+ ], providers: [provideIcons({ iconoirReduce })], template: "<div\n class=\"h-full flex items-center justify-center\"\n cdkOverlayOrigin\n #anchorRef\n #trigger=\"cdkOverlayOrigin\"\n [class]=\"extraClass\"\n data-cy=\"cell-popin\"\n>\n <ng-content select=\"[cellContent]\"></ng-content>\n <ng-template\n *ngIf=\"activePopin\"\n cdkConnectedOverlay\n [cdkConnectedOverlayPush]=\"false\"\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"isOpen\"\n [cdkConnectedOverlayPositions]=\"overlayPositions\"\n [cdkConnectedOverlayWidth]=\"'auto'\"\n [cdkConnectedOverlayFlexibleDimensions]=\"true\"\n [cdkConnectedOverlayGrowAfterOpen]=\"true\"\n (detach)=\"closeOverlay()\"\n >\n <div\n *ngIf=\"activePopin && isVisible\"\n class=\"bg-white shadow-lg border border-gray-300 relative\"\n data-cy=\"cell-popin-content\"\n >\n <ng-content select=\"[popinContent]\"></ng-content>\n <gn-ui-button\n data-cy=\"cell-popin-close\"\n [style.--gn-ui-button-background]=\"'bg-transparent'\"\n class=\"absolute top-2 right-2\"\n type=\"light\"\n (buttonClick)=\"closeOverlay()\"\n extraClass=\"w-10 h-8 px-1\"\n >\n <ng-icon name=\"iconoirReduce\" size=\"24\"></ng-icon>\n </gn-ui-button>\n </div>\n </ng-template>\n</div>\n" }]
98
+ }], ctorParameters: () => [{ type: i1.ScrollDispatcher }, { type: i0.ChangeDetectorRef }], propDecorators: { extraClass: [{
99
+ type: Input
100
+ }], cdkScrollContainer: [{
101
+ type: Input
102
+ }], scrollContainer: [{
103
+ type: Input
104
+ }], anchorRef: [{
105
+ type: ViewChild,
106
+ args: ['anchorRef']
107
+ }], activePopin: [{
108
+ type: Input
109
+ }] } });
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1wb3Bpbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2NlbGwtcG9waW4vY2VsbC1wb3Bpbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2NlbGwtcG9waW4vY2VsbC1wb3Bpbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULEtBQUssRUFFTCxVQUFVLEVBRVYsU0FBUyxFQUVULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQzFELE9BQU8sRUFDTCxhQUFhLEVBRWIsZ0JBQWdCLEVBQ2hCLGFBQWEsR0FHZCxNQUFNLHNCQUFzQixDQUFBO0FBQzdCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTs7OztBQWV0RSxNQUFNLE9BQU8sa0JBQWtCO0lBNkI3QixJQUNJLFdBQVcsQ0FBQyxNQUEyQjtRQUN6QyxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUE7UUFDNUIsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUE7SUFDbkMsQ0FBQztJQUNELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQTtJQUMxQixDQUFDO0lBRUQsWUFDVSxnQkFBa0MsRUFDbEMsR0FBc0I7UUFEdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQXZDdkIsZUFBVSxHQUFHLEVBQUUsQ0FBQTtRQU1kLFdBQU0sR0FBRyxLQUFLLENBQUE7UUFDZCxjQUFTLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLHFCQUFnQixHQUF3QjtZQUNoRDtnQkFDRSxPQUFPLEVBQUUsS0FBSztnQkFDZCxPQUFPLEVBQUUsS0FBSztnQkFDZCxRQUFRLEVBQUUsS0FBSztnQkFDZixRQUFRLEVBQUUsS0FBSzthQUNoQjtZQUNEO2dCQUNFLE9BQU8sRUFBRSxPQUFPO2dCQUNoQixPQUFPLEVBQUUsS0FBSztnQkFDZCxRQUFRLEVBQUUsT0FBTztnQkFDakIsUUFBUSxFQUFFLEtBQUs7YUFDaEI7U0FDRixDQUFBO1FBRU8sZUFBVSxHQUFHLElBQUksQ0FBQTtRQUdqQixpQkFBWSxHQUFHLElBQUksQ0FBQTtJQWN4QixDQUFDO0lBRUosZUFBZTtRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdEIsT0FBTTtRQUNSLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUE7UUFDekQsQ0FBQztRQUVELElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFBO0lBQ25DLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLG9CQUFvQixFQUFFLFVBQVUsRUFBRSxDQUFBO1FBQ3ZDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUE7SUFDM0QsQ0FBQztJQUVELDBCQUEwQjtRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM3QyxPQUFNO1FBQ1IsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLFVBQVUsRUFBRSxDQUFBO1FBQ3pDLENBQUM7UUFFRCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxvQkFBb0IsQ0FDbEQsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUU7WUFDVixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsaUJBQWlCLElBQUksQ0FBQyxDQUFBO1lBRTVDLG1EQUFtRDtZQUNuRCxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUE7Z0JBQ3ZCLE9BQU07WUFDUixDQUFDO1lBRUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUE7WUFFdkIsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUMvQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQTtnQkFDeEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtZQUMxQixDQUFDO1FBQ0gsQ0FBQyxFQUNEO1lBQ0UsSUFBSSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYTtZQUN4QyxTQUFTLEVBQUUsR0FBRztTQUNmLENBQ0YsQ0FBQTtRQUVELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQTtJQUNqRSxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFBO0lBQ3BCLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUE7SUFDckIsQ0FBQzsrR0FyR1Usa0JBQWtCO21HQUFsQixrQkFBa0IsK01BSmxCLENBQUMsWUFBWSxDQUFDLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQyxrSUNsQzlDLHF4Q0F3Q0EsMkNEWkksWUFBWSxrSUFDWixlQUFlLDhCQUNmLGFBQWEsMnJDQUNiLGVBQWUsK0hBQ2YsZUFBZTs7NEZBTU4sa0JBQWtCO2tCQWQ5QixTQUFTOytCQUNFLGtCQUFrQixjQUNoQixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixlQUFlO3FCQUNoQixhQUNVLENBQUMsWUFBWSxDQUFDLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQztxSEFLbkMsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFFa0IsU0FBUztzQkFBaEMsU0FBUzt1QkFBQyxXQUFXO2dCQXlCbEIsV0FBVztzQkFEZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBFbGVtZW50UmVmLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBJbmplY3RvcixcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBwcm92aWRlSWNvbnMsIE5nSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHsgaWNvbm9pclJlZHVjZSB9IGZyb20gJ0BuZy1pY29ucy9pY29ub2lyJ1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJ1xuaW1wb3J0IHtcbiAgT3ZlcmxheU1vZHVsZSxcbiAgQ29ubmVjdGVkUG9zaXRpb24sXG4gIFNjcm9sbERpc3BhdGNoZXIsXG4gIENka1Njcm9sbGFibGUsXG4gIENka0Nvbm5lY3RlZE92ZXJsYXksXG4gIE92ZXJsYXlDb250YWluZXIsXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5J1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktY2VsbC1wb3BpbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE92ZXJsYXlNb2R1bGUsXG4gICAgQnV0dG9uQ29tcG9uZW50LFxuICAgIE5nSWNvbkNvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbcHJvdmlkZUljb25zKHsgaWNvbm9pclJlZHVjZSB9KV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jZWxsLXBvcGluLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2VsbFBvcGluQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgZXh0cmFDbGFzcyA9ICcnXG4gIEBJbnB1dCgpIGNka1Njcm9sbENvbnRhaW5lciE6IENka1Njcm9sbGFibGVcbiAgQElucHV0KCkgc2Nyb2xsQ29udGFpbmVyITogRWxlbWVudFJlZlxuXG4gIEBWaWV3Q2hpbGQoJ2FuY2hvclJlZicpIGFuY2hvclJlZiE6IEVsZW1lbnRSZWZcblxuICBwcm90ZWN0ZWQgaXNPcGVuID0gZmFsc2VcbiAgcHJvdGVjdGVkIGlzVmlzaWJsZSA9IHRydWVcbiAgcHJvdGVjdGVkIG92ZXJsYXlQb3NpdGlvbnM6IENvbm5lY3RlZFBvc2l0aW9uW10gPSBbXG4gICAge1xuICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgIG92ZXJsYXlYOiAnZW5kJyxcbiAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgIH0sXG4gIF1cblxuICBwcml2YXRlIGZpcnN0Q2hlY2sgPSB0cnVlXG4gIHByaXZhdGUgaW50ZXJzZWN0aW9uT2JzZXJ2ZXI6IEludGVyc2VjdGlvbk9ic2VydmVyXG5cbiAgcHJpdmF0ZSBfYWN0aXZlUG9waW4gPSB0cnVlXG5cbiAgQElucHV0KClcbiAgc2V0IGFjdGl2ZVBvcGluKGFjdGl2ZTogYm9vbGVhbiB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuX2FjdGl2ZVBvcGluID0gISFhY3RpdmVcbiAgICB0aGlzLnVwZGF0ZUludGVyc2VjdGlvbk9ic2VydmVyKClcbiAgfVxuICBnZXQgYWN0aXZlUG9waW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZVBvcGluXG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNjcm9sbERpc3BhdGNoZXI6IFNjcm9sbERpc3BhdGNoZXIsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKCF0aGlzLmFjdGl2ZVBvcGluKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAodGhpcy5jZGtTY3JvbGxDb250YWluZXIpIHtcbiAgICAgIHRoaXMuc2Nyb2xsRGlzcGF0Y2hlci5yZWdpc3Rlcih0aGlzLmNka1Njcm9sbENvbnRhaW5lcilcbiAgICB9XG5cbiAgICB0aGlzLnVwZGF0ZUludGVyc2VjdGlvbk9ic2VydmVyKClcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuaW50ZXJzZWN0aW9uT2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKVxuICAgIHRoaXMuc2Nyb2xsRGlzcGF0Y2hlci5kZXJlZ2lzdGVyKHRoaXMuY2RrU2Nyb2xsQ29udGFpbmVyKVxuICB9XG5cbiAgdXBkYXRlSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoKSB7XG4gICAgaWYgKCF0aGlzLnNjcm9sbENvbnRhaW5lciB8fCAhdGhpcy5hbmNob3JSZWYpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmICh0aGlzLmludGVyc2VjdGlvbk9ic2VydmVyKSB7XG4gICAgICB0aGlzLmludGVyc2VjdGlvbk9ic2VydmVyPy5kaXNjb25uZWN0KClcbiAgICB9XG5cbiAgICB0aGlzLmludGVyc2VjdGlvbk9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKFxuICAgICAgKFtlbnRyeV0pID0+IHtcbiAgICAgICAgY29uc3QgdmlzaWJsZSA9IGVudHJ5LmludGVyc2VjdGlvblJhdGlvID49IDFcblxuICAgICAgICAvLyBJZ25vcmUgZmlyc3QgdmlzaWJpbGl0eSBpZiBmaXJzdCB0aW1lIG9wZW5pbmcgaXRcbiAgICAgICAgaWYgKHRoaXMuZmlyc3RDaGVjayAmJiAhdmlzaWJsZSkge1xuICAgICAgICAgIHRoaXMuZmlyc3RDaGVjayA9IGZhbHNlXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmZpcnN0Q2hlY2sgPSBmYWxzZVxuXG4gICAgICAgIGlmICh0aGlzLmlzVmlzaWJsZSAhPT0gdmlzaWJsZSkge1xuICAgICAgICAgIHRoaXMuaXNWaXNpYmxlID0gdmlzaWJsZVxuICAgICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICByb290OiB0aGlzLnNjcm9sbENvbnRhaW5lci5uYXRpdmVFbGVtZW50LFxuICAgICAgICB0aHJlc2hvbGQ6IDEuMCxcbiAgICAgIH1cbiAgICApXG5cbiAgICB0aGlzLmludGVyc2VjdGlvbk9ic2VydmVyLm9ic2VydmUodGhpcy5hbmNob3JSZWYubmF0aXZlRWxlbWVudClcbiAgfVxuXG4gIG9wZW5PdmVybGF5KCkge1xuICAgIHRoaXMuaXNPcGVuID0gdHJ1ZVxuICB9XG5cbiAgY2xvc2VPdmVybGF5KCkge1xuICAgIHRoaXMuaXNPcGVuID0gZmFsc2VcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImgtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlclwiXG4gIGNka092ZXJsYXlPcmlnaW5cbiAgI2FuY2hvclJlZlxuICAjdHJpZ2dlcj1cImNka092ZXJsYXlPcmlnaW5cIlxuICBbY2xhc3NdPVwiZXh0cmFDbGFzc1wiXG4gIGRhdGEtY3k9XCJjZWxsLXBvcGluXCJcbj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2NlbGxDb250ZW50XVwiPjwvbmctY29udGVudD5cbiAgPG5nLXRlbXBsYXRlXG4gICAgKm5nSWY9XCJhY3RpdmVQb3BpblwiXG4gICAgY2RrQ29ubmVjdGVkT3ZlcmxheVxuICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5UHVzaF09XCJmYWxzZVwiXG4gICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlPcmlnaW5dPVwidHJpZ2dlclwiXG4gICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlPcGVuXT1cImlzT3BlblwiXG4gICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlQb3NpdGlvbnNdPVwib3ZlcmxheVBvc2l0aW9uc1wiXG4gICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlXaWR0aF09XCInYXV0bydcIlxuICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5RmxleGlibGVEaW1lbnNpb25zXT1cInRydWVcIlxuICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5R3Jvd0FmdGVyT3Blbl09XCJ0cnVlXCJcbiAgICAoZGV0YWNoKT1cImNsb3NlT3ZlcmxheSgpXCJcbiAgPlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiYWN0aXZlUG9waW4gJiYgaXNWaXNpYmxlXCJcbiAgICAgIGNsYXNzPVwiYmctd2hpdGUgc2hhZG93LWxnIGJvcmRlciBib3JkZXItZ3JheS0zMDAgcmVsYXRpdmVcIlxuICAgICAgZGF0YS1jeT1cImNlbGwtcG9waW4tY29udGVudFwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3BvcGluQ29udGVudF1cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8Z24tdWktYnV0dG9uXG4gICAgICAgIGRhdGEtY3k9XCJjZWxsLXBvcGluLWNsb3NlXCJcbiAgICAgICAgW3N0eWxlLi0tZ24tdWktYnV0dG9uLWJhY2tncm91bmRdPVwiJ2JnLXRyYW5zcGFyZW50J1wiXG4gICAgICAgIGNsYXNzPVwiYWJzb2x1dGUgdG9wLTIgcmlnaHQtMlwiXG4gICAgICAgIHR5cGU9XCJsaWdodFwiXG4gICAgICAgIChidXR0b25DbGljayk9XCJjbG9zZU92ZXJsYXkoKVwiXG4gICAgICAgIGV4dHJhQ2xhc3M9XCJ3LTEwIGgtOCBweC0xXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWljb24gbmFtZT1cImljb25vaXJSZWR1Y2VcIiBzaXplPVwiMjRcIj48L25nLWljb24+XG4gICAgICA8L2duLXVpLWJ1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuIl19
@@ -1,33 +1,54 @@
1
- import { ChangeDetectionStrategy, Component, ElementRef, Input, ViewChild, } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, ContentChild, ElementRef, Input, TemplateRef, ViewChild, ChangeDetectorRef, } from '@angular/core';
2
2
  import { NgIcon, provideIcons } from '@ng-icons/core';
3
3
  import { CommonModule } from '@angular/common';
4
4
  import { matAdd, matRemove } from '@ng-icons/material-icons/baseline';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "@angular/common";
7
7
  export class ExpandablePanelComponent {
8
- constructor() {
9
- this.collapsed = true;
10
- this.maxHeight = this.setMaxHeight();
8
+ constructor(changeDetector) {
9
+ this.changeDetector = changeDetector;
10
+ this.iconColor = '';
11
+ this._collapsed = true;
12
+ }
13
+ ngAfterViewInit() {
14
+ if (this.contentDiv) {
15
+ this.contentObserver = new ResizeObserver(() => {
16
+ this.changeDetector.detectChanges();
17
+ });
18
+ this.contentObserver.observe(this.contentDiv.nativeElement);
19
+ }
20
+ }
21
+ set collapsed(value) {
22
+ this._collapsed = value;
23
+ }
24
+ get collapsed() {
25
+ return this._collapsed;
11
26
  }
12
27
  toggle() {
13
28
  this.collapsed = !this.collapsed;
14
- this.maxHeight = this.setMaxHeight();
15
29
  }
16
- setMaxHeight() {
17
- return `${this.collapsed ? '0' : this.contentDiv.nativeElement.scrollHeight}px`;
30
+ ngOnDestroy() {
31
+ if (this.contentObserver) {
32
+ this.contentObserver.disconnect();
33
+ }
18
34
  }
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ExpandablePanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
20
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ExpandablePanelComponent, isStandalone: true, selector: "gn-ui-expandable-panel", inputs: { title: "title", collapsed: "collapsed" }, viewQueries: [{ propertyName: "contentDiv", first: true, predicate: ["contentDiv"], descendants: true }], ngImport: i0, template: "<div\n class=\"group flex align-middle title border-b border-gray-100 cursor-pointer pt-2.5\"\n (click)=\"toggle()\"\n>\n <div class=\"grow font-medium text-black text-sm\">\n {{ title }}\n </div>\n <div\n class=\"w-8 opacity-25 text-primary group-hover:opacity-100 transition-opacity\"\n >\n <ng-icon name=\"matAdd\" *ngIf=\"collapsed\"></ng-icon>\n <ng-icon name=\"matRemove\" *ngIf=\"!collapsed\"></ng-icon>\n </div>\n</div>\n<div\n class=\"content overflow-hidden transition-[max-height] duration-300\"\n [ngClass]=\"collapsed ? 'ease-out' : 'ease-in'\"\n [style.maxHeight]=\"maxHeight\"\n #contentDiv\n>\n <ng-content></ng-content>\n</div>\n", styles: [""], dependencies: [{ 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: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], viewProviders: [provideIcons({ matAdd, matRemove })], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ExpandablePanelComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
36
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ExpandablePanelComponent, isStandalone: true, selector: "gn-ui-expandable-panel", inputs: { title: "title", iconColor: "iconColor", collapsed: "collapsed" }, queries: [{ propertyName: "titleTemplate", first: true, predicate: ["titleTemplate"], descendants: true }], viewQueries: [{ propertyName: "contentDiv", first: true, predicate: ["contentDiv"], descendants: true }], ngImport: i0, template: "<div\n class=\"group flex items-center justify-between title border-b border-gray-100 cursor-pointer\"\n (click)=\"toggle()\"\n data-cy=\"expandable-panel-header\"\n>\n <div class=\"grow py-2.5\">\n <ng-container *ngIf=\"titleTemplate; else simpleTitle\">\n <div data-cy=\"expandable-panel-custom-title\">\n <ng-container *ngTemplateOutlet=\"titleTemplate\"></ng-container>\n </div>\n </ng-container>\n <ng-template #simpleTitle>\n <div\n class=\"font-medium text-black text-sm\"\n data-cy=\"expandable-panel-title\"\n >\n {{ title }}\n </div>\n </ng-template>\n </div>\n <div\n class=\"w-8 opacity-25 text-primary group-hover:opacity-100 transition-opacity flex items-center shrink-0\"\n >\n <ng-icon\n [name]=\"collapsed ? 'matAdd' : 'matRemove'\"\n [style.color]=\"iconColor\"\n ></ng-icon>\n </div>\n</div>\n<div\n class=\"content overflow-hidden transition-all duration-300\"\n [ngClass]=\"collapsed ? 'ease-out' : 'ease-in'\"\n #contentDiv\n *ngIf=\"!collapsed\"\n data-cy=\"expandable-panel-content\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [""], dependencies: [{ 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: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], viewProviders: [provideIcons({ matAdd, matRemove })], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
21
37
  }
22
38
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ExpandablePanelComponent, decorators: [{
23
39
  type: Component,
24
- args: [{ selector: 'gn-ui-expandable-panel', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, NgIcon], viewProviders: [provideIcons({ matAdd, matRemove })], template: "<div\n class=\"group flex align-middle title border-b border-gray-100 cursor-pointer pt-2.5\"\n (click)=\"toggle()\"\n>\n <div class=\"grow font-medium text-black text-sm\">\n {{ title }}\n </div>\n <div\n class=\"w-8 opacity-25 text-primary group-hover:opacity-100 transition-opacity\"\n >\n <ng-icon name=\"matAdd\" *ngIf=\"collapsed\"></ng-icon>\n <ng-icon name=\"matRemove\" *ngIf=\"!collapsed\"></ng-icon>\n </div>\n</div>\n<div\n class=\"content overflow-hidden transition-[max-height] duration-300\"\n [ngClass]=\"collapsed ? 'ease-out' : 'ease-in'\"\n [style.maxHeight]=\"maxHeight\"\n #contentDiv\n>\n <ng-content></ng-content>\n</div>\n" }]
25
- }], propDecorators: { title: [{
40
+ args: [{ selector: 'gn-ui-expandable-panel', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, NgIcon], viewProviders: [provideIcons({ matAdd, matRemove })], template: "<div\n class=\"group flex items-center justify-between title border-b border-gray-100 cursor-pointer\"\n (click)=\"toggle()\"\n data-cy=\"expandable-panel-header\"\n>\n <div class=\"grow py-2.5\">\n <ng-container *ngIf=\"titleTemplate; else simpleTitle\">\n <div data-cy=\"expandable-panel-custom-title\">\n <ng-container *ngTemplateOutlet=\"titleTemplate\"></ng-container>\n </div>\n </ng-container>\n <ng-template #simpleTitle>\n <div\n class=\"font-medium text-black text-sm\"\n data-cy=\"expandable-panel-title\"\n >\n {{ title }}\n </div>\n </ng-template>\n </div>\n <div\n class=\"w-8 opacity-25 text-primary group-hover:opacity-100 transition-opacity flex items-center shrink-0\"\n >\n <ng-icon\n [name]=\"collapsed ? 'matAdd' : 'matRemove'\"\n [style.color]=\"iconColor\"\n ></ng-icon>\n </div>\n</div>\n<div\n class=\"content overflow-hidden transition-all duration-300\"\n [ngClass]=\"collapsed ? 'ease-out' : 'ease-in'\"\n #contentDiv\n *ngIf=\"!collapsed\"\n data-cy=\"expandable-panel-content\"\n>\n <ng-content></ng-content>\n</div>\n" }]
41
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { title: [{
26
42
  type: Input
27
- }], collapsed: [{
43
+ }], iconColor: [{
28
44
  type: Input
45
+ }], titleTemplate: [{
46
+ type: ContentChild,
47
+ args: ['titleTemplate']
29
48
  }], contentDiv: [{
30
49
  type: ViewChild,
31
50
  args: ['contentDiv']
51
+ }], collapsed: [{
52
+ type: Input
32
53
  }] } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kYWJsZS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2V4cGFuZGFibGUtcGFuZWwvZXhwYW5kYWJsZS1wYW5lbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2V4cGFuZGFibGUtcGFuZWwvZXhwYW5kYWJsZS1wYW5lbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUNMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLG1DQUFtQyxDQUFBOzs7QUFXckUsTUFBTSxPQUFPLHdCQUF3QjtJQVRyQztRQVdXLGNBQVMsR0FBRyxJQUFJLENBQUE7UUFFekIsY0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQTtLQVloQztJQVZDLE1BQU07UUFDSixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQTtRQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQTtJQUN0QyxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sR0FDTCxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFlBQ3ZELElBQUksQ0FBQTtJQUNOLENBQUM7K0dBZlUsd0JBQXdCO21HQUF4Qix3QkFBd0IsZ1BDcEJyQyxncUJBc0JBLHlERExZLFlBQVksaU9BQUUsTUFBTSxrR0FDZixDQUFDLFlBQVksQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDOzs0RkFFekMsd0JBQXdCO2tCQVRwQyxTQUFTOytCQUNFLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDLGlCQUNoQixDQUFDLFlBQVksQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDOzhCQUczQyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDbUIsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE5nSWNvbiwgcHJvdmlkZUljb25zIH0gZnJvbSAnQG5nLWljb25zL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBtYXRBZGQsIG1hdFJlbW92ZSB9IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9iYXNlbGluZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktZXhwYW5kYWJsZS1wYW5lbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9leHBhbmRhYmxlLXBhbmVsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZXhwYW5kYWJsZS1wYW5lbC5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBOZ0ljb25dLFxuICB2aWV3UHJvdmlkZXJzOiBbcHJvdmlkZUljb25zKHsgbWF0QWRkLCBtYXRSZW1vdmUgfSldLFxufSlcbmV4cG9ydCBjbGFzcyBFeHBhbmRhYmxlUGFuZWxDb21wb25lbnQge1xuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nXG4gIEBJbnB1dCgpIGNvbGxhcHNlZCA9IHRydWVcbiAgQFZpZXdDaGlsZCgnY29udGVudERpdicpIGNvbnRlbnREaXY6IEVsZW1lbnRSZWZcbiAgbWF4SGVpZ2h0ID0gdGhpcy5zZXRNYXhIZWlnaHQoKVxuXG4gIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbGxhcHNlZCA9ICF0aGlzLmNvbGxhcHNlZFxuICAgIHRoaXMubWF4SGVpZ2h0ID0gdGhpcy5zZXRNYXhIZWlnaHQoKVxuICB9XG5cbiAgc2V0TWF4SGVpZ2h0KCkge1xuICAgIHJldHVybiBgJHtcbiAgICAgIHRoaXMuY29sbGFwc2VkID8gJzAnIDogdGhpcy5jb250ZW50RGl2Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSGVpZ2h0XG4gICAgfXB4YFxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiZ3JvdXAgZmxleCBhbGlnbi1taWRkbGUgdGl0bGUgYm9yZGVyLWIgYm9yZGVyLWdyYXktMTAwIGN1cnNvci1wb2ludGVyIHB0LTIuNVwiXG4gIChjbGljayk9XCJ0b2dnbGUoKVwiXG4+XG4gIDxkaXYgY2xhc3M9XCJncm93IGZvbnQtbWVkaXVtIHRleHQtYmxhY2sgdGV4dC1zbVwiPlxuICAgIHt7IHRpdGxlIH19XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJ3LTggb3BhY2l0eS0yNSB0ZXh0LXByaW1hcnkgZ3JvdXAtaG92ZXI6b3BhY2l0eS0xMDAgdHJhbnNpdGlvbi1vcGFjaXR5XCJcbiAgPlxuICAgIDxuZy1pY29uIG5hbWU9XCJtYXRBZGRcIiAqbmdJZj1cImNvbGxhcHNlZFwiPjwvbmctaWNvbj5cbiAgICA8bmctaWNvbiBuYW1lPVwibWF0UmVtb3ZlXCIgKm5nSWY9XCIhY29sbGFwc2VkXCI+PC9uZy1pY29uPlxuICA8L2Rpdj5cbjwvZGl2PlxuPGRpdlxuICBjbGFzcz1cImNvbnRlbnQgb3ZlcmZsb3ctaGlkZGVuIHRyYW5zaXRpb24tW21heC1oZWlnaHRdIGR1cmF0aW9uLTMwMFwiXG4gIFtuZ0NsYXNzXT1cImNvbGxhcHNlZCA/ICdlYXNlLW91dCcgOiAnZWFzZS1pbidcIlxuICBbc3R5bGUubWF4SGVpZ2h0XT1cIm1heEhlaWdodFwiXG4gICNjb250ZW50RGl2XG4+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kYWJsZS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2V4cGFuZGFibGUtcGFuZWwvZXhwYW5kYWJsZS1wYW5lbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2V4cGFuZGFibGUtcGFuZWwvZXhwYW5kYWJsZS1wYW5lbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFDTCxXQUFXLEVBQ1gsU0FBUyxFQUVULGlCQUFpQixHQUVsQixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLG1DQUFtQyxDQUFBOzs7QUFXckUsTUFBTSxPQUFPLHdCQUF3QjtJQVNuQyxZQUE2QixjQUFpQztRQUFqQyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFQckQsY0FBUyxHQUFJLEVBQUUsQ0FBQTtRQUloQixlQUFVLEdBQUcsSUFBSSxDQUFBO0lBR3dDLENBQUM7SUFFbEUsZUFBZTtRQUNiLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxjQUFjLENBQUMsR0FBRyxFQUFFO2dCQUM3QyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFBO1lBQ3JDLENBQUMsQ0FBQyxDQUFBO1lBQ0YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUM3RCxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQWEsU0FBUyxDQUFDLEtBQWM7UUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUE7SUFDekIsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQTtJQUN4QixDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFBO0lBQ2xDLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsQ0FBQTtRQUNuQyxDQUFDO0lBQ0gsQ0FBQzsrR0FwQ1Usd0JBQXdCO21HQUF4Qix3QkFBd0Isb1hDekJyQyw0bkNBc0NBLHlERGhCWSxZQUFZLHdZQUFFLE1BQU0sa0dBQ2YsQ0FBQyxZQUFZLENBQUMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQzs7NEZBRXpDLHdCQUF3QjtrQkFUcEMsU0FBUzsrQkFDRSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxpQkFDaEIsQ0FBQyxZQUFZLENBQUMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztzRkFHM0MsS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ3lCLGFBQWE7c0JBQTNDLFlBQVk7dUJBQUMsZUFBZTtnQkFDSixVQUFVO3NCQUFsQyxTQUFTO3VCQUFDLFlBQVk7Z0JBZ0JWLFNBQVM7c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBPbkRlc3Ryb3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBBZnRlclZpZXdJbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTmdJY29uLCBwcm92aWRlSWNvbnMgfSBmcm9tICdAbmctaWNvbnMvY29yZSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IG1hdEFkZCwgbWF0UmVtb3ZlIH0gZnJvbSAnQG5nLWljb25zL21hdGVyaWFsLWljb25zL2Jhc2VsaW5lJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1leHBhbmRhYmxlLXBhbmVsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2V4cGFuZGFibGUtcGFuZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9leHBhbmRhYmxlLXBhbmVsLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE5nSWNvbl0sXG4gIHZpZXdQcm92aWRlcnM6IFtwcm92aWRlSWNvbnMoeyBtYXRBZGQsIG1hdFJlbW92ZSB9KV0sXG59KVxuZXhwb3J0IGNsYXNzIEV4cGFuZGFibGVQYW5lbENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHRpdGxlPzogc3RyaW5nXG4gIEBJbnB1dCgpIGljb25Db2xvcj8gPSAnJ1xuICBAQ29udGVudENoaWxkKCd0aXRsZVRlbXBsYXRlJykgdGl0bGVUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50PlxuICBAVmlld0NoaWxkKCdjb250ZW50RGl2JykgY29udGVudERpdj86IEVsZW1lbnRSZWZcblxuICBwcml2YXRlIF9jb2xsYXBzZWQgPSB0cnVlXG4gIHByaXZhdGUgY29udGVudE9ic2VydmVyPzogUmVzaXplT2JzZXJ2ZXJcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKHRoaXMuY29udGVudERpdikge1xuICAgICAgdGhpcy5jb250ZW50T2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKCkgPT4ge1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKVxuICAgICAgfSlcbiAgICAgIHRoaXMuY29udGVudE9ic2VydmVyLm9ic2VydmUodGhpcy5jb250ZW50RGl2Lm5hdGl2ZUVsZW1lbnQpXG4gICAgfVxuICB9XG5cbiAgQElucHV0KCkgc2V0IGNvbGxhcHNlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2NvbGxhcHNlZCA9IHZhbHVlXG4gIH1cblxuICBnZXQgY29sbGFwc2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9jb2xsYXBzZWRcbiAgfVxuXG4gIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbGxhcHNlZCA9ICF0aGlzLmNvbGxhcHNlZFxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMuY29udGVudE9ic2VydmVyKSB7XG4gICAgICB0aGlzLmNvbnRlbnRPYnNlcnZlci5kaXNjb25uZWN0KClcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJncm91cCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gdGl0bGUgYm9yZGVyLWIgYm9yZGVyLWdyYXktMTAwIGN1cnNvci1wb2ludGVyXCJcbiAgKGNsaWNrKT1cInRvZ2dsZSgpXCJcbiAgZGF0YS1jeT1cImV4cGFuZGFibGUtcGFuZWwtaGVhZGVyXCJcbj5cbiAgPGRpdiBjbGFzcz1cImdyb3cgcHktMi41XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInRpdGxlVGVtcGxhdGU7IGVsc2Ugc2ltcGxlVGl0bGVcIj5cbiAgICAgIDxkaXYgZGF0YS1jeT1cImV4cGFuZGFibGUtcGFuZWwtY3VzdG9tLXRpdGxlXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0aXRsZVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI3NpbXBsZVRpdGxlPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cImZvbnQtbWVkaXVtIHRleHQtYmxhY2sgdGV4dC1zbVwiXG4gICAgICAgIGRhdGEtY3k9XCJleHBhbmRhYmxlLXBhbmVsLXRpdGxlXCJcbiAgICAgID5cbiAgICAgICAge3sgdGl0bGUgfX1cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJ3LTggb3BhY2l0eS0yNSB0ZXh0LXByaW1hcnkgZ3JvdXAtaG92ZXI6b3BhY2l0eS0xMDAgdHJhbnNpdGlvbi1vcGFjaXR5IGZsZXggaXRlbXMtY2VudGVyIHNocmluay0wXCJcbiAgPlxuICAgIDxuZy1pY29uXG4gICAgICBbbmFtZV09XCJjb2xsYXBzZWQgPyAnbWF0QWRkJyA6ICdtYXRSZW1vdmUnXCJcbiAgICAgIFtzdHlsZS5jb2xvcl09XCJpY29uQ29sb3JcIlxuICAgID48L25nLWljb24+XG4gIDwvZGl2PlxuPC9kaXY+XG48ZGl2XG4gIGNsYXNzPVwiY29udGVudCBvdmVyZmxvdy1oaWRkZW4gdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwXCJcbiAgW25nQ2xhc3NdPVwiY29sbGFwc2VkID8gJ2Vhc2Utb3V0JyA6ICdlYXNlLWluJ1wiXG4gICNjb250ZW50RGl2XG4gICpuZ0lmPVwiIWNvbGxhcHNlZFwiXG4gIGRhdGEtY3k9XCJleHBhbmRhYmxlLXBhbmVsLWNvbnRlbnRcIlxuPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbiJdfQ==
@@ -1,21 +1,20 @@
1
1
  import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
2
  import { MatTooltipModule } from '@angular/material/tooltip';
3
3
  import { CommonModule } from '@angular/common';
4
- import { TranslateModule } from '@ngx-translate/core';
4
+ import { TranslateDirective } from '@ngx-translate/core';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "@angular/material/tooltip";
7
7
  import * as i2 from "@angular/common";
8
- import * as i3 from "@ngx-translate/core";
9
8
  export class FormFieldWrapperComponent {
10
9
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormFieldWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FormFieldWrapperComponent, isStandalone: true, selector: "gn-ui-form-field-wrapper", inputs: { label: "label", hint: "hint" }, ngImport: i0, template: "<div class=\"h-full flex flex-col\" *ngIf=\"label; else onlyContent\">\n <div class=\"flex-none w-full flex flex-row items-center\">\n <span class=\"flex-none font-bold\" translate=\"\">{{ label }}</span>\n <div class=\"flex-1 flex justify-end items-center\">\n <ng-content select=\"[form-field-interaction]\"></ng-content>\n <span\n *ngIf=\"hint\"\n class=\"material-symbols-outlined m-2 gn-ui-icon-small\"\n [matTooltip]=\"hint\"\n matTooltipPosition=\"above\"\n >\n help\n </span>\n </div>\n </div>\n <div class=\"flex-1 mt-2\">\n <ng-container *ngTemplateOutlet=\"onlyContent\"> </ng-container>\n </div>\n</div>\n\n<ng-template #onlyContent>\n <ng-content></ng-content>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i1.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FormFieldWrapperComponent, isStandalone: true, selector: "gn-ui-form-field-wrapper", inputs: { label: "label", hint: "hint" }, ngImport: i0, template: "<div class=\"h-full flex flex-col\" *ngIf=\"label; else onlyContent\">\n <div class=\"flex-none w-full flex flex-row items-center\">\n <span class=\"flex-none font-bold\" translate=\"\">{{ label }}</span>\n <div class=\"flex-1 flex justify-end items-center\">\n <ng-content select=\"[form-field-interaction]\"></ng-content>\n <span\n *ngIf=\"hint\"\n class=\"material-symbols-outlined m-2 gn-ui-icon-small\"\n [matTooltip]=\"hint\"\n matTooltipPosition=\"above\"\n >\n help\n </span>\n </div>\n </div>\n <div class=\"flex-1 mt-2\">\n <ng-container *ngTemplateOutlet=\"onlyContent\"> </ng-container>\n </div>\n</div>\n\n<ng-template #onlyContent>\n <ng-content></ng-content>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i1.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
11
  }
13
12
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormFieldWrapperComponent, decorators: [{
14
13
  type: Component,
15
- args: [{ selector: 'gn-ui-form-field-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [MatTooltipModule, CommonModule, TranslateModule], template: "<div class=\"h-full flex flex-col\" *ngIf=\"label; else onlyContent\">\n <div class=\"flex-none w-full flex flex-row items-center\">\n <span class=\"flex-none font-bold\" translate=\"\">{{ label }}</span>\n <div class=\"flex-1 flex justify-end items-center\">\n <ng-content select=\"[form-field-interaction]\"></ng-content>\n <span\n *ngIf=\"hint\"\n class=\"material-symbols-outlined m-2 gn-ui-icon-small\"\n [matTooltip]=\"hint\"\n matTooltipPosition=\"above\"\n >\n help\n </span>\n </div>\n </div>\n <div class=\"flex-1 mt-2\">\n <ng-container *ngTemplateOutlet=\"onlyContent\"> </ng-container>\n </div>\n</div>\n\n<ng-template #onlyContent>\n <ng-content></ng-content>\n</ng-template>\n" }]
14
+ args: [{ selector: 'gn-ui-form-field-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [MatTooltipModule, CommonModule, TranslateDirective], template: "<div class=\"h-full flex flex-col\" *ngIf=\"label; else onlyContent\">\n <div class=\"flex-none w-full flex flex-row items-center\">\n <span class=\"flex-none font-bold\" translate=\"\">{{ label }}</span>\n <div class=\"flex-1 flex justify-end items-center\">\n <ng-content select=\"[form-field-interaction]\"></ng-content>\n <span\n *ngIf=\"hint\"\n class=\"material-symbols-outlined m-2 gn-ui-icon-small\"\n [matTooltip]=\"hint\"\n matTooltipPosition=\"above\"\n >\n help\n </span>\n </div>\n </div>\n <div class=\"flex-1 mt-2\">\n <ng-container *ngTemplateOutlet=\"onlyContent\"> </ng-container>\n </div>\n</div>\n\n<ng-template #onlyContent>\n <ng-content></ng-content>\n</ng-template>\n" }]
16
15
  }], propDecorators: { label: [{
17
16
  type: Input
18
17
  }], hint: [{
19
18
  type: Input
20
19
  }] } });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbGF5b3V0L3NyYy9saWIvZm9ybS1maWVsZC13cmFwcGVyL2Zvcm0tZmllbGQtd3JhcHBlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2Zvcm0tZmllbGQtd3JhcHBlci9mb3JtLWZpZWxkLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDNUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTs7Ozs7QUFVckQsTUFBTSxPQUFPLHlCQUF5QjsrR0FBekIseUJBQXlCO21HQUF6Qix5QkFBeUIsOEhDYnRDLDZ2QkF1QkEseUREWlksZ0JBQWdCLDRUQUFFLFlBQVkseVNBQUUsZUFBZTs7NEZBRTlDLHlCQUF5QjtrQkFSckMsU0FBUzsrQkFDRSwwQkFBMEIsbUJBR25CLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLGVBQWUsQ0FBQzs4QkFHakQsS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktZm9ybS1maWVsZC13cmFwcGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0tZmllbGQtd3JhcHBlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Zvcm0tZmllbGQtd3JhcHBlci5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTWF0VG9vbHRpcE1vZHVsZSwgQ29tbW9uTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtRmllbGRXcmFwcGVyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbGFiZWw/OiBzdHJpbmdcbiAgQElucHV0KCkgaGludD86IHN0cmluZ1xufVxuIiwiPGRpdiBjbGFzcz1cImgtZnVsbCBmbGV4IGZsZXgtY29sXCIgKm5nSWY9XCJsYWJlbDsgZWxzZSBvbmx5Q29udGVudFwiPlxuICA8ZGl2IGNsYXNzPVwiZmxleC1ub25lIHctZnVsbCBmbGV4IGZsZXgtcm93IGl0ZW1zLWNlbnRlclwiPlxuICAgIDxzcGFuIGNsYXNzPVwiZmxleC1ub25lIGZvbnQtYm9sZFwiIHRyYW5zbGF0ZT1cIlwiPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4LTEgZmxleCBqdXN0aWZ5LWVuZCBpdGVtcy1jZW50ZXJcIj5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltmb3JtLWZpZWxkLWludGVyYWN0aW9uXVwiPjwvbmctY29udGVudD5cbiAgICAgIDxzcGFuXG4gICAgICAgICpuZ0lmPVwiaGludFwiXG4gICAgICAgIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBtLTIgZ24tdWktaWNvbi1zbWFsbFwiXG4gICAgICAgIFttYXRUb29sdGlwXT1cImhpbnRcIlxuICAgICAgICBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiXG4gICAgICA+XG4gICAgICAgIGhlbHBcbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJmbGV4LTEgbXQtMlwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJvbmx5Q29udGVudFwiPiA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNvbmx5Q29udGVudD5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbGF5b3V0L3NyYy9saWIvZm9ybS1maWVsZC13cmFwcGVyL2Zvcm0tZmllbGQtd3JhcHBlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2Zvcm0tZmllbGQtd3JhcHBlci9mb3JtLWZpZWxkLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDNUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBOzs7O0FBVXhELE1BQU0sT0FBTyx5QkFBeUI7K0dBQXpCLHlCQUF5QjttR0FBekIseUJBQXlCLDhIQ2J0Qyw2dkJBdUJBLHlERFpZLGdCQUFnQiw0VEFBRSxZQUFZLDBTQUFFLGtCQUFrQjs7NEZBRWpELHlCQUF5QjtrQkFSckMsU0FBUzsrQkFDRSwwQkFBMEIsbUJBR25CLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLGtCQUFrQixDQUFDOzhCQUdwRCxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBUcmFuc2xhdGVEaXJlY3RpdmUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1mb3JtLWZpZWxkLXdyYXBwZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1maWVsZC13cmFwcGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZm9ybS1maWVsZC13cmFwcGVyLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtNYXRUb29sdGlwTW9kdWxlLCBDb21tb25Nb2R1bGUsIFRyYW5zbGF0ZURpcmVjdGl2ZV0sXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1GaWVsZFdyYXBwZXJDb21wb25lbnQge1xuICBASW5wdXQoKSBsYWJlbD86IHN0cmluZ1xuICBASW5wdXQoKSBoaW50Pzogc3RyaW5nXG59XG4iLCI8ZGl2IGNsYXNzPVwiaC1mdWxsIGZsZXggZmxleC1jb2xcIiAqbmdJZj1cImxhYmVsOyBlbHNlIG9ubHlDb250ZW50XCI+XG4gIDxkaXYgY2xhc3M9XCJmbGV4LW5vbmUgdy1mdWxsIGZsZXggZmxleC1yb3cgaXRlbXMtY2VudGVyXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJmbGV4LW5vbmUgZm9udC1ib2xkXCIgdHJhbnNsYXRlPVwiXCI+e3sgbGFiZWwgfX08L3NwYW4+XG4gICAgPGRpdiBjbGFzcz1cImZsZXgtMSBmbGV4IGp1c3RpZnktZW5kIGl0ZW1zLWNlbnRlclwiPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2Zvcm0tZmllbGQtaW50ZXJhY3Rpb25dXCI+PC9uZy1jb250ZW50PlxuICAgICAgPHNwYW5cbiAgICAgICAgKm5nSWY9XCJoaW50XCJcbiAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIG0tMiBnbi11aS1pY29uLXNtYWxsXCJcbiAgICAgICAgW21hdFRvb2x0aXBdPVwiaGludFwiXG4gICAgICAgIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCJcbiAgICAgID5cbiAgICAgICAgaGVscFxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImZsZXgtMSBtdC0yXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIm9ubHlDb250ZW50XCI+IDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI29ubHlDb250ZW50PlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -3,13 +3,18 @@ import { InteractiveTableColumnComponent } from './interactive-table-column/inte
3
3
  import { CommonModule } from '@angular/common';
4
4
  import { NgIconComponent, provideIcons } from '@ng-icons/core';
5
5
  import { iconoirNavArrowDown, iconoirNavArrowUp } from '@ng-icons/iconoir';
6
- import { TranslateModule } from '@ngx-translate/core';
6
+ import { TranslatePipe } from '@ngx-translate/core';
7
+ import { marker } from '@biesbjerg/ngx-translate-extract-marker';
8
+ import { of } from 'rxjs';
7
9
  import * as i0 from "@angular/core";
8
10
  import * as i1 from "@angular/common";
9
- import * as i2 from "@ngx-translate/core";
11
+ marker('editor.record.lock.resourceType');
12
+ marker('editor.record.lock.harvested');
13
+ marker('editor.record.lock.owner');
10
14
  export class InteractiveTableComponent {
11
15
  constructor() {
12
16
  this.items = [];
17
+ this.canEditItem = () => of(true);
13
18
  this.isDraftPage = false;
14
19
  this.itemClick = new EventEmitter();
15
20
  }
@@ -24,23 +29,39 @@ export class InteractiveTableComponent {
24
29
  .join(' '),
25
30
  };
26
31
  }
32
+ getItemTitle(item) {
33
+ if (!this.isDraftPage) {
34
+ if (item.kind !== 'dataset') {
35
+ return 'editor.record.lock.resourceType';
36
+ }
37
+ else if (item.extras?.isHarvested) {
38
+ return 'editor.record.lock.harvested';
39
+ }
40
+ else if (!item.extras?.edit) {
41
+ return 'editor.record.lock.owner';
42
+ }
43
+ }
44
+ return '';
45
+ }
27
46
  handleRowClick(item) {
28
47
  this.itemClick.emit(item);
29
48
  }
30
49
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InteractiveTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
31
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: InteractiveTableComponent, isStandalone: true, selector: "gn-ui-interactive-table", inputs: { items: "items", isDraftPage: "isDraftPage" }, outputs: { itemClick: "itemClick" }, providers: [provideIcons({ iconoirNavArrowDown, iconoirNavArrowUp })], queries: [{ propertyName: "columns", predicate: InteractiveTableColumnComponent }], ngImport: i0, template: "<div class=\"grid w-full\" [ngStyle]=\"gridStyle\">\n <div class=\"contents w-full\">\n <ng-container *ngFor=\"let column of columns\">\n <button\n *ngIf=\"column.sortable\"\n type=\"button\"\n class=\"table-header-cell gap-1\"\n (click)=\"column.sortable && column.handleSortChange()\"\n >\n <ng-container *ngTemplateOutlet=\"column.header\"></ng-container>\n <div class=\"sort-button flex flex-col\" *ngIf=\"column.sortable\">\n <ng-icon\n class=\"text-gray-600 -mb-2\"\n [ngClass]=\"{ 'text-main': column.activeSort === 'asc' }\"\n name=\"iconoirNavArrowUp\"\n ></ng-icon>\n <ng-icon\n class=\"text-gray-600\"\n [ngClass]=\"{ 'text-main': column.activeSort === 'desc' }\"\n name=\"iconoirNavArrowDown\"\n ></ng-icon>\n </div>\n </button>\n <div *ngIf=\"!column.sortable\" class=\"table-header-cell\">\n <ng-container *ngTemplateOutlet=\"column.header\"></ng-container>\n </div>\n </ng-container>\n </div>\n <div\n class=\"contents text-gray-900 cursor-pointer group\"\n *ngFor=\"let item of items\"\n (click)=\"handleRowClick(item)\"\n data-cy=\"table-row\"\n [title]=\"\n !item.extras?.edit && !isDraftPage\n ? ('editor.record.lock.reason' | translate)\n : ''\n \"\n >\n <div\n class=\"relative h-0\"\n [ngStyle]=\"{ 'grid-column': 'span ' + this.columns.length }\"\n >\n <!-- this element is only used in keyboard navigation -->\n <button\n type=\"button\"\n class=\"absolute inset-x-0 h-[50px] bg-transparent pointer-events-none\"\n ></button>\n </div>\n <ng-container *ngFor=\"let column of columns\">\n <div\n class=\"table-row-cell px-3 py-1.5 flex items-center bg-white transition-colors duration-75 truncate border-b border-gray-200\"\n [ngClass]=\"{\n 'text-purple-light cursor-default':\n !item.extras?.edit && !isDraftPage,\n 'group-hover:text-main group-hover:bg-gray-50':\n item.extras?.edit || isDraftPage,\n }\"\n >\n <ng-container\n *ngTemplateOutlet=\"column.cell; context: { $implicit: item }\"\n ></ng-container>\n </div>\n </ng-container>\n </div>\n</div>\n", styles: [".table-header-cell{@apply text-gray-700 px-3 py-3 flex items-center truncate bg-white;}button.table-header-cell{@apply transition-colors duration-75 hover:text-main hover:bg-gray-50 focus:text-main focus:bg-gray-50;}ng-icon{@apply w-4 h-4;}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: InteractiveTableComponent, isStandalone: true, selector: "gn-ui-interactive-table", inputs: { items: "items", canEditItem: "canEditItem", isDraftPage: "isDraftPage" }, outputs: { itemClick: "itemClick" }, providers: [provideIcons({ iconoirNavArrowDown, iconoirNavArrowUp })], queries: [{ propertyName: "columns", predicate: InteractiveTableColumnComponent }], ngImport: i0, template: "<div class=\"grid w-full\" [ngStyle]=\"gridStyle\">\n <div class=\"contents w-full\">\n <ng-container *ngFor=\"let column of columns\">\n <button\n *ngIf=\"column.sortable\"\n type=\"button\"\n class=\"table-header-cell gap-1\"\n (click)=\"column.sortable && column.handleSortChange()\"\n >\n <ng-container *ngTemplateOutlet=\"column.header\"></ng-container>\n <div class=\"sort-button flex flex-col\" *ngIf=\"column.sortable\">\n <ng-icon\n class=\"text-gray-600 -mb-2\"\n [ngClass]=\"{ 'text-main': column.activeSort === 'asc' }\"\n name=\"iconoirNavArrowUp\"\n ></ng-icon>\n <ng-icon\n class=\"text-gray-600\"\n [ngClass]=\"{ 'text-main': column.activeSort === 'desc' }\"\n name=\"iconoirNavArrowDown\"\n ></ng-icon>\n </div>\n </button>\n <div *ngIf=\"!column.sortable\" class=\"table-header-cell\">\n <ng-container *ngTemplateOutlet=\"column.header\"></ng-container>\n </div>\n </ng-container>\n </div>\n <div\n class=\"contents text-gray-900 cursor-pointer group\"\n *ngFor=\"let item of items\"\n (click)=\"handleRowClick(item)\"\n data-cy=\"table-row\"\n [attr.data-cy-title]=\"item.title\"\n [title]=\"getItemTitle(item) | translate\"\n >\n <div\n class=\"relative h-0\"\n [ngStyle]=\"{ 'grid-column': 'span ' + this.columns.length }\"\n >\n <!-- this element is only used in keyboard navigation -->\n <button\n type=\"button\"\n class=\"absolute inset-x-0 h-[50px] bg-transparent pointer-events-none\"\n ></button>\n </div>\n <ng-container *ngFor=\"let column of columns\">\n <div\n class=\"table-row-cell px-3 py-1.5 flex items-center bg-white transition-colors duration-75 truncate border-b border-gray-200\"\n [ngClass]=\"{\n 'text-purple-light cursor-default':\n (canEditItem(item) | async) === false,\n 'group-hover:text-main group-hover:bg-gray-50':\n canEditItem(item) | async,\n }\"\n >\n <ng-container\n *ngTemplateOutlet=\"column.cell; context: { $implicit: item }\"\n ></ng-container>\n </div>\n </ng-container>\n </div>\n</div>\n", styles: [".table-header-cell{@apply text-gray-700 px-3 py-3 flex items-center truncate bg-white;}button.table-header-cell{@apply transition-colors duration-75 hover:text-main hover:bg-gray-50 focus:text-main focus:bg-gray-50;}ng-icon{@apply w-4 h-4;}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
32
51
  }
33
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InteractiveTableComponent, decorators: [{
34
53
  type: Component,
35
- args: [{ selector: 'gn-ui-interactive-table', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, NgIconComponent, TranslateModule], providers: [provideIcons({ iconoirNavArrowDown, iconoirNavArrowUp })], template: "<div class=\"grid w-full\" [ngStyle]=\"gridStyle\">\n <div class=\"contents w-full\">\n <ng-container *ngFor=\"let column of columns\">\n <button\n *ngIf=\"column.sortable\"\n type=\"button\"\n class=\"table-header-cell gap-1\"\n (click)=\"column.sortable && column.handleSortChange()\"\n >\n <ng-container *ngTemplateOutlet=\"column.header\"></ng-container>\n <div class=\"sort-button flex flex-col\" *ngIf=\"column.sortable\">\n <ng-icon\n class=\"text-gray-600 -mb-2\"\n [ngClass]=\"{ 'text-main': column.activeSort === 'asc' }\"\n name=\"iconoirNavArrowUp\"\n ></ng-icon>\n <ng-icon\n class=\"text-gray-600\"\n [ngClass]=\"{ 'text-main': column.activeSort === 'desc' }\"\n name=\"iconoirNavArrowDown\"\n ></ng-icon>\n </div>\n </button>\n <div *ngIf=\"!column.sortable\" class=\"table-header-cell\">\n <ng-container *ngTemplateOutlet=\"column.header\"></ng-container>\n </div>\n </ng-container>\n </div>\n <div\n class=\"contents text-gray-900 cursor-pointer group\"\n *ngFor=\"let item of items\"\n (click)=\"handleRowClick(item)\"\n data-cy=\"table-row\"\n [title]=\"\n !item.extras?.edit && !isDraftPage\n ? ('editor.record.lock.reason' | translate)\n : ''\n \"\n >\n <div\n class=\"relative h-0\"\n [ngStyle]=\"{ 'grid-column': 'span ' + this.columns.length }\"\n >\n <!-- this element is only used in keyboard navigation -->\n <button\n type=\"button\"\n class=\"absolute inset-x-0 h-[50px] bg-transparent pointer-events-none\"\n ></button>\n </div>\n <ng-container *ngFor=\"let column of columns\">\n <div\n class=\"table-row-cell px-3 py-1.5 flex items-center bg-white transition-colors duration-75 truncate border-b border-gray-200\"\n [ngClass]=\"{\n 'text-purple-light cursor-default':\n !item.extras?.edit && !isDraftPage,\n 'group-hover:text-main group-hover:bg-gray-50':\n item.extras?.edit || isDraftPage,\n }\"\n >\n <ng-container\n *ngTemplateOutlet=\"column.cell; context: { $implicit: item }\"\n ></ng-container>\n </div>\n </ng-container>\n </div>\n</div>\n", styles: [".table-header-cell{@apply text-gray-700 px-3 py-3 flex items-center truncate bg-white;}button.table-header-cell{@apply transition-colors duration-75 hover:text-main hover:bg-gray-50 focus:text-main focus:bg-gray-50;}ng-icon{@apply w-4 h-4;}\n"] }]
54
+ args: [{ selector: 'gn-ui-interactive-table', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, NgIconComponent, TranslatePipe], providers: [provideIcons({ iconoirNavArrowDown, iconoirNavArrowUp })], template: "<div class=\"grid w-full\" [ngStyle]=\"gridStyle\">\n <div class=\"contents w-full\">\n <ng-container *ngFor=\"let column of columns\">\n <button\n *ngIf=\"column.sortable\"\n type=\"button\"\n class=\"table-header-cell gap-1\"\n (click)=\"column.sortable && column.handleSortChange()\"\n >\n <ng-container *ngTemplateOutlet=\"column.header\"></ng-container>\n <div class=\"sort-button flex flex-col\" *ngIf=\"column.sortable\">\n <ng-icon\n class=\"text-gray-600 -mb-2\"\n [ngClass]=\"{ 'text-main': column.activeSort === 'asc' }\"\n name=\"iconoirNavArrowUp\"\n ></ng-icon>\n <ng-icon\n class=\"text-gray-600\"\n [ngClass]=\"{ 'text-main': column.activeSort === 'desc' }\"\n name=\"iconoirNavArrowDown\"\n ></ng-icon>\n </div>\n </button>\n <div *ngIf=\"!column.sortable\" class=\"table-header-cell\">\n <ng-container *ngTemplateOutlet=\"column.header\"></ng-container>\n </div>\n </ng-container>\n </div>\n <div\n class=\"contents text-gray-900 cursor-pointer group\"\n *ngFor=\"let item of items\"\n (click)=\"handleRowClick(item)\"\n data-cy=\"table-row\"\n [attr.data-cy-title]=\"item.title\"\n [title]=\"getItemTitle(item) | translate\"\n >\n <div\n class=\"relative h-0\"\n [ngStyle]=\"{ 'grid-column': 'span ' + this.columns.length }\"\n >\n <!-- this element is only used in keyboard navigation -->\n <button\n type=\"button\"\n class=\"absolute inset-x-0 h-[50px] bg-transparent pointer-events-none\"\n ></button>\n </div>\n <ng-container *ngFor=\"let column of columns\">\n <div\n class=\"table-row-cell px-3 py-1.5 flex items-center bg-white transition-colors duration-75 truncate border-b border-gray-200\"\n [ngClass]=\"{\n 'text-purple-light cursor-default':\n (canEditItem(item) | async) === false,\n 'group-hover:text-main group-hover:bg-gray-50':\n canEditItem(item) | async,\n }\"\n >\n <ng-container\n *ngTemplateOutlet=\"column.cell; context: { $implicit: item }\"\n ></ng-container>\n </div>\n </ng-container>\n </div>\n</div>\n", styles: [".table-header-cell{@apply text-gray-700 px-3 py-3 flex items-center truncate bg-white;}button.table-header-cell{@apply transition-colors duration-75 hover:text-main hover:bg-gray-50 focus:text-main focus:bg-gray-50;}ng-icon{@apply w-4 h-4;}\n"] }]
36
55
  }], propDecorators: { columns: [{
37
56
  type: ContentChildren,
38
57
  args: [InteractiveTableColumnComponent]
39
58
  }], items: [{
40
59
  type: Input
60
+ }], canEditItem: [{
61
+ type: Input
41
62
  }], isDraftPage: [{
42
63
  type: Input
43
64
  }], itemClick: [{
44
65
  type: Output
45
66
  }] } });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3RpdmUtdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjL2xpYi9pbnRlcmFjdGl2ZS10YWJsZS9pbnRlcmFjdGl2ZS10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2ludGVyYWN0aXZlLXRhYmxlL2ludGVyYWN0aXZlLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sK0RBQStELENBQUE7QUFDL0csT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBOzs7O0FBV3JELE1BQU0sT0FBTyx5QkFBeUI7SUFUdEM7UUFhVyxVQUFLLEdBQWMsRUFBRSxDQUFBO1FBQ3JCLGdCQUFXLEdBQUcsS0FBSyxDQUFBO1FBQ2xCLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFBO0tBbUJsRDtJQWpCQyxJQUFJLFNBQVM7UUFDWCxPQUFPO1lBQ0wsdUJBQXVCLEVBQUUsSUFBSSxDQUFDLE9BQU87aUJBQ2xDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ2QsTUFBTSxDQUFDLEtBQUs7Z0JBQ1YsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLO2dCQUNkLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSTtvQkFDWCxDQUFDLENBQUMsaUJBQWlCO29CQUNuQixDQUFDLENBQUMseUJBQXlCLENBQ2hDO2lCQUNBLElBQUksQ0FBQyxHQUFHLENBQUM7U0FDYixDQUFBO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFhO1FBQzFCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQzNCLENBQUM7K0dBeEJVLHlCQUF5QjttR0FBekIseUJBQXlCLG1LQUZ6QixDQUFDLFlBQVksQ0FBQyxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxrREFHcEQsK0JBQStCLDZCQ3pCbEQsOHpFQWtFQSwyU0Q3Q1ksWUFBWSwwbEJBQUUsZUFBZSw0R0FBRSxlQUFlOzs0RkFHN0MseUJBQXlCO2tCQVRyQyxTQUFTOytCQUNFLHlCQUF5QixtQkFHbEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGVBQWUsQ0FBQyxhQUM5QyxDQUFDLFlBQVksQ0FBQyxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQzs4QkFJckUsT0FBTztzQkFETixlQUFlO3VCQUFDLCtCQUErQjtnQkFHdkMsS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBJbnRlcmFjdGl2ZVRhYmxlQ29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi9pbnRlcmFjdGl2ZS10YWJsZS1jb2x1bW4vaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uLmNvbXBvbmVudCdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IE5nSWNvbkNvbXBvbmVudCwgcHJvdmlkZUljb25zIH0gZnJvbSAnQG5nLWljb25zL2NvcmUnXG5pbXBvcnQgeyBpY29ub2lyTmF2QXJyb3dEb3duLCBpY29ub2lyTmF2QXJyb3dVcCB9IGZyb20gJ0BuZy1pY29ucy9pY29ub2lyJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktaW50ZXJhY3RpdmUtdGFibGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vaW50ZXJhY3RpdmUtdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pbnRlcmFjdGl2ZS10YWJsZS5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBOZ0ljb25Db21wb25lbnQsIFRyYW5zbGF0ZU1vZHVsZV0sXG4gIHByb3ZpZGVyczogW3Byb3ZpZGVJY29ucyh7IGljb25vaXJOYXZBcnJvd0Rvd24sIGljb25vaXJOYXZBcnJvd1VwIH0pXSxcbn0pXG5leHBvcnQgY2xhc3MgSW50ZXJhY3RpdmVUYWJsZUNvbXBvbmVudCB7XG4gIEBDb250ZW50Q2hpbGRyZW4oSW50ZXJhY3RpdmVUYWJsZUNvbHVtbkNvbXBvbmVudClcbiAgY29sdW1uczogUXVlcnlMaXN0PEludGVyYWN0aXZlVGFibGVDb2x1bW5Db21wb25lbnQ+XG5cbiAgQElucHV0KCkgaXRlbXM6IHVua25vd25bXSA9IFtdXG4gIEBJbnB1dCgpIGlzRHJhZnRQYWdlID0gZmFsc2VcbiAgQE91dHB1dCgpIGl0ZW1DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8dW5rbm93bj4oKVxuXG4gIGdldCBncmlkU3R5bGUoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICdncmlkLXRlbXBsYXRlLWNvbHVtbnMnOiB0aGlzLmNvbHVtbnNcbiAgICAgICAgLm1hcCgoY29sdW1uKSA9PlxuICAgICAgICAgIGNvbHVtbi53aWR0aFxuICAgICAgICAgICAgPyBjb2x1bW4ud2lkdGhcbiAgICAgICAgICAgIDogY29sdW1uLmdyb3dcbiAgICAgICAgICAgICAgPyBgbWlubWF4KDBweCwxZnIpYFxuICAgICAgICAgICAgICA6IGBtaW5tYXgoMHB4LG1heC1jb250ZW50KWBcbiAgICAgICAgKVxuICAgICAgICAuam9pbignICcpLFxuICAgIH1cbiAgfVxuXG4gIGhhbmRsZVJvd0NsaWNrKGl0ZW06IHVua25vd24pIHtcbiAgICB0aGlzLml0ZW1DbGljay5lbWl0KGl0ZW0pXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJncmlkIHctZnVsbFwiIFtuZ1N0eWxlXT1cImdyaWRTdHlsZVwiPlxuICA8ZGl2IGNsYXNzPVwiY29udGVudHMgdy1mdWxsXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnNcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCJjb2x1bW4uc29ydGFibGVcIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgY2xhc3M9XCJ0YWJsZS1oZWFkZXItY2VsbCBnYXAtMVwiXG4gICAgICAgIChjbGljayk9XCJjb2x1bW4uc29ydGFibGUgJiYgY29sdW1uLmhhbmRsZVNvcnRDaGFuZ2UoKVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2x1bW4uaGVhZGVyXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzb3J0LWJ1dHRvbiBmbGV4IGZsZXgtY29sXCIgKm5nSWY9XCJjb2x1bW4uc29ydGFibGVcIj5cbiAgICAgICAgICA8bmctaWNvblxuICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LWdyYXktNjAwIC1tYi0yXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ3RleHQtbWFpbic6IGNvbHVtbi5hY3RpdmVTb3J0ID09PSAnYXNjJyB9XCJcbiAgICAgICAgICAgIG5hbWU9XCJpY29ub2lyTmF2QXJyb3dVcFwiXG4gICAgICAgICAgPjwvbmctaWNvbj5cbiAgICAgICAgICA8bmctaWNvblxuICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LWdyYXktNjAwXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ3RleHQtbWFpbic6IGNvbHVtbi5hY3RpdmVTb3J0ID09PSAnZGVzYycgfVwiXG4gICAgICAgICAgICBuYW1lPVwiaWNvbm9pck5hdkFycm93RG93blwiXG4gICAgICAgICAgPjwvbmctaWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxkaXYgKm5nSWY9XCIhY29sdW1uLnNvcnRhYmxlXCIgY2xhc3M9XCJ0YWJsZS1oZWFkZXItY2VsbFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sdW1uLmhlYWRlclwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJjb250ZW50cyB0ZXh0LWdyYXktOTAwIGN1cnNvci1wb2ludGVyIGdyb3VwXCJcbiAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtc1wiXG4gICAgKGNsaWNrKT1cImhhbmRsZVJvd0NsaWNrKGl0ZW0pXCJcbiAgICBkYXRhLWN5PVwidGFibGUtcm93XCJcbiAgICBbdGl0bGVdPVwiXG4gICAgICAhaXRlbS5leHRyYXM/LmVkaXQgJiYgIWlzRHJhZnRQYWdlXG4gICAgICAgID8gKCdlZGl0b3IucmVjb3JkLmxvY2sucmVhc29uJyB8IHRyYW5zbGF0ZSlcbiAgICAgICAgOiAnJ1xuICAgIFwiXG4gID5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cInJlbGF0aXZlIGgtMFwiXG4gICAgICBbbmdTdHlsZV09XCJ7ICdncmlkLWNvbHVtbic6ICdzcGFuICcgKyB0aGlzLmNvbHVtbnMubGVuZ3RoIH1cIlxuICAgID5cbiAgICAgIDwhLS0gdGhpcyBlbGVtZW50IGlzIG9ubHkgdXNlZCBpbiBrZXlib2FyZCBuYXZpZ2F0aW9uIC0tPlxuICAgICAgPGJ1dHRvblxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgY2xhc3M9XCJhYnNvbHV0ZSBpbnNldC14LTAgaC1bNTBweF0gYmctdHJhbnNwYXJlbnQgcG9pbnRlci1ldmVudHMtbm9uZVwiXG4gICAgICA+PC9idXR0b24+XG4gICAgPC9kaXY+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnNcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJ0YWJsZS1yb3ctY2VsbCBweC0zIHB5LTEuNSBmbGV4IGl0ZW1zLWNlbnRlciBiZy13aGl0ZSB0cmFuc2l0aW9uLWNvbG9ycyBkdXJhdGlvbi03NSB0cnVuY2F0ZSBib3JkZXItYiBib3JkZXItZ3JheS0yMDBcIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgJ3RleHQtcHVycGxlLWxpZ2h0IGN1cnNvci1kZWZhdWx0JzpcbiAgICAgICAgICAgICFpdGVtLmV4dHJhcz8uZWRpdCAmJiAhaXNEcmFmdFBhZ2UsXG4gICAgICAgICAgJ2dyb3VwLWhvdmVyOnRleHQtbWFpbiBncm91cC1ob3ZlcjpiZy1ncmF5LTUwJzpcbiAgICAgICAgICAgIGl0ZW0uZXh0cmFzPy5lZGl0IHx8IGlzRHJhZnRQYWdlLFxuICAgICAgICB9XCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sdW1uLmNlbGw7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3RpdmUtdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjL2xpYi9pbnRlcmFjdGl2ZS10YWJsZS9pbnRlcmFjdGl2ZS10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2ludGVyYWN0aXZlLXRhYmxlL2ludGVyYWN0aXZlLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sK0RBQStELENBQUE7QUFDL0csT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDMUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUVoRSxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFBOzs7QUFFckMsTUFBTSxDQUFDLGlDQUFpQyxDQUFDLENBQUE7QUFDekMsTUFBTSxDQUFDLDhCQUE4QixDQUFDLENBQUE7QUFDdEMsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUE7QUFVbEMsTUFBTSxPQUFPLHlCQUF5QjtJQVR0QztRQWFXLFVBQUssR0FBYyxFQUFFLENBQUE7UUFDckIsZ0JBQVcsR0FBMkMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ3BFLGdCQUFXLEdBQUcsS0FBSyxDQUFBO1FBQ2xCLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFBO0tBZ0NsRDtJQTlCQyxJQUFJLFNBQVM7UUFDWCxPQUFPO1lBQ0wsdUJBQXVCLEVBQUUsSUFBSSxDQUFDLE9BQU87aUJBQ2xDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ2QsTUFBTSxDQUFDLEtBQUs7Z0JBQ1YsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLO2dCQUNkLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSTtvQkFDWCxDQUFDLENBQUMsaUJBQWlCO29CQUNuQixDQUFDLENBQUMseUJBQXlCLENBQ2hDO2lCQUNBLElBQUksQ0FBQyxHQUFHLENBQUM7U0FDYixDQUFBO0lBQ0gsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFtQjtRQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDNUIsT0FBTyxpQ0FBaUMsQ0FBQTtZQUMxQyxDQUFDO2lCQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsQ0FBQztnQkFDcEMsT0FBTyw4QkFBOEIsQ0FBQTtZQUN2QyxDQUFDO2lCQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDO2dCQUM5QixPQUFPLDBCQUEwQixDQUFBO1lBQ25DLENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUE7SUFDWCxDQUFDO0lBRUQsY0FBYyxDQUFDLElBQWE7UUFDMUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDM0IsQ0FBQzsrR0F0Q1UseUJBQXlCO21HQUF6Qix5QkFBeUIsK0xBRnpCLENBQUMsWUFBWSxDQUFDLEVBQUUsbUJBQW1CLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLGtEQUdwRCwrQkFBK0IsNkJDL0JsRCw4d0VBK0RBLDJTRHBDWSxZQUFZLCtvQkFBRSxlQUFlLHdHQUFFLGFBQWE7OzRGQUczQyx5QkFBeUI7a0JBVHJDLFNBQVM7K0JBQ0UseUJBQXlCLG1CQUdsQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsYUFBYSxDQUFDLGFBQzVDLENBQUMsWUFBWSxDQUFDLEVBQUUsbUJBQW1CLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDOzhCQUlyRSxPQUFPO3NCQUROLGVBQWU7dUJBQUMsK0JBQStCO2dCQUd2QyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgSW50ZXJhY3RpdmVUYWJsZUNvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4vaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uL2ludGVyYWN0aXZlLXRhYmxlLWNvbHVtbi5jb21wb25lbnQnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBOZ0ljb25Db21wb25lbnQsIHByb3ZpZGVJY29ucyB9IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHsgaWNvbm9pck5hdkFycm93RG93biwgaWNvbm9pck5hdkFycm93VXAgfSBmcm9tICdAbmctaWNvbnMvaWNvbm9pcidcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHsgQ2F0YWxvZ1JlY29yZCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcydcblxubWFya2VyKCdlZGl0b3IucmVjb3JkLmxvY2sucmVzb3VyY2VUeXBlJylcbm1hcmtlcignZWRpdG9yLnJlY29yZC5sb2NrLmhhcnZlc3RlZCcpXG5tYXJrZXIoJ2VkaXRvci5yZWNvcmQubG9jay5vd25lcicpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1pbnRlcmFjdGl2ZS10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnRlcmFjdGl2ZS10YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ludGVyYWN0aXZlLXRhYmxlLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE5nSWNvbkNvbXBvbmVudCwgVHJhbnNsYXRlUGlwZV0sXG4gIHByb3ZpZGVyczogW3Byb3ZpZGVJY29ucyh7IGljb25vaXJOYXZBcnJvd0Rvd24sIGljb25vaXJOYXZBcnJvd1VwIH0pXSxcbn0pXG5leHBvcnQgY2xhc3MgSW50ZXJhY3RpdmVUYWJsZUNvbXBvbmVudCB7XG4gIEBDb250ZW50Q2hpbGRyZW4oSW50ZXJhY3RpdmVUYWJsZUNvbHVtbkNvbXBvbmVudClcbiAgY29sdW1uczogUXVlcnlMaXN0PEludGVyYWN0aXZlVGFibGVDb2x1bW5Db21wb25lbnQ+XG5cbiAgQElucHV0KCkgaXRlbXM6IHVua25vd25bXSA9IFtdXG4gIEBJbnB1dCgpIGNhbkVkaXRJdGVtOiAoaXRlbTogdW5rbm93bikgPT4gT2JzZXJ2YWJsZTxib29sZWFuPiA9ICgpID0+IG9mKHRydWUpXG4gIEBJbnB1dCgpIGlzRHJhZnRQYWdlID0gZmFsc2VcbiAgQE91dHB1dCgpIGl0ZW1DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8dW5rbm93bj4oKVxuXG4gIGdldCBncmlkU3R5bGUoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICdncmlkLXRlbXBsYXRlLWNvbHVtbnMnOiB0aGlzLmNvbHVtbnNcbiAgICAgICAgLm1hcCgoY29sdW1uKSA9PlxuICAgICAgICAgIGNvbHVtbi53aWR0aFxuICAgICAgICAgICAgPyBjb2x1bW4ud2lkdGhcbiAgICAgICAgICAgIDogY29sdW1uLmdyb3dcbiAgICAgICAgICAgICAgPyBgbWlubWF4KDBweCwxZnIpYFxuICAgICAgICAgICAgICA6IGBtaW5tYXgoMHB4LG1heC1jb250ZW50KWBcbiAgICAgICAgKVxuICAgICAgICAuam9pbignICcpLFxuICAgIH1cbiAgfVxuXG4gIGdldEl0ZW1UaXRsZShpdGVtOiBDYXRhbG9nUmVjb3JkKSB7XG4gICAgaWYgKCF0aGlzLmlzRHJhZnRQYWdlKSB7XG4gICAgICBpZiAoaXRlbS5raW5kICE9PSAnZGF0YXNldCcpIHtcbiAgICAgICAgcmV0dXJuICdlZGl0b3IucmVjb3JkLmxvY2sucmVzb3VyY2VUeXBlJ1xuICAgICAgfSBlbHNlIGlmIChpdGVtLmV4dHJhcz8uaXNIYXJ2ZXN0ZWQpIHtcbiAgICAgICAgcmV0dXJuICdlZGl0b3IucmVjb3JkLmxvY2suaGFydmVzdGVkJ1xuICAgICAgfSBlbHNlIGlmICghaXRlbS5leHRyYXM/LmVkaXQpIHtcbiAgICAgICAgcmV0dXJuICdlZGl0b3IucmVjb3JkLmxvY2sub3duZXInXG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiAnJ1xuICB9XG5cbiAgaGFuZGxlUm93Q2xpY2soaXRlbTogdW5rbm93bikge1xuICAgIHRoaXMuaXRlbUNsaWNrLmVtaXQoaXRlbSlcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImdyaWQgdy1mdWxsXCIgW25nU3R5bGVdPVwiZ3JpZFN0eWxlXCI+XG4gIDxkaXYgY2xhc3M9XCJjb250ZW50cyB3LWZ1bGxcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uc1wiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAqbmdJZj1cImNvbHVtbi5zb3J0YWJsZVwiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cInRhYmxlLWhlYWRlci1jZWxsIGdhcC0xXCJcbiAgICAgICAgKGNsaWNrKT1cImNvbHVtbi5zb3J0YWJsZSAmJiBjb2x1bW4uaGFuZGxlU29ydENoYW5nZSgpXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbi5oZWFkZXJcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNvcnQtYnV0dG9uIGZsZXggZmxleC1jb2xcIiAqbmdJZj1cImNvbHVtbi5zb3J0YWJsZVwiPlxuICAgICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgICBjbGFzcz1cInRleHQtZ3JheS02MDAgLW1iLTJcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAndGV4dC1tYWluJzogY29sdW1uLmFjdGl2ZVNvcnQgPT09ICdhc2MnIH1cIlxuICAgICAgICAgICAgbmFtZT1cImljb25vaXJOYXZBcnJvd1VwXCJcbiAgICAgICAgICA+PC9uZy1pY29uPlxuICAgICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgICBjbGFzcz1cInRleHQtZ3JheS02MDBcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAndGV4dC1tYWluJzogY29sdW1uLmFjdGl2ZVNvcnQgPT09ICdkZXNjJyB9XCJcbiAgICAgICAgICAgIG5hbWU9XCJpY29ub2lyTmF2QXJyb3dEb3duXCJcbiAgICAgICAgICA+PC9uZy1pY29uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGRpdiAqbmdJZj1cIiFjb2x1bW4uc29ydGFibGVcIiBjbGFzcz1cInRhYmxlLWhlYWRlci1jZWxsXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2x1bW4uaGVhZGVyXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cImNvbnRlbnRzIHRleHQtZ3JheS05MDAgY3Vyc29yLXBvaW50ZXIgZ3JvdXBcIlxuICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zXCJcbiAgICAoY2xpY2spPVwiaGFuZGxlUm93Q2xpY2soaXRlbSlcIlxuICAgIGRhdGEtY3k9XCJ0YWJsZS1yb3dcIlxuICAgIFthdHRyLmRhdGEtY3ktdGl0bGVdPVwiaXRlbS50aXRsZVwiXG4gICAgW3RpdGxlXT1cImdldEl0ZW1UaXRsZShpdGVtKSB8IHRyYW5zbGF0ZVwiXG4gID5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cInJlbGF0aXZlIGgtMFwiXG4gICAgICBbbmdTdHlsZV09XCJ7ICdncmlkLWNvbHVtbic6ICdzcGFuICcgKyB0aGlzLmNvbHVtbnMubGVuZ3RoIH1cIlxuICAgID5cbiAgICAgIDwhLS0gdGhpcyBlbGVtZW50IGlzIG9ubHkgdXNlZCBpbiBrZXlib2FyZCBuYXZpZ2F0aW9uIC0tPlxuICAgICAgPGJ1dHRvblxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgY2xhc3M9XCJhYnNvbHV0ZSBpbnNldC14LTAgaC1bNTBweF0gYmctdHJhbnNwYXJlbnQgcG9pbnRlci1ldmVudHMtbm9uZVwiXG4gICAgICA+PC9idXR0b24+XG4gICAgPC9kaXY+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnNcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJ0YWJsZS1yb3ctY2VsbCBweC0zIHB5LTEuNSBmbGV4IGl0ZW1zLWNlbnRlciBiZy13aGl0ZSB0cmFuc2l0aW9uLWNvbG9ycyBkdXJhdGlvbi03NSB0cnVuY2F0ZSBib3JkZXItYiBib3JkZXItZ3JheS0yMDBcIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgJ3RleHQtcHVycGxlLWxpZ2h0IGN1cnNvci1kZWZhdWx0JzpcbiAgICAgICAgICAgIChjYW5FZGl0SXRlbShpdGVtKSB8IGFzeW5jKSA9PT0gZmFsc2UsXG4gICAgICAgICAgJ2dyb3VwLWhvdmVyOnRleHQtbWFpbiBncm91cC1ob3ZlcjpiZy1ncmF5LTUwJzpcbiAgICAgICAgICAgIGNhbkVkaXRJdGVtKGl0ZW0pIHwgYXN5bmMsXG4gICAgICAgIH1cIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2x1bW4uY2VsbDsgY29udGV4dDogeyAkaW1wbGljaXQ6IGl0ZW0gfVwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1,9 +1,8 @@
1
1
  import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Input, ViewChild, } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
- import { TranslateModule } from '@ngx-translate/core';
3
+ import { TranslatePipe } from '@ngx-translate/core';
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "@angular/common";
6
- import * as i2 from "@ngx-translate/core";
7
6
  export class MaxLinesComponent {
8
7
  constructor(cdr) {
9
8
  this.cdr = cdr;
@@ -57,15 +56,15 @@ export class MaxLinesComponent {
57
56
  this.observer.unobserve(this.container.nativeElement.children[0]);
58
57
  }
59
58
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MaxLinesComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
60
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MaxLinesComponent, isStandalone: true, selector: "gn-ui-max-lines", inputs: { maxLines: "maxLines" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div\n #container\n class=\"max-lines overflow-hidden transition-[max-height] duration-300 relative\"\n [ngClass]=\"isExpanded ? 'ease-in' : 'ease-out'\"\n [style.maxHeight]=\"maxHeight\"\n>\n <ng-content></ng-content>\n <div\n *ngIf=\"showToggleButton && !isExpanded\"\n class=\"absolute inset-x-0 bottom-0 bg-gradient-to-b from-transparent to-white h-10\"\n ></div>\n</div>\n<div\n *ngIf=\"showToggleButton\"\n (click)=\"toggleDisplay()\"\n class=\"text-secondary cursor-pointer pt-2.5\"\n data-cy=\"readMoreButton\"\n>\n {{ (isExpanded ? 'ui.readLess' : 'ui.readMore') | translate }}\n</div>\n", styles: [""], dependencies: [{ 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: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
59
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MaxLinesComponent, isStandalone: true, selector: "gn-ui-max-lines", inputs: { maxLines: "maxLines" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div\n #container\n class=\"max-lines overflow-hidden transition-[max-height] duration-300 relative\"\n [ngClass]=\"isExpanded ? 'ease-in' : 'ease-out'\"\n [style.maxHeight]=\"maxHeight\"\n>\n <ng-content></ng-content>\n <div\n *ngIf=\"showToggleButton && !isExpanded\"\n class=\"absolute inset-x-0 bottom-0 bg-gradient-to-b from-transparent to-white h-10\"\n ></div>\n</div>\n<div\n *ngIf=\"showToggleButton\"\n (click)=\"toggleDisplay()\"\n class=\"text-primary cursor-pointer pt-2.5\"\n data-cy=\"readMoreButton\"\n>\n {{ (isExpanded ? 'ui.readLess' : 'ui.readMore') | translate }}\n</div>\n", styles: [""], dependencies: [{ 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: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
61
60
  }
62
61
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MaxLinesComponent, decorators: [{
63
62
  type: Component,
64
- args: [{ selector: 'gn-ui-max-lines', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, TranslateModule], template: "<div\n #container\n class=\"max-lines overflow-hidden transition-[max-height] duration-300 relative\"\n [ngClass]=\"isExpanded ? 'ease-in' : 'ease-out'\"\n [style.maxHeight]=\"maxHeight\"\n>\n <ng-content></ng-content>\n <div\n *ngIf=\"showToggleButton && !isExpanded\"\n class=\"absolute inset-x-0 bottom-0 bg-gradient-to-b from-transparent to-white h-10\"\n ></div>\n</div>\n<div\n *ngIf=\"showToggleButton\"\n (click)=\"toggleDisplay()\"\n class=\"text-secondary cursor-pointer pt-2.5\"\n data-cy=\"readMoreButton\"\n>\n {{ (isExpanded ? 'ui.readLess' : 'ui.readMore') | translate }}\n</div>\n" }]
63
+ args: [{ selector: 'gn-ui-max-lines', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, TranslatePipe], template: "<div\n #container\n class=\"max-lines overflow-hidden transition-[max-height] duration-300 relative\"\n [ngClass]=\"isExpanded ? 'ease-in' : 'ease-out'\"\n [style.maxHeight]=\"maxHeight\"\n>\n <ng-content></ng-content>\n <div\n *ngIf=\"showToggleButton && !isExpanded\"\n class=\"absolute inset-x-0 bottom-0 bg-gradient-to-b from-transparent to-white h-10\"\n ></div>\n</div>\n<div\n *ngIf=\"showToggleButton\"\n (click)=\"toggleDisplay()\"\n class=\"text-primary cursor-pointer pt-2.5\"\n data-cy=\"readMoreButton\"\n>\n {{ (isExpanded ? 'ui.readLess' : 'ui.readMore') | translate }}\n</div>\n" }]
65
64
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { maxLines: [{
66
65
  type: Input
67
66
  }], container: [{
68
67
  type: ViewChild,
69
68
  args: ['container']
70
69
  }] } });
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4LWxpbmVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbGF5b3V0L3NyYy9saWIvbWF4LWxpbmVzL21heC1saW5lcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL21heC1saW5lcy9tYXgtbGluZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7Ozs7QUFVckQsTUFBTSxPQUFPLGlCQUFpQjtJQVU1QixZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQVRqQyxhQUFRLEdBQUcsQ0FBQyxDQUFBO1FBRXJCLGVBQVUsR0FBRyxLQUFLLENBQUE7UUFDbEIsY0FBUyxHQUFHLEVBQUUsQ0FBQTtRQUNkLHFCQUFnQixHQUFHLEtBQUssQ0FBQTtJQUtxQixDQUFDO0lBRTlDLGVBQWU7UUFDYixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtRQUV6QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksY0FBYyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDL0MsU0FBUyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1lBQzNCLENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNqRSxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFBO1FBQ2xDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO0lBQzNCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQTtRQUNyRCxNQUFNLGNBQWMsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDbkQsTUFBTSxhQUFhLEdBQUcsY0FBYyxDQUFDLHFCQUFxQixFQUFFLENBQUMsTUFBTSxDQUFBO1FBRW5FLElBQUksYUFBYSxFQUFFLENBQUM7WUFDbEIsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUE7Z0JBRTVCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVU7b0JBQzlCLENBQUMsQ0FBQyxHQUFHLGFBQWEsSUFBSTtvQkFDdEIsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUE7WUFDL0QsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUE7Z0JBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxhQUFhLElBQUksQ0FBQTtZQUN2QyxDQUFDO1lBQ0QsZ0JBQWdCLENBQUMsWUFBWSxDQUMzQixPQUFPLEVBQ1AsZUFBZSxJQUFJLENBQUMsU0FBUyxvQkFBb0IsQ0FDbEQsQ0FBQTtZQUVELElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDMUIsQ0FBQztJQUNILENBQUM7SUFFRCxhQUFhLENBQUMsT0FBb0I7UUFDaEMsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ3RELE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDdkQsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLENBQUE7UUFDM0QsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUEsQ0FBQyxnREFBZ0Q7UUFDL0csT0FBTyxNQUFNLENBQUE7SUFDZixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU07UUFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDbkUsQ0FBQzsrR0FqRVUsaUJBQWlCO21HQUFqQixpQkFBaUIscU5DckI5Qix3bUJBb0JBLHlERERZLFlBQVksZ09BQUUsZUFBZTs7NEZBRTVCLGlCQUFpQjtrQkFSN0IsU0FBUzsrQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDO3NGQUcvQixRQUFRO3NCQUFoQixLQUFLO2dCQU9rQixTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktbWF4LWxpbmVzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21heC1saW5lcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21heC1saW5lcy5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBNYXhMaW5lc0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIG1heExpbmVzID0gNlxuXG4gIGlzRXhwYW5kZWQgPSBmYWxzZVxuICBtYXhIZWlnaHQgPSAnJ1xuICBzaG93VG9nZ2xlQnV0dG9uID0gZmFsc2VcbiAgb2JzZXJ2ZXI6IFJlc2l6ZU9ic2VydmVyXG5cbiAgQFZpZXdDaGlsZCgnY29udGFpbmVyJykgY29udGFpbmVyITogRWxlbWVudFJlZlxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5jYWxjdWxhdGVNYXhIZWlnaHQoKVxuXG4gICAgdGhpcy5vYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigobXV0YXRpb25zKSA9PiB7XG4gICAgICBtdXRhdGlvbnMuZm9yRWFjaCgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2FsY3VsYXRlTWF4SGVpZ2h0KClcbiAgICAgIH0pXG4gICAgfSlcblxuICAgIHRoaXMub2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmNoaWxkcmVuWzBdKVxuICB9XG5cbiAgdG9nZ2xlRGlzcGxheSgpIHtcbiAgICB0aGlzLmlzRXhwYW5kZWQgPSAhdGhpcy5pc0V4cGFuZGVkXG4gICAgdGhpcy5jYWxjdWxhdGVNYXhIZWlnaHQoKVxuICB9XG5cbiAgY2FsY3VsYXRlTWF4SGVpZ2h0KCkge1xuICAgIGNvbnN0IGNvbnRhaW5lckVsZW1lbnQgPSB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50XG4gICAgY29uc3QgY29udGVudEVsZW1lbnQgPSBjb250YWluZXJFbGVtZW50LmNoaWxkcmVuWzBdXG4gICAgY29uc3QgY29udGVudEhlaWdodCA9IGNvbnRlbnRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodFxuXG4gICAgaWYgKGNvbnRlbnRIZWlnaHQpIHtcbiAgICAgIGlmIChjb250ZW50SGVpZ2h0ID4gdGhpcy5tYXhMaW5lcyAqIHRoaXMuZ2V0TGluZUhlaWdodChjb250ZW50RWxlbWVudCkpIHtcbiAgICAgICAgdGhpcy5zaG93VG9nZ2xlQnV0dG9uID0gdHJ1ZVxuXG4gICAgICAgIHRoaXMubWF4SGVpZ2h0ID0gdGhpcy5pc0V4cGFuZGVkXG4gICAgICAgICAgPyBgJHtjb250ZW50SGVpZ2h0fXB4YFxuICAgICAgICAgIDogYCR7dGhpcy5tYXhMaW5lcyAqIHRoaXMuZ2V0TGluZUhlaWdodChjb250ZW50RWxlbWVudCl9cHhgXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNob3dUb2dnbGVCdXR0b24gPSBmYWxzZVxuICAgICAgICB0aGlzLm1heEhlaWdodCA9IGAke2NvbnRlbnRIZWlnaHR9cHhgXG4gICAgICB9XG4gICAgICBjb250YWluZXJFbGVtZW50LnNldEF0dHJpYnV0ZShcbiAgICAgICAgJ3N0eWxlJyxcbiAgICAgICAgYG1heC1oZWlnaHQ6ICR7dGhpcy5tYXhIZWlnaHR9OyBvdmVyZmxvdzogaGlkZGVuYFxuICAgICAgKVxuXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgICB9XG4gIH1cblxuICBnZXRMaW5lSGVpZ2h0KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogbnVtYmVyIHtcbiAgICBjb25zdCBjb21wdXRlZFN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudClcbiAgICBjb25zdCBsaW5lSGVpZ2h0ID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLmxpbmVIZWlnaHQpXG4gICAgY29uc3QgZm9udFNpemUgPSBwYXJzZUZsb2F0KGNvbXB1dGVkU3R5bGUuZm9udFNpemUgfHwgJzE0JylcbiAgICBjb25zdCByZXN1bHQgPSBpc05hTihsaW5lSGVpZ2h0KSA/IGZvbnRTaXplICogMS4yIDogbGluZUhlaWdodCAvLyBVc2UgYSBkZWZhdWx0IGlmIGxpbmUgaGVpZ2h0IGlzIG5vdCBzcGVjaWZpZWRcbiAgICByZXR1cm4gcmVzdWx0XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMub2JzZXJ2ZXIpIHJldHVyblxuICAgIHRoaXMub2JzZXJ2ZXIudW5vYnNlcnZlKHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF0pXG4gIH1cbn1cbiIsIjxkaXZcbiAgI2NvbnRhaW5lclxuICBjbGFzcz1cIm1heC1saW5lcyBvdmVyZmxvdy1oaWRkZW4gdHJhbnNpdGlvbi1bbWF4LWhlaWdodF0gZHVyYXRpb24tMzAwIHJlbGF0aXZlXCJcbiAgW25nQ2xhc3NdPVwiaXNFeHBhbmRlZCA/ICdlYXNlLWluJyA6ICdlYXNlLW91dCdcIlxuICBbc3R5bGUubWF4SGVpZ2h0XT1cIm1heEhlaWdodFwiXG4+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPGRpdlxuICAgICpuZ0lmPVwic2hvd1RvZ2dsZUJ1dHRvbiAmJiAhaXNFeHBhbmRlZFwiXG4gICAgY2xhc3M9XCJhYnNvbHV0ZSBpbnNldC14LTAgYm90dG9tLTAgYmctZ3JhZGllbnQtdG8tYiBmcm9tLXRyYW5zcGFyZW50IHRvLXdoaXRlIGgtMTBcIlxuICA+PC9kaXY+XG48L2Rpdj5cbjxkaXZcbiAgKm5nSWY9XCJzaG93VG9nZ2xlQnV0dG9uXCJcbiAgKGNsaWNrKT1cInRvZ2dsZURpc3BsYXkoKVwiXG4gIGNsYXNzPVwidGV4dC1zZWNvbmRhcnkgY3Vyc29yLXBvaW50ZXIgcHQtMi41XCJcbiAgZGF0YS1jeT1cInJlYWRNb3JlQnV0dG9uXCJcbj5cbiAge3sgKGlzRXhwYW5kZWQgPyAndWkucmVhZExlc3MnIDogJ3VpLnJlYWRNb3JlJykgfCB0cmFuc2xhdGUgfX1cbjwvZGl2PlxuIl19
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4LWxpbmVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbGF5b3V0L3NyYy9saWIvbWF4LWxpbmVzL21heC1saW5lcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL21heC1saW5lcy9tYXgtbGluZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUE7OztBQVVuRCxNQUFNLE9BQU8saUJBQWlCO0lBVTVCLFlBQW9CLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBVGpDLGFBQVEsR0FBRyxDQUFDLENBQUE7UUFFckIsZUFBVSxHQUFHLEtBQUssQ0FBQTtRQUNsQixjQUFTLEdBQUcsRUFBRSxDQUFBO1FBQ2QscUJBQWdCLEdBQUcsS0FBSyxDQUFBO0lBS3FCLENBQUM7SUFFOUMsZUFBZTtRQUNiLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1FBRXpCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxjQUFjLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUMvQyxTQUFTLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRTtnQkFDckIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7WUFDM0IsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDLENBQUMsQ0FBQTtRQUVGLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ2pFLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUE7UUFDbEMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7SUFDM0IsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFBO1FBQ3JELE1BQU0sY0FBYyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNuRCxNQUFNLGFBQWEsR0FBRyxjQUFjLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxNQUFNLENBQUE7UUFFbkUsSUFBSSxhQUFhLEVBQUUsQ0FBQztZQUNsQixJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztnQkFDdkUsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQTtnQkFFNUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVTtvQkFDOUIsQ0FBQyxDQUFDLEdBQUcsYUFBYSxJQUFJO29CQUN0QixDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQTtZQUMvRCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQTtnQkFDN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLGFBQWEsSUFBSSxDQUFBO1lBQ3ZDLENBQUM7WUFDRCxnQkFBZ0IsQ0FBQyxZQUFZLENBQzNCLE9BQU8sRUFDUCxlQUFlLElBQUksQ0FBQyxTQUFTLG9CQUFvQixDQUNsRCxDQUFBO1lBRUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUVELGFBQWEsQ0FBQyxPQUFvQjtRQUNoQyxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDdEQsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUN2RCxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsQ0FBQTtRQUMzRCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQSxDQUFDLGdEQUFnRDtRQUMvRyxPQUFPLE1BQU0sQ0FBQTtJQUNmLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTTtRQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNuRSxDQUFDOytHQWpFVSxpQkFBaUI7bUdBQWpCLGlCQUFpQixxTkNyQjlCLHNtQkFvQkEseURERFksWUFBWSw0TkFBRSxhQUFhOzs0RkFFMUIsaUJBQWlCO2tCQVI3QixTQUFTOytCQUNFLGlCQUFpQixtQkFHVix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUM7c0ZBRzdCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBT2tCLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktbWF4LWxpbmVzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21heC1saW5lcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21heC1saW5lcy5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUcmFuc2xhdGVQaXBlXSxcbn0pXG5leHBvcnQgY2xhc3MgTWF4TGluZXNDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBtYXhMaW5lcyA9IDZcblxuICBpc0V4cGFuZGVkID0gZmFsc2VcbiAgbWF4SGVpZ2h0ID0gJydcbiAgc2hvd1RvZ2dsZUJ1dHRvbiA9IGZhbHNlXG4gIG9ic2VydmVyOiBSZXNpemVPYnNlcnZlclxuXG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicpIGNvbnRhaW5lciE6IEVsZW1lbnRSZWZcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuY2FsY3VsYXRlTWF4SGVpZ2h0KClcblxuICAgIHRoaXMub2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKG11dGF0aW9ucykgPT4ge1xuICAgICAgbXV0YXRpb25zLmZvckVhY2goKCkgPT4ge1xuICAgICAgICB0aGlzLmNhbGN1bGF0ZU1heEhlaWdodCgpXG4gICAgICB9KVxuICAgIH0pXG5cbiAgICB0aGlzLm9ic2VydmVyLm9ic2VydmUodGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5jaGlsZHJlblswXSlcbiAgfVxuXG4gIHRvZ2dsZURpc3BsYXkoKSB7XG4gICAgdGhpcy5pc0V4cGFuZGVkID0gIXRoaXMuaXNFeHBhbmRlZFxuICAgIHRoaXMuY2FsY3VsYXRlTWF4SGVpZ2h0KClcbiAgfVxuXG4gIGNhbGN1bGF0ZU1heEhlaWdodCgpIHtcbiAgICBjb25zdCBjb250YWluZXJFbGVtZW50ID0gdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudFxuICAgIGNvbnN0IGNvbnRlbnRFbGVtZW50ID0gY29udGFpbmVyRWxlbWVudC5jaGlsZHJlblswXVxuICAgIGNvbnN0IGNvbnRlbnRIZWlnaHQgPSBjb250ZW50RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHRcblxuICAgIGlmIChjb250ZW50SGVpZ2h0KSB7XG4gICAgICBpZiAoY29udGVudEhlaWdodCA+IHRoaXMubWF4TGluZXMgKiB0aGlzLmdldExpbmVIZWlnaHQoY29udGVudEVsZW1lbnQpKSB7XG4gICAgICAgIHRoaXMuc2hvd1RvZ2dsZUJ1dHRvbiA9IHRydWVcblxuICAgICAgICB0aGlzLm1heEhlaWdodCA9IHRoaXMuaXNFeHBhbmRlZFxuICAgICAgICAgID8gYCR7Y29udGVudEhlaWdodH1weGBcbiAgICAgICAgICA6IGAke3RoaXMubWF4TGluZXMgKiB0aGlzLmdldExpbmVIZWlnaHQoY29udGVudEVsZW1lbnQpfXB4YFxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zaG93VG9nZ2xlQnV0dG9uID0gZmFsc2VcbiAgICAgICAgdGhpcy5tYXhIZWlnaHQgPSBgJHtjb250ZW50SGVpZ2h0fXB4YFxuICAgICAgfVxuICAgICAgY29udGFpbmVyRWxlbWVudC5zZXRBdHRyaWJ1dGUoXG4gICAgICAgICdzdHlsZScsXG4gICAgICAgIGBtYXgtaGVpZ2h0OiAke3RoaXMubWF4SGVpZ2h0fTsgb3ZlcmZsb3c6IGhpZGRlbmBcbiAgICAgIClcblxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpXG4gICAgfVxuICB9XG5cbiAgZ2V0TGluZUhlaWdodChlbGVtZW50OiBIVE1MRWxlbWVudCk6IG51bWJlciB7XG4gICAgY29uc3QgY29tcHV0ZWRTdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpXG4gICAgY29uc3QgbGluZUhlaWdodCA9IHBhcnNlRmxvYXQoY29tcHV0ZWRTdHlsZS5saW5lSGVpZ2h0KVxuICAgIGNvbnN0IGZvbnRTaXplID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLmZvbnRTaXplIHx8ICcxNCcpXG4gICAgY29uc3QgcmVzdWx0ID0gaXNOYU4obGluZUhlaWdodCkgPyBmb250U2l6ZSAqIDEuMiA6IGxpbmVIZWlnaHQgLy8gVXNlIGEgZGVmYXVsdCBpZiBsaW5lIGhlaWdodCBpcyBub3Qgc3BlY2lmaWVkXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm9ic2VydmVyKSByZXR1cm5cbiAgICB0aGlzLm9ic2VydmVyLnVub2JzZXJ2ZSh0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmNoaWxkcmVuWzBdKVxuICB9XG59XG4iLCI8ZGl2XG4gICNjb250YWluZXJcbiAgY2xhc3M9XCJtYXgtbGluZXMgb3ZlcmZsb3ctaGlkZGVuIHRyYW5zaXRpb24tW21heC1oZWlnaHRdIGR1cmF0aW9uLTMwMCByZWxhdGl2ZVwiXG4gIFtuZ0NsYXNzXT1cImlzRXhwYW5kZWQgPyAnZWFzZS1pbicgOiAnZWFzZS1vdXQnXCJcbiAgW3N0eWxlLm1heEhlaWdodF09XCJtYXhIZWlnaHRcIlxuPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDxkaXZcbiAgICAqbmdJZj1cInNob3dUb2dnbGVCdXR0b24gJiYgIWlzRXhwYW5kZWRcIlxuICAgIGNsYXNzPVwiYWJzb2x1dGUgaW5zZXQteC0wIGJvdHRvbS0wIGJnLWdyYWRpZW50LXRvLWIgZnJvbS10cmFuc3BhcmVudCB0by13aGl0ZSBoLTEwXCJcbiAgPjwvZGl2PlxuPC9kaXY+XG48ZGl2XG4gICpuZ0lmPVwic2hvd1RvZ2dsZUJ1dHRvblwiXG4gIChjbGljayk9XCJ0b2dnbGVEaXNwbGF5KClcIlxuICBjbGFzcz1cInRleHQtcHJpbWFyeSBjdXJzb3ItcG9pbnRlciBwdC0yLjVcIlxuICBkYXRhLWN5PVwicmVhZE1vcmVCdXR0b25cIlxuPlxuICB7eyAoaXNFeHBhbmRlZCA/ICd1aS5yZWFkTGVzcycgOiAndWkucmVhZE1vcmUnKSB8IHRyYW5zbGF0ZSB9fVxuPC9kaXY+XG4iXX0=