geonetwork-ui 2.6.0-dev.ceb4be4c1 → 2.6.0-dev.cfd9cd166

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 (595) hide show
  1. package/README.md +2 -3
  2. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.mjs +11 -2
  3. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.mjs +3 -3
  4. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +17 -11
  5. package/esm2022/libs/api/metadata-converter/src/lib/gn4/metadata-url.service.mjs +3 -3
  6. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +6 -6
  7. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +3 -3
  8. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +14 -6
  9. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +4 -4
  10. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +5 -5
  11. package/esm2022/libs/api/metadata-converter/src/lib/translate-utils.mjs +17 -0
  12. package/esm2022/libs/api/repository/src/lib/gn4/auth/auth.service.mjs +4 -4
  13. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/constant.mjs +4 -2
  14. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +18 -16
  15. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +53 -14
  16. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.mjs +8 -8
  17. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +14 -11
  18. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +23 -13
  19. package/esm2022/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.mjs +2 -1
  20. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  21. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  22. package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +7 -31
  23. package/esm2022/libs/feature/catalog/src/lib/sources/sources.service.mjs +9 -8
  24. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +4 -4
  25. package/esm2022/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.mjs +4 -5
  26. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +5 -3
  27. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +4 -4
  28. package/esm2022/libs/feature/editor/src/index.mjs +1 -4
  29. package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +2 -1
  30. package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +13 -7
  31. package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +4 -1
  32. package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +5 -1
  33. package/esm2022/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.mjs +5 -7
  34. package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +8 -13
  35. package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +5 -6
  36. package/esm2022/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.mjs +268 -11
  37. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +4 -13
  38. package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +5 -5
  39. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.mjs +5 -8
  40. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.mjs +4 -5
  41. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.mjs +6 -10
  42. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.mjs +8 -14
  43. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +4 -15
  44. 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
  45. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.mjs +4 -4
  46. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.mjs +4 -4
  47. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +4 -4
  48. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +4 -4
  49. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +4 -4
  50. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +6 -17
  51. package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +4 -5
  52. package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +12 -30
  53. package/esm2022/libs/feature/editor/src/lib/models/index.mjs +1 -3
  54. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +5 -6
  55. package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +11 -8
  56. package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +11 -8
  57. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +11 -6
  58. package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +10 -5
  59. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +3 -36
  60. package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +5 -11
  61. package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +6 -6
  62. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +20 -19
  63. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +6 -7
  64. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +4 -5
  65. package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +6 -7
  66. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +4 -4
  67. package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +8 -22
  68. package/esm2022/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.mjs +5 -5
  69. package/esm2022/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.mjs +15 -7
  70. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +77 -28
  71. package/esm2022/libs/feature/search/src/lib/constants.mjs +3 -2
  72. package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +4 -4
  73. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +24 -27
  74. package/esm2022/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.mjs +3 -3
  75. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +8 -6
  76. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +6 -6
  77. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +13 -10
  78. package/esm2022/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.mjs +5 -7
  79. package/esm2022/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.mjs +4 -4
  80. package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +5 -4
  81. package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +4 -5
  82. package/esm2022/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.mjs +4 -5
  83. package/esm2022/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.mjs +4 -5
  84. package/esm2022/libs/ui/dataviz/src/index.mjs +1 -2
  85. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.component.mjs +4 -4
  86. package/esm2022/libs/ui/dataviz/src/lib/figure/figure.component.mjs +5 -5
  87. package/esm2022/libs/ui/elements/src/index.mjs +1 -3
  88. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +6 -6
  89. package/esm2022/libs/ui/elements/src/lib/application-banner/application-banner.component.mjs +5 -5
  90. package/esm2022/libs/ui/elements/src/lib/avatar/avatar.component.mjs +4 -3
  91. package/esm2022/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.mjs +5 -3
  92. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +4 -5
  93. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +4 -4
  94. package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +4 -5
  95. package/esm2022/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.mjs +4 -5
  96. package/esm2022/libs/ui/elements/src/lib/image-input/image-input.component.mjs +4 -5
  97. package/esm2022/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.mjs +19 -36
  98. package/esm2022/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.mjs +58 -0
  99. package/esm2022/libs/ui/elements/src/lib/kind-badge/kind-badge.component.mjs +7 -10
  100. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +4 -5
  101. package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +3 -6
  102. package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +4 -5
  103. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +4 -5
  104. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +6 -7
  105. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +39 -16
  106. package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +8 -5
  107. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +7 -5
  108. package/esm2022/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.mjs +52 -32
  109. package/esm2022/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.mjs +5 -4
  110. package/esm2022/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.mjs +4 -5
  111. package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +5 -4
  112. package/esm2022/libs/ui/inputs/src/index.mjs +1 -2
  113. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +5 -6
  114. package/esm2022/libs/ui/inputs/src/lib/checkbox/checkbox.component.mjs +4 -3
  115. package/esm2022/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.mjs +7 -6
  116. package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +29 -7
  117. package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +4 -5
  118. package/esm2022/libs/ui/inputs/src/lib/file-input/file-input.component.mjs +5 -7
  119. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.mjs +4 -3
  120. package/esm2022/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.mjs +12 -7
  121. package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +4 -5
  122. package/esm2022/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.mjs +3 -3
  123. package/esm2022/libs/ui/layout/src/index.mjs +2 -2
  124. package/esm2022/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.mjs +3 -2
  125. package/esm2022/libs/ui/layout/src/lib/cell-popin/cell-popin.component.mjs +110 -0
  126. package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +4 -5
  127. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +21 -12
  128. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +4 -5
  129. package/esm2022/libs/ui/layout/src/lib/pagination/pagination.component.mjs +4 -5
  130. package/esm2022/libs/ui/layout/src/lib/sticky-header/sticky-header.component.mjs +4 -3
  131. package/esm2022/libs/ui/layout/src/lib/truncated-text/truncated-text.component.mjs +17 -53
  132. package/esm2022/libs/ui/map/src/lib/components/map-container/map-container.component.mjs +4 -5
  133. package/esm2022/libs/ui/search/src/index.mjs +2 -1
  134. package/esm2022/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.mjs +6 -6
  135. package/esm2022/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.mjs +3 -3
  136. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +24 -17
  137. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +28 -17
  138. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +32 -27
  139. package/esm2022/libs/ui/widgets/src/index.mjs +1 -2
  140. package/esm2022/libs/ui/widgets/src/lib/color-scale/color-scale.component.mjs +3 -3
  141. package/esm2022/libs/util/app-config/src/lib/app-config.mjs +1 -3
  142. package/esm2022/libs/util/i18n/src/index.mjs +2 -3
  143. package/esm2022/libs/util/i18n/src/lib/embedded.translate.loader.mjs +3 -2
  144. package/esm2022/libs/util/i18n/src/lib/i18n.constants.mjs +36 -28
  145. package/esm2022/libs/util/i18n/src/lib/i18n.interceptor.mjs +10 -9
  146. package/esm2022/libs/util/i18n/src/lib/i18n.providers.mjs +41 -0
  147. package/esm2022/libs/util/i18n/src/lib/language-codes.mjs +63 -3
  148. package/esm2022/libs/util/shared/src/index.mjs +2 -2
  149. package/esm2022/libs/util/shared/src/lib/image-fallback.directive.mjs +3 -2
  150. package/esm2022/libs/util/shared/src/lib/record.util.mjs +56 -0
  151. package/esm2022/translations/de.json +41 -22
  152. package/esm2022/translations/en.json +41 -22
  153. package/esm2022/translations/es.json +40 -21
  154. package/esm2022/translations/fr.json +41 -22
  155. package/esm2022/translations/it.json +40 -21
  156. package/esm2022/translations/nl.json +40 -21
  157. package/esm2022/translations/pt.json +40 -21
  158. package/esm2022/translations/sk.json +602 -0
  159. package/fesm2022/geonetwork-ui.mjs +11190 -10577
  160. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  161. package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts.map +1 -1
  162. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +4 -4
  163. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  164. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +1 -0
  165. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  166. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -1
  167. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  168. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  169. package/libs/api/metadata-converter/src/lib/translate-utils.d.ts +2 -0
  170. package/libs/api/metadata-converter/src/lib/translate-utils.d.ts.map +1 -0
  171. package/libs/api/repository/src/lib/gn4/auth/auth.service.d.ts.map +1 -1
  172. package/libs/api/repository/src/lib/gn4/elasticsearch/constant.d.ts.map +1 -1
  173. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +8 -6
  174. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
  175. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +11 -3
  176. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  177. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts +1 -0
  178. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts.map +1 -1
  179. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts +4 -4
  180. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts.map +1 -1
  181. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +6 -3
  182. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  183. package/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.d.ts +1 -0
  184. package/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.d.ts.map +1 -1
  185. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +20 -17
  186. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  187. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +5 -1
  188. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  189. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts +4 -8
  190. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts.map +1 -1
  191. package/libs/feature/catalog/src/lib/sources/sources.service.d.ts +3 -3
  192. package/libs/feature/catalog/src/lib/sources/sources.service.d.ts.map +1 -1
  193. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  194. package/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.d.ts.map +1 -1
  195. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  196. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  197. package/libs/feature/editor/src/index.d.ts +0 -3
  198. package/libs/feature/editor/src/index.d.ts.map +1 -1
  199. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +8 -1
  200. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -1
  201. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts +10 -12
  202. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -1
  203. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +2 -1
  204. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -1
  205. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -1
  206. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +1 -1
  207. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -1
  208. package/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.d.ts.map +1 -1
  209. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts.map +1 -1
  210. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts.map +1 -1
  211. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts +48 -3
  212. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts.map +1 -1
  213. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -1
  214. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts.map +1 -1
  215. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.d.ts.map +1 -1
  216. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts.map +1 -1
  217. 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
  218. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -1
  219. 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
  220. 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
  221. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts.map +1 -1
  222. 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
  223. 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
  224. 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
  225. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  226. package/libs/feature/editor/src/lib/feature-editor.module.d.ts +10 -17
  227. package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
  228. package/libs/feature/editor/src/lib/models/index.d.ts +0 -2
  229. package/libs/feature/editor/src/lib/models/index.d.ts.map +1 -1
  230. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts.map +1 -1
  231. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -1
  232. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
  233. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -1
  234. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts.map +1 -1
  235. package/libs/feature/map/src/lib/feature-map.module.d.ts +2 -11
  236. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  237. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts.map +1 -1
  238. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
  239. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +7 -4
  240. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  241. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  242. package/libs/feature/record/src/lib/feature-record.module.d.ts +8 -12
  243. package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
  244. package/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.d.ts.map +1 -1
  245. package/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.d.ts.map +1 -1
  246. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +13 -6
  247. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  248. package/libs/feature/search/src/lib/constants.d.ts.map +1 -1
  249. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts.map +1 -1
  250. package/libs/feature/search/src/lib/feature-search.module.d.ts +24 -24
  251. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  252. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts +2 -1
  253. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
  254. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +6 -5
  255. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -1
  256. package/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.d.ts +1 -2
  257. package/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.d.ts.map +1 -1
  258. package/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.d.ts.map +1 -1
  259. package/libs/feature/search/src/lib/utils/service/fields.d.ts +1 -2
  260. package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
  261. package/libs/ui/dataviz/src/index.d.ts +0 -1
  262. package/libs/ui/dataviz/src/index.d.ts.map +1 -1
  263. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts.map +1 -1
  264. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts +1 -1
  265. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts.map +1 -1
  266. package/libs/ui/elements/src/index.d.ts +0 -2
  267. package/libs/ui/elements/src/index.d.ts.map +1 -1
  268. package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts.map +1 -1
  269. package/libs/ui/elements/src/lib/avatar/avatar.component.d.ts +1 -1
  270. package/libs/ui/elements/src/lib/avatar/avatar.component.d.ts.map +1 -1
  271. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts +2 -0
  272. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts.map +1 -1
  273. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  274. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts +4 -7
  275. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts.map +1 -1
  276. package/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.d.ts +14 -0
  277. package/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.d.ts.map +1 -0
  278. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts.map +1 -1
  279. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts.map +1 -1
  280. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
  281. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +3 -0
  282. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
  283. package/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.d.ts.map +1 -1
  284. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
  285. package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts +20 -9
  286. package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts.map +1 -1
  287. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts.map +1 -1
  288. package/libs/ui/elements/src/lib/user-preview/user-preview.component.d.ts +1 -1
  289. package/libs/ui/elements/src/lib/user-preview/user-preview.component.d.ts.map +1 -1
  290. package/libs/ui/inputs/src/index.d.ts +0 -1
  291. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  292. package/libs/ui/inputs/src/lib/checkbox/checkbox.component.d.ts +1 -1
  293. package/libs/ui/inputs/src/lib/checkbox/checkbox.component.d.ts.map +1 -1
  294. package/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.d.ts +1 -1
  295. package/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.d.ts.map +1 -1
  296. package/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.d.ts +1 -1
  297. package/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.d.ts.map +1 -1
  298. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts.map +1 -1
  299. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts +1 -1
  300. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts.map +1 -1
  301. package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts.map +1 -1
  302. package/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.d.ts +1 -1
  303. package/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.d.ts.map +1 -1
  304. package/libs/ui/layout/src/index.d.ts +1 -1
  305. package/libs/ui/layout/src/index.d.ts.map +1 -1
  306. package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts +1 -1
  307. package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts.map +1 -1
  308. package/libs/ui/layout/src/lib/cell-popin/cell-popin.component.d.ts +28 -0
  309. package/libs/ui/layout/src/lib/cell-popin/cell-popin.component.d.ts.map +1 -0
  310. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +4 -2
  311. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -1
  312. package/libs/ui/layout/src/lib/sticky-header/sticky-header.component.d.ts +1 -1
  313. package/libs/ui/layout/src/lib/sticky-header/sticky-header.component.d.ts.map +1 -1
  314. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts +6 -11
  315. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts.map +1 -1
  316. package/libs/ui/search/src/index.d.ts +1 -0
  317. package/libs/ui/search/src/index.d.ts.map +1 -1
  318. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +4 -3
  319. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -1
  320. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +5 -3
  321. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  322. package/libs/ui/search/src/lib/ui-search.module.d.ts +12 -11
  323. package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
  324. package/libs/ui/widgets/src/index.d.ts +0 -1
  325. package/libs/ui/widgets/src/index.d.ts.map +1 -1
  326. package/libs/ui/widgets/src/lib/color-scale/color-scale.component.d.ts +1 -1
  327. package/libs/ui/widgets/src/lib/color-scale/color-scale.component.d.ts.map +1 -1
  328. package/libs/util/app-config/src/lib/app-config.d.ts +0 -1
  329. package/libs/util/app-config/src/lib/app-config.d.ts.map +1 -1
  330. package/libs/util/i18n/src/index.d.ts +1 -2
  331. package/libs/util/i18n/src/index.d.ts.map +1 -1
  332. package/libs/util/i18n/src/lib/embedded.translate.loader.d.ts +1 -1
  333. package/libs/util/i18n/src/lib/embedded.translate.loader.d.ts.map +1 -1
  334. package/libs/util/i18n/src/lib/i18n.constants.d.ts +6 -15
  335. package/libs/util/i18n/src/lib/i18n.constants.d.ts.map +1 -1
  336. package/libs/util/i18n/src/lib/i18n.interceptor.d.ts +5 -5
  337. package/libs/util/i18n/src/lib/i18n.interceptor.d.ts.map +1 -1
  338. package/libs/util/i18n/src/lib/i18n.providers.d.ts +4 -0
  339. package/libs/util/i18n/src/lib/i18n.providers.d.ts.map +1 -0
  340. package/libs/util/i18n/src/lib/language-codes.d.ts +15 -19
  341. package/libs/util/i18n/src/lib/language-codes.d.ts.map +1 -1
  342. package/libs/util/shared/src/index.d.ts +1 -1
  343. package/libs/util/shared/src/index.d.ts.map +1 -1
  344. package/libs/util/shared/src/lib/image-fallback.directive.d.ts +1 -1
  345. package/libs/util/shared/src/lib/image-fallback.directive.d.ts.map +1 -1
  346. package/libs/util/shared/src/lib/record.util.d.ts +3 -0
  347. package/libs/util/shared/src/lib/record.util.d.ts.map +1 -0
  348. package/package.json +3 -3
  349. package/src/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.ts +10 -1
  350. package/src/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.ts +2 -2
  351. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +1 -1
  352. package/src/libs/api/metadata-converter/src/lib/fixtures/metadata-for-i18n.records.ts +4196 -0
  353. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +19 -6
  354. package/src/libs/api/metadata-converter/src/lib/gn4/metadata-url.service.ts +4 -4
  355. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +11 -5
  356. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +2 -2
  357. package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +14 -8
  358. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +8 -5
  359. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +5 -4
  360. package/src/libs/api/metadata-converter/src/lib/translate-utils.ts +17 -0
  361. package/src/libs/api/repository/src/lib/gn4/auth/auth.service.ts +3 -6
  362. package/src/libs/api/repository/src/lib/gn4/elasticsearch/constant.ts +3 -1
  363. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +14 -6
  364. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +71 -13
  365. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.ts +8 -7
  366. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +13 -6
  367. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +24 -20
  368. package/src/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.ts +3 -0
  369. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +20 -14
  370. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +9 -1
  371. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +113 -0
  372. package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +4 -17
  373. package/src/libs/feature/catalog/src/lib/sources/sources.service.ts +7 -3
  374. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +2 -2
  375. package/src/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.ts +2 -2
  376. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +4 -2
  377. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +2 -2
  378. package/src/libs/feature/editor/src/index.ts +0 -3
  379. package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +9 -1
  380. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +23 -12
  381. package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +13 -1
  382. package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +9 -1
  383. package/src/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.ts +3 -4
  384. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +5 -16
  385. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +7 -5
  386. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.html +117 -11
  387. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.ts +322 -6
  388. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +2 -10
  389. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +3 -2
  390. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.ts +3 -4
  391. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.ts +2 -2
  392. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.ts +4 -11
  393. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +5 -9
  394. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +2 -17
  395. 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
  396. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.ts +2 -2
  397. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.ts +2 -2
  398. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +2 -2
  399. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +2 -2
  400. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +2 -2
  401. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +2 -2
  402. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +2 -15
  403. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +2 -2
  404. package/src/libs/feature/editor/src/lib/feature-editor.module.ts +4 -17
  405. package/src/libs/feature/editor/src/lib/models/index.ts +0 -2
  406. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.ts +2 -1
  407. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +8 -3
  408. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +10 -3
  409. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +8 -2
  410. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.ts +8 -2
  411. package/src/libs/feature/map/src/lib/feature-map.module.ts +0 -17
  412. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +3 -8
  413. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +3 -2
  414. package/src/libs/feature/record/src/lib/data-view/data-view.component.html +1 -1
  415. package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +22 -19
  416. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +2 -2
  417. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.ts +2 -2
  418. package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +2 -2
  419. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +2 -2
  420. package/src/libs/feature/record/src/lib/feature-record.module.ts +4 -13
  421. package/src/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.ts +4 -3
  422. package/src/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.ts +10 -4
  423. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +27 -9
  424. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +113 -30
  425. package/src/libs/feature/search/src/lib/constants.ts +2 -1
  426. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +2 -2
  427. package/src/libs/feature/search/src/lib/feature-search.module.ts +13 -18
  428. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +1 -1
  429. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +5 -0
  430. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +1 -0
  431. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +13 -3
  432. package/src/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.ts +10 -4
  433. package/src/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.ts +2 -2
  434. package/src/libs/feature/search/src/lib/utils/service/fields.ts +4 -3
  435. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.ts +2 -2
  436. package/src/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.ts +2 -2
  437. package/src/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.ts +2 -2
  438. package/src/libs/ui/dataviz/src/index.ts +0 -1
  439. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.ts +2 -2
  440. package/src/libs/ui/dataviz/src/lib/figure/figure.component.html +0 -1
  441. package/src/libs/ui/dataviz/src/lib/figure/figure.component.ts +4 -0
  442. package/src/libs/ui/elements/src/index.ts +0 -2
  443. package/src/libs/ui/elements/src/lib/api-card/api-card.component.ts +3 -2
  444. package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.html +6 -6
  445. package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.ts +2 -2
  446. package/src/libs/ui/elements/src/lib/avatar/avatar.component.ts +3 -0
  447. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.html +6 -2
  448. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.ts +5 -1
  449. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +2 -2
  450. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +2 -5
  451. package/src/libs/ui/elements/src/lib/error/error.component.ts +2 -2
  452. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.ts +2 -2
  453. package/src/libs/ui/elements/src/lib/image-input/image-input.component.ts +2 -2
  454. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.html +8 -76
  455. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.ts +22 -55
  456. package/src/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.html +69 -0
  457. package/src/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.ts +61 -0
  458. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.ts +4 -5
  459. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +2 -2
  460. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +1 -4
  461. package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.ts +2 -2
  462. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.ts +2 -2
  463. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +4 -7
  464. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +51 -13
  465. package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.ts +6 -2
  466. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +4 -2
  467. package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.html +96 -37
  468. package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.ts +62 -31
  469. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.ts +7 -2
  470. package/src/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.ts +2 -2
  471. package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.ts +4 -0
  472. package/src/libs/ui/inputs/src/index.ts +0 -1
  473. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +2 -2
  474. package/src/libs/ui/inputs/src/lib/checkbox/checkbox.component.ts +3 -0
  475. package/src/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.html +1 -1
  476. package/src/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.ts +4 -0
  477. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.ts +27 -0
  478. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.ts +2 -2
  479. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +3 -4
  480. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.ts +3 -0
  481. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.ts +9 -3
  482. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +2 -2
  483. package/src/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.ts +1 -0
  484. package/src/libs/ui/layout/src/index.ts +1 -1
  485. package/src/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.ts +1 -0
  486. package/src/libs/ui/layout/src/lib/cell-popin/cell-popin.component.html +40 -0
  487. package/src/libs/ui/layout/src/lib/cell-popin/cell-popin.component.ts +141 -0
  488. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +2 -2
  489. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +2 -2
  490. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +15 -8
  491. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.ts +2 -2
  492. package/src/libs/ui/layout/src/lib/pagination/pagination.component.ts +2 -2
  493. package/src/libs/ui/layout/src/lib/sticky-header/sticky-header.component.ts +3 -0
  494. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.html +25 -42
  495. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.ts +12 -58
  496. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +2 -2
  497. package/src/libs/ui/search/src/index.ts +1 -0
  498. package/src/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.html +4 -1
  499. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +16 -6
  500. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +18 -15
  501. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +15 -23
  502. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +34 -13
  503. package/src/libs/ui/search/src/lib/ui-search.module.ts +15 -11
  504. package/src/libs/ui/widgets/src/index.ts +0 -1
  505. package/src/libs/ui/widgets/src/lib/color-scale/color-scale.component.ts +1 -0
  506. package/src/libs/util/app-config/src/lib/app-config.ts +0 -2
  507. package/src/libs/util/i18n/src/index.ts +1 -2
  508. package/src/libs/util/i18n/src/lib/embedded.translate.loader.ts +4 -3
  509. package/src/libs/util/i18n/src/lib/i18n.constants.ts +39 -29
  510. package/src/libs/util/i18n/src/lib/i18n.interceptor.ts +11 -9
  511. package/src/libs/util/i18n/src/lib/i18n.providers.ts +68 -0
  512. package/src/libs/util/i18n/src/lib/language-codes.ts +67 -2
  513. package/src/libs/util/shared/src/index.ts +1 -1
  514. package/src/libs/util/shared/src/lib/image-fallback.directive.ts +1 -0
  515. package/src/libs/util/shared/src/lib/record.util.ts +114 -0
  516. package/tailwind.base.css +1 -1
  517. package/translations/de.json +41 -22
  518. package/translations/en.json +41 -22
  519. package/translations/es.json +40 -21
  520. package/translations/fr.json +41 -22
  521. package/translations/it.json +40 -21
  522. package/translations/nl.json +40 -21
  523. package/translations/pt.json +40 -21
  524. package/translations/sk.json +40 -21
  525. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.mjs +0 -44
  526. package/esm2022/libs/feature/editor/src/lib/components/wizard/wizard.component.mjs +0 -75
  527. package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +0 -160
  528. package/esm2022/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.mjs +0 -53
  529. package/esm2022/libs/feature/editor/src/lib/models/wizard-field.model.mjs +0 -2
  530. package/esm2022/libs/feature/editor/src/lib/models/wizard-field.type.mjs +0 -8
  531. package/esm2022/libs/feature/editor/src/lib/services/wizard.service.mjs +0 -87
  532. package/esm2022/libs/ui/dataviz/src/lib/ui-dataviz.module.mjs +0 -47
  533. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +0 -56
  534. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +0 -130
  535. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +0 -160
  536. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +0 -23
  537. package/esm2022/libs/ui/widgets/src/lib/ui-widgets.module.mjs +0 -46
  538. package/esm2022/libs/util/i18n/src/lib/lang.service.mjs +0 -31
  539. package/esm2022/libs/util/i18n/src/lib/util-i18n.module.mjs +0 -37
  540. package/esm2022/libs/util/shared/src/lib/util-shared.module.mjs +0 -18
  541. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts +0 -14
  542. 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
  543. package/libs/feature/editor/src/lib/components/wizard/wizard.component.d.ts +0 -31
  544. package/libs/feature/editor/src/lib/components/wizard/wizard.component.d.ts.map +0 -1
  545. package/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.d.ts +0 -43
  546. package/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.d.ts.map +0 -1
  547. package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts +0 -17
  548. package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts.map +0 -1
  549. package/libs/feature/editor/src/lib/models/wizard-field.model.d.ts +0 -10
  550. package/libs/feature/editor/src/lib/models/wizard-field.model.d.ts.map +0 -1
  551. package/libs/feature/editor/src/lib/models/wizard-field.type.d.ts +0 -7
  552. package/libs/feature/editor/src/lib/models/wizard-field.type.d.ts.map +0 -1
  553. package/libs/feature/editor/src/lib/services/wizard.service.d.ts +0 -33
  554. package/libs/feature/editor/src/lib/services/wizard.service.d.ts.map +0 -1
  555. package/libs/ui/dataviz/src/lib/ui-dataviz.module.d.ts +0 -11
  556. package/libs/ui/dataviz/src/lib/ui-dataviz.module.d.ts.map +0 -1
  557. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +0 -19
  558. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +0 -1
  559. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +0 -31
  560. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +0 -1
  561. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +0 -35
  562. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +0 -1
  563. package/libs/ui/layout/src/lib/ui-layout.module.d.ts +0 -12
  564. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +0 -1
  565. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts +0 -15
  566. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts.map +0 -1
  567. package/libs/util/i18n/src/lib/lang.service.d.ts +0 -13
  568. package/libs/util/i18n/src/lib/lang.service.d.ts.map +0 -1
  569. package/libs/util/i18n/src/lib/util-i18n.module.d.ts +0 -12
  570. package/libs/util/i18n/src/lib/util-i18n.module.d.ts.map +0 -1
  571. package/libs/util/shared/src/lib/util-shared.module.d.ts +0 -9
  572. package/libs/util/shared/src/lib/util-shared.module.d.ts.map +0 -1
  573. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.css +0 -5
  574. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.html +0 -22
  575. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.ts +0 -93
  576. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.css +0 -31
  577. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +0 -62
  578. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.ts +0 -206
  579. package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.css +0 -3
  580. package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.html +0 -21
  581. package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.ts +0 -58
  582. package/src/libs/feature/editor/src/lib/models/wizard-field.model.ts +0 -10
  583. package/src/libs/feature/editor/src/lib/models/wizard-field.type.ts +0 -6
  584. package/src/libs/feature/editor/src/lib/services/wizard.service.ts +0 -105
  585. package/src/libs/ui/dataviz/src/lib/ui-dataviz.module.ts +0 -27
  586. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.css +0 -0
  587. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +0 -9
  588. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +0 -61
  589. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +0 -72
  590. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +0 -96
  591. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +0 -14
  592. package/src/libs/ui/widgets/src/lib/ui-widgets.module.ts +0 -25
  593. package/src/libs/util/i18n/src/lib/lang.service.ts +0 -23
  594. package/src/libs/util/i18n/src/lib/util-i18n.module.ts +0 -26
  595. package/src/libs/util/shared/src/lib/util-shared.module.ts +0 -10
@@ -3,16 +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
7
  import { marker } from '@biesbjerg/ngx-translate-extract-marker';
8
+ import { of } from 'rxjs';
8
9
  import * as i0 from "@angular/core";
9
10
  import * as i1 from "@angular/common";
10
- import * as i2 from "@ngx-translate/core";
11
- marker('editor.record.lock.reason');
12
- marker('editor.record.lock.format');
11
+ marker('editor.record.lock.resourceType');
12
+ marker('editor.record.lock.harvested');
13
+ marker('editor.record.lock.owner');
13
14
  export class InteractiveTableComponent {
14
15
  constructor() {
15
16
  this.items = [];
17
+ this.canEditItem = () => of(true);
16
18
  this.isDraftPage = false;
17
19
  this.itemClick = new EventEmitter();
18
20
  }
@@ -28,11 +30,16 @@ export class InteractiveTableComponent {
28
30
  };
29
31
  }
30
32
  getItemTitle(item) {
31
- if (!item.extras?.edit && !this.isDraftPage && item.kind === 'dataset') {
32
- return 'editor.record.lock.reason';
33
- }
34
- else if (item.kind !== 'dataset') {
35
- return 'editor.record.lock.format';
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
+ }
36
43
  }
37
44
  return '';
38
45
  }
@@ -40,19 +47,21 @@ export class InteractiveTableComponent {
40
47
  this.itemClick.emit(item);
41
48
  }
42
49
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InteractiveTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
43
- 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 [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 (!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset',\n 'group-hover:text-main group-hover:bg-gray-50':\n (item.extras?.edit || isDraftPage) && item.kind === 'dataset',\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 }); }
44
51
  }
45
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InteractiveTableComponent, decorators: [{
46
53
  type: Component,
47
- 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 [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 (!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset',\n 'group-hover:text-main group-hover:bg-gray-50':\n (item.extras?.edit || isDraftPage) && item.kind === 'dataset',\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"] }]
48
55
  }], propDecorators: { columns: [{
49
56
  type: ContentChildren,
50
57
  args: [InteractiveTableColumnComponent]
51
58
  }], items: [{
52
59
  type: Input
60
+ }], canEditItem: [{
61
+ type: Input
53
62
  }], isDraftPage: [{
54
63
  type: Input
55
64
  }], itemClick: [{
56
65
  type: Output
57
66
  }] } });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3RpdmUtdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjL2xpYi9pbnRlcmFjdGl2ZS10YWJsZS9pbnRlcmFjdGl2ZS10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2ludGVyYWN0aXZlLXRhYmxlL2ludGVyYWN0aXZlLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sK0RBQStELENBQUE7QUFDL0csT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTs7OztBQUdoRSxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQTtBQUNuQyxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQTtBQVVuQyxNQUFNLE9BQU8seUJBQXlCO0lBVHRDO1FBYVcsVUFBSyxHQUFjLEVBQUUsQ0FBQTtRQUNyQixnQkFBVyxHQUFHLEtBQUssQ0FBQTtRQUNsQixjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQTtLQTRCbEQ7SUExQkMsSUFBSSxTQUFTO1FBQ1gsT0FBTztZQUNMLHVCQUF1QixFQUFFLElBQUksQ0FBQyxPQUFPO2lCQUNsQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUNkLE1BQU0sQ0FBQyxLQUFLO2dCQUNWLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSztnQkFDZCxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUk7b0JBQ1gsQ0FBQyxDQUFDLGlCQUFpQjtvQkFDbkIsQ0FBQyxDQUFDLHlCQUF5QixDQUNoQztpQkFDQSxJQUFJLENBQUMsR0FBRyxDQUFDO1NBQ2IsQ0FBQTtJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsSUFBbUI7UUFDOUIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3ZFLE9BQU8sMkJBQTJCLENBQUE7UUFDcEMsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNuQyxPQUFPLDJCQUEyQixDQUFBO1FBQ3BDLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQTtJQUNYLENBQUM7SUFFRCxjQUFjLENBQUMsSUFBYTtRQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUMzQixDQUFDOytHQWpDVSx5QkFBeUI7bUdBQXpCLHlCQUF5QixtS0FGekIsQ0FBQyxZQUFZLENBQUMsRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUMsa0RBR3BELCtCQUErQiw2QkM3QmxELDQwRUErREEsMlNEdENZLFlBQVksMGxCQUFFLGVBQWUsNEdBQUUsZUFBZTs7NEZBRzdDLHlCQUF5QjtrQkFUckMsU0FBUzsrQkFDRSx5QkFBeUIsbUJBR2xCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxlQUFlLENBQUMsYUFDOUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUM7OEJBSXJFLE9BQU87c0JBRE4sZUFBZTt1QkFBQywrQkFBK0I7Z0JBR3ZDLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgSW50ZXJhY3RpdmVUYWJsZUNvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4vaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uL2ludGVyYWN0aXZlLXRhYmxlLWNvbHVtbi5jb21wb25lbnQnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBOZ0ljb25Db21wb25lbnQsIHByb3ZpZGVJY29ucyB9IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHsgaWNvbm9pck5hdkFycm93RG93biwgaWNvbm9pck5hdkFycm93VXAgfSBmcm9tICdAbmctaWNvbnMvaWNvbm9pcidcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBtYXJrZXIgfSBmcm9tICdAYmllc2JqZXJnL25neC10cmFuc2xhdGUtZXh0cmFjdC1tYXJrZXInXG5pbXBvcnQgeyBDYXRhbG9nUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuXG5tYXJrZXIoJ2VkaXRvci5yZWNvcmQubG9jay5yZWFzb24nKVxubWFya2VyKCdlZGl0b3IucmVjb3JkLmxvY2suZm9ybWF0JylcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWludGVyYWN0aXZlLXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ludGVyYWN0aXZlLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW50ZXJhY3RpdmUtdGFibGUuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTmdJY29uQ29tcG9uZW50LCBUcmFuc2xhdGVNb2R1bGVdLFxuICBwcm92aWRlcnM6IFtwcm92aWRlSWNvbnMoeyBpY29ub2lyTmF2QXJyb3dEb3duLCBpY29ub2lyTmF2QXJyb3dVcCB9KV0sXG59KVxuZXhwb3J0IGNsYXNzIEludGVyYWN0aXZlVGFibGVDb21wb25lbnQge1xuICBAQ29udGVudENoaWxkcmVuKEludGVyYWN0aXZlVGFibGVDb2x1bW5Db21wb25lbnQpXG4gIGNvbHVtbnM6IFF1ZXJ5TGlzdDxJbnRlcmFjdGl2ZVRhYmxlQ29sdW1uQ29tcG9uZW50PlxuXG4gIEBJbnB1dCgpIGl0ZW1zOiB1bmtub3duW10gPSBbXVxuICBASW5wdXQoKSBpc0RyYWZ0UGFnZSA9IGZhbHNlXG4gIEBPdXRwdXQoKSBpdGVtQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHVua25vd24+KClcblxuICBnZXQgZ3JpZFN0eWxlKCkge1xuICAgIHJldHVybiB7XG4gICAgICAnZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJzogdGhpcy5jb2x1bW5zXG4gICAgICAgIC5tYXAoKGNvbHVtbikgPT5cbiAgICAgICAgICBjb2x1bW4ud2lkdGhcbiAgICAgICAgICAgID8gY29sdW1uLndpZHRoXG4gICAgICAgICAgICA6IGNvbHVtbi5ncm93XG4gICAgICAgICAgICAgID8gYG1pbm1heCgwcHgsMWZyKWBcbiAgICAgICAgICAgICAgOiBgbWlubWF4KDBweCxtYXgtY29udGVudClgXG4gICAgICAgIClcbiAgICAgICAgLmpvaW4oJyAnKSxcbiAgICB9XG4gIH1cblxuICBnZXRJdGVtVGl0bGUoaXRlbTogQ2F0YWxvZ1JlY29yZCkge1xuICAgIGlmICghaXRlbS5leHRyYXM/LmVkaXQgJiYgIXRoaXMuaXNEcmFmdFBhZ2UgJiYgaXRlbS5raW5kID09PSAnZGF0YXNldCcpIHtcbiAgICAgIHJldHVybiAnZWRpdG9yLnJlY29yZC5sb2NrLnJlYXNvbidcbiAgICB9IGVsc2UgaWYgKGl0ZW0ua2luZCAhPT0gJ2RhdGFzZXQnKSB7XG4gICAgICByZXR1cm4gJ2VkaXRvci5yZWNvcmQubG9jay5mb3JtYXQnXG4gICAgfVxuICAgIHJldHVybiAnJ1xuICB9XG5cbiAgaGFuZGxlUm93Q2xpY2soaXRlbTogdW5rbm93bikge1xuICAgIHRoaXMuaXRlbUNsaWNrLmVtaXQoaXRlbSlcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImdyaWQgdy1mdWxsXCIgW25nU3R5bGVdPVwiZ3JpZFN0eWxlXCI+XG4gIDxkaXYgY2xhc3M9XCJjb250ZW50cyB3LWZ1bGxcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uc1wiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAqbmdJZj1cImNvbHVtbi5zb3J0YWJsZVwiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cInRhYmxlLWhlYWRlci1jZWxsIGdhcC0xXCJcbiAgICAgICAgKGNsaWNrKT1cImNvbHVtbi5zb3J0YWJsZSAmJiBjb2x1bW4uaGFuZGxlU29ydENoYW5nZSgpXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbi5oZWFkZXJcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNvcnQtYnV0dG9uIGZsZXggZmxleC1jb2xcIiAqbmdJZj1cImNvbHVtbi5zb3J0YWJsZVwiPlxuICAgICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgICBjbGFzcz1cInRleHQtZ3JheS02MDAgLW1iLTJcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAndGV4dC1tYWluJzogY29sdW1uLmFjdGl2ZVNvcnQgPT09ICdhc2MnIH1cIlxuICAgICAgICAgICAgbmFtZT1cImljb25vaXJOYXZBcnJvd1VwXCJcbiAgICAgICAgICA+PC9uZy1pY29uPlxuICAgICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgICBjbGFzcz1cInRleHQtZ3JheS02MDBcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAndGV4dC1tYWluJzogY29sdW1uLmFjdGl2ZVNvcnQgPT09ICdkZXNjJyB9XCJcbiAgICAgICAgICAgIG5hbWU9XCJpY29ub2lyTmF2QXJyb3dEb3duXCJcbiAgICAgICAgICA+PC9uZy1pY29uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGRpdiAqbmdJZj1cIiFjb2x1bW4uc29ydGFibGVcIiBjbGFzcz1cInRhYmxlLWhlYWRlci1jZWxsXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2x1bW4uaGVhZGVyXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cImNvbnRlbnRzIHRleHQtZ3JheS05MDAgY3Vyc29yLXBvaW50ZXIgZ3JvdXBcIlxuICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zXCJcbiAgICAoY2xpY2spPVwiaGFuZGxlUm93Q2xpY2soaXRlbSlcIlxuICAgIGRhdGEtY3k9XCJ0YWJsZS1yb3dcIlxuICAgIFthdHRyLmRhdGEtY3ktdGl0bGVdPVwiaXRlbS50aXRsZVwiXG4gICAgW3RpdGxlXT1cImdldEl0ZW1UaXRsZShpdGVtKSB8IHRyYW5zbGF0ZVwiXG4gID5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cInJlbGF0aXZlIGgtMFwiXG4gICAgICBbbmdTdHlsZV09XCJ7ICdncmlkLWNvbHVtbic6ICdzcGFuICcgKyB0aGlzLmNvbHVtbnMubGVuZ3RoIH1cIlxuICAgID5cbiAgICAgIDwhLS0gdGhpcyBlbGVtZW50IGlzIG9ubHkgdXNlZCBpbiBrZXlib2FyZCBuYXZpZ2F0aW9uIC0tPlxuICAgICAgPGJ1dHRvblxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgY2xhc3M9XCJhYnNvbHV0ZSBpbnNldC14LTAgaC1bNTBweF0gYmctdHJhbnNwYXJlbnQgcG9pbnRlci1ldmVudHMtbm9uZVwiXG4gICAgICA+PC9idXR0b24+XG4gICAgPC9kaXY+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnNcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJ0YWJsZS1yb3ctY2VsbCBweC0zIHB5LTEuNSBmbGV4IGl0ZW1zLWNlbnRlciBiZy13aGl0ZSB0cmFuc2l0aW9uLWNvbG9ycyBkdXJhdGlvbi03NSB0cnVuY2F0ZSBib3JkZXItYiBib3JkZXItZ3JheS0yMDBcIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgJ3RleHQtcHVycGxlLWxpZ2h0IGN1cnNvci1kZWZhdWx0JzpcbiAgICAgICAgICAgICghaXRlbS5leHRyYXM/LmVkaXQgJiYgIWlzRHJhZnRQYWdlKSB8fCBpdGVtLmtpbmQgIT09ICdkYXRhc2V0JyxcbiAgICAgICAgICAnZ3JvdXAtaG92ZXI6dGV4dC1tYWluIGdyb3VwLWhvdmVyOmJnLWdyYXktNTAnOlxuICAgICAgICAgICAgKGl0ZW0uZXh0cmFzPy5lZGl0IHx8IGlzRHJhZnRQYWdlKSAmJiBpdGVtLmtpbmQgPT09ICdkYXRhc2V0JyxcbiAgICAgICAgfVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbi5jZWxsOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSB9XCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
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-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: "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-primary 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4LWxpbmVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbGF5b3V0L3NyYy9saWIvbWF4LWxpbmVzL21heC1saW5lcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL21heC1saW5lcy9tYXgtbGluZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7Ozs7QUFVckQsTUFBTSxPQUFPLGlCQUFpQjtJQVU1QixZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQVRqQyxhQUFRLEdBQUcsQ0FBQyxDQUFBO1FBRXJCLGVBQVUsR0FBRyxLQUFLLENBQUE7UUFDbEIsY0FBUyxHQUFHLEVBQUUsQ0FBQTtRQUNkLHFCQUFnQixHQUFHLEtBQUssQ0FBQTtJQUtxQixDQUFDO0lBRTlDLGVBQWU7UUFDYixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtRQUV6QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksY0FBYyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDL0MsU0FBUyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1lBQzNCLENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNqRSxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFBO1FBQ2xDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO0lBQzNCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQTtRQUNyRCxNQUFNLGNBQWMsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDbkQsTUFBTSxhQUFhLEdBQUcsY0FBYyxDQUFDLHFCQUFxQixFQUFFLENBQUMsTUFBTSxDQUFBO1FBRW5FLElBQUksYUFBYSxFQUFFLENBQUM7WUFDbEIsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUE7Z0JBRTVCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVU7b0JBQzlCLENBQUMsQ0FBQyxHQUFHLGFBQWEsSUFBSTtvQkFDdEIsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUE7WUFDL0QsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUE7Z0JBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxhQUFhLElBQUksQ0FBQTtZQUN2QyxDQUFDO1lBQ0QsZ0JBQWdCLENBQUMsWUFBWSxDQUMzQixPQUFPLEVBQ1AsZUFBZSxJQUFJLENBQUMsU0FBUyxvQkFBb0IsQ0FDbEQsQ0FBQTtZQUVELElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDMUIsQ0FBQztJQUNILENBQUM7SUFFRCxhQUFhLENBQUMsT0FBb0I7UUFDaEMsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ3RELE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDdkQsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLENBQUE7UUFDM0QsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUEsQ0FBQyxnREFBZ0Q7UUFDL0csT0FBTyxNQUFNLENBQUE7SUFDZixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU07UUFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDbkUsQ0FBQzsrR0FqRVUsaUJBQWlCO21HQUFqQixpQkFBaUIscU5DckI5QixzbUJBb0JBLHlERERZLFlBQVksZ09BQUUsZUFBZTs7NEZBRTVCLGlCQUFpQjtrQkFSN0IsU0FBUzsrQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDO3NGQUcvQixRQUFRO3NCQUFoQixLQUFLO2dCQU9rQixTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktbWF4LWxpbmVzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21heC1saW5lcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21heC1saW5lcy5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBNYXhMaW5lc0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIG1heExpbmVzID0gNlxuXG4gIGlzRXhwYW5kZWQgPSBmYWxzZVxuICBtYXhIZWlnaHQgPSAnJ1xuICBzaG93VG9nZ2xlQnV0dG9uID0gZmFsc2VcbiAgb2JzZXJ2ZXI6IFJlc2l6ZU9ic2VydmVyXG5cbiAgQFZpZXdDaGlsZCgnY29udGFpbmVyJykgY29udGFpbmVyITogRWxlbWVudFJlZlxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5jYWxjdWxhdGVNYXhIZWlnaHQoKVxuXG4gICAgdGhpcy5vYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigobXV0YXRpb25zKSA9PiB7XG4gICAgICBtdXRhdGlvbnMuZm9yRWFjaCgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2FsY3VsYXRlTWF4SGVpZ2h0KClcbiAgICAgIH0pXG4gICAgfSlcblxuICAgIHRoaXMub2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmNoaWxkcmVuWzBdKVxuICB9XG5cbiAgdG9nZ2xlRGlzcGxheSgpIHtcbiAgICB0aGlzLmlzRXhwYW5kZWQgPSAhdGhpcy5pc0V4cGFuZGVkXG4gICAgdGhpcy5jYWxjdWxhdGVNYXhIZWlnaHQoKVxuICB9XG5cbiAgY2FsY3VsYXRlTWF4SGVpZ2h0KCkge1xuICAgIGNvbnN0IGNvbnRhaW5lckVsZW1lbnQgPSB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50XG4gICAgY29uc3QgY29udGVudEVsZW1lbnQgPSBjb250YWluZXJFbGVtZW50LmNoaWxkcmVuWzBdXG4gICAgY29uc3QgY29udGVudEhlaWdodCA9IGNvbnRlbnRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodFxuXG4gICAgaWYgKGNvbnRlbnRIZWlnaHQpIHtcbiAgICAgIGlmIChjb250ZW50SGVpZ2h0ID4gdGhpcy5tYXhMaW5lcyAqIHRoaXMuZ2V0TGluZUhlaWdodChjb250ZW50RWxlbWVudCkpIHtcbiAgICAgICAgdGhpcy5zaG93VG9nZ2xlQnV0dG9uID0gdHJ1ZVxuXG4gICAgICAgIHRoaXMubWF4SGVpZ2h0ID0gdGhpcy5pc0V4cGFuZGVkXG4gICAgICAgICAgPyBgJHtjb250ZW50SGVpZ2h0fXB4YFxuICAgICAgICAgIDogYCR7dGhpcy5tYXhMaW5lcyAqIHRoaXMuZ2V0TGluZUhlaWdodChjb250ZW50RWxlbWVudCl9cHhgXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNob3dUb2dnbGVCdXR0b24gPSBmYWxzZVxuICAgICAgICB0aGlzLm1heEhlaWdodCA9IGAke2NvbnRlbnRIZWlnaHR9cHhgXG4gICAgICB9XG4gICAgICBjb250YWluZXJFbGVtZW50LnNldEF0dHJpYnV0ZShcbiAgICAgICAgJ3N0eWxlJyxcbiAgICAgICAgYG1heC1oZWlnaHQ6ICR7dGhpcy5tYXhIZWlnaHR9OyBvdmVyZmxvdzogaGlkZGVuYFxuICAgICAgKVxuXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgICB9XG4gIH1cblxuICBnZXRMaW5lSGVpZ2h0KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogbnVtYmVyIHtcbiAgICBjb25zdCBjb21wdXRlZFN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudClcbiAgICBjb25zdCBsaW5lSGVpZ2h0ID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLmxpbmVIZWlnaHQpXG4gICAgY29uc3QgZm9udFNpemUgPSBwYXJzZUZsb2F0KGNvbXB1dGVkU3R5bGUuZm9udFNpemUgfHwgJzE0JylcbiAgICBjb25zdCByZXN1bHQgPSBpc05hTihsaW5lSGVpZ2h0KSA/IGZvbnRTaXplICogMS4yIDogbGluZUhlaWdodCAvLyBVc2UgYSBkZWZhdWx0IGlmIGxpbmUgaGVpZ2h0IGlzIG5vdCBzcGVjaWZpZWRcbiAgICByZXR1cm4gcmVzdWx0XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMub2JzZXJ2ZXIpIHJldHVyblxuICAgIHRoaXMub2JzZXJ2ZXIudW5vYnNlcnZlKHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF0pXG4gIH1cbn1cbiIsIjxkaXZcbiAgI2NvbnRhaW5lclxuICBjbGFzcz1cIm1heC1saW5lcyBvdmVyZmxvdy1oaWRkZW4gdHJhbnNpdGlvbi1bbWF4LWhlaWdodF0gZHVyYXRpb24tMzAwIHJlbGF0aXZlXCJcbiAgW25nQ2xhc3NdPVwiaXNFeHBhbmRlZCA/ICdlYXNlLWluJyA6ICdlYXNlLW91dCdcIlxuICBbc3R5bGUubWF4SGVpZ2h0XT1cIm1heEhlaWdodFwiXG4+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPGRpdlxuICAgICpuZ0lmPVwic2hvd1RvZ2dsZUJ1dHRvbiAmJiAhaXNFeHBhbmRlZFwiXG4gICAgY2xhc3M9XCJhYnNvbHV0ZSBpbnNldC14LTAgYm90dG9tLTAgYmctZ3JhZGllbnQtdG8tYiBmcm9tLXRyYW5zcGFyZW50IHRvLXdoaXRlIGgtMTBcIlxuICA+PC9kaXY+XG48L2Rpdj5cbjxkaXZcbiAgKm5nSWY9XCJzaG93VG9nZ2xlQnV0dG9uXCJcbiAgKGNsaWNrKT1cInRvZ2dsZURpc3BsYXkoKVwiXG4gIGNsYXNzPVwidGV4dC1wcmltYXJ5IGN1cnNvci1wb2ludGVyIHB0LTIuNVwiXG4gIGRhdGEtY3k9XCJyZWFkTW9yZUJ1dHRvblwiXG4+XG4gIHt7IChpc0V4cGFuZGVkID8gJ3VpLnJlYWRMZXNzJyA6ICd1aS5yZWFkTW9yZScpIHwgdHJhbnNsYXRlIH19XG48L2Rpdj5cbiJdfQ==
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4LWxpbmVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbGF5b3V0L3NyYy9saWIvbWF4LWxpbmVzL21heC1saW5lcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL21heC1saW5lcy9tYXgtbGluZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUE7OztBQVVuRCxNQUFNLE9BQU8saUJBQWlCO0lBVTVCLFlBQW9CLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBVGpDLGFBQVEsR0FBRyxDQUFDLENBQUE7UUFFckIsZUFBVSxHQUFHLEtBQUssQ0FBQTtRQUNsQixjQUFTLEdBQUcsRUFBRSxDQUFBO1FBQ2QscUJBQWdCLEdBQUcsS0FBSyxDQUFBO0lBS3FCLENBQUM7SUFFOUMsZUFBZTtRQUNiLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1FBRXpCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxjQUFjLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUMvQyxTQUFTLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRTtnQkFDckIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7WUFDM0IsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDLENBQUMsQ0FBQTtRQUVGLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ2pFLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUE7UUFDbEMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7SUFDM0IsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFBO1FBQ3JELE1BQU0sY0FBYyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNuRCxNQUFNLGFBQWEsR0FBRyxjQUFjLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxNQUFNLENBQUE7UUFFbkUsSUFBSSxhQUFhLEVBQUUsQ0FBQztZQUNsQixJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztnQkFDdkUsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQTtnQkFFNUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVTtvQkFDOUIsQ0FBQyxDQUFDLEdBQUcsYUFBYSxJQUFJO29CQUN0QixDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQTtZQUMvRCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQTtnQkFDN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLGFBQWEsSUFBSSxDQUFBO1lBQ3ZDLENBQUM7WUFDRCxnQkFBZ0IsQ0FBQyxZQUFZLENBQzNCLE9BQU8sRUFDUCxlQUFlLElBQUksQ0FBQyxTQUFTLG9CQUFvQixDQUNsRCxDQUFBO1lBRUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUVELGFBQWEsQ0FBQyxPQUFvQjtRQUNoQyxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDdEQsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUN2RCxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsQ0FBQTtRQUMzRCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQSxDQUFDLGdEQUFnRDtRQUMvRyxPQUFPLE1BQU0sQ0FBQTtJQUNmLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTTtRQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNuRSxDQUFDOytHQWpFVSxpQkFBaUI7bUdBQWpCLGlCQUFpQixxTkNyQjlCLHNtQkFvQkEseURERFksWUFBWSw0TkFBRSxhQUFhOzs0RkFFMUIsaUJBQWlCO2tCQVI3QixTQUFTOytCQUNFLGlCQUFpQixtQkFHVix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUM7c0ZBRzdCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBT2tCLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktbWF4LWxpbmVzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21heC1saW5lcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21heC1saW5lcy5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUcmFuc2xhdGVQaXBlXSxcbn0pXG5leHBvcnQgY2xhc3MgTWF4TGluZXNDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBtYXhMaW5lcyA9IDZcblxuICBpc0V4cGFuZGVkID0gZmFsc2VcbiAgbWF4SGVpZ2h0ID0gJydcbiAgc2hvd1RvZ2dsZUJ1dHRvbiA9IGZhbHNlXG4gIG9ic2VydmVyOiBSZXNpemVPYnNlcnZlclxuXG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicpIGNvbnRhaW5lciE6IEVsZW1lbnRSZWZcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuY2FsY3VsYXRlTWF4SGVpZ2h0KClcblxuICAgIHRoaXMub2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKG11dGF0aW9ucykgPT4ge1xuICAgICAgbXV0YXRpb25zLmZvckVhY2goKCkgPT4ge1xuICAgICAgICB0aGlzLmNhbGN1bGF0ZU1heEhlaWdodCgpXG4gICAgICB9KVxuICAgIH0pXG5cbiAgICB0aGlzLm9ic2VydmVyLm9ic2VydmUodGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5jaGlsZHJlblswXSlcbiAgfVxuXG4gIHRvZ2dsZURpc3BsYXkoKSB7XG4gICAgdGhpcy5pc0V4cGFuZGVkID0gIXRoaXMuaXNFeHBhbmRlZFxuICAgIHRoaXMuY2FsY3VsYXRlTWF4SGVpZ2h0KClcbiAgfVxuXG4gIGNhbGN1bGF0ZU1heEhlaWdodCgpIHtcbiAgICBjb25zdCBjb250YWluZXJFbGVtZW50ID0gdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudFxuICAgIGNvbnN0IGNvbnRlbnRFbGVtZW50ID0gY29udGFpbmVyRWxlbWVudC5jaGlsZHJlblswXVxuICAgIGNvbnN0IGNvbnRlbnRIZWlnaHQgPSBjb250ZW50RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHRcblxuICAgIGlmIChjb250ZW50SGVpZ2h0KSB7XG4gICAgICBpZiAoY29udGVudEhlaWdodCA+IHRoaXMubWF4TGluZXMgKiB0aGlzLmdldExpbmVIZWlnaHQoY29udGVudEVsZW1lbnQpKSB7XG4gICAgICAgIHRoaXMuc2hvd1RvZ2dsZUJ1dHRvbiA9IHRydWVcblxuICAgICAgICB0aGlzLm1heEhlaWdodCA9IHRoaXMuaXNFeHBhbmRlZFxuICAgICAgICAgID8gYCR7Y29udGVudEhlaWdodH1weGBcbiAgICAgICAgICA6IGAke3RoaXMubWF4TGluZXMgKiB0aGlzLmdldExpbmVIZWlnaHQoY29udGVudEVsZW1lbnQpfXB4YFxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zaG93VG9nZ2xlQnV0dG9uID0gZmFsc2VcbiAgICAgICAgdGhpcy5tYXhIZWlnaHQgPSBgJHtjb250ZW50SGVpZ2h0fXB4YFxuICAgICAgfVxuICAgICAgY29udGFpbmVyRWxlbWVudC5zZXRBdHRyaWJ1dGUoXG4gICAgICAgICdzdHlsZScsXG4gICAgICAgIGBtYXgtaGVpZ2h0OiAke3RoaXMubWF4SGVpZ2h0fTsgb3ZlcmZsb3c6IGhpZGRlbmBcbiAgICAgIClcblxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpXG4gICAgfVxuICB9XG5cbiAgZ2V0TGluZUhlaWdodChlbGVtZW50OiBIVE1MRWxlbWVudCk6IG51bWJlciB7XG4gICAgY29uc3QgY29tcHV0ZWRTdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpXG4gICAgY29uc3QgbGluZUhlaWdodCA9IHBhcnNlRmxvYXQoY29tcHV0ZWRTdHlsZS5saW5lSGVpZ2h0KVxuICAgIGNvbnN0IGZvbnRTaXplID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLmZvbnRTaXplIHx8ICcxNCcpXG4gICAgY29uc3QgcmVzdWx0ID0gaXNOYU4obGluZUhlaWdodCkgPyBmb250U2l6ZSAqIDEuMiA6IGxpbmVIZWlnaHQgLy8gVXNlIGEgZGVmYXVsdCBpZiBsaW5lIGhlaWdodCBpcyBub3Qgc3BlY2lmaWVkXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm9ic2VydmVyKSByZXR1cm5cbiAgICB0aGlzLm9ic2VydmVyLnVub2JzZXJ2ZSh0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmNoaWxkcmVuWzBdKVxuICB9XG59XG4iLCI8ZGl2XG4gICNjb250YWluZXJcbiAgY2xhc3M9XCJtYXgtbGluZXMgb3ZlcmZsb3ctaGlkZGVuIHRyYW5zaXRpb24tW21heC1oZWlnaHRdIGR1cmF0aW9uLTMwMCByZWxhdGl2ZVwiXG4gIFtuZ0NsYXNzXT1cImlzRXhwYW5kZWQgPyAnZWFzZS1pbicgOiAnZWFzZS1vdXQnXCJcbiAgW3N0eWxlLm1heEhlaWdodF09XCJtYXhIZWlnaHRcIlxuPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDxkaXZcbiAgICAqbmdJZj1cInNob3dUb2dnbGVCdXR0b24gJiYgIWlzRXhwYW5kZWRcIlxuICAgIGNsYXNzPVwiYWJzb2x1dGUgaW5zZXQteC0wIGJvdHRvbS0wIGJnLWdyYWRpZW50LXRvLWIgZnJvbS10cmFuc3BhcmVudCB0by13aGl0ZSBoLTEwXCJcbiAgPjwvZGl2PlxuPC9kaXY+XG48ZGl2XG4gICpuZ0lmPVwic2hvd1RvZ2dsZUJ1dHRvblwiXG4gIChjbGljayk9XCJ0b2dnbGVEaXNwbGF5KClcIlxuICBjbGFzcz1cInRleHQtcHJpbWFyeSBjdXJzb3ItcG9pbnRlciBwdC0yLjVcIlxuICBkYXRhLWN5PVwicmVhZE1vcmVCdXR0b25cIlxuPlxuICB7eyAoaXNFeHBhbmRlZCA/ICd1aS5yZWFkTGVzcycgOiAndWkucmVhZE1vcmUnKSB8IHRyYW5zbGF0ZSB9fVxuPC9kaXY+XG4iXX0=
@@ -4,11 +4,10 @@ import { NgIcon, provideIcons } from '@ng-icons/core';
4
4
  import { FormsModule } from '@angular/forms';
5
5
  import { matChevronLeft, matChevronRight, } from '@ng-icons/material-icons/baseline';
6
6
  import { CommonModule } from '@angular/common';
7
- import { TranslateModule } from '@ngx-translate/core';
7
+ import { TranslateDirective } from '@ngx-translate/core';
8
8
  import * as i0 from "@angular/core";
9
9
  import * as i1 from "@angular/common";
10
10
  import * as i2 from "@angular/forms";
11
- import * as i3 from "@ngx-translate/core";
12
11
  export class PaginationComponent {
13
12
  constructor() {
14
13
  this.hideButton = false;
@@ -23,7 +22,7 @@ export class PaginationComponent {
23
22
  this.listComponent.goToPage(this.applyPageBounds(newPage));
24
23
  }
25
24
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
26
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PaginationComponent, isStandalone: true, selector: "gn-ui-pagination", inputs: { listComponent: "listComponent", hideButton: "hideButton" }, ngImport: i0, template: "<div class=\"relative\">\n <div class=\"sm:absolute sm:inset-0\" *ngIf=\"!hideButton\">\n <gn-ui-button\n (buttonClick)=\"listComponent.goToNextPage()\"\n type=\"secondary\"\n [disabled]=\"listComponent.isLastPage\"\n extraClass=\"lg:m-auto !p-[22px]\"\n >\n <span class=\"uppercase font-medium tracking-widest\" translate\n >pagination.nextPage</span\n >\n </gn-ui-button>\n </div>\n <div\n class=\"relative pointer-events-none flex flex-row justify-start sm:justify-end\"\n >\n <div class=\"pointer-events-auto flex flex-row items-center py-[13px]\">\n <span class=\"mr-3 capitalize text-sm text-gray-900\" translate\n >pagination.page</span\n >\n <input\n type=\"number\"\n [ngModel]=\"listComponent.currentPage\"\n [min]=\"1\"\n [max]=\"listComponent.pagesCount\"\n (ngModelChange)=\"setPage($event)\"\n class=\"border border-gray-300 rounded w-[54px] h-[34px] pl-[12px] mr-3 text-center\"\n />\n <span class=\"mr-3 text-sm text-gray-900\"\n ><span translate>pagination.pageOf</span>\n {{ listComponent.pagesCount }}</span\n >\n <gn-ui-button\n (buttonClick)=\"listComponent.goToPrevPage()\"\n class=\"mr-2\"\n [disabled]=\"listComponent.isFirstPage\"\n [type]=\"'light'\"\n extraClass=\"!px-[3px]\"\n data-cy=\"prev-page\"\n >\n <ng-icon name=\"matChevronLeft\"></ng-icon>\n </gn-ui-button>\n <gn-ui-button\n (buttonClick)=\"listComponent.goToNextPage()\"\n [disabled]=\"listComponent.isLastPage\"\n [type]=\"'light'\"\n extraClass=\"!px-[3px]\"\n data-cy=\"next-page\"\n >\n <ng-icon name=\"matChevronRight\"></ng-icon>\n </gn-ui-button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], viewProviders: [
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PaginationComponent, isStandalone: true, selector: "gn-ui-pagination", inputs: { listComponent: "listComponent", hideButton: "hideButton" }, ngImport: i0, template: "<div class=\"relative\">\n <div class=\"sm:absolute sm:inset-0\" *ngIf=\"!hideButton\">\n <gn-ui-button\n (buttonClick)=\"listComponent.goToNextPage()\"\n type=\"secondary\"\n [disabled]=\"listComponent.isLastPage\"\n extraClass=\"lg:m-auto !p-[22px]\"\n >\n <span class=\"uppercase font-medium tracking-widest\" translate\n >pagination.nextPage</span\n >\n </gn-ui-button>\n </div>\n <div\n class=\"relative pointer-events-none flex flex-row justify-start sm:justify-end\"\n >\n <div class=\"pointer-events-auto flex flex-row items-center py-[13px]\">\n <span class=\"mr-3 capitalize text-sm text-gray-900\" translate\n >pagination.page</span\n >\n <input\n type=\"number\"\n [ngModel]=\"listComponent.currentPage\"\n [min]=\"1\"\n [max]=\"listComponent.pagesCount\"\n (ngModelChange)=\"setPage($event)\"\n class=\"border border-gray-300 rounded w-[54px] h-[34px] pl-[12px] mr-3 text-center\"\n />\n <span class=\"mr-3 text-sm text-gray-900\"\n ><span translate>pagination.pageOf</span>\n {{ listComponent.pagesCount }}</span\n >\n <gn-ui-button\n (buttonClick)=\"listComponent.goToPrevPage()\"\n class=\"mr-2\"\n [disabled]=\"listComponent.isFirstPage\"\n [type]=\"'light'\"\n extraClass=\"!px-[3px]\"\n data-cy=\"prev-page\"\n >\n <ng-icon name=\"matChevronLeft\"></ng-icon>\n </gn-ui-button>\n <gn-ui-button\n (buttonClick)=\"listComponent.goToNextPage()\"\n [disabled]=\"listComponent.isLastPage\"\n [type]=\"'light'\"\n extraClass=\"!px-[3px]\"\n data-cy=\"next-page\"\n >\n <ng-icon name=\"matChevronRight\"></ng-icon>\n </gn-ui-button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], viewProviders: [
27
26
  provideIcons({
28
27
  matChevronLeft,
29
28
  matChevronRight,
@@ -37,7 +36,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
37
36
  ButtonComponent,
38
37
  NgIcon,
39
38
  FormsModule,
40
- TranslateModule,
39
+ TranslateDirective,
41
40
  ], viewProviders: [
42
41
  provideIcons({
43
42
  matChevronLeft,
@@ -49,4 +48,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
49
48
  }], hideButton: [{
50
49
  type: Input
51
50
  }] } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDdEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUMsT0FBTyxFQUNMLGNBQWMsRUFDZCxlQUFlLEdBQ2hCLE1BQU0sbUNBQW1DLENBQUE7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTs7Ozs7QUFzQnJELE1BQU0sT0FBTyxtQkFBbUI7SUFuQmhDO1FBcUJXLGVBQVUsR0FBRyxLQUFLLENBQUE7S0FXNUI7SUFUUyxlQUFlLENBQUMsSUFBWTtRQUNsQyxnRUFBZ0U7UUFDaEUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ3hFLENBQUM7SUFFRCxPQUFPLENBQUMsT0FBTztRQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQztZQUFFLE9BQU07UUFDdEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFBO0lBQzVELENBQUM7K0dBWlUsbUJBQW1CO21HQUFuQixtQkFBbUIsa0pDL0JoQyx1ekRBc0RBLHlERHBDSSxZQUFZLG1JQUNaLGVBQWUsK0hBQ2YsTUFBTSw0R0FDTixXQUFXLHNvQ0FDWCxlQUFlLDJKQUVGO1lBQ2IsWUFBWSxDQUFDO2dCQUNYLGNBQWM7Z0JBQ2QsZUFBZTthQUNoQixDQUFDO1NBQ0g7OzRGQUVVLG1CQUFtQjtrQkFuQi9CLFNBQVM7K0JBQ0Usa0JBQWtCLGNBR2hCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsTUFBTTt3QkFDTixXQUFXO3dCQUNYLGVBQWU7cUJBQ2hCLGlCQUNjO3dCQUNiLFlBQVksQ0FBQzs0QkFDWCxjQUFjOzRCQUNkLGVBQWU7eUJBQ2hCLENBQUM7cUJBQ0g7OEJBR1EsYUFBYTtzQkFBckIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBOZ0ljb24sIHByb3ZpZGVJY29ucyB9IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7XG4gIG1hdENoZXZyb25MZWZ0LFxuICBtYXRDaGV2cm9uUmlnaHQsXG59IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9iYXNlbGluZSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBQYWdpbmFibGUgfSBmcm9tICcuLi9wYWdpbmFibGUuaW50ZXJmYWNlJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1wYWdpbmF0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wYWdpbmF0aW9uLmNvbXBvbmVudC5jc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgTmdJY29uLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgXSxcbiAgdmlld1Byb3ZpZGVyczogW1xuICAgIHByb3ZpZGVJY29ucyh7XG4gICAgICBtYXRDaGV2cm9uTGVmdCxcbiAgICAgIG1hdENoZXZyb25SaWdodCxcbiAgICB9KSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbkNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGxpc3RDb21wb25lbnQ6IFBhZ2luYWJsZVxuICBASW5wdXQoKSBoaWRlQnV0dG9uID0gZmFsc2VcblxuICBwcml2YXRlIGFwcGx5UGFnZUJvdW5kcyhwYWdlOiBudW1iZXIpOiBudW1iZXIge1xuICAgIC8vIG1ha2Ugc3VyZSB0aGlzIHdvcmtzIHdpdGggTmFOIGlucHV0cyBhcyB3ZWxsIGJ5IGFkZGluZyBgfHwgMWBcbiAgICByZXR1cm4gTWF0aC5tYXgoMSwgTWF0aC5taW4odGhpcy5saXN0Q29tcG9uZW50LnBhZ2VzQ291bnQsIHBhZ2UgfHwgMSkpXG4gIH1cblxuICBzZXRQYWdlKG5ld1BhZ2UpIHtcbiAgICBpZiAoIU51bWJlci5pc0ludGVnZXIobmV3UGFnZSkpIHJldHVyblxuICAgIHRoaXMubGlzdENvbXBvbmVudC5nb1RvUGFnZSh0aGlzLmFwcGx5UGFnZUJvdW5kcyhuZXdQYWdlKSlcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInJlbGF0aXZlXCI+XG4gIDxkaXYgY2xhc3M9XCJzbTphYnNvbHV0ZSBzbTppbnNldC0wXCIgKm5nSWY9XCIhaGlkZUJ1dHRvblwiPlxuICAgIDxnbi11aS1idXR0b25cbiAgICAgIChidXR0b25DbGljayk9XCJsaXN0Q29tcG9uZW50LmdvVG9OZXh0UGFnZSgpXCJcbiAgICAgIHR5cGU9XCJzZWNvbmRhcnlcIlxuICAgICAgW2Rpc2FibGVkXT1cImxpc3RDb21wb25lbnQuaXNMYXN0UGFnZVwiXG4gICAgICBleHRyYUNsYXNzPVwibGc6bS1hdXRvICFwLVsyMnB4XVwiXG4gICAgPlxuICAgICAgPHNwYW4gY2xhc3M9XCJ1cHBlcmNhc2UgZm9udC1tZWRpdW0gdHJhY2tpbmctd2lkZXN0XCIgdHJhbnNsYXRlXG4gICAgICAgID5wYWdpbmF0aW9uLm5leHRQYWdlPC9zcGFuXG4gICAgICA+XG4gICAgPC9nbi11aS1idXR0b24+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJyZWxhdGl2ZSBwb2ludGVyLWV2ZW50cy1ub25lIGZsZXggZmxleC1yb3cganVzdGlmeS1zdGFydCBzbTpqdXN0aWZ5LWVuZFwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwicG9pbnRlci1ldmVudHMtYXV0byBmbGV4IGZsZXgtcm93IGl0ZW1zLWNlbnRlciBweS1bMTNweF1cIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwibXItMyBjYXBpdGFsaXplIHRleHQtc20gdGV4dC1ncmF5LTkwMFwiIHRyYW5zbGF0ZVxuICAgICAgICA+cGFnaW5hdGlvbi5wYWdlPC9zcGFuXG4gICAgICA+XG4gICAgICA8aW5wdXRcbiAgICAgICAgdHlwZT1cIm51bWJlclwiXG4gICAgICAgIFtuZ01vZGVsXT1cImxpc3RDb21wb25lbnQuY3VycmVudFBhZ2VcIlxuICAgICAgICBbbWluXT1cIjFcIlxuICAgICAgICBbbWF4XT1cImxpc3RDb21wb25lbnQucGFnZXNDb3VudFwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInNldFBhZ2UoJGV2ZW50KVwiXG4gICAgICAgIGNsYXNzPVwiYm9yZGVyIGJvcmRlci1ncmF5LTMwMCByb3VuZGVkIHctWzU0cHhdIGgtWzM0cHhdIHBsLVsxMnB4XSBtci0zIHRleHQtY2VudGVyXCJcbiAgICAgIC8+XG4gICAgICA8c3BhbiBjbGFzcz1cIm1yLTMgdGV4dC1zbSB0ZXh0LWdyYXktOTAwXCJcbiAgICAgICAgPjxzcGFuIHRyYW5zbGF0ZT5wYWdpbmF0aW9uLnBhZ2VPZjwvc3Bhbj5cbiAgICAgICAge3sgbGlzdENvbXBvbmVudC5wYWdlc0NvdW50IH19PC9zcGFuXG4gICAgICA+XG4gICAgICA8Z24tdWktYnV0dG9uXG4gICAgICAgIChidXR0b25DbGljayk9XCJsaXN0Q29tcG9uZW50LmdvVG9QcmV2UGFnZSgpXCJcbiAgICAgICAgY2xhc3M9XCJtci0yXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImxpc3RDb21wb25lbnQuaXNGaXJzdFBhZ2VcIlxuICAgICAgICBbdHlwZV09XCInbGlnaHQnXCJcbiAgICAgICAgZXh0cmFDbGFzcz1cIiFweC1bM3B4XVwiXG4gICAgICAgIGRhdGEtY3k9XCJwcmV2LXBhZ2VcIlxuICAgICAgPlxuICAgICAgICA8bmctaWNvbiBuYW1lPVwibWF0Q2hldnJvbkxlZnRcIj48L25nLWljb24+XG4gICAgICA8L2duLXVpLWJ1dHRvbj5cbiAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgKGJ1dHRvbkNsaWNrKT1cImxpc3RDb21wb25lbnQuZ29Ub05leHRQYWdlKClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwibGlzdENvbXBvbmVudC5pc0xhc3RQYWdlXCJcbiAgICAgICAgW3R5cGVdPVwiJ2xpZ2h0J1wiXG4gICAgICAgIGV4dHJhQ2xhc3M9XCIhcHgtWzNweF1cIlxuICAgICAgICBkYXRhLWN5PVwibmV4dC1wYWdlXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWljb24gbmFtZT1cIm1hdENoZXZyb25SaWdodFwiPjwvbmctaWNvbj5cbiAgICAgIDwvZ24tdWktYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDdEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUMsT0FBTyxFQUNMLGNBQWMsRUFDZCxlQUFlLEdBQ2hCLE1BQU0sbUNBQW1DLENBQUE7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBOzs7O0FBc0J4RCxNQUFNLE9BQU8sbUJBQW1CO0lBbkJoQztRQXFCVyxlQUFVLEdBQUcsS0FBSyxDQUFBO0tBVzVCO0lBVFMsZUFBZSxDQUFDLElBQVk7UUFDbEMsZ0VBQWdFO1FBQ2hFLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUN4RSxDQUFDO0lBRUQsT0FBTyxDQUFDLE9BQU87UUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7WUFBRSxPQUFNO1FBQ3RDLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQTtJQUM1RCxDQUFDOytHQVpVLG1CQUFtQjttR0FBbkIsbUJBQW1CLGtKQy9CaEMsdXpEQXNEQSx5RERwQ0ksWUFBWSxtSUFDWixlQUFlLCtIQUNmLE1BQU0sNEdBQ04sV0FBVyx1b0NBQ1gsa0JBQWtCLHVHQUVMO1lBQ2IsWUFBWSxDQUFDO2dCQUNYLGNBQWM7Z0JBQ2QsZUFBZTthQUNoQixDQUFDO1NBQ0g7OzRGQUVVLG1CQUFtQjtrQkFuQi9CLFNBQVM7K0JBQ0Usa0JBQWtCLGNBR2hCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsTUFBTTt3QkFDTixXQUFXO3dCQUNYLGtCQUFrQjtxQkFDbkIsaUJBQ2M7d0JBQ2IsWUFBWSxDQUFDOzRCQUNYLGNBQWM7NEJBQ2QsZUFBZTt5QkFDaEIsQ0FBQztxQkFDSDs4QkFHUSxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IE5nSWNvbiwgcHJvdmlkZUljb25zIH0gZnJvbSAnQG5nLWljb25zL2NvcmUnXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHtcbiAgbWF0Q2hldnJvbkxlZnQsXG4gIG1hdENoZXZyb25SaWdodCxcbn0gZnJvbSAnQG5nLWljb25zL21hdGVyaWFsLWljb25zL2Jhc2VsaW5lJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgVHJhbnNsYXRlRGlyZWN0aXZlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IFBhZ2luYWJsZSB9IGZyb20gJy4uL3BhZ2luYWJsZS5pbnRlcmZhY2UnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLXBhZ2luYXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vcGFnaW5hdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BhZ2luYXRpb24uY29tcG9uZW50LmNzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBOZ0ljb24sXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgVHJhbnNsYXRlRGlyZWN0aXZlLFxuICBdLFxuICB2aWV3UHJvdmlkZXJzOiBbXG4gICAgcHJvdmlkZUljb25zKHtcbiAgICAgIG1hdENoZXZyb25MZWZ0LFxuICAgICAgbWF0Q2hldnJvblJpZ2h0LFxuICAgIH0pLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbGlzdENvbXBvbmVudDogUGFnaW5hYmxlXG4gIEBJbnB1dCgpIGhpZGVCdXR0b24gPSBmYWxzZVxuXG4gIHByaXZhdGUgYXBwbHlQYWdlQm91bmRzKHBhZ2U6IG51bWJlcik6IG51bWJlciB7XG4gICAgLy8gbWFrZSBzdXJlIHRoaXMgd29ya3Mgd2l0aCBOYU4gaW5wdXRzIGFzIHdlbGwgYnkgYWRkaW5nIGB8fCAxYFxuICAgIHJldHVybiBNYXRoLm1heCgxLCBNYXRoLm1pbih0aGlzLmxpc3RDb21wb25lbnQucGFnZXNDb3VudCwgcGFnZSB8fCAxKSlcbiAgfVxuXG4gIHNldFBhZ2UobmV3UGFnZSkge1xuICAgIGlmICghTnVtYmVyLmlzSW50ZWdlcihuZXdQYWdlKSkgcmV0dXJuXG4gICAgdGhpcy5saXN0Q29tcG9uZW50LmdvVG9QYWdlKHRoaXMuYXBwbHlQYWdlQm91bmRzKG5ld1BhZ2UpKVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIj5cbiAgPGRpdiBjbGFzcz1cInNtOmFic29sdXRlIHNtOmluc2V0LTBcIiAqbmdJZj1cIiFoaWRlQnV0dG9uXCI+XG4gICAgPGduLXVpLWJ1dHRvblxuICAgICAgKGJ1dHRvbkNsaWNrKT1cImxpc3RDb21wb25lbnQuZ29Ub05leHRQYWdlKClcIlxuICAgICAgdHlwZT1cInNlY29uZGFyeVwiXG4gICAgICBbZGlzYWJsZWRdPVwibGlzdENvbXBvbmVudC5pc0xhc3RQYWdlXCJcbiAgICAgIGV4dHJhQ2xhc3M9XCJsZzptLWF1dG8gIXAtWzIycHhdXCJcbiAgICA+XG4gICAgICA8c3BhbiBjbGFzcz1cInVwcGVyY2FzZSBmb250LW1lZGl1bSB0cmFja2luZy13aWRlc3RcIiB0cmFuc2xhdGVcbiAgICAgICAgPnBhZ2luYXRpb24ubmV4dFBhZ2U8L3NwYW5cbiAgICAgID5cbiAgICA8L2duLXVpLWJ1dHRvbj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cInJlbGF0aXZlIHBvaW50ZXItZXZlbnRzLW5vbmUgZmxleCBmbGV4LXJvdyBqdXN0aWZ5LXN0YXJ0IHNtOmp1c3RpZnktZW5kXCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJwb2ludGVyLWV2ZW50cy1hdXRvIGZsZXggZmxleC1yb3cgaXRlbXMtY2VudGVyIHB5LVsxM3B4XVwiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJtci0zIGNhcGl0YWxpemUgdGV4dC1zbSB0ZXh0LWdyYXktOTAwXCIgdHJhbnNsYXRlXG4gICAgICAgID5wYWdpbmF0aW9uLnBhZ2U8L3NwYW5cbiAgICAgID5cbiAgICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgW25nTW9kZWxdPVwibGlzdENvbXBvbmVudC5jdXJyZW50UGFnZVwiXG4gICAgICAgIFttaW5dPVwiMVwiXG4gICAgICAgIFttYXhdPVwibGlzdENvbXBvbmVudC5wYWdlc0NvdW50XCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2V0UGFnZSgkZXZlbnQpXCJcbiAgICAgICAgY2xhc3M9XCJib3JkZXIgYm9yZGVyLWdyYXktMzAwIHJvdW5kZWQgdy1bNTRweF0gaC1bMzRweF0gcGwtWzEycHhdIG1yLTMgdGV4dC1jZW50ZXJcIlxuICAgICAgLz5cbiAgICAgIDxzcGFuIGNsYXNzPVwibXItMyB0ZXh0LXNtIHRleHQtZ3JheS05MDBcIlxuICAgICAgICA+PHNwYW4gdHJhbnNsYXRlPnBhZ2luYXRpb24ucGFnZU9mPC9zcGFuPlxuICAgICAgICB7eyBsaXN0Q29tcG9uZW50LnBhZ2VzQ291bnQgfX08L3NwYW5cbiAgICAgID5cbiAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgKGJ1dHRvbkNsaWNrKT1cImxpc3RDb21wb25lbnQuZ29Ub1ByZXZQYWdlKClcIlxuICAgICAgICBjbGFzcz1cIm1yLTJcIlxuICAgICAgICBbZGlzYWJsZWRdPVwibGlzdENvbXBvbmVudC5pc0ZpcnN0UGFnZVwiXG4gICAgICAgIFt0eXBlXT1cIidsaWdodCdcIlxuICAgICAgICBleHRyYUNsYXNzPVwiIXB4LVszcHhdXCJcbiAgICAgICAgZGF0YS1jeT1cInByZXYtcGFnZVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1pY29uIG5hbWU9XCJtYXRDaGV2cm9uTGVmdFwiPjwvbmctaWNvbj5cbiAgICAgIDwvZ24tdWktYnV0dG9uPlxuICAgICAgPGduLXVpLWJ1dHRvblxuICAgICAgICAoYnV0dG9uQ2xpY2spPVwibGlzdENvbXBvbmVudC5nb1RvTmV4dFBhZ2UoKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJsaXN0Q29tcG9uZW50LmlzTGFzdFBhZ2VcIlxuICAgICAgICBbdHlwZV09XCInbGlnaHQnXCJcbiAgICAgICAgZXh0cmFDbGFzcz1cIiFweC1bM3B4XVwiXG4gICAgICAgIGRhdGEtY3k9XCJuZXh0LXBhZ2VcIlxuICAgICAgPlxuICAgICAgICA8bmctaWNvbiBuYW1lPVwibWF0Q2hldnJvblJpZ2h0XCI+PC9uZy1pY29uPlxuICAgICAgPC9nbi11aS1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -1,6 +1,7 @@
1
1
  import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ElementRef, Host, Input, NgZone, TemplateRef, ViewChild, } from '@angular/core';
2
2
  import { animationFrameScheduler, fromEvent } from 'rxjs';
3
3
  import { throttleTime } from 'rxjs/operators';
4
+ import { CommonModule } from '@angular/common';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "@angular/common";
6
7
  /**
@@ -56,11 +57,11 @@ export class StickyHeaderComponent {
56
57
  });
57
58
  }
58
59
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StickyHeaderComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef, host: true }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
59
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: StickyHeaderComponent, selector: "gn-ui-sticky-header", inputs: { minHeightPx: "minHeightPx", fullHeightPx: "fullHeightPx" }, queries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }], viewQueries: [{ propertyName: "outerContainer", first: true, predicate: ["outerContainer"], descendants: true }, { propertyName: "innerContainer", first: true, predicate: ["innerContainer"], descendants: true }], ngImport: i0, template: "<div\n #outerContainer\n class=\"sticky pointer-events-none z-50 top-0\"\n [style.height]=\"fullHeightPx + 'px'\"\n>\n <div\n #innerContainer\n class=\"relative pointer-events-auto\"\n [style.height]=\"fullHeightPx + 'px'\"\n >\n <ng-container\n [ngTemplateOutlet]=\"template\"\n [ngTemplateOutletContext]=\"{ $implicit: expandRatio }\"\n ></ng-container>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
60
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: StickyHeaderComponent, isStandalone: true, selector: "gn-ui-sticky-header", inputs: { minHeightPx: "minHeightPx", fullHeightPx: "fullHeightPx" }, queries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }], viewQueries: [{ propertyName: "outerContainer", first: true, predicate: ["outerContainer"], descendants: true }, { propertyName: "innerContainer", first: true, predicate: ["innerContainer"], descendants: true }], ngImport: i0, template: "<div\n #outerContainer\n class=\"sticky pointer-events-none z-50 top-0\"\n [style.height]=\"fullHeightPx + 'px'\"\n>\n <div\n #innerContainer\n class=\"relative pointer-events-auto\"\n [style.height]=\"fullHeightPx + 'px'\"\n >\n <ng-container\n [ngTemplateOutlet]=\"template\"\n [ngTemplateOutletContext]=\"{ $implicit: expandRatio }\"\n ></ng-container>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
60
61
  }
61
62
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StickyHeaderComponent, decorators: [{
62
63
  type: Component,
63
- args: [{ selector: 'gn-ui-sticky-header', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n #outerContainer\n class=\"sticky pointer-events-none z-50 top-0\"\n [style.height]=\"fullHeightPx + 'px'\"\n>\n <div\n #innerContainer\n class=\"relative pointer-events-auto\"\n [style.height]=\"fullHeightPx + 'px'\"\n >\n <ng-container\n [ngTemplateOutlet]=\"template\"\n [ngTemplateOutletContext]=\"{ $implicit: expandRatio }\"\n ></ng-container>\n </div>\n</div>\n" }]
64
+ args: [{ selector: 'gn-ui-sticky-header', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<div\n #outerContainer\n class=\"sticky pointer-events-none z-50 top-0\"\n [style.height]=\"fullHeightPx + 'px'\"\n>\n <div\n #innerContainer\n class=\"relative pointer-events-auto\"\n [style.height]=\"fullHeightPx + 'px'\"\n >\n <ng-container\n [ngTemplateOutlet]=\"template\"\n [ngTemplateOutletContext]=\"{ $implicit: expandRatio }\"\n ></ng-container>\n </div>\n</div>\n" }]
64
65
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef, decorators: [{
65
66
  type: Host
66
67
  }] }, { type: i0.NgZone }], propDecorators: { minHeightPx: [{
@@ -77,4 +78,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
77
78
  type: ViewChild,
78
79
  args: ['innerContainer']
79
80
  }] } });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RpY2t5LWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL3N0aWNreS1oZWFkZXIvc3RpY2t5LWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL3N0aWNreS1oZWFkZXIvc3RpY2t5LWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixJQUFJLEVBQ0osS0FBSyxFQUNMLE1BQU0sRUFHTixXQUFXLEVBQ1gsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTs7O0FBRTdDOzs7Ozs7OztHQVFHO0FBUUgsTUFBTSxPQUFPLHFCQUFxQjtJQWFoQyxZQUNVLGNBQWlDLEVBQ3pCLE1BQWtCLEVBQzFCLElBQVk7UUFGWixtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDekIsV0FBTSxHQUFOLE1BQU0sQ0FBWTtRQUMxQixTQUFJLEdBQUosSUFBSSxDQUFRO0lBQ25CLENBQUM7SUFFSixlQUFlO1FBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRTtZQUMzQyxPQUFPLEVBQUUsSUFBSTtTQUNkLENBQUM7YUFDQyxJQUFJLENBQ0gsWUFBWSxDQUFDLENBQUMsRUFBRSx1QkFBdUIsRUFBRTtZQUN2QyxPQUFPLEVBQUUsSUFBSTtZQUNiLFFBQVEsRUFBRSxJQUFJO1NBQ2YsQ0FBQyxDQUNIO2FBQ0EsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDMUMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDbEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQTtRQUM5QyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsMkJBQTJCLENBQUMsQ0FBQTtRQUM3RCxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FDN0MsYUFBYSxFQUNiLElBQUksQ0FBQyxhQUFhLENBQ25CLENBQUE7SUFDSCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQTtJQUNuQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUE7UUFDNUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUM3QixDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQy9CLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsWUFBWTtnQkFBRSxPQUFNO1lBQ2hELElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQTtZQUVsQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUN4QixDQUFDLEVBQ0QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FDakQsQ0FBQTtZQUNELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQzFCLElBQUksQ0FBQyxXQUFXLEVBQ2hCLElBQUksQ0FBQyxZQUFZLEdBQUcsU0FBUyxDQUM5QixDQUFBO1lBQ0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxnQkFDbEQsV0FBVyxHQUFHLElBQUksQ0FBQyxZQUNyQixLQUFLLENBQUE7WUFDTCxJQUFJLENBQUMsV0FBVztnQkFDZCxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO29CQUNoQyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBQ3hDLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDckMsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDOytHQXhFVSxxQkFBcUI7bUdBQXJCLHFCQUFxQix1S0FLbEIsV0FBVyxxUUN4QzNCLHVaQWdCQTs7NEZEbUJhLHFCQUFxQjtrQkFOakMsU0FBUzsrQkFDRSxxQkFBcUIsbUJBR2QsdUJBQXVCLENBQUMsTUFBTTs7MEJBaUI1QyxJQUFJOzhEQVpFLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDcUIsUUFBUTtzQkFBbEMsWUFBWTt1QkFBQyxXQUFXO2dCQUNJLGNBQWM7c0JBQTFDLFNBQVM7dUJBQUMsZ0JBQWdCO2dCQUNFLGNBQWM7c0JBQTFDLFNBQVM7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3Q2hlY2tlZCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgSG9zdCxcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBhbmltYXRpb25GcmFtZVNjaGVkdWxlciwgZnJvbUV2ZW50LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgdGhyb3R0bGVUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbi8qKlxuICogVGhpcyBjb21wb25lbnQgd2lsbCBtYWtlIGEgYmxvY2sgdGhhdCB3aWxsIHN0YXkgc3RpY2t5IG9uIHRoZSB0b3Agb2YgdGhlIHBhZ2UsXG4gKiBidXQgd2lsbCBhbHNvIHNocmluayBkb3duIHRvIGEgbWluaW11bSBoZWlnaHQgd2hlbiBzY3JvbGxpbmcuXG4gKiBUaGUgcmF0aW8gYmV0d2VlbiBtaW5pbXVtIGFuZCBub21pbmFsIGhlaWdodCBpcyBzdG9yZWQgaW4gdGhlIHNocmlua1JhdGlvXG4gKiBwcm9wZXJ0eSwgYW5kIGNhbiBiZSB1c2VkIHRvIGNoYW5nZSBlLmcuIHRoZSBvcGFjaXR5IG9yIHNpemUgb2YgY2hpbGQgZWxlbWVudHMuXG4gKiBUaGlzIGNvbXBvbmVudCByZW5kZXJzIGF0IHotaW5kZXg6IDUwIGJ5IGRlZmF1bHQuXG4gKiBUaGUgZmlyc3QgcGFyZW50IGVsZW1lbnQgd2l0aCBhbiBvdmVyZmxvdyBvZiBgc2Nyb2xsYCBvciBgb3ZlcmZsb3dgIGlzIGNvbnNpZGVyZWRcbiAqIGZvciBzY3JvbGwgZXZlbnRzLlxuICovXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLXN0aWNreS1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc3RpY2t5LWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0aWNreS1oZWFkZXIuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU3RpY2t5SGVhZGVyQ29tcG9uZW50XG4gIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkluaXQsIEFmdGVyVmlld0NoZWNrZWRcbntcbiAgQElucHV0KCkgbWluSGVpZ2h0UHg6IG51bWJlclxuICBASW5wdXQoKSBmdWxsSGVpZ2h0UHg6IG51bWJlclxuICBAQ29udGVudENoaWxkKFRlbXBsYXRlUmVmKSB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8eyAkaW1wbGljaXQ6IG51bWJlciB9PlxuICBAVmlld0NoaWxkKCdvdXRlckNvbnRhaW5lcicpIG91dGVyQ29udGFpbmVyOiBFbGVtZW50UmVmXG4gIEBWaWV3Q2hpbGQoJ2lubmVyQ29udGFpbmVyJykgaW5uZXJDb250YWluZXI6IEVsZW1lbnRSZWZcbiAgcGxhY2Vob2xkZXJFbDogSFRNTEVsZW1lbnRcbiAgZXhwYW5kUmF0aW86IG51bWJlciAvLyAxIG1lYW5zIGhlaWdodCBpcyBmdWxsLCAwIG1lYW5zIGhlaWdodCBpcyBtaW5pbXVtXG4gIHNjcm9sbFN1YjogU3Vic2NyaXB0aW9uXG4gIHBhcmVudFNjcm9sbDogbnVtYmVyXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQEhvc3QoKSBwcml2YXRlIGhvc3RFbDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHpvbmU6IE5nWm9uZVxuICApIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuc2Nyb2xsU3ViID0gZnJvbUV2ZW50KHdpbmRvdywgJ3Njcm9sbCcsIHtcbiAgICAgIHBhc3NpdmU6IHRydWUsXG4gICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0aHJvdHRsZVRpbWUoMCwgYW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIsIHtcbiAgICAgICAgICBsZWFkaW5nOiB0cnVlLFxuICAgICAgICAgIHRyYWlsaW5nOiB0cnVlLFxuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSh0aGlzLnVwZGF0ZVNpemUuYmluZCh0aGlzKSlcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucGxhY2Vob2xkZXJFbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpXG4gICAgdGhpcy5wbGFjZWhvbGRlckVsLnN0eWxlLnBvc2l0aW9uID0gJ2Fic29sdXRlJ1xuICAgIHRoaXMucGxhY2Vob2xkZXJFbC5jbGFzc0xpc3QuYWRkKCdzdGlja3ktaGVhZGVyLXBsYWNlaG9sZGVyJylcbiAgICB0aGlzLmhvc3RFbC5uYXRpdmVFbGVtZW50Lmluc2VydEFkamFjZW50RWxlbWVudChcbiAgICAgICdiZWZvcmViZWdpbicsXG4gICAgICB0aGlzLnBsYWNlaG9sZGVyRWxcbiAgICApXG4gIH1cblxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKSB7XG4gICAgdGhpcy51cGRhdGVTaXplKClcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc2Nyb2xsU3ViLnVuc3Vic2NyaWJlKClcbiAgICB0aGlzLnBsYWNlaG9sZGVyRWwucmVtb3ZlKClcbiAgfVxuXG4gIHVwZGF0ZVNpemUoKSB7XG4gICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIGlmICh3aW5kb3cuc2Nyb2xsWSA9PT0gdGhpcy5wYXJlbnRTY3JvbGwpIHJldHVyblxuICAgICAgdGhpcy5wYXJlbnRTY3JvbGwgPSB3aW5kb3cuc2Nyb2xsWVxuXG4gICAgICBjb25zdCBvZmZzZXRUb3AgPSBNYXRoLm1heChcbiAgICAgICAgMCxcbiAgICAgICAgdGhpcy5wYXJlbnRTY3JvbGwgLSB0aGlzLnBsYWNlaG9sZGVyRWwub2Zmc2V0VG9wXG4gICAgICApXG4gICAgICBjb25zdCBuZXdIZWlnaHRQeCA9IE1hdGgubWF4KFxuICAgICAgICB0aGlzLm1pbkhlaWdodFB4LFxuICAgICAgICB0aGlzLmZ1bGxIZWlnaHRQeCAtIG9mZnNldFRvcFxuICAgICAgKVxuICAgICAgdGhpcy5pbm5lckNvbnRhaW5lci5uYXRpdmVFbGVtZW50LnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGUoMCwgJHtcbiAgICAgICAgbmV3SGVpZ2h0UHggLSB0aGlzLmZ1bGxIZWlnaHRQeFxuICAgICAgfXB4KWBcbiAgICAgIHRoaXMuZXhwYW5kUmF0aW8gPVxuICAgICAgICAobmV3SGVpZ2h0UHggLSB0aGlzLm1pbkhlaWdodFB4KSAvXG4gICAgICAgICh0aGlzLmZ1bGxIZWlnaHRQeCAtIHRoaXMubWluSGVpZ2h0UHgpXG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKVxuICAgIH0pXG4gIH1cbn1cbiIsIjxkaXZcbiAgI291dGVyQ29udGFpbmVyXG4gIGNsYXNzPVwic3RpY2t5IHBvaW50ZXItZXZlbnRzLW5vbmUgei01MCB0b3AtMFwiXG4gIFtzdHlsZS5oZWlnaHRdPVwiZnVsbEhlaWdodFB4ICsgJ3B4J1wiXG4+XG4gIDxkaXZcbiAgICAjaW5uZXJDb250YWluZXJcbiAgICBjbGFzcz1cInJlbGF0aXZlIHBvaW50ZXItZXZlbnRzLWF1dG9cIlxuICAgIFtzdHlsZS5oZWlnaHRdPVwiZnVsbEhlaWdodFB4ICsgJ3B4J1wiXG4gID5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0ZW1wbGF0ZVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGV4cGFuZFJhdGlvIH1cIlxuICAgID48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RpY2t5LWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL3N0aWNreS1oZWFkZXIvc3RpY2t5LWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL3N0aWNreS1oZWFkZXIvc3RpY2t5LWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixJQUFJLEVBQ0osS0FBSyxFQUNMLE1BQU0sRUFHTixXQUFXLEVBQ1gsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7OztBQUU5Qzs7Ozs7Ozs7R0FRRztBQVVILE1BQU0sT0FBTyxxQkFBcUI7SUFhaEMsWUFDVSxjQUFpQyxFQUN6QixNQUFrQixFQUMxQixJQUFZO1FBRlosbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQ3pCLFdBQU0sR0FBTixNQUFNLENBQVk7UUFDMUIsU0FBSSxHQUFKLElBQUksQ0FBUTtJQUNuQixDQUFDO0lBRUosZUFBZTtRQUNiLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUU7WUFDM0MsT0FBTyxFQUFFLElBQUk7U0FDZCxDQUFDO2FBQ0MsSUFBSSxDQUNILFlBQVksQ0FBQyxDQUFDLEVBQUUsdUJBQXVCLEVBQUU7WUFDdkMsT0FBTyxFQUFFLElBQUk7WUFDYixRQUFRLEVBQUUsSUFBSTtTQUNmLENBQUMsQ0FDSDthQUNBLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQzFDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGFBQWEsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ2xELElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUE7UUFDOUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLDJCQUEyQixDQUFDLENBQUE7UUFDN0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQzdDLGFBQWEsRUFDYixJQUFJLENBQUMsYUFBYSxDQUNuQixDQUFBO0lBQ0gsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDbkIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFBO1FBQzVCLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLENBQUE7SUFDN0IsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtZQUMvQixJQUFJLE1BQU0sQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLFlBQVk7Z0JBQUUsT0FBTTtZQUNoRCxJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUE7WUFFbEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FDeEIsQ0FBQyxFQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQ2pELENBQUE7WUFDRCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUMxQixJQUFJLENBQUMsV0FBVyxFQUNoQixJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FDOUIsQ0FBQTtZQUNELElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsZ0JBQ2xELFdBQVcsR0FBRyxJQUFJLENBQUMsWUFDckIsS0FBSyxDQUFBO1lBQ0wsSUFBSSxDQUFDLFdBQVc7Z0JBQ2QsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztvQkFDaEMsQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQTtZQUN4QyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFBO1FBQ3JDLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQzsrR0F4RVUscUJBQXFCO21HQUFyQixxQkFBcUIsMkxBS2xCLFdBQVcscVFDM0MzQix1WkFnQkEseUREb0JZLFlBQVk7OzRGQUVYLHFCQUFxQjtrQkFSakMsU0FBUzsrQkFDRSxxQkFBcUIsbUJBR2QsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUM7OzBCQWlCcEIsSUFBSTs4REFaRSxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ3FCLFFBQVE7c0JBQWxDLFlBQVk7dUJBQUMsV0FBVztnQkFDSSxjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQjtnQkFDRSxjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0NoZWNrZWQsXG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3QsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgYW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIsIGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IHRocm90dGxlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuXG4vKipcbiAqIFRoaXMgY29tcG9uZW50IHdpbGwgbWFrZSBhIGJsb2NrIHRoYXQgd2lsbCBzdGF5IHN0aWNreSBvbiB0aGUgdG9wIG9mIHRoZSBwYWdlLFxuICogYnV0IHdpbGwgYWxzbyBzaHJpbmsgZG93biB0byBhIG1pbmltdW0gaGVpZ2h0IHdoZW4gc2Nyb2xsaW5nLlxuICogVGhlIHJhdGlvIGJldHdlZW4gbWluaW11bSBhbmQgbm9taW5hbCBoZWlnaHQgaXMgc3RvcmVkIGluIHRoZSBzaHJpbmtSYXRpb1xuICogcHJvcGVydHksIGFuZCBjYW4gYmUgdXNlZCB0byBjaGFuZ2UgZS5nLiB0aGUgb3BhY2l0eSBvciBzaXplIG9mIGNoaWxkIGVsZW1lbnRzLlxuICogVGhpcyBjb21wb25lbnQgcmVuZGVycyBhdCB6LWluZGV4OiA1MCBieSBkZWZhdWx0LlxuICogVGhlIGZpcnN0IHBhcmVudCBlbGVtZW50IHdpdGggYW4gb3ZlcmZsb3cgb2YgYHNjcm9sbGAgb3IgYG92ZXJmbG93YCBpcyBjb25zaWRlcmVkXG4gKiBmb3Igc2Nyb2xsIGV2ZW50cy5cbiAqL1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1zdGlja3ktaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0aWNreS1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zdGlja3ktaGVhZGVyLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBTdGlja3lIZWFkZXJDb21wb25lbnRcbiAgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgQWZ0ZXJWaWV3Q2hlY2tlZFxue1xuICBASW5wdXQoKSBtaW5IZWlnaHRQeDogbnVtYmVyXG4gIEBJbnB1dCgpIGZ1bGxIZWlnaHRQeDogbnVtYmVyXG4gIEBDb250ZW50Q2hpbGQoVGVtcGxhdGVSZWYpIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx7ICRpbXBsaWNpdDogbnVtYmVyIH0+XG4gIEBWaWV3Q2hpbGQoJ291dGVyQ29udGFpbmVyJykgb3V0ZXJDb250YWluZXI6IEVsZW1lbnRSZWZcbiAgQFZpZXdDaGlsZCgnaW5uZXJDb250YWluZXInKSBpbm5lckNvbnRhaW5lcjogRWxlbWVudFJlZlxuICBwbGFjZWhvbGRlckVsOiBIVE1MRWxlbWVudFxuICBleHBhbmRSYXRpbzogbnVtYmVyIC8vIDEgbWVhbnMgaGVpZ2h0IGlzIGZ1bGwsIDAgbWVhbnMgaGVpZ2h0IGlzIG1pbmltdW1cbiAgc2Nyb2xsU3ViOiBTdWJzY3JpcHRpb25cbiAgcGFyZW50U2Nyb2xsOiBudW1iZXJcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBASG9zdCgpIHByaXZhdGUgaG9zdEVsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgem9uZTogTmdab25lXG4gICkge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5zY3JvbGxTdWIgPSBmcm9tRXZlbnQod2luZG93LCAnc2Nyb2xsJywge1xuICAgICAgcGFzc2l2ZTogdHJ1ZSxcbiAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRocm90dGxlVGltZSgwLCBhbmltYXRpb25GcmFtZVNjaGVkdWxlciwge1xuICAgICAgICAgIGxlYWRpbmc6IHRydWUsXG4gICAgICAgICAgdHJhaWxpbmc6IHRydWUsXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKHRoaXMudXBkYXRlU2l6ZS5iaW5kKHRoaXMpKVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5wbGFjZWhvbGRlckVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JylcbiAgICB0aGlzLnBsYWNlaG9sZGVyRWwuc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnXG4gICAgdGhpcy5wbGFjZWhvbGRlckVsLmNsYXNzTGlzdC5hZGQoJ3N0aWNreS1oZWFkZXItcGxhY2Vob2xkZXInKVxuICAgIHRoaXMuaG9zdEVsLm5hdGl2ZUVsZW1lbnQuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KFxuICAgICAgJ2JlZm9yZWJlZ2luJyxcbiAgICAgIHRoaXMucGxhY2Vob2xkZXJFbFxuICAgIClcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpIHtcbiAgICB0aGlzLnVwZGF0ZVNpemUoKVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zY3JvbGxTdWIudW5zdWJzY3JpYmUoKVxuICAgIHRoaXMucGxhY2Vob2xkZXJFbC5yZW1vdmUoKVxuICB9XG5cbiAgdXBkYXRlU2l6ZSgpIHtcbiAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgaWYgKHdpbmRvdy5zY3JvbGxZID09PSB0aGlzLnBhcmVudFNjcm9sbCkgcmV0dXJuXG4gICAgICB0aGlzLnBhcmVudFNjcm9sbCA9IHdpbmRvdy5zY3JvbGxZXG5cbiAgICAgIGNvbnN0IG9mZnNldFRvcCA9IE1hdGgubWF4KFxuICAgICAgICAwLFxuICAgICAgICB0aGlzLnBhcmVudFNjcm9sbCAtIHRoaXMucGxhY2Vob2xkZXJFbC5vZmZzZXRUb3BcbiAgICAgIClcbiAgICAgIGNvbnN0IG5ld0hlaWdodFB4ID0gTWF0aC5tYXgoXG4gICAgICAgIHRoaXMubWluSGVpZ2h0UHgsXG4gICAgICAgIHRoaXMuZnVsbEhlaWdodFB4IC0gb2Zmc2V0VG9wXG4gICAgICApXG4gICAgICB0aGlzLmlubmVyQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuc3R5bGUudHJhbnNmb3JtID0gYHRyYW5zbGF0ZSgwLCAke1xuICAgICAgICBuZXdIZWlnaHRQeCAtIHRoaXMuZnVsbEhlaWdodFB4XG4gICAgICB9cHgpYFxuICAgICAgdGhpcy5leHBhbmRSYXRpbyA9XG4gICAgICAgIChuZXdIZWlnaHRQeCAtIHRoaXMubWluSGVpZ2h0UHgpIC9cbiAgICAgICAgKHRoaXMuZnVsbEhlaWdodFB4IC0gdGhpcy5taW5IZWlnaHRQeClcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpXG4gICAgfSlcbiAgfVxufVxuIiwiPGRpdlxuICAjb3V0ZXJDb250YWluZXJcbiAgY2xhc3M9XCJzdGlja3kgcG9pbnRlci1ldmVudHMtbm9uZSB6LTUwIHRvcC0wXCJcbiAgW3N0eWxlLmhlaWdodF09XCJmdWxsSGVpZ2h0UHggKyAncHgnXCJcbj5cbiAgPGRpdlxuICAgICNpbm5lckNvbnRhaW5lclxuICAgIGNsYXNzPVwicmVsYXRpdmUgcG9pbnRlci1ldmVudHMtYXV0b1wiXG4gICAgW3N0eWxlLmhlaWdodF09XCJmdWxsSGVpZ2h0UHggKyAncHgnXCJcbiAgPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRlbXBsYXRlXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogZXhwYW5kUmF0aW8gfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1,43 +1,28 @@
1
- import { ChangeDetectorRef, Component, ElementRef, Input, ViewChild, NgZone, } from '@angular/core';
1
+ import { ChangeDetectorRef, Component, ElementRef, Input, NgZone, ViewChild, } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
- import { provideIcons, NgIconComponent } from '@ng-icons/core';
4
- import { iconoirExpand, iconoirReduce } from '@ng-icons/iconoir';
5
- import { TranslateModule } from '@ngx-translate/core';
3
+ import { NgIconComponent, provideIcons } from '@ng-icons/core';
4
+ import { iconoirExpand } from '@ng-icons/iconoir';
6
5
  import { MatButtonModule } from '@angular/material/button';
7
- import { OverlayModule, ViewportRuler, } from '@angular/cdk/overlay';
6
+ import { CdkScrollable, OverlayModule } from '@angular/cdk/overlay';
8
7
  import { ButtonComponent } from '../../../../../../libs/ui/inputs/src';
8
+ import { CellPopinComponent } from '../cell-popin/cell-popin.component';
9
9
  import * as i0 from "@angular/core";
10
- import * as i1 from "@angular/cdk/overlay";
11
- import * as i2 from "@angular/common";
10
+ import * as i1 from "@angular/common";
12
11
  export class TruncatedTextComponent {
13
- constructor(cd, ngZone, viewportRuler) {
12
+ constructor(cd, ngZone) {
14
13
  this.cd = cd;
15
14
  this.ngZone = ngZone;
16
- this.viewportRuler = viewportRuler;
17
15
  this.text = '';
18
16
  this.extraClass = '';
19
17
  this.isTextTruncated = false;
20
- this.isOpen = false;
21
- this.overlayPosition = {
22
- originX: 'end',
23
- originY: 'top',
24
- overlayX: 'end',
25
- overlayY: 'top',
26
- };
27
18
  this.resizeObserver = new ResizeObserver(() => {
28
19
  this.ngZone.run(() => this.checkTextTruncation());
29
20
  });
30
21
  this.mutationObserver = new MutationObserver(() => {
31
22
  this.ngZone.run(() => {
32
23
  this.checkTextTruncation();
33
- this.close();
34
24
  });
35
25
  });
36
- this.viewportSubscription = this.viewportRuler.change().subscribe(() => {
37
- if (this.isOpen) {
38
- this.updateOverlayPosition();
39
- }
40
- });
41
26
  }
42
27
  ngAfterViewInit() {
43
28
  const element = this.textElement.nativeElement;
@@ -52,56 +37,35 @@ export class TruncatedTextComponent {
52
37
  ngOnDestroy() {
53
38
  this.resizeObserver?.disconnect();
54
39
  this.mutationObserver?.disconnect();
55
- this.viewportSubscription?.unsubscribe();
56
- this.close();
57
- }
58
- toggleOverlay() {
59
- this.isOpen = !this.isOpen;
60
- if (this.isOpen) {
61
- this.updateOverlayPosition();
62
- }
63
- }
64
- updateOverlayPosition() {
65
- const element = this.textElement.nativeElement;
66
- const rect = element.getBoundingClientRect();
67
- const viewportWidth = this.viewportRuler.getViewportSize().width;
68
- const isMobile = viewportWidth < 640;
69
- const overlayWidth = isMobile ? 190 : 320;
70
- const isNearLeftEdge = rect.left < overlayWidth;
71
- this.overlayPosition = {
72
- originX: isNearLeftEdge ? 'start' : 'end',
73
- originY: 'top',
74
- overlayX: isNearLeftEdge ? 'start' : 'end',
75
- overlayY: 'top',
76
- };
77
- }
78
- close() {
79
- this.isOpen = false;
80
40
  }
81
41
  checkTextTruncation() {
82
42
  const element = this.textElement.nativeElement;
83
43
  this.isTextTruncated = element.scrollWidth > element.clientWidth;
84
44
  this.cd.detectChanges();
85
45
  }
86
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TruncatedTextComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i1.ViewportRuler }], target: i0.ɵɵFactoryTarget.Component }); }
87
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TruncatedTextComponent, isStandalone: true, selector: "gn-ui-truncated-text", inputs: { text: "text", extraClass: "extraClass" }, providers: [provideIcons({ iconoirExpand, iconoirReduce })], viewQueries: [{ propertyName: "textElement", first: true, predicate: ["textElement"], descendants: true }], ngImport: i0, template: "<div\n class=\"flex items-center justify-between w-full gap-2\"\n cdkOverlayOrigin\n [class]=\"extraClass\"\n #trigger=\"cdkOverlayOrigin\"\n>\n <span #textElement class=\"truncate\">\n {{ text }}\n </span>\n <gn-ui-button\n *ngIf=\"isTextTruncated\"\n type=\"outline\"\n extraClass=\"w-10 h-8 border rounded-lg\"\n (buttonClick)=\"toggleOverlay()\"\n >\n <ng-icon name=\"iconoirExpand\" size=\"24\"> </ng-icon>\n </gn-ui-button>\n\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"isOpen\"\n [cdkConnectedOverlayPositions]=\"[overlayPosition]\"\n cdkConnectedOverlayPush\n [cdkConnectedOverlayWidth]=\"'auto'\"\n [cdkConnectedOverlayFlexibleDimensions]=\"true\"\n [cdkConnectedOverlayGrowAfterOpen]=\"true\"\n (detach)=\"close()\"\n >\n <div class=\"bg-white shadow-lg border border-gray-300 flex\">\n <div class=\"sm:w-64 xs:w-32\">\n <p class=\"m-2\">{{ text }}</p>\n </div>\n <gn-ui-button\n class=\"m-2 flex-shrink-0\"\n type=\"light\"\n (buttonClick)=\"close()\"\n extraClass=\"w-10 h-8 px-1 bg-white\"\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: TranslateModule }, { 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"] }] }); }
46
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TruncatedTextComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
47
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TruncatedTextComponent, isStandalone: true, selector: "gn-ui-truncated-text", inputs: { text: "text", extraClass: "extraClass", scrollContainer: "scrollContainer", cdkScrollContainer: "cdkScrollContainer" }, providers: [provideIcons({ iconoirExpand })], viewQueries: [{ propertyName: "textElement", first: true, predicate: ["textElement"], descendants: true }], ngImport: i0, template: "<gn-ui-cell-popin\n #popinRef\n [activePopin]=\"isTextTruncated\"\n [scrollContainer]=\"scrollContainer\"\n [cdkScrollContainer]=\"cdkScrollContainer\"\n>\n <div\n cellContent\n class=\"flex items-center justify-between w-full gap-2\"\n [class]=\"extraClass\"\n >\n <span #textElement class=\"truncate py-3 px-2\">\n {{ text }}\n </span>\n <gn-ui-button\n *ngIf=\"isTextTruncated\"\n type=\"outline\"\n extraClass=\"w-10 h-8 border rounded-lg mr-2\"\n (buttonClick)=\"popinRef.openOverlay()\"\n >\n <ng-icon name=\"iconoirExpand\" size=\"24\"> </ng-icon>\n </gn-ui-button>\n </div>\n <div popinContent class=\"sm:w-64 xs:w-32 py-4 pl-6 pr-9\">\n <p>{{ text }}</p>\n </div>\n</gn-ui-cell-popin>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: OverlayModule }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: CellPopinComponent, selector: "gn-ui-cell-popin", inputs: ["extraClass", "cdkScrollContainer", "scrollContainer", "activePopin"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }] }); }
88
48
  }
89
49
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TruncatedTextComponent, decorators: [{
90
50
  type: Component,
91
51
  args: [{ selector: 'gn-ui-truncated-text', standalone: true, imports: [
92
52
  CommonModule,
93
- TranslateModule,
94
53
  MatButtonModule,
95
54
  OverlayModule,
96
55
  ButtonComponent,
56
+ CellPopinComponent,
97
57
  NgIconComponent,
98
- ], providers: [provideIcons({ iconoirExpand, iconoirReduce })], template: "<div\n class=\"flex items-center justify-between w-full gap-2\"\n cdkOverlayOrigin\n [class]=\"extraClass\"\n #trigger=\"cdkOverlayOrigin\"\n>\n <span #textElement class=\"truncate\">\n {{ text }}\n </span>\n <gn-ui-button\n *ngIf=\"isTextTruncated\"\n type=\"outline\"\n extraClass=\"w-10 h-8 border rounded-lg\"\n (buttonClick)=\"toggleOverlay()\"\n >\n <ng-icon name=\"iconoirExpand\" size=\"24\"> </ng-icon>\n </gn-ui-button>\n\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"isOpen\"\n [cdkConnectedOverlayPositions]=\"[overlayPosition]\"\n cdkConnectedOverlayPush\n [cdkConnectedOverlayWidth]=\"'auto'\"\n [cdkConnectedOverlayFlexibleDimensions]=\"true\"\n [cdkConnectedOverlayGrowAfterOpen]=\"true\"\n (detach)=\"close()\"\n >\n <div class=\"bg-white shadow-lg border border-gray-300 flex\">\n <div class=\"sm:w-64 xs:w-32\">\n <p class=\"m-2\">{{ text }}</p>\n </div>\n <gn-ui-button\n class=\"m-2 flex-shrink-0\"\n type=\"light\"\n (buttonClick)=\"close()\"\n extraClass=\"w-10 h-8 px-1 bg-white\"\n >\n <ng-icon name=\"iconoirReduce\" size=\"24\"> </ng-icon>\n </gn-ui-button>\n </div>\n </ng-template>\n</div>\n" }]
99
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i1.ViewportRuler }], propDecorators: { text: [{
58
+ ], providers: [provideIcons({ iconoirExpand })], template: "<gn-ui-cell-popin\n #popinRef\n [activePopin]=\"isTextTruncated\"\n [scrollContainer]=\"scrollContainer\"\n [cdkScrollContainer]=\"cdkScrollContainer\"\n>\n <div\n cellContent\n class=\"flex items-center justify-between w-full gap-2\"\n [class]=\"extraClass\"\n >\n <span #textElement class=\"truncate py-3 px-2\">\n {{ text }}\n </span>\n <gn-ui-button\n *ngIf=\"isTextTruncated\"\n type=\"outline\"\n extraClass=\"w-10 h-8 border rounded-lg mr-2\"\n (buttonClick)=\"popinRef.openOverlay()\"\n >\n <ng-icon name=\"iconoirExpand\" size=\"24\"> </ng-icon>\n </gn-ui-button>\n </div>\n <div popinContent class=\"sm:w-64 xs:w-32 py-4 pl-6 pr-9\">\n <p>{{ text }}</p>\n </div>\n</gn-ui-cell-popin>\n" }]
59
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.NgZone }], propDecorators: { text: [{
100
60
  type: Input
101
61
  }], extraClass: [{
102
62
  type: Input
63
+ }], scrollContainer: [{
64
+ type: Input
65
+ }], cdkScrollContainer: [{
66
+ type: Input
103
67
  }], textElement: [{
104
68
  type: ViewChild,
105
69
  args: ['textElement']
106
70
  }] } });
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1bmNhdGVkLXRleHQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjL2xpYi90cnVuY2F0ZWQtdGV4dC90cnVuY2F0ZWQtdGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL3RydW5jYXRlZC10ZXh0L3RydW5jYXRlZC10ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxFQUNULE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDMUQsT0FBTyxFQUNMLGFBQWEsRUFDYixhQUFhLEdBRWQsTUFBTSxzQkFBc0IsQ0FBQTtBQUM3QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUE7Ozs7QUFrQnRFLE1BQU0sT0FBTyxzQkFBc0I7SUFpQmpDLFlBQ21CLEVBQXFCLEVBQ3JCLE1BQWMsRUFDZCxhQUE0QjtRQUY1QixPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUNyQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2Qsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFuQnRDLFNBQUksR0FBRyxFQUFFLENBQUE7UUFDVCxlQUFVLEdBQUcsRUFBRSxDQUFBO1FBR3hCLG9CQUFlLEdBQUcsS0FBSyxDQUFBO1FBQ3ZCLFdBQU0sR0FBRyxLQUFLLENBQUE7UUFDZCxvQkFBZSxHQUFzQjtZQUNuQyxPQUFPLEVBQUUsS0FBSztZQUNkLE9BQU8sRUFBRSxLQUFLO1lBQ2QsUUFBUSxFQUFFLEtBQUs7WUFDZixRQUFRLEVBQUUsS0FBSztTQUNoQixDQUFBO1FBVUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxHQUFHLEVBQUU7WUFDNUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQTtRQUNuRCxDQUFDLENBQUMsQ0FBQTtRQUVGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLGdCQUFnQixDQUFDLEdBQUcsRUFBRTtZQUNoRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFBO2dCQUMxQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7WUFDZCxDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxDQUFBO1FBRUYsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNyRSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDaEIsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUE7WUFDOUIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQTtRQUM5QyxJQUFJLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUNyQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUU7WUFDcEQsVUFBVSxFQUFFLElBQUk7WUFDaEIsU0FBUyxFQUFFLElBQUk7WUFDZixPQUFPLEVBQUUsSUFBSTtTQUNkLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFBO0lBQzVCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsRUFBRSxVQUFVLEVBQUUsQ0FBQTtRQUNqQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLENBQUE7UUFDbkMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxDQUFBO1FBQ3hDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUNkLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUE7UUFDMUIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDaEIsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUE7UUFDOUIsQ0FBQztJQUNILENBQUM7SUFFTyxxQkFBcUI7UUFDM0IsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUE7UUFDOUMsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUE7UUFDNUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxLQUFLLENBQUE7UUFDaEUsTUFBTSxRQUFRLEdBQUcsYUFBYSxHQUFHLEdBQUcsQ0FBQTtRQUNwQyxNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFBO1FBQ3pDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsWUFBWSxDQUFBO1FBRS9DLElBQUksQ0FBQyxlQUFlLEdBQUc7WUFDckIsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLO1lBQ3pDLE9BQU8sRUFBRSxLQUFLO1lBQ2QsUUFBUSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLO1lBQzFDLFFBQVEsRUFBRSxLQUFLO1NBQ2hCLENBQUE7SUFDSCxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFBO0lBQ3JCLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUE7UUFFOUMsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUE7UUFDaEUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtJQUN6QixDQUFDOytHQTFGVSxzQkFBc0I7bUdBQXRCLHNCQUFzQix1SEFKdEIsQ0FBQyxZQUFZLENBQUMsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQyxzSUNsQzdELG15Q0E0Q0EsMkNEakJJLFlBQVksa0lBQ1osZUFBZSw4QkFDZixlQUFlLDhCQUNmLGFBQWEsMnJDQUNiLGVBQWUsK0hBQ2YsZUFBZTs7NEZBTU4sc0JBQXNCO2tCQWZsQyxTQUFTOytCQUNFLHNCQUFzQixjQUNwQixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixlQUFlO3dCQUNmLGVBQWU7cUJBQ2hCLGFBQ1UsQ0FBQyxZQUFZLENBQUMsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQzt1SUFLbEQsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRW9CLFdBQVc7c0JBQXBDLFNBQVM7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIFZpZXdDaGlsZCxcbiAgTmdab25lLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgcHJvdmlkZUljb25zLCBOZ0ljb25Db21wb25lbnQgfSBmcm9tICdAbmctaWNvbnMvY29yZSdcbmltcG9ydCB7IGljb25vaXJFeHBhbmQsIGljb25vaXJSZWR1Y2UgfSBmcm9tICdAbmctaWNvbnMvaWNvbm9pcidcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nXG5pbXBvcnQge1xuICBPdmVybGF5TW9kdWxlLFxuICBWaWV3cG9ydFJ1bGVyLFxuICBDb25uZWN0ZWRQb3NpdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS10cnVuY2F0ZWQtdGV4dCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBPdmVybGF5TW9kdWxlLFxuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBOZ0ljb25Db21wb25lbnQsXG4gIF0sXG4gIHByb3ZpZGVyczogW3Byb3ZpZGVJY29ucyh7IGljb25vaXJFeHBhbmQsIGljb25vaXJSZWR1Y2UgfSldLFxuICB0ZW1wbGF0ZVVybDogJy4vdHJ1bmNhdGVkLXRleHQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZXM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBUcnVuY2F0ZWRUZXh0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgdGV4dCA9ICcnXG4gIEBJbnB1dCgpIGV4dHJhQ2xhc3MgPSAnJ1xuXG4gIEBWaWV3Q2hpbGQoJ3RleHRFbGVtZW50JykgdGV4dEVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+XG4gIGlzVGV4dFRydW5jYXRlZCA9IGZhbHNlXG4gIGlzT3BlbiA9IGZhbHNlXG4gIG92ZXJsYXlQb3NpdGlvbjogQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgfVxuICBwcml2YXRlIHJlYWRvbmx5IHJlc2l6ZU9ic2VydmVyOiBSZXNpemVPYnNlcnZlclxuICBwcml2YXRlIHJlYWRvbmx5IG11dGF0aW9uT2JzZXJ2ZXI6IE11dGF0aW9uT2JzZXJ2ZXJcbiAgcHJpdmF0ZSByZWFkb25seSB2aWV3cG9ydFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZpZXdwb3J0UnVsZXI6IFZpZXdwb3J0UnVsZXJcbiAgKSB7XG4gICAgdGhpcy5yZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gdGhpcy5jaGVja1RleHRUcnVuY2F0aW9uKCkpXG4gICAgfSlcblxuICAgIHRoaXMubXV0YXRpb25PYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKCgpID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgIHRoaXMuY2hlY2tUZXh0VHJ1bmNhdGlvbigpXG4gICAgICAgIHRoaXMuY2xvc2UoKVxuICAgICAgfSlcbiAgICB9KVxuXG4gICAgdGhpcy52aWV3cG9ydFN1YnNjcmlwdGlvbiA9IHRoaXMudmlld3BvcnRSdWxlci5jaGFuZ2UoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICAgIHRoaXMudXBkYXRlT3ZlcmxheVBvc2l0aW9uKClcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLnRleHRFbGVtZW50Lm5hdGl2ZUVsZW1lbnRcbiAgICB0aGlzLnJlc2l6ZU9ic2VydmVyPy5vYnNlcnZlKGVsZW1lbnQpXG4gICAgdGhpcy5tdXRhdGlvbk9ic2VydmVyPy5vYnNlcnZlKGVsZW1lbnQucGFyZW50RWxlbWVudCwge1xuICAgICAgYXR0cmlidXRlczogdHJ1ZSxcbiAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgIHN1YnRyZWU6IHRydWUsXG4gICAgfSlcbiAgICB0aGlzLmNoZWNrVGV4dFRydW5jYXRpb24oKVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5yZXNpemVPYnNlcnZlcj8uZGlzY29ubmVjdCgpXG4gICAgdGhpcy5tdXRhdGlvbk9ic2VydmVyPy5kaXNjb25uZWN0KClcbiAgICB0aGlzLnZpZXdwb3J0U3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpXG4gICAgdGhpcy5jbG9zZSgpXG4gIH1cblxuICB0b2dnbGVPdmVybGF5KCkge1xuICAgIHRoaXMuaXNPcGVuID0gIXRoaXMuaXNPcGVuXG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICB0aGlzLnVwZGF0ZU92ZXJsYXlQb3NpdGlvbigpXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVPdmVybGF5UG9zaXRpb24oKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMudGV4dEVsZW1lbnQubmF0aXZlRWxlbWVudFxuICAgIGNvbnN0IHJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpXG4gICAgY29uc3Qgdmlld3BvcnRXaWR0aCA9IHRoaXMudmlld3BvcnRSdWxlci5nZXRWaWV3cG9ydFNpemUoKS53aWR0aFxuICAgIGNvbnN0IGlzTW9iaWxlID0gdmlld3BvcnRXaWR0aCA8IDY0MFxuICAgIGNvbnN0IG92ZXJsYXlXaWR0aCA9IGlzTW9iaWxlID8gMTkwIDogMzIwXG4gICAgY29uc3QgaXNOZWFyTGVmdEVkZ2UgPSByZWN0LmxlZnQgPCBvdmVybGF5V2lkdGhcblxuICAgIHRoaXMub3ZlcmxheVBvc2l0aW9uID0ge1xuICAgICAgb3JpZ2luWDogaXNOZWFyTGVmdEVkZ2UgPyAnc3RhcnQnIDogJ2VuZCcsXG4gICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgIG92ZXJsYXlYOiBpc05lYXJMZWZ0RWRnZSA/ICdzdGFydCcgOiAnZW5kJyxcbiAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICB9XG4gIH1cblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLmlzT3BlbiA9IGZhbHNlXG4gIH1cblxuICBwcml2YXRlIGNoZWNrVGV4dFRydW5jYXRpb24oKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMudGV4dEVsZW1lbnQubmF0aXZlRWxlbWVudFxuXG4gICAgdGhpcy5pc1RleHRUcnVuY2F0ZWQgPSBlbGVtZW50LnNjcm9sbFdpZHRoID4gZWxlbWVudC5jbGllbnRXaWR0aFxuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpXG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gdy1mdWxsIGdhcC0yXCJcbiAgY2RrT3ZlcmxheU9yaWdpblxuICBbY2xhc3NdPVwiZXh0cmFDbGFzc1wiXG4gICN0cmlnZ2VyPVwiY2RrT3ZlcmxheU9yaWdpblwiXG4+XG4gIDxzcGFuICN0ZXh0RWxlbWVudCBjbGFzcz1cInRydW5jYXRlXCI+XG4gICAge3sgdGV4dCB9fVxuICA8L3NwYW4+XG4gIDxnbi11aS1idXR0b25cbiAgICAqbmdJZj1cImlzVGV4dFRydW5jYXRlZFwiXG4gICAgdHlwZT1cIm91dGxpbmVcIlxuICAgIGV4dHJhQ2xhc3M9XCJ3LTEwIGgtOCBib3JkZXIgcm91bmRlZC1sZ1wiXG4gICAgKGJ1dHRvbkNsaWNrKT1cInRvZ2dsZU92ZXJsYXkoKVwiXG4gID5cbiAgICA8bmctaWNvbiBuYW1lPVwiaWNvbm9pckV4cGFuZFwiIHNpemU9XCIyNFwiPiA8L25nLWljb24+XG4gIDwvZ24tdWktYnV0dG9uPlxuXG4gIDxuZy10ZW1wbGF0ZVxuICAgIGNka0Nvbm5lY3RlZE92ZXJsYXlcbiAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheU9yaWdpbl09XCJ0cmlnZ2VyXCJcbiAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheU9wZW5dPVwiaXNPcGVuXCJcbiAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uc109XCJbb3ZlcmxheVBvc2l0aW9uXVwiXG4gICAgY2RrQ29ubmVjdGVkT3ZlcmxheVB1c2hcbiAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheVdpZHRoXT1cIidhdXRvJ1wiXG4gICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlGbGV4aWJsZURpbWVuc2lvbnNdPVwidHJ1ZVwiXG4gICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlHcm93QWZ0ZXJPcGVuXT1cInRydWVcIlxuICAgIChkZXRhY2gpPVwiY2xvc2UoKVwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwiYmctd2hpdGUgc2hhZG93LWxnIGJvcmRlciBib3JkZXItZ3JheS0zMDAgZmxleFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInNtOnctNjQgeHM6dy0zMlwiPlxuICAgICAgICA8cCBjbGFzcz1cIm0tMlwiPnt7IHRleHQgfX08L3A+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgY2xhc3M9XCJtLTIgZmxleC1zaHJpbmstMFwiXG4gICAgICAgIHR5cGU9XCJsaWdodFwiXG4gICAgICAgIChidXR0b25DbGljayk9XCJjbG9zZSgpXCJcbiAgICAgICAgZXh0cmFDbGFzcz1cInctMTAgaC04IHB4LTEgYmctd2hpdGVcIlxuICAgICAgPlxuICAgICAgICA8bmctaWNvbiBuYW1lPVwiaWNvbm9pclJlZHVjZVwiIHNpemU9XCIyNFwiPiA8L25nLWljb24+XG4gICAgICA8L2duLXVpLWJ1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuIl19
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1bmNhdGVkLXRleHQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjL2xpYi90cnVuY2F0ZWQtdGV4dC90cnVuY2F0ZWQtdGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL3RydW5jYXRlZC10ZXh0L3RydW5jYXRlZC10ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxFQUVOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDbkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFBOzs7QUFpQnZFLE1BQU0sT0FBTyxzQkFBc0I7SUFhakMsWUFDbUIsRUFBcUIsRUFDckIsTUFBYztRQURkLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBQ3JCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFkeEIsU0FBSSxHQUFHLEVBQUUsQ0FBQTtRQUNULGVBQVUsR0FBRyxFQUFFLENBQUE7UUFNeEIsb0JBQWUsR0FBRyxLQUFLLENBQUE7UUFTckIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxHQUFHLEVBQUU7WUFDNUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQTtRQUNuRCxDQUFDLENBQUMsQ0FBQTtRQUVGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLGdCQUFnQixDQUFDLEdBQUcsRUFBRTtZQUNoRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFBO1lBQzVCLENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsZUFBZTtRQUNiLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFBO1FBQzlDLElBQUksQ0FBQyxjQUFjLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ3JDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRTtZQUNwRCxVQUFVLEVBQUUsSUFBSTtZQUNoQixTQUFTLEVBQUUsSUFBSTtZQUNmLE9BQU8sRUFBRSxJQUFJO1NBQ2QsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUE7SUFDNUIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsRUFBRSxDQUFBO1FBQ2pDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsQ0FBQTtJQUNyQyxDQUFDO0lBRU8sbUJBQW1CO1FBQ3pCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFBO1FBRTlDLElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFBO1FBQ2hFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUE7SUFDekIsQ0FBQzsrR0FqRFUsc0JBQXNCO21HQUF0QixzQkFBc0IscU1BSnRCLENBQUMsWUFBWSxDQUFDLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQyxzSUM3QjlDLDJ2QkEyQkEsMkNETEksWUFBWSxrSUFDWixlQUFlLDhCQUNmLGFBQWEsK0JBQ2IsZUFBZSwrSEFDZixrQkFBa0IsNklBQ2xCLGVBQWU7OzRGQU1OLHNCQUFzQjtrQkFmbEMsU0FBUzsrQkFDRSxzQkFBc0IsY0FDcEIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixhQUFhO3dCQUNiLGVBQWU7d0JBQ2Ysa0JBQWtCO3dCQUNsQixlQUFlO3FCQUNoQixhQUNVLENBQUMsWUFBWSxDQUFDLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQzsyR0FLbkMsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRW9CLFdBQVc7c0JBQXBDLFNBQVM7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgTmdJY29uQ29tcG9uZW50LCBwcm92aWRlSWNvbnMgfSBmcm9tICdAbmctaWNvbnMvY29yZSdcbmltcG9ydCB7IGljb25vaXJFeHBhbmQgfSBmcm9tICdAbmctaWNvbnMvaWNvbm9pcidcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbidcbmltcG9ydCB7IENka1Njcm9sbGFibGUsIE92ZXJsYXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSdcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IENlbGxQb3BpbkNvbXBvbmVudCB9IGZyb20gJy4uL2NlbGwtcG9waW4vY2VsbC1wb3Bpbi5jb21wb25lbnQnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLXRydW5jYXRlZC10ZXh0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgT3ZlcmxheU1vZHVsZSxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgQ2VsbFBvcGluQ29tcG9uZW50LFxuICAgIE5nSWNvbkNvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbcHJvdmlkZUljb25zKHsgaWNvbm9pckV4cGFuZCB9KV0sXG4gIHRlbXBsYXRlVXJsOiAnLi90cnVuY2F0ZWQtdGV4dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlczogW10sXG59KVxuZXhwb3J0IGNsYXNzIFRydW5jYXRlZFRleHRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSB0ZXh0ID0gJydcbiAgQElucHV0KCkgZXh0cmFDbGFzcyA9ICcnXG4gIEBJbnB1dCgpIHNjcm9sbENvbnRhaW5lciE6IEVsZW1lbnRSZWZcbiAgQElucHV0KCkgY2RrU2Nyb2xsQ29udGFpbmVyITogQ2RrU2Nyb2xsYWJsZVxuXG4gIEBWaWV3Q2hpbGQoJ3RleHRFbGVtZW50JykgdGV4dEVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+XG5cbiAgaXNUZXh0VHJ1bmNhdGVkID0gZmFsc2VcblxuICBwcml2YXRlIHJlYWRvbmx5IHJlc2l6ZU9ic2VydmVyOiBSZXNpemVPYnNlcnZlclxuICBwcml2YXRlIHJlYWRvbmx5IG11dGF0aW9uT2JzZXJ2ZXI6IE11dGF0aW9uT2JzZXJ2ZXJcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lXG4gICkge1xuICAgIHRoaXMucmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKCkgPT4ge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHRoaXMuY2hlY2tUZXh0VHJ1bmNhdGlvbigpKVxuICAgIH0pXG5cbiAgICB0aGlzLm11dGF0aW9uT2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcigoKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLmNoZWNrVGV4dFRydW5jYXRpb24oKVxuICAgICAgfSlcbiAgICB9KVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLnRleHRFbGVtZW50Lm5hdGl2ZUVsZW1lbnRcbiAgICB0aGlzLnJlc2l6ZU9ic2VydmVyPy5vYnNlcnZlKGVsZW1lbnQpXG4gICAgdGhpcy5tdXRhdGlvbk9ic2VydmVyPy5vYnNlcnZlKGVsZW1lbnQucGFyZW50RWxlbWVudCwge1xuICAgICAgYXR0cmlidXRlczogdHJ1ZSxcbiAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgIHN1YnRyZWU6IHRydWUsXG4gICAgfSlcbiAgICB0aGlzLmNoZWNrVGV4dFRydW5jYXRpb24oKVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5yZXNpemVPYnNlcnZlcj8uZGlzY29ubmVjdCgpXG4gICAgdGhpcy5tdXRhdGlvbk9ic2VydmVyPy5kaXNjb25uZWN0KClcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tUZXh0VHJ1bmNhdGlvbigpIHtcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy50ZXh0RWxlbWVudC5uYXRpdmVFbGVtZW50XG5cbiAgICB0aGlzLmlzVGV4dFRydW5jYXRlZCA9IGVsZW1lbnQuc2Nyb2xsV2lkdGggPiBlbGVtZW50LmNsaWVudFdpZHRoXG4gICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKClcbiAgfVxufVxuIiwiPGduLXVpLWNlbGwtcG9waW5cbiAgI3BvcGluUmVmXG4gIFthY3RpdmVQb3Bpbl09XCJpc1RleHRUcnVuY2F0ZWRcIlxuICBbc2Nyb2xsQ29udGFpbmVyXT1cInNjcm9sbENvbnRhaW5lclwiXG4gIFtjZGtTY3JvbGxDb250YWluZXJdPVwiY2RrU2Nyb2xsQ29udGFpbmVyXCJcbj5cbiAgPGRpdlxuICAgIGNlbGxDb250ZW50XG4gICAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gdy1mdWxsIGdhcC0yXCJcbiAgICBbY2xhc3NdPVwiZXh0cmFDbGFzc1wiXG4gID5cbiAgICA8c3BhbiAjdGV4dEVsZW1lbnQgY2xhc3M9XCJ0cnVuY2F0ZSBweS0zIHB4LTJcIj5cbiAgICAgIHt7IHRleHQgfX1cbiAgICA8L3NwYW4+XG4gICAgPGduLXVpLWJ1dHRvblxuICAgICAgKm5nSWY9XCJpc1RleHRUcnVuY2F0ZWRcIlxuICAgICAgdHlwZT1cIm91dGxpbmVcIlxuICAgICAgZXh0cmFDbGFzcz1cInctMTAgaC04IGJvcmRlciByb3VuZGVkLWxnIG1yLTJcIlxuICAgICAgKGJ1dHRvbkNsaWNrKT1cInBvcGluUmVmLm9wZW5PdmVybGF5KClcIlxuICAgID5cbiAgICAgIDxuZy1pY29uIG5hbWU9XCJpY29ub2lyRXhwYW5kXCIgc2l6ZT1cIjI0XCI+IDwvbmctaWNvbj5cbiAgICA8L2duLXVpLWJ1dHRvbj5cbiAgPC9kaXY+XG4gIDxkaXYgcG9waW5Db250ZW50IGNsYXNzPVwic206dy02NCB4czp3LTMyIHB5LTQgcGwtNiBwci05XCI+XG4gICAgPHA+e3sgdGV4dCB9fTwvcD5cbiAgPC9kaXY+XG48L2duLXVpLWNlbGwtcG9waW4+XG4iXX0=