geonetwork-ui 2.2.0-dev.f866474c → 2.3.0-dev.179fba83

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 (596) hide show
  1. package/esm2022/libs/api/metadata-converter/src/index.mjs +5 -5
  2. package/esm2022/libs/api/metadata-converter/src/lib/base.converter.mjs +14 -0
  3. package/esm2022/libs/api/metadata-converter/src/lib/find-converter.mjs +15 -0
  4. package/esm2022/libs/api/metadata-converter/src/lib/gn4/atomic-operations.mjs +29 -2
  5. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.converter.mjs +52 -0
  6. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +102 -61
  7. package/esm2022/libs/api/metadata-converter/src/lib/gn4/index.mjs +4 -0
  8. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
  9. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/index.mjs +2 -0
  10. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.mjs +123 -0
  11. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +116 -0
  12. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +138 -0
  13. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/index.mjs +2 -0
  14. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +242 -0
  15. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +102 -74
  16. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/individual-name.mjs +18 -0
  17. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.mjs +14 -0
  18. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/role.mapper.mjs +48 -0
  19. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/status.mapper.mjs +18 -0
  20. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/update-frequency.mapper.mjs +64 -0
  21. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +116 -79
  22. package/esm2022/libs/api/metadata-converter/src/lib/xml-utils.mjs +76 -14
  23. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +2 -2
  24. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +4 -4
  25. package/esm2022/libs/api/repository/src/lib/gn4/index.mjs +3 -1
  26. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +10 -3
  27. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.mjs +14 -5
  28. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +33 -8
  29. package/esm2022/libs/api/repository/src/lib/gn4/selection/selection.service.mjs +13 -26
  30. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  31. package/esm2022/libs/common/domain/src/lib/model/search/aggregation.model.mjs +1 -1
  32. package/esm2022/libs/common/domain/src/lib/model/search/field.model.mjs +2 -0
  33. package/esm2022/libs/common/domain/src/lib/model/search/filter.model.mjs +1 -1
  34. package/esm2022/libs/common/domain/src/lib/model/search/index.mjs +2 -1
  35. package/esm2022/libs/common/domain/src/lib/model/search/search.model.mjs +1 -1
  36. package/esm2022/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.mjs +1 -1
  37. package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
  38. package/esm2022/libs/data-access/gn4/src/openapi/api/records.api.service.mjs +35 -7
  39. package/esm2022/libs/data-access/gn4/src/openapi/model/models.mjs +1 -2
  40. package/esm2022/libs/feature/catalog/src/lib/my-org/my-org.service.mjs +4 -10
  41. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +6 -5
  42. package/esm2022/libs/feature/editor/src/index.mjs +6 -1
  43. package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +8 -0
  44. package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +26 -0
  45. package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +30 -0
  46. package/esm2022/libs/feature/editor/src/lib/+state/editor.models.mjs +2 -0
  47. package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +42 -0
  48. package/esm2022/libs/feature/editor/src/lib/+state/editor.selectors.mjs +13 -0
  49. package/esm2022/libs/feature/editor/src/lib/expressions.mjs +13 -0
  50. package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +16 -4
  51. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +34 -0
  52. package/esm2022/libs/feature/editor/src/lib/models/fields.model.mjs +2 -0
  53. package/esm2022/libs/feature/editor/src/lib/record-form/record-form.component.mjs +17 -11
  54. package/esm2022/libs/feature/editor/src/lib/services/editor.service.mjs +24 -46
  55. package/esm2022/libs/feature/map/src/index.mjs +2 -1
  56. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.mjs +7 -3
  57. package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +106 -0
  58. package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +72 -0
  59. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +64 -0
  60. package/esm2022/libs/feature/map/src/lib/constant/index.mjs +2 -1
  61. package/esm2022/libs/feature/map/src/lib/constant/projections.mjs +2 -0
  62. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +29 -5
  63. package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +93 -0
  64. package/esm2022/libs/feature/map/src/lib/geocoding.service.mjs +40 -0
  65. package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +12 -5
  66. package/esm2022/libs/feature/map/src/lib/map-context/map-context.model.mjs +2 -1
  67. package/esm2022/libs/feature/map/src/lib/map-context/map-context.service.mjs +61 -24
  68. package/esm2022/libs/feature/map/src/lib/utils/index.mjs +1 -3
  69. package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +63 -69
  70. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +13 -13
  71. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +34 -21
  72. package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +2 -2
  73. package/esm2022/libs/feature/router/src/lib/default/index.mjs +2 -1
  74. package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +1 -1
  75. package/esm2022/libs/feature/search/src/index.mjs +4 -1
  76. package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +7 -4
  77. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +2 -6
  78. package/esm2022/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.mjs +1 -1
  79. package/esm2022/libs/feature/search/src/lib/filter-geometry.token.mjs +4 -0
  80. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +7 -3
  81. package/esm2022/libs/feature/search/src/lib/record-url.token.mjs +4 -0
  82. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +3 -3
  83. package/esm2022/libs/feature/search/src/lib/results-table/results-table.component.mjs +128 -0
  84. package/esm2022/libs/feature/search/src/lib/state/effects.mjs +6 -4
  85. package/esm2022/libs/feature/search/src/lib/state/search.facade.mjs +3 -2
  86. package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +41 -26
  87. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +11 -9
  88. package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +4 -4
  89. package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +1 -1
  90. package/esm2022/libs/ui/elements/src/index.mjs +4 -1
  91. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +3 -3
  92. package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +27 -0
  93. package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +17 -0
  94. package/esm2022/libs/ui/elements/src/lib/max-lines/max-lines.component.mjs +5 -3
  95. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +3 -3
  96. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +47 -16
  97. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +3 -4
  98. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +9 -6
  99. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +3 -3
  100. package/esm2022/libs/ui/elements/src/lib/thumbnail/thumbnail.component.mjs +9 -4
  101. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +20 -7
  102. package/esm2022/libs/ui/inputs/src/index.mjs +2 -1
  103. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +3 -3
  104. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +10 -9
  105. package/esm2022/libs/ui/inputs/src/lib/checkbox/checkbox.component.mjs +3 -3
  106. package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +3 -3
  107. package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +3 -3
  108. package/esm2022/libs/ui/inputs/src/lib/editable-label/editable-label.directive.mjs +46 -0
  109. package/esm2022/libs/ui/inputs/src/lib/files-drop/files-drop.directive.mjs +59 -0
  110. package/esm2022/libs/ui/inputs/src/lib/form-field/form-field.component.mjs +4 -2
  111. package/esm2022/libs/ui/inputs/src/lib/form-field/form-field.model.mjs +1 -1
  112. package/esm2022/libs/ui/inputs/src/lib/image-input/image-input.component.mjs +183 -0
  113. package/esm2022/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.mjs +3 -3
  114. package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +2 -2
  115. package/esm2022/libs/ui/inputs/src/lib/text-area/text-area.component.mjs +3 -3
  116. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +19 -8
  117. package/esm2022/libs/ui/layout/src/index.mjs +3 -1
  118. package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +3 -3
  119. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.mjs +36 -0
  120. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +37 -0
  121. package/esm2022/libs/ui/search/src/index.mjs +1 -2
  122. package/esm2022/libs/ui/search/src/lib/record-preview-card/record-preview-card.component.mjs +1 -1
  123. package/esm2022/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.mjs +1 -1
  124. package/esm2022/libs/ui/search/src/lib/record-preview-list/record-preview-list.component.mjs +1 -1
  125. package/esm2022/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.mjs +1 -1
  126. package/esm2022/libs/ui/search/src/lib/record-preview-title/record-preview-title.component.mjs +1 -1
  127. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +9 -10
  128. package/esm2022/libs/ui/widgets/src/lib/badge/badge.component.mjs +3 -3
  129. package/esm2022/libs/util/i18n/src/index.mjs +1 -2
  130. package/esm2022/libs/util/i18n/src/lib/i18n.constants.mjs +18 -1
  131. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +29 -13
  132. package/esm2022/libs/util/shared/src/lib/utils/bytes-convert.mjs +4 -0
  133. package/esm2022/libs/util/shared/src/lib/utils/image-resize.mjs +60 -0
  134. package/esm2022/libs/util/shared/src/lib/utils/index.mjs +8 -5
  135. package/esm2022/libs/util/shared/src/lib/utils/temporal-extent-union.mjs +32 -0
  136. package/esm2022/translations/de.json +143 -109
  137. package/esm2022/translations/en.json +75 -41
  138. package/esm2022/translations/es.json +53 -19
  139. package/esm2022/translations/fr.json +69 -35
  140. package/esm2022/translations/it.json +70 -36
  141. package/esm2022/translations/nl.json +54 -20
  142. package/esm2022/translations/pt.json +53 -19
  143. package/fesm2022/geonetwork-ui.mjs +5799 -3893
  144. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  145. package/libs/api/metadata-converter/src/index.d.ts +4 -4
  146. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  147. package/libs/api/metadata-converter/src/lib/{metadata-base.mapper.d.ts → base.converter.d.ts} +3 -3
  148. package/libs/api/metadata-converter/src/lib/base.converter.d.ts.map +1 -0
  149. package/libs/api/metadata-converter/src/lib/find-converter.d.ts +3 -0
  150. package/libs/api/metadata-converter/src/lib/find-converter.d.ts.map +1 -0
  151. package/libs/api/metadata-converter/src/lib/gn4/atomic-operations.d.ts +3 -0
  152. package/libs/api/metadata-converter/src/lib/gn4/atomic-operations.d.ts.map +1 -1
  153. package/libs/api/metadata-converter/src/lib/gn4/{gn4.metadata.mapper.d.ts → gn4.converter.d.ts} +5 -5
  154. package/libs/api/metadata-converter/src/lib/gn4/gn4.converter.d.ts.map +1 -0
  155. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +0 -1
  156. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  157. package/libs/api/metadata-converter/src/lib/gn4/index.d.ts +4 -0
  158. package/libs/api/metadata-converter/src/lib/gn4/index.d.ts.map +1 -0
  159. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +4 -5
  160. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  161. package/libs/api/metadata-converter/src/lib/iso19115-3/index.d.ts +2 -0
  162. package/libs/api/metadata-converter/src/lib/iso19115-3/index.d.ts.map +1 -0
  163. package/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.d.ts +9 -0
  164. package/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.d.ts.map +1 -0
  165. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +20 -0
  166. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -0
  167. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts +21 -0
  168. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -0
  169. package/libs/api/metadata-converter/src/lib/iso19139/index.d.ts +2 -0
  170. package/libs/api/metadata-converter/src/lib/iso19139/index.d.ts.map +1 -0
  171. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts +11 -0
  172. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -0
  173. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts +39 -10
  174. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  175. package/libs/api/metadata-converter/src/lib/iso19139/utils/individual-name.d.ts +8 -0
  176. package/libs/api/metadata-converter/src/lib/iso19139/utils/individual-name.d.ts.map +1 -0
  177. package/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.d.ts +3 -0
  178. package/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.d.ts.map +1 -0
  179. package/libs/api/metadata-converter/src/lib/iso19139/utils/role.mapper.d.ts.map +1 -0
  180. package/libs/api/metadata-converter/src/lib/iso19139/utils/status.mapper.d.ts.map +1 -0
  181. package/libs/api/metadata-converter/src/lib/iso19139/utils/update-frequency.mapper.d.ts.map +1 -0
  182. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +43 -6
  183. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  184. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts +14 -1
  185. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts.map +1 -1
  186. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
  187. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +2 -2
  188. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  189. package/libs/api/repository/src/lib/gn4/index.d.ts +2 -0
  190. package/libs/api/repository/src/lib/gn4/index.d.ts.map +1 -1
  191. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts.map +1 -1
  192. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts +1 -1
  193. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts.map +1 -1
  194. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +9 -2
  195. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  196. package/libs/api/repository/src/lib/gn4/selection/selection.service.d.ts +4 -5
  197. package/libs/api/repository/src/lib/gn4/selection/selection.service.d.ts.map +1 -1
  198. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +36 -20
  199. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  200. package/libs/common/domain/src/lib/model/search/aggregation.model.d.ts +1 -1
  201. package/libs/common/domain/src/lib/model/search/aggregation.model.d.ts.map +1 -1
  202. package/libs/common/domain/src/lib/model/search/field.model.d.ts +2 -0
  203. package/libs/common/domain/src/lib/model/search/field.model.d.ts.map +1 -0
  204. package/libs/common/domain/src/lib/model/search/filter.model.d.ts +1 -1
  205. package/libs/common/domain/src/lib/model/search/filter.model.d.ts.map +1 -1
  206. package/libs/common/domain/src/lib/model/search/index.d.ts +1 -0
  207. package/libs/common/domain/src/lib/model/search/index.d.ts.map +1 -1
  208. package/libs/common/domain/src/lib/model/search/search.model.d.ts +2 -3
  209. package/libs/common/domain/src/lib/model/search/search.model.d.ts.map +1 -1
  210. package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts +1 -0
  211. package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts.map +1 -1
  212. package/libs/common/domain/src/lib/platform.service.interface.d.ts +1 -1
  213. package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
  214. package/libs/data-access/gn4/src/openapi/api/records.api.service.d.ts +9 -5
  215. package/libs/data-access/gn4/src/openapi/api/records.api.service.d.ts.map +1 -1
  216. package/libs/data-access/gn4/src/openapi/model/models.d.ts +0 -1
  217. package/libs/data-access/gn4/src/openapi/model/models.d.ts.map +1 -1
  218. package/libs/feature/catalog/src/lib/my-org/my-org.service.d.ts +0 -1
  219. package/libs/feature/catalog/src/lib/my-org/my-org.service.d.ts.map +1 -1
  220. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +15 -2
  221. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  222. package/libs/feature/editor/src/index.d.ts +5 -0
  223. package/libs/feature/editor/src/index.d.ts.map +1 -1
  224. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +23 -0
  225. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -0
  226. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts +15 -0
  227. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -0
  228. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +19 -0
  229. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -0
  230. package/libs/feature/editor/src/lib/+state/editor.models.d.ts +2 -0
  231. package/libs/feature/editor/src/lib/+state/editor.models.d.ts.map +1 -0
  232. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts +18 -0
  233. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -0
  234. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +15 -0
  235. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -0
  236. package/libs/feature/editor/src/lib/expressions.d.ts +4 -0
  237. package/libs/feature/editor/src/lib/expressions.d.ts.map +1 -0
  238. package/libs/feature/editor/src/lib/feature-editor.module.d.ts +3 -1
  239. package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
  240. package/libs/feature/editor/src/lib/fields.config.d.ts +3 -0
  241. package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -0
  242. package/libs/feature/editor/src/lib/models/fields.model.d.ts +15 -0
  243. package/libs/feature/editor/src/lib/models/fields.model.d.ts.map +1 -0
  244. package/libs/feature/editor/src/lib/record-form/record-form.component.d.ts +10 -5
  245. package/libs/feature/editor/src/lib/record-form/record-form.component.d.ts.map +1 -1
  246. package/libs/feature/editor/src/lib/services/editor.service.d.ts +3 -13
  247. package/libs/feature/editor/src/lib/services/editor.service.d.ts.map +1 -1
  248. package/libs/feature/map/src/index.d.ts +1 -0
  249. package/libs/feature/map/src/index.d.ts.map +1 -1
  250. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts.map +1 -1
  251. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts +22 -0
  252. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -0
  253. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts +23 -0
  254. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -0
  255. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts +22 -0
  256. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -0
  257. package/libs/feature/map/src/lib/constant/index.d.ts +1 -0
  258. package/libs/feature/map/src/lib/constant/index.d.ts.map +1 -1
  259. package/libs/feature/map/src/lib/constant/projections.d.ts.map +1 -0
  260. package/libs/feature/map/src/lib/feature-map.module.d.ts +16 -12
  261. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  262. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts +25 -0
  263. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts.map +1 -0
  264. package/libs/feature/map/src/lib/geocoding.service.d.ts +18 -0
  265. package/libs/feature/map/src/lib/geocoding.service.d.ts.map +1 -0
  266. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts +2 -0
  267. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
  268. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts +10 -5
  269. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts.map +1 -1
  270. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts +2 -0
  271. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts.map +1 -1
  272. package/libs/feature/map/src/lib/utils/index.d.ts +0 -2
  273. package/libs/feature/map/src/lib/utils/index.d.ts.map +1 -1
  274. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts +13 -12
  275. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
  276. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +1 -3
  277. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  278. package/libs/feature/router/src/lib/default/index.d.ts +1 -0
  279. package/libs/feature/router/src/lib/default/index.d.ts.map +1 -1
  280. package/libs/feature/router/src/lib/default/router.service.d.ts +1 -1
  281. package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
  282. package/libs/feature/search/src/index.d.ts +3 -0
  283. package/libs/feature/search/src/index.d.ts.map +1 -1
  284. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts +5 -4
  285. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts.map +1 -1
  286. package/libs/feature/search/src/lib/feature-search.module.d.ts +0 -4
  287. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  288. package/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.d.ts +3 -2
  289. package/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.d.ts.map +1 -1
  290. package/libs/feature/search/src/lib/filter-geometry.token.d.ts +4 -0
  291. package/libs/feature/search/src/lib/filter-geometry.token.d.ts.map +1 -0
  292. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts +1 -1
  293. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
  294. package/libs/feature/search/src/lib/record-url.token.d.ts +3 -0
  295. package/libs/feature/search/src/lib/record-url.token.d.ts.map +1 -0
  296. package/libs/feature/search/src/lib/results-table/results-table.component.d.ts +33 -0
  297. package/libs/feature/search/src/lib/results-table/results-table.component.d.ts.map +1 -0
  298. package/libs/feature/search/src/lib/state/effects.d.ts.map +1 -1
  299. package/libs/feature/search/src/lib/state/search.facade.d.ts +1 -1
  300. package/libs/feature/search/src/lib/state/search.facade.d.ts.map +1 -1
  301. package/libs/feature/search/src/lib/utils/service/fields.d.ts +21 -8
  302. package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
  303. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  304. package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts +1 -1
  305. package/libs/ui/elements/src/index.d.ts +3 -0
  306. package/libs/ui/elements/src/index.d.ts.map +1 -1
  307. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +1 -1
  308. package/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.d.ts +10 -0
  309. package/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.d.ts.map +1 -0
  310. package/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.d.ts +8 -0
  311. package/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.d.ts.map +1 -0
  312. package/libs/ui/elements/src/lib/max-lines/max-lines.component.d.ts.map +1 -1
  313. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +16 -5
  314. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
  315. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
  316. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +3 -1
  317. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
  318. package/libs/ui/elements/src/lib/thumbnail/thumbnail.component.d.ts +3 -2
  319. package/libs/ui/elements/src/lib/thumbnail/thumbnail.component.d.ts.map +1 -1
  320. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +10 -8
  321. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  322. package/libs/ui/inputs/src/index.d.ts +1 -0
  323. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  324. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  325. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  326. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts +13 -0
  327. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts.map +1 -0
  328. package/libs/ui/inputs/src/lib/files-drop/files-drop.directive.d.ts +14 -0
  329. package/libs/ui/inputs/src/lib/files-drop/files-drop.directive.d.ts.map +1 -0
  330. package/libs/ui/inputs/src/lib/form-field/form-field.component.d.ts.map +1 -1
  331. package/libs/ui/inputs/src/lib/form-field/form-field.model.d.ts +0 -1
  332. package/libs/ui/inputs/src/lib/form-field/form-field.model.d.ts.map +1 -1
  333. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts +44 -0
  334. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts.map +1 -0
  335. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts +1 -1
  336. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts.map +1 -1
  337. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +41 -39
  338. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  339. package/libs/ui/layout/src/index.d.ts +2 -0
  340. package/libs/ui/layout/src/index.d.ts.map +1 -1
  341. package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts +14 -0
  342. package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts.map +1 -0
  343. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +15 -0
  344. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -0
  345. package/libs/ui/search/src/index.d.ts +0 -1
  346. package/libs/ui/search/src/index.d.ts.map +1 -1
  347. package/libs/ui/search/src/lib/ui-search.module.d.ts +15 -15
  348. package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
  349. package/libs/util/i18n/src/index.d.ts +0 -1
  350. package/libs/util/i18n/src/index.d.ts.map +1 -1
  351. package/libs/util/i18n/src/lib/i18n.constants.d.ts +17 -0
  352. package/libs/util/i18n/src/lib/i18n.constants.d.ts.map +1 -1
  353. package/libs/util/shared/src/lib/links/link-utils.d.ts +19 -7
  354. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  355. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts +2 -0
  356. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts.map +1 -0
  357. package/libs/util/shared/src/lib/utils/image-resize.d.ts +3 -0
  358. package/libs/util/shared/src/lib/utils/image-resize.d.ts.map +1 -0
  359. package/libs/util/shared/src/lib/utils/index.d.ts +7 -4
  360. package/libs/util/shared/src/lib/utils/index.d.ts.map +1 -1
  361. package/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts +5 -0
  362. package/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts.map +1 -0
  363. package/package.json +5 -2
  364. package/src/libs/api/metadata-converter/src/index.ts +4 -4
  365. package/src/libs/api/metadata-converter/src/lib/{metadata-base.mapper.ts → base.converter.ts} +2 -2
  366. package/src/libs/api/metadata-converter/src/lib/find-converter.ts +16 -0
  367. package/src/libs/api/metadata-converter/src/lib/fixtures/generic.records.ts +94 -12
  368. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +67 -12
  369. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +260 -29
  370. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +580 -0
  371. package/src/libs/api/metadata-converter/src/lib/gn4/atomic-operations.ts +33 -1
  372. package/src/libs/api/metadata-converter/src/lib/gn4/{gn4.metadata.mapper.ts → gn4.converter.ts} +9 -5
  373. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +148 -76
  374. package/src/libs/api/metadata-converter/src/lib/gn4/index.ts +3 -0
  375. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +4 -5
  376. package/src/libs/api/metadata-converter/src/lib/iso19115-3/index.ts +1 -0
  377. package/src/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.ts +176 -0
  378. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +329 -0
  379. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +513 -0
  380. package/src/libs/api/metadata-converter/src/lib/iso19139/index.ts +1 -0
  381. package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +327 -0
  382. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +230 -134
  383. package/src/libs/api/metadata-converter/src/lib/iso19139/utils/individual-name.ts +20 -0
  384. package/src/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.ts +16 -0
  385. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +338 -178
  386. package/src/libs/api/metadata-converter/src/lib/xml-utils.ts +84 -16
  387. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +1 -1
  388. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +2 -2
  389. package/src/libs/api/repository/src/lib/gn4/index.ts +2 -0
  390. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +22 -2
  391. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.ts +15 -4
  392. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +47 -8
  393. package/src/libs/api/repository/src/lib/gn4/selection/selection.service.ts +14 -38
  394. package/src/libs/common/domain/src/lib/index.ts +2 -0
  395. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +45 -24
  396. package/src/libs/common/domain/src/lib/model/search/aggregation.model.ts +1 -1
  397. package/src/libs/common/domain/src/lib/model/search/field.model.ts +1 -0
  398. package/src/libs/common/domain/src/lib/model/search/filter.model.ts +1 -1
  399. package/src/libs/common/domain/src/lib/model/search/index.ts +1 -0
  400. package/src/libs/common/domain/src/lib/model/search/search.model.ts +2 -2
  401. package/src/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.ts +1 -0
  402. package/src/libs/common/domain/src/lib/model/user/index.ts +1 -0
  403. package/src/libs/common/domain/src/lib/platform.service.interface.ts +1 -4
  404. package/src/libs/common/fixtures/src/lib/elasticsearch/full-response.ts +1 -1
  405. package/src/libs/common/fixtures/src/lib/gn4/groups.fixtures.ts +1 -1
  406. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +52 -10
  407. package/src/libs/data-access/gn4/src/openapi/api/records.api.service.ts +43 -12
  408. package/src/libs/data-access/gn4/src/openapi/model/models.ts +0 -1
  409. package/src/libs/data-access/gn4/src/spec.yaml +1 -1
  410. package/src/libs/feature/catalog/src/lib/my-org/my-org.service.ts +4 -16
  411. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +9 -6
  412. package/src/libs/feature/editor/src/index.ts +5 -0
  413. package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +24 -0
  414. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +49 -0
  415. package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +30 -0
  416. package/src/libs/feature/editor/src/lib/+state/editor.models.ts +1 -0
  417. package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +68 -0
  418. package/src/libs/feature/editor/src/lib/+state/editor.selectors.ts +39 -0
  419. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.css +0 -0
  420. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.html +8 -0
  421. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.ts +70 -0
  422. package/src/libs/feature/editor/src/lib/expressions.ts +16 -0
  423. package/src/libs/feature/editor/src/lib/feature-editor.module.ts +11 -0
  424. package/src/libs/feature/editor/src/lib/fields.config.ts +35 -0
  425. package/src/libs/feature/editor/src/lib/models/fields.model.ts +29 -0
  426. package/src/libs/feature/editor/src/lib/record-form/record-form.component.html +9 -7
  427. package/src/libs/feature/editor/src/lib/record-form/record-form.component.ts +13 -6
  428. package/src/libs/feature/editor/src/lib/services/editor.service.ts +39 -67
  429. package/src/libs/feature/map/src/index.ts +1 -0
  430. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.ts +5 -1
  431. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.css +0 -0
  432. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.html +21 -0
  433. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +107 -0
  434. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.css +0 -0
  435. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.html +36 -0
  436. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +80 -0
  437. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.css +0 -0
  438. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.html +37 -0
  439. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +64 -0
  440. package/src/libs/feature/map/src/lib/constant/index.ts +1 -0
  441. package/src/libs/feature/map/src/lib/feature-map.module.ts +14 -0
  442. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.css +0 -0
  443. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.html +39 -0
  444. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +99 -0
  445. package/src/libs/feature/map/src/lib/geocoding.service.ts +59 -0
  446. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.html +14 -2
  447. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +5 -0
  448. package/src/libs/feature/map/src/lib/map-context/map-context.model.ts +10 -3
  449. package/src/libs/feature/map/src/lib/map-context/map-context.service.ts +72 -28
  450. package/src/libs/feature/map/src/lib/utils/index.ts +0 -2
  451. package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +87 -96
  452. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +12 -12
  453. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +23 -4
  454. package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +1 -1
  455. package/src/libs/feature/router/src/lib/default/index.ts +1 -0
  456. package/src/libs/feature/router/src/lib/default/router.service.ts +1 -1
  457. package/src/libs/feature/search/src/index.ts +3 -0
  458. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.html +13 -4
  459. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +2 -1
  460. package/src/libs/feature/search/src/lib/feature-search.module.ts +1 -10
  461. package/src/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.ts +4 -4
  462. package/src/libs/feature/search/src/lib/filter-geometry.token.ts +7 -0
  463. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +9 -3
  464. package/src/libs/feature/search/src/lib/record-url.token.ts +4 -0
  465. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +1 -1
  466. package/src/libs/feature/search/src/lib/results-table/results-table.component.css +0 -0
  467. package/src/libs/feature/search/src/lib/results-table/results-table.component.html +112 -0
  468. package/src/libs/feature/search/src/lib/results-table/results-table.component.ts +164 -0
  469. package/src/libs/feature/search/src/lib/state/effects.ts +5 -4
  470. package/src/libs/feature/search/src/lib/state/search.facade.ts +2 -1
  471. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +21 -16
  472. package/src/libs/feature/search/src/lib/utils/service/fields.ts +43 -34
  473. package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html +1 -0
  474. package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.ts +1 -1
  475. package/src/libs/ui/elements/src/index.ts +3 -0
  476. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +4 -1
  477. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.css +0 -0
  478. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +30 -0
  479. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.ts +15 -0
  480. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.css +5 -0
  481. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.html +39 -0
  482. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +58 -0
  483. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.css +264 -0
  484. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.html +1 -0
  485. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.ts +17 -0
  486. package/src/libs/ui/elements/src/lib/max-lines/max-lines.component.html +5 -1
  487. package/src/libs/ui/elements/src/lib/max-lines/max-lines.component.ts +1 -0
  488. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +3 -3
  489. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +4 -0
  490. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +212 -68
  491. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +51 -10
  492. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +2 -3
  493. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +5 -5
  494. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +12 -4
  495. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +1 -1
  496. package/src/libs/ui/elements/src/lib/thumbnail/thumbnail.component.html +2 -2
  497. package/src/libs/ui/elements/src/lib/thumbnail/thumbnail.component.ts +9 -3
  498. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +8 -1
  499. package/src/libs/ui/inputs/src/index.ts +1 -0
  500. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +1 -1
  501. package/src/libs/ui/inputs/src/lib/button/button.component.css +0 -5
  502. package/src/libs/ui/inputs/src/lib/button/button.component.html +0 -1
  503. package/src/libs/ui/inputs/src/lib/button/button.component.ts +8 -7
  504. package/src/libs/ui/inputs/src/lib/checkbox/checkbox.component.html +0 -1
  505. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +2 -2
  506. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +3 -1
  507. package/src/libs/ui/inputs/src/lib/editable-label/editable-label.directive.ts +48 -0
  508. package/src/libs/ui/inputs/src/lib/files-drop/files-drop.directive.ts +45 -0
  509. package/src/libs/ui/inputs/src/lib/form-field/form-field.component.ts +3 -1
  510. package/src/libs/ui/inputs/src/lib/form-field/form-field.model.ts +0 -1
  511. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.css +0 -0
  512. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.html +146 -0
  513. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.ts +193 -0
  514. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.css +3 -0
  515. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.html +8 -3
  516. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.css +1 -0
  517. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.ts +1 -0
  518. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +8 -2
  519. package/src/libs/ui/layout/src/index.ts +2 -0
  520. package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +1 -1
  521. package/src/libs/ui/layout/src/lib/carousel/carousel.component.html +1 -0
  522. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.css +0 -0
  523. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.html +1 -0
  524. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.ts +33 -0
  525. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.css +15 -0
  526. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +54 -0
  527. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +42 -0
  528. package/src/libs/ui/search/src/index.ts +0 -1
  529. package/src/libs/ui/search/src/lib/ui-search.module.ts +2 -3
  530. package/src/libs/ui/widgets/src/lib/badge/badge.component.html +3 -1
  531. package/src/libs/util/i18n/src/index.ts +0 -1
  532. package/src/libs/util/i18n/src/lib/i18n.constants.ts +18 -0
  533. package/src/libs/util/shared/src/lib/links/link-utils.ts +34 -11
  534. package/src/libs/util/shared/src/lib/utils/bytes-convert.ts +3 -0
  535. package/src/libs/util/shared/src/lib/utils/image-resize.ts +72 -0
  536. package/src/libs/util/shared/src/lib/utils/index.ts +7 -4
  537. package/src/libs/util/shared/src/lib/utils/temporal-extent-union.ts +32 -0
  538. package/tailwind.base.css +44 -15
  539. package/translations/de.json +143 -109
  540. package/translations/en.json +75 -41
  541. package/translations/es.json +53 -19
  542. package/translations/fr.json +69 -35
  543. package/translations/it.json +70 -36
  544. package/translations/nl.json +54 -20
  545. package/translations/pt.json +53 -19
  546. package/translations/sk.json +131 -97
  547. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.metadata.mapper.mjs +0 -48
  548. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/codelists/role.mapper.mjs +0 -48
  549. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/codelists/status.mapper.mjs +0 -18
  550. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/codelists/update-frequency.mapper.mjs +0 -64
  551. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/converter.mjs +0 -122
  552. package/esm2022/libs/api/metadata-converter/src/lib/metadata-base.mapper.mjs +0 -14
  553. package/esm2022/libs/data-access/gn4/src/openapi/model/inlineObject3.api.model.mjs +0 -13
  554. package/esm2022/libs/feature/map/src/lib/utils/map-utils-wms.service.mjs +0 -55
  555. package/esm2022/libs/feature/map/src/lib/utils/projections.mjs +0 -2
  556. package/esm2022/libs/ui/search/src/lib/record-table/record-table.component.mjs +0 -145
  557. package/esm2022/libs/util/i18n/src/lib/testing/test.translate.loader.mjs +0 -24
  558. package/esm2022/libs/util/i18n/src/lib/testing/test.translate.module.mjs +0 -109
  559. package/esm2022/libs/util/i18n/src/lib/testing/translations.model.mjs +0 -6
  560. package/libs/api/metadata-converter/src/lib/gn4/gn4.metadata.mapper.d.ts.map +0 -1
  561. package/libs/api/metadata-converter/src/lib/iso19139/codelists/role.mapper.d.ts.map +0 -1
  562. package/libs/api/metadata-converter/src/lib/iso19139/codelists/status.mapper.d.ts.map +0 -1
  563. package/libs/api/metadata-converter/src/lib/iso19139/codelists/update-frequency.mapper.d.ts.map +0 -1
  564. package/libs/api/metadata-converter/src/lib/iso19139/converter.d.ts +0 -4
  565. package/libs/api/metadata-converter/src/lib/iso19139/converter.d.ts.map +0 -1
  566. package/libs/api/metadata-converter/src/lib/metadata-base.mapper.d.ts.map +0 -1
  567. package/libs/data-access/gn4/src/openapi/model/inlineObject3.api.model.d.ts +0 -18
  568. package/libs/data-access/gn4/src/openapi/model/inlineObject3.api.model.d.ts.map +0 -1
  569. package/libs/feature/map/src/lib/utils/map-utils-wms.service.d.ts +0 -17
  570. package/libs/feature/map/src/lib/utils/map-utils-wms.service.d.ts.map +0 -1
  571. package/libs/feature/map/src/lib/utils/projections.d.ts.map +0 -1
  572. package/libs/ui/search/src/lib/record-table/record-table.component.d.ts +0 -31
  573. package/libs/ui/search/src/lib/record-table/record-table.component.d.ts.map +0 -1
  574. package/libs/util/i18n/src/lib/testing/test.translate.loader.d.ts +0 -17
  575. package/libs/util/i18n/src/lib/testing/test.translate.loader.d.ts.map +0 -1
  576. package/libs/util/i18n/src/lib/testing/test.translate.module.d.ts +0 -131
  577. package/libs/util/i18n/src/lib/testing/test.translate.module.d.ts.map +0 -1
  578. package/libs/util/i18n/src/lib/testing/translations.model.d.ts +0 -21
  579. package/libs/util/i18n/src/lib/testing/translations.model.d.ts.map +0 -1
  580. package/src/libs/api/metadata-converter/src/lib/iso19139/converter.ts +0 -187
  581. package/src/libs/data-access/gn4/src/openapi/model/inlineObject3.api.model.ts +0 -18
  582. package/src/libs/feature/map/src/lib/utils/map-utils-wms.service.ts +0 -58
  583. package/src/libs/ui/search/src/lib/record-table/record-table.component.css +0 -7
  584. package/src/libs/ui/search/src/lib/record-table/record-table.component.html +0 -215
  585. package/src/libs/ui/search/src/lib/record-table/record-table.component.ts +0 -149
  586. package/src/libs/util/i18n/src/lib/testing/test.translate.loader.ts +0 -26
  587. package/src/libs/util/i18n/src/lib/testing/test.translate.module.ts +0 -235
  588. package/src/libs/util/i18n/src/lib/testing/translations.model.ts +0 -28
  589. /package/libs/api/metadata-converter/src/lib/iso19139/{codelists → utils}/role.mapper.d.ts +0 -0
  590. /package/libs/api/metadata-converter/src/lib/iso19139/{codelists → utils}/status.mapper.d.ts +0 -0
  591. /package/libs/api/metadata-converter/src/lib/iso19139/{codelists → utils}/update-frequency.mapper.d.ts +0 -0
  592. /package/libs/feature/map/src/lib/{utils → constant}/projections.d.ts +0 -0
  593. /package/src/libs/api/metadata-converter/src/lib/iso19139/{codelists → utils}/role.mapper.ts +0 -0
  594. /package/src/libs/api/metadata-converter/src/lib/iso19139/{codelists → utils}/status.mapper.ts +0 -0
  595. /package/src/libs/api/metadata-converter/src/lib/iso19139/{codelists → utils}/update-frequency.mapper.ts +0 -0
  596. /package/src/libs/feature/map/src/lib/{utils → constant}/projections.ts +0 -0
@@ -8,7 +8,7 @@ import * as i4 from "../../../../inputs/src/lib/copy-text-button/copy-text-butto
8
8
  import * as i5 from "@angular/common";
9
9
  const DEFAULT_PARAMS = {
10
10
  OFFSET: '',
11
- LIMIT: '',
11
+ LIMIT: '-1',
12
12
  FORMAT: 'json',
13
13
  };
14
14
  export class RecordApiFormComponent {
@@ -37,6 +37,8 @@ export class RecordApiFormComponent {
37
37
  }
38
38
  return outputUrl;
39
39
  }));
40
+ this.noLimitChecked$ = this.limit$.pipe(map((limit) => limit === '-1' || limit === ''));
41
+ this.displayLimit$ = this.limit$.pipe(map((limit) => (limit !== '-1' ? limit : '')));
40
42
  }
41
43
  set apiLink(value) {
42
44
  this.apiBaseUrl = value ? value.url.href : undefined;
@@ -46,10 +48,11 @@ export class RecordApiFormComponent {
46
48
  this.offset$.next(value);
47
49
  }
48
50
  setLimit(value) {
49
- this.limit$.next(value);
51
+ const newLimit = value === '' ? '-1' : value;
52
+ this.limit$.next(newLimit);
50
53
  }
51
54
  setFormat(value) {
52
- this.format$.next(value);
55
+ this.format$.next(String(value));
53
56
  }
54
57
  resetUrl() {
55
58
  this.offset$.next(DEFAULT_PARAMS.OFFSET);
@@ -57,12 +60,12 @@ export class RecordApiFormComponent {
57
60
  this.format$.next(DEFAULT_PARAMS.FORMAT);
58
61
  }
59
62
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: RecordApiFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
60
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: RecordApiFormComponent, selector: "gn-ui-record-api-form", inputs: { apiLink: "apiLink" }, ngImport: i0, template: "<div class=\"flex flex-col gap-8\">\n <div class=\"flex flex-col bg-white p-8 ng-star-inserted shadow-xl gap-8\">\n <div class=\"flex flex-row\">\n <div class=\"text-[16px] text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.create\n </div>\n <button\n (click)=\"resetUrl()\"\n class=\"bg-primary-opacity-50 inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded capitalize text-primary-lightest hover:bg-primary transition-colors\"\n >\n <p class=\"text-[13px] uppercase\" translate>\n record.metadata.api.form.reset\n </p>\n </button>\n </div>\n <div class=\"flex flex-row flex-wrap justify-between flex-grow gap-5\">\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-[14px]\" translate>record.metadata.api.form.limit</p>\n <div class=\"flex flex-row items-center gap-2\">\n <gn-ui-text-input\n class=\"mr-2 w-20\"\n (input)=\"setLimit($event.target.value)\"\n [value]=\"limit$ | async\"\n hint=\"\"\n >\n </gn-ui-text-input>\n <div class=\"flex items-center\">\n <input\n class=\"mr-2 cursor-pointer\"\n type=\"checkbox\"\n [checked]=\"(limit$ | async) === ''\"\n (change)=\"setLimit('')\"\n />\n <span class=\"text-sm\" translate\n >record.metadata.api.form.limit.all</span\n >\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.offset</p>\n <gn-ui-text-input\n class=\"w-20\"\n [value]=\"offset$ | async\"\n (input)=\"setOffset($event.target.value)\"\n hint=\"\"\n >\n </gn-ui-text-input>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.type</p>\n <gn-ui-dropdown-selector\n #dropdown\n [title]=\"''\"\n extraBtnClass=\"secondary min-w-full !w-40 !text-black\"\n [showTitle]=\"false\"\n class=\"text-black\"\n [choices]=\"formatsList\"\n (selectValue)=\"setFormat($event)\"\n [selected]=\"format$ | async\"\n ></gn-ui-dropdown-selector>\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3 mb-3\">\n <div class=\"text-sm text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.customUrl\n </div>\n <div class=\"bg-white rounded-lg\">\n <gn-ui-copy-text-button\n [text]=\"apiQueryUrl$ | async\"\n ></gn-ui-copy-text-button>\n </div>\n </div>\n</div>\n", styles: [":host ::ng-deep input{color:#000;opacity:1}:host ::ng-deep gn-ui-copy-text-button input[type=text]{color:#000;background-color:#fff}:host ::ng-deep gn-ui-copy-text-button button,host ::ng-deep gn-ui-copy-text-button button:hover{background-color:var(--color-secondary)!important}:host ::ng-deep gn-ui-copy-text-button button mat-icon{color:#fff!important;opacity:1!important}:host ::ng-deep gn-ui-copy-text-button button:hover mat-icon{color:#d3d3d3!important}\n"], dependencies: [{ kind: "directive", type: i1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i2.DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth"], outputs: ["selectValue"] }, { kind: "component", type: i3.TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "hint", "required"], outputs: ["valueChange"] }, { kind: "component", type: i4.CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
63
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: RecordApiFormComponent, selector: "gn-ui-record-api-form", inputs: { apiLink: "apiLink" }, ngImport: i0, template: "<div class=\"flex flex-col gap-8\">\n <div class=\"flex flex-col bg-white p-8 ng-star-inserted shadow-xl gap-8\">\n <div class=\"flex flex-row\">\n <div class=\"text-[16px] text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.create\n </div>\n <button\n (click)=\"resetUrl()\"\n class=\"bg-primary-opacity-50 inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded capitalize text-primary-lightest hover:bg-primary transition-colors\"\n >\n <p class=\"text-[13px] uppercase\" translate>\n record.metadata.api.form.reset\n </p>\n </button>\n </div>\n <div class=\"flex flex-row flex-wrap justify-between flex-grow gap-5\">\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-[14px]\" translate>record.metadata.api.form.limit</p>\n <div class=\"flex flex-row items-center gap-2\">\n <gn-ui-text-input\n class=\"mr-2 w-20\"\n (valueChange)=\"setLimit($event)\"\n [value]=\"displayLimit$ | async\"\n hint=\"\"\n >\n </gn-ui-text-input>\n <div class=\"flex items-center\">\n <input\n class=\"mr-2 cursor-pointer\"\n type=\"checkbox\"\n [checked]=\"noLimitChecked$ | async\"\n (change)=\"setLimit('-1')\"\n />\n <span class=\"text-sm\" translate\n >record.metadata.api.form.limit.all</span\n >\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.offset</p>\n <gn-ui-text-input\n class=\"w-20\"\n [value]=\"offset$ | async\"\n (valueChange)=\"setOffset($event)\"\n hint=\"\"\n >\n </gn-ui-text-input>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.type</p>\n <gn-ui-dropdown-selector\n #dropdown\n [title]=\"''\"\n extraBtnClass=\"secondary min-w-full !w-40 !text-black\"\n [showTitle]=\"false\"\n class=\"text-black\"\n [choices]=\"formatsList\"\n (selectValue)=\"setFormat($event)\"\n [selected]=\"format$ | async\"\n ></gn-ui-dropdown-selector>\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3 mb-3\">\n <div class=\"text-sm text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.customUrl\n </div>\n <div class=\"bg-white rounded-lg\">\n <gn-ui-copy-text-button\n [text]=\"apiQueryUrl$ | async\"\n ></gn-ui-copy-text-button>\n </div>\n </div>\n</div>\n", styles: [":host ::ng-deep input{color:#000;opacity:1}:host ::ng-deep gn-ui-copy-text-button input[type=text]{color:#000;background-color:#fff}:host ::ng-deep gn-ui-copy-text-button button,host ::ng-deep gn-ui-copy-text-button button:hover{background-color:var(--color-secondary)!important}:host ::ng-deep gn-ui-copy-text-button button mat-icon{color:#fff!important;opacity:1!important}:host ::ng-deep gn-ui-copy-text-button button:hover mat-icon{color:#d3d3d3!important}\n"], dependencies: [{ kind: "directive", type: i1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i2.DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth"], outputs: ["selectValue"] }, { kind: "component", type: i3.TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "hint", "required"], outputs: ["valueChange"] }, { kind: "component", type: i4.CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
61
64
  }
62
65
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: RecordApiFormComponent, decorators: [{
63
66
  type: Component,
64
- args: [{ selector: 'gn-ui-record-api-form', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col gap-8\">\n <div class=\"flex flex-col bg-white p-8 ng-star-inserted shadow-xl gap-8\">\n <div class=\"flex flex-row\">\n <div class=\"text-[16px] text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.create\n </div>\n <button\n (click)=\"resetUrl()\"\n class=\"bg-primary-opacity-50 inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded capitalize text-primary-lightest hover:bg-primary transition-colors\"\n >\n <p class=\"text-[13px] uppercase\" translate>\n record.metadata.api.form.reset\n </p>\n </button>\n </div>\n <div class=\"flex flex-row flex-wrap justify-between flex-grow gap-5\">\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-[14px]\" translate>record.metadata.api.form.limit</p>\n <div class=\"flex flex-row items-center gap-2\">\n <gn-ui-text-input\n class=\"mr-2 w-20\"\n (input)=\"setLimit($event.target.value)\"\n [value]=\"limit$ | async\"\n hint=\"\"\n >\n </gn-ui-text-input>\n <div class=\"flex items-center\">\n <input\n class=\"mr-2 cursor-pointer\"\n type=\"checkbox\"\n [checked]=\"(limit$ | async) === ''\"\n (change)=\"setLimit('')\"\n />\n <span class=\"text-sm\" translate\n >record.metadata.api.form.limit.all</span\n >\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.offset</p>\n <gn-ui-text-input\n class=\"w-20\"\n [value]=\"offset$ | async\"\n (input)=\"setOffset($event.target.value)\"\n hint=\"\"\n >\n </gn-ui-text-input>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.type</p>\n <gn-ui-dropdown-selector\n #dropdown\n [title]=\"''\"\n extraBtnClass=\"secondary min-w-full !w-40 !text-black\"\n [showTitle]=\"false\"\n class=\"text-black\"\n [choices]=\"formatsList\"\n (selectValue)=\"setFormat($event)\"\n [selected]=\"format$ | async\"\n ></gn-ui-dropdown-selector>\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3 mb-3\">\n <div class=\"text-sm text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.customUrl\n </div>\n <div class=\"bg-white rounded-lg\">\n <gn-ui-copy-text-button\n [text]=\"apiQueryUrl$ | async\"\n ></gn-ui-copy-text-button>\n </div>\n </div>\n</div>\n", styles: [":host ::ng-deep input{color:#000;opacity:1}:host ::ng-deep gn-ui-copy-text-button input[type=text]{color:#000;background-color:#fff}:host ::ng-deep gn-ui-copy-text-button button,host ::ng-deep gn-ui-copy-text-button button:hover{background-color:var(--color-secondary)!important}:host ::ng-deep gn-ui-copy-text-button button mat-icon{color:#fff!important;opacity:1!important}:host ::ng-deep gn-ui-copy-text-button button:hover mat-icon{color:#d3d3d3!important}\n"] }]
67
+ args: [{ selector: 'gn-ui-record-api-form', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col gap-8\">\n <div class=\"flex flex-col bg-white p-8 ng-star-inserted shadow-xl gap-8\">\n <div class=\"flex flex-row\">\n <div class=\"text-[16px] text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.create\n </div>\n <button\n (click)=\"resetUrl()\"\n class=\"bg-primary-opacity-50 inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded capitalize text-primary-lightest hover:bg-primary transition-colors\"\n >\n <p class=\"text-[13px] uppercase\" translate>\n record.metadata.api.form.reset\n </p>\n </button>\n </div>\n <div class=\"flex flex-row flex-wrap justify-between flex-grow gap-5\">\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-[14px]\" translate>record.metadata.api.form.limit</p>\n <div class=\"flex flex-row items-center gap-2\">\n <gn-ui-text-input\n class=\"mr-2 w-20\"\n (valueChange)=\"setLimit($event)\"\n [value]=\"displayLimit$ | async\"\n hint=\"\"\n >\n </gn-ui-text-input>\n <div class=\"flex items-center\">\n <input\n class=\"mr-2 cursor-pointer\"\n type=\"checkbox\"\n [checked]=\"noLimitChecked$ | async\"\n (change)=\"setLimit('-1')\"\n />\n <span class=\"text-sm\" translate\n >record.metadata.api.form.limit.all</span\n >\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.offset</p>\n <gn-ui-text-input\n class=\"w-20\"\n [value]=\"offset$ | async\"\n (valueChange)=\"setOffset($event)\"\n hint=\"\"\n >\n </gn-ui-text-input>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.type</p>\n <gn-ui-dropdown-selector\n #dropdown\n [title]=\"''\"\n extraBtnClass=\"secondary min-w-full !w-40 !text-black\"\n [showTitle]=\"false\"\n class=\"text-black\"\n [choices]=\"formatsList\"\n (selectValue)=\"setFormat($event)\"\n [selected]=\"format$ | async\"\n ></gn-ui-dropdown-selector>\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3 mb-3\">\n <div class=\"text-sm text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.customUrl\n </div>\n <div class=\"bg-white rounded-lg\">\n <gn-ui-copy-text-button\n [text]=\"apiQueryUrl$ | async\"\n ></gn-ui-copy-text-button>\n </div>\n </div>\n</div>\n", styles: [":host ::ng-deep input{color:#000;opacity:1}:host ::ng-deep gn-ui-copy-text-button input[type=text]{color:#000;background-color:#fff}:host ::ng-deep gn-ui-copy-text-button button,host ::ng-deep gn-ui-copy-text-button button:hover{background-color:var(--color-secondary)!important}:host ::ng-deep gn-ui-copy-text-button button mat-icon{color:#fff!important;opacity:1!important}:host ::ng-deep gn-ui-copy-text-button button:hover mat-icon{color:#d3d3d3!important}\n"] }]
65
68
  }], propDecorators: { apiLink: [{
66
69
  type: Input
67
70
  }] } });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9yZWNvcmQtYXBpLWZvcm0vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9yZWNvcmQtYXBpLWZvcm0vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRXpFLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQTs7Ozs7OztBQUUxRCxNQUFNLGNBQWMsR0FBRztJQUNyQixNQUFNLEVBQUUsRUFBRTtJQUNWLEtBQUssRUFBRSxFQUFFO0lBQ1QsTUFBTSxFQUFFLE1BQU07Q0FDZixDQUFBO0FBT0QsTUFBTSxPQUFPLHNCQUFzQjtJQU5uQztRQVdFLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQTtRQUNqQyxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUE7UUFDaEMsWUFBTyxHQUFHLElBQUksZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBRWpDLGdCQUFXLEdBQUc7WUFDWixFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtZQUNoQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRTtTQUMvQixDQUFBO1FBQ0QsaUJBQVksR0FBRyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUMxRSxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRTtZQUM5QixJQUFJLFNBQVMsQ0FBQTtZQUNiLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDbkIsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO2dCQUNwQyxNQUFNLE1BQU0sR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUE7Z0JBQzFELEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO29CQUNqRCxJQUFJLEtBQUssSUFBSSxLQUFLLEtBQUssR0FBRyxFQUFFO3dCQUMxQixHQUFHLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUE7cUJBQ2pDO3lCQUFNO3dCQUNMLEdBQUcsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO3FCQUM3QjtpQkFDRjtnQkFDRCxTQUFTLEdBQUcsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFBO2FBQzNCO1lBQ0QsT0FBTyxTQUFTLENBQUE7UUFDbEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtLQW1CRjtJQWhEQyxJQUFhLE9BQU8sQ0FBQyxLQUFpQztRQUNwRCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQTtRQUNwRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDakIsQ0FBQztJQTRCRCxTQUFTLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUMxQixDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQWE7UUFDcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDekIsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFhO1FBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzFCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ3hDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUN0QyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDMUMsQ0FBQzs4R0FoRFUsc0JBQXNCO2tHQUF0QixzQkFBc0IsNkZDZm5DLHV3RkEyRUE7OzJGRDVEYSxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0UsdUJBQXVCLG1CQUdoQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUdsQyxPQUFPO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCB9IGZyb20gJ3J4anMnXG5cbmNvbnN0IERFRkFVTFRfUEFSQU1TID0ge1xuICBPRkZTRVQ6ICcnLFxuICBMSU1JVDogJycsXG4gIEZPUk1BVDogJ2pzb24nLFxufVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktcmVjb3JkLWFwaS1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JlY29yZC1hcGktZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JlY29yZC1hcGktZm9ybS5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBSZWNvcmRBcGlGb3JtQ29tcG9uZW50IHtcbiAgQElucHV0KCkgc2V0IGFwaUxpbmsodmFsdWU6IERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uKSB7XG4gICAgdGhpcy5hcGlCYXNlVXJsID0gdmFsdWUgPyB2YWx1ZS51cmwuaHJlZiA6IHVuZGVmaW5lZFxuICAgIHRoaXMucmVzZXRVcmwoKVxuICB9XG4gIG9mZnNldCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KCcnKVxuICBsaW1pdCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KCcnKVxuICBmb3JtYXQkID0gbmV3IEJlaGF2aW9yU3ViamVjdCgnJylcbiAgYXBpQmFzZVVybDogc3RyaW5nXG4gIGZvcm1hdHNMaXN0ID0gW1xuICAgIHsgbGFiZWw6ICdKU09OJywgdmFsdWU6ICdqc29uJyB9LFxuICAgIHsgbGFiZWw6ICdDU1YnLCB2YWx1ZTogJ2NzdicgfSxcbiAgXVxuICBhcGlRdWVyeVVybCQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLm9mZnNldCQsIHRoaXMubGltaXQkLCB0aGlzLmZvcm1hdCRdKS5waXBlKFxuICAgIG1hcCgoW29mZnNldCwgbGltaXQsIGZvcm1hdF0pID0+IHtcbiAgICAgIGxldCBvdXRwdXRVcmxcbiAgICAgIGlmICh0aGlzLmFwaUJhc2VVcmwpIHtcbiAgICAgICAgY29uc3QgdXJsID0gbmV3IFVSTCh0aGlzLmFwaUJhc2VVcmwpXG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IHsgb2Zmc2V0OiBvZmZzZXQsIGxpbWl0OiBsaW1pdCwgZjogZm9ybWF0IH1cbiAgICAgICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMocGFyYW1zKSkge1xuICAgICAgICAgIGlmICh2YWx1ZSAmJiB2YWx1ZSAhPT0gJzAnKSB7XG4gICAgICAgICAgICB1cmwuc2VhcmNoUGFyYW1zLnNldChrZXksIHZhbHVlKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB1cmwuc2VhcmNoUGFyYW1zLmRlbGV0ZShrZXkpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIG91dHB1dFVybCA9IHVybC50b1N0cmluZygpXG4gICAgICB9XG4gICAgICByZXR1cm4gb3V0cHV0VXJsXG4gICAgfSlcbiAgKVxuXG4gIHNldE9mZnNldCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5vZmZzZXQkLm5leHQodmFsdWUpXG4gIH1cblxuICBzZXRMaW1pdCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5saW1pdCQubmV4dCh2YWx1ZSlcbiAgfVxuXG4gIHNldEZvcm1hdCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5mb3JtYXQkLm5leHQodmFsdWUpXG4gIH1cblxuICByZXNldFVybCgpIHtcbiAgICB0aGlzLm9mZnNldCQubmV4dChERUZBVUxUX1BBUkFNUy5PRkZTRVQpXG4gICAgdGhpcy5saW1pdCQubmV4dChERUZBVUxUX1BBUkFNUy5MSU1JVClcbiAgICB0aGlzLmZvcm1hdCQubmV4dChERUZBVUxUX1BBUkFNUy5GT1JNQVQpXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC04XCI+XG4gIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGJnLXdoaXRlIHAtOCBuZy1zdGFyLWluc2VydGVkIHNoYWRvdy14bCBnYXAtOFwiPlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC1bMTZweF0gdGV4dC1ibGFjayB0cnVuY2F0ZSBmb250LXRpdGxlIHctMTEvMTJcIiB0cmFuc2xhdGU+XG4gICAgICAgIHJlY29yZC5tZXRhZGF0YS5hcGkuZm9ybS5jcmVhdGVcbiAgICAgIDwvZGl2PlxuICAgICAgPGJ1dHRvblxuICAgICAgICAoY2xpY2spPVwicmVzZXRVcmwoKVwiXG4gICAgICAgIGNsYXNzPVwiYmctcHJpbWFyeS1vcGFjaXR5LTUwIGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBweC0yIHB5LTEgdGV4dC0xMyBmb250LW1lZGl1bSBsZWFkaW5nLW5vbmUgdGV4dC13aGl0ZSByb3VuZGVkIGNhcGl0YWxpemUgdGV4dC1wcmltYXJ5LWxpZ2h0ZXN0IGhvdmVyOmJnLXByaW1hcnkgdHJhbnNpdGlvbi1jb2xvcnNcIlxuICAgICAgPlxuICAgICAgICA8cCBjbGFzcz1cInRleHQtWzEzcHhdIHVwcGVyY2FzZVwiIHRyYW5zbGF0ZT5cbiAgICAgICAgICByZWNvcmQubWV0YWRhdGEuYXBpLmZvcm0ucmVzZXRcbiAgICAgICAgPC9wPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZmxleC13cmFwIGp1c3RpZnktYmV0d2VlbiBmbGV4LWdyb3cgZ2FwLTVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0zXCI+XG4gICAgICAgIDxwIGNsYXNzPVwidGV4dC1bMTRweF1cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLmxpbWl0PC9wPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBpdGVtcy1jZW50ZXIgZ2FwLTJcIj5cbiAgICAgICAgICA8Z24tdWktdGV4dC1pbnB1dFxuICAgICAgICAgICAgY2xhc3M9XCJtci0yIHctMjBcIlxuICAgICAgICAgICAgKGlucHV0KT1cInNldExpbWl0KCRldmVudC50YXJnZXQudmFsdWUpXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJsaW1pdCQgfCBhc3luY1wiXG4gICAgICAgICAgICBoaW50PVwiXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgPC9nbi11aS10ZXh0LWlucHV0PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgIGNsYXNzPVwibXItMiBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgIFtjaGVja2VkXT1cIihsaW1pdCQgfCBhc3luYykgPT09ICcnXCJcbiAgICAgICAgICAgICAgKGNoYW5nZSk9XCJzZXRMaW1pdCgnJylcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1zbVwiIHRyYW5zbGF0ZVxuICAgICAgICAgICAgICA+cmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLmxpbWl0LmFsbDwvc3BhblxuICAgICAgICAgICAgPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTNcIj5cbiAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXNtXCIgdHJhbnNsYXRlPnJlY29yZC5tZXRhZGF0YS5hcGkuZm9ybS5vZmZzZXQ8L3A+XG4gICAgICAgIDxnbi11aS10ZXh0LWlucHV0XG4gICAgICAgICAgY2xhc3M9XCJ3LTIwXCJcbiAgICAgICAgICBbdmFsdWVdPVwib2Zmc2V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAoaW5wdXQpPVwic2V0T2Zmc2V0KCRldmVudC50YXJnZXQudmFsdWUpXCJcbiAgICAgICAgICBoaW50PVwiXCJcbiAgICAgICAgPlxuICAgICAgICA8L2duLXVpLXRleHQtaW5wdXQ+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0zXCI+XG4gICAgICAgIDxwIGNsYXNzPVwidGV4dC1zbVwiIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEuYXBpLmZvcm0udHlwZTwvcD5cbiAgICAgICAgPGduLXVpLWRyb3Bkb3duLXNlbGVjdG9yXG4gICAgICAgICAgI2Ryb3Bkb3duXG4gICAgICAgICAgW3RpdGxlXT1cIicnXCJcbiAgICAgICAgICBleHRyYUJ0bkNsYXNzPVwic2Vjb25kYXJ5IG1pbi13LWZ1bGwgIXctNDAgIXRleHQtYmxhY2tcIlxuICAgICAgICAgIFtzaG93VGl0bGVdPVwiZmFsc2VcIlxuICAgICAgICAgIGNsYXNzPVwidGV4dC1ibGFja1wiXG4gICAgICAgICAgW2Nob2ljZXNdPVwiZm9ybWF0c0xpc3RcIlxuICAgICAgICAgIChzZWxlY3RWYWx1ZSk9XCJzZXRGb3JtYXQoJGV2ZW50KVwiXG4gICAgICAgICAgW3NlbGVjdGVkXT1cImZvcm1hdCQgfCBhc3luY1wiXG4gICAgICAgID48L2duLXVpLWRyb3Bkb3duLXNlbGVjdG9yPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMyBtYi0zXCI+XG4gICAgPGRpdiBjbGFzcz1cInRleHQtc20gdGV4dC1ibGFjayB0cnVuY2F0ZSBmb250LXRpdGxlIHctMTEvMTJcIiB0cmFuc2xhdGU+XG4gICAgICByZWNvcmQubWV0YWRhdGEuYXBpLmZvcm0uY3VzdG9tVXJsXG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJnLXdoaXRlIHJvdW5kZWQtbGdcIj5cbiAgICAgIDxnbi11aS1jb3B5LXRleHQtYnV0dG9uXG4gICAgICAgIFt0ZXh0XT1cImFwaVF1ZXJ5VXJsJCB8IGFzeW5jXCJcbiAgICAgID48L2duLXVpLWNvcHktdGV4dC1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9yZWNvcmQtYXBpLWZvcm0vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9yZWNvcmQtYXBpLWZvcm0vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRXpFLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQTs7Ozs7OztBQUUxRCxNQUFNLGNBQWMsR0FBRztJQUNyQixNQUFNLEVBQUUsRUFBRTtJQUNWLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLE1BQU07Q0FDZixDQUFBO0FBT0QsTUFBTSxPQUFPLHNCQUFzQjtJQU5uQztRQVdFLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQTtRQUNqQyxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUE7UUFDaEMsWUFBTyxHQUFHLElBQUksZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBRWpDLGdCQUFXLEdBQUc7WUFDWixFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtZQUNoQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRTtTQUMvQixDQUFBO1FBQ0QsaUJBQVksR0FBRyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FB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bnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCB9IGZyb20gJ3J4anMnXG5cbmNvbnN0IERFRkFVTFRfUEFSQU1TID0ge1xuICBPRkZTRVQ6ICcnLFxuICBMSU1JVDogJy0xJyxcbiAgRk9STUFUOiAnanNvbicsXG59XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1yZWNvcmQtYXBpLWZvcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFJlY29yZEFwaUZvcm1Db21wb25lbnQge1xuICBASW5wdXQoKSBzZXQgYXBpTGluayh2YWx1ZTogRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb24pIHtcbiAgICB0aGlzLmFwaUJhc2VVcmwgPSB2YWx1ZSA/IHZhbHVlLnVybC5ocmVmIDogdW5kZWZpbmVkXG4gICAgdGhpcy5yZXNldFVybCgpXG4gIH1cbiAgb2Zmc2V0JCA9IG5ldyBCZWhhdmlvclN1YmplY3QoJycpXG4gIGxpbWl0JCA9IG5ldyBCZWhhdmlvclN1YmplY3QoJycpXG4gIGZvcm1hdCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KCcnKVxuICBhcGlCYXNlVXJsOiBzdHJpbmdcbiAgZm9ybWF0c0xpc3QgPSBbXG4gICAgeyBsYWJlbDogJ0pTT04nLCB2YWx1ZTogJ2pzb24nIH0sXG4gICAgeyBsYWJlbDogJ0NTVicsIHZhbHVlOiAnY3N2JyB9LFxuICBdXG4gIGFwaVF1ZXJ5VXJsJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMub2Zmc2V0JCwgdGhpcy5saW1pdCQsIHRoaXMuZm9ybWF0JF0pLnBpcGUoXG4gICAgbWFwKChbb2Zmc2V0LCBsaW1pdCwgZm9ybWF0XSkgPT4ge1xuICAgICAgbGV0IG91dHB1dFVybFxuICAgICAgaWYgKHRoaXMuYXBpQmFzZVVybCkge1xuICAgICAgICBjb25zdCB1cmwgPSBuZXcgVVJMKHRoaXMuYXBpQmFzZVVybClcbiAgICAgICAgY29uc3QgcGFyYW1zID0geyBvZmZzZXQ6IG9mZnNldCwgbGltaXQ6IGxpbWl0LCBmOiBmb3JtYXQgfVxuICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhwYXJhbXMpKSB7XG4gICAgICAgICAgaWYgKHZhbHVlICYmIHZhbHVlICE9PSAnMCcpIHtcbiAgICAgICAgICAgIHVybC5zZWFyY2hQYXJhbXMuc2V0KGtleSwgdmFsdWUpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHVybC5zZWFyY2hQYXJhbXMuZGVsZXRlKGtleSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgb3V0cHV0VXJsID0gdXJsLnRvU3RyaW5nKClcbiAgICAgIH1cbiAgICAgIHJldHVybiBvdXRwdXRVcmxcbiAgICB9KVxuICApXG4gIG5vTGltaXRDaGVja2VkJCA9IHRoaXMubGltaXQkLnBpcGUoXG4gICAgbWFwKChsaW1pdCkgPT4gbGltaXQgPT09ICctMScgfHwgbGltaXQgPT09ICcnKVxuICApXG5cbiAgZGlzcGxheUxpbWl0JCA9IHRoaXMubGltaXQkLnBpcGUoXG4gICAgbWFwKChsaW1pdCkgPT4gKGxpbWl0ICE9PSAnLTEnID8gbGltaXQgOiAnJykpXG4gIClcblxuICBzZXRPZmZzZXQodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMub2Zmc2V0JC5uZXh0KHZhbHVlKVxuICB9XG5cbiAgc2V0TGltaXQodmFsdWU6IHN0cmluZykge1xuICAgIGNvbnN0IG5ld0xpbWl0ID0gdmFsdWUgPT09ICcnID8gJy0xJyA6IHZhbHVlXG4gICAgdGhpcy5saW1pdCQubmV4dChuZXdMaW1pdClcbiAgfVxuXG4gIHNldEZvcm1hdCh2YWx1ZTogc3RyaW5nIHwgdW5rbm93bikge1xuICAgIHRoaXMuZm9ybWF0JC5uZXh0KFN0cmluZyh2YWx1ZSkpXG4gIH1cblxuICByZXNldFVybCgpIHtcbiAgICB0aGlzLm9mZnNldCQubmV4dChERUZBVUxUX1BBUkFNUy5PRkZTRVQpXG4gICAgdGhpcy5saW1pdCQubmV4dChERUZBVUxUX1BBUkFNUy5MSU1JVClcbiAgICB0aGlzLmZvcm1hdCQubmV4dChERUZBVUxUX1BBUkFNUy5GT1JNQVQpXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC04XCI+XG4gIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGJnLXdoaXRlIHAtOCBuZy1zdGFyLWluc2VydGVkIHNoYWRvdy14bCBnYXAtOFwiPlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC1bMTZweF0gdGV4dC1ibGFjayB0cnVuY2F0ZSBmb250LXRpdGxlIHctMTEvMTJcIiB0cmFuc2xhdGU+XG4gICAgICAgIHJlY29yZC5tZXRhZGF0YS5hcGkuZm9ybS5jcmVhdGVcbiAgICAgIDwvZGl2PlxuICAgICAgPGJ1dHRvblxuICAgICAgICAoY2xpY2spPVwicmVzZXRVcmwoKVwiXG4gICAgICAgIGNsYXNzPVwiYmctcHJpbWFyeS1vcGFjaXR5LTUwIGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBweC0yIHB5LTEgdGV4dC0xMyBmb250LW1lZGl1bSBsZWFkaW5nLW5vbmUgdGV4dC13aGl0ZSByb3VuZGVkIGNhcGl0YWxpemUgdGV4dC1wcmltYXJ5LWxpZ2h0ZXN0IGhvdmVyOmJnLXByaW1hcnkgdHJhbnNpdGlvbi1jb2xvcnNcIlxuICAgICAgPlxuICAgICAgICA8cCBjbGFzcz1cInRleHQtWzEzcHhdIHVwcGVyY2FzZVwiIHRyYW5zbGF0ZT5cbiAgICAgICAgICByZWNvcmQubWV0YWRhdGEuYXBpLmZvcm0ucmVzZXRcbiAgICAgICAgPC9wPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZmxleC13cmFwIGp1c3RpZnktYmV0d2VlbiBmbGV4LWdyb3cgZ2FwLTVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0zXCI+XG4gICAgICAgIDxwIGNsYXNzPVwidGV4dC1bMTRweF1cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLmxpbWl0PC9wPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBpdGVtcy1jZW50ZXIgZ2FwLTJcIj5cbiAgICAgICAgICA8Z24tdWktdGV4dC1pbnB1dFxuICAgICAgICAgICAgY2xhc3M9XCJtci0yIHctMjBcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cInNldExpbWl0KCRldmVudClcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cImRpc3BsYXlMaW1pdCQgfCBhc3luY1wiXG4gICAgICAgICAgICBoaW50PVwiXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgPC9nbi11aS10ZXh0LWlucHV0PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgIGNsYXNzPVwibXItMiBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgIFtjaGVja2VkXT1cIm5vTGltaXRDaGVja2VkJCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgKGNoYW5nZSk9XCJzZXRMaW1pdCgnLTEnKVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXNtXCIgdHJhbnNsYXRlXG4gICAgICAgICAgICAgID5yZWNvcmQubWV0YWRhdGEuYXBpLmZvcm0ubGltaXQuYWxsPC9zcGFuXG4gICAgICAgICAgICA+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtM1wiPlxuICAgICAgICA8cCBjbGFzcz1cInRleHQtc21cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLm9mZnNldDwvcD5cbiAgICAgICAgPGduLXVpLXRleHQtaW5wdXRcbiAgICAgICAgICBjbGFzcz1cInctMjBcIlxuICAgICAgICAgIFt2YWx1ZV09XCJvZmZzZXQkIHwgYXN5bmNcIlxuICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJzZXRPZmZzZXQoJGV2ZW50KVwiXG4gICAgICAgICAgaGludD1cIlwiXG4gICAgICAgID5cbiAgICAgICAgPC9nbi11aS10ZXh0LWlucHV0PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtM1wiPlxuICAgICAgICA8cCBjbGFzcz1cInRleHQtc21cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLnR5cGU8L3A+XG4gICAgICAgIDxnbi11aS1kcm9wZG93bi1zZWxlY3RvclxuICAgICAgICAgICNkcm9wZG93blxuICAgICAgICAgIFt0aXRsZV09XCInJ1wiXG4gICAgICAgICAgZXh0cmFCdG5DbGFzcz1cInNlY29uZGFyeSBtaW4tdy1mdWxsICF3LTQwICF0ZXh0LWJsYWNrXCJcbiAgICAgICAgICBbc2hvd1RpdGxlXT1cImZhbHNlXCJcbiAgICAgICAgICBjbGFzcz1cInRleHQtYmxhY2tcIlxuICAgICAgICAgIFtjaG9pY2VzXT1cImZvcm1hdHNMaXN0XCJcbiAgICAgICAgICAoc2VsZWN0VmFsdWUpPVwic2V0Rm9ybWF0KCRldmVudClcIlxuICAgICAgICAgIFtzZWxlY3RlZF09XCJmb3JtYXQkIHwgYXN5bmNcIlxuICAgICAgICA+PC9nbi11aS1kcm9wZG93bi1zZWxlY3Rvcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTMgbWItM1wiPlxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXNtIHRleHQtYmxhY2sgdHJ1bmNhdGUgZm9udC10aXRsZSB3LTExLzEyXCIgdHJhbnNsYXRlPlxuICAgICAgcmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLmN1c3RvbVVybFxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJiZy13aGl0ZSByb3VuZGVkLWxnXCI+XG4gICAgICA8Z24tdWktY29weS10ZXh0LWJ1dHRvblxuICAgICAgICBbdGV4dF09XCJhcGlRdWVyeVVybCQgfCBhc3luY1wiXG4gICAgICA+PC9nbi11aS1jb3B5LXRleHQtYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -7,12 +7,12 @@ import * as i4 from "../thumbnail/thumbnail.component";
7
7
  import * as i5 from "@ngx-translate/core";
8
8
  export class RelatedRecordCardComponent {
9
9
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: RelatedRecordCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: RelatedRecordCardComponent, selector: "gn-ui-related-record-card", inputs: { record: "record" }, ngImport: i0, template: "<a\n class=\"w-72 h-96 overflow-hidden rounded-lg bg-white cursor-pointer block hover:-translate-y-2 duration-[180ms]\"\n [routerLink]=\"['/dataset', record.uniqueIdentifier]\"\n target=\"_blank\"\n>\n <div class=\"h-52 bg-gray-100\">\n <gn-ui-thumbnail\n class=\"h-52 w-full object-cover\"\n [thumbnailUrl]=\"record.overviews?.[0].url.toString()\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col justify-between h-44 px-5 pt-4 pb-6\">\n <h4\n class=\"max-h-24 font-title text-21 text-black text-ellipsis overflow-hidden\"\n >\n {{ record.title }}\n </h4>\n <div>\n <button\n mat-raised-button\n [matTooltip]=\"'tooltip.url.open' | translate\"\n matTooltipPosition=\"above\"\n >\n <mat-icon class=\"material-symbols-outlined align-middle text-secondary\"\n >open_in_new</mat-icon\n >\n </button>\n </div>\n </div>\n</a>\n", styles: [""], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: RelatedRecordCardComponent, selector: "gn-ui-related-record-card", inputs: { record: "record" }, ngImport: i0, template: "<a\n class=\"w-72 h-96 overflow-hidden rounded-lg bg-white cursor-pointer block hover:-translate-y-2 duration-[180ms]\"\n [routerLink]=\"['/dataset', record.uniqueIdentifier]\"\n target=\"_blank\"\n>\n <div class=\"h-52 bg-gray-100\">\n <gn-ui-thumbnail\n class=\"h-52 w-full object-cover\"\n [thumbnailUrl]=\"record.overviews?.[0]?.url.toString()\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col justify-between h-44 px-5 pt-4 pb-6\">\n <h4\n class=\"max-h-24 font-title text-21 text-black text-ellipsis overflow-hidden\"\n >\n {{ record.title }}\n </h4>\n <div>\n <button\n mat-raised-button\n [matTooltip]=\"'tooltip.url.open' | translate\"\n matTooltipPosition=\"above\"\n >\n <mat-icon class=\"material-symbols-outlined align-middle text-secondary\"\n >open_in_new</mat-icon\n >\n </button>\n </div>\n </div>\n</a>\n", styles: [""], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"], outputs: ["placeholderShown"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
11
11
  }
12
12
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: RelatedRecordCardComponent, decorators: [{
13
13
  type: Component,
14
- args: [{ selector: 'gn-ui-related-record-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<a\n class=\"w-72 h-96 overflow-hidden rounded-lg bg-white cursor-pointer block hover:-translate-y-2 duration-[180ms]\"\n [routerLink]=\"['/dataset', record.uniqueIdentifier]\"\n target=\"_blank\"\n>\n <div class=\"h-52 bg-gray-100\">\n <gn-ui-thumbnail\n class=\"h-52 w-full object-cover\"\n [thumbnailUrl]=\"record.overviews?.[0].url.toString()\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col justify-between h-44 px-5 pt-4 pb-6\">\n <h4\n class=\"max-h-24 font-title text-21 text-black text-ellipsis overflow-hidden\"\n >\n {{ record.title }}\n </h4>\n <div>\n <button\n mat-raised-button\n [matTooltip]=\"'tooltip.url.open' | translate\"\n matTooltipPosition=\"above\"\n >\n <mat-icon class=\"material-symbols-outlined align-middle text-secondary\"\n >open_in_new</mat-icon\n >\n </button>\n </div>\n </div>\n</a>\n" }]
14
+ args: [{ selector: 'gn-ui-related-record-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<a\n class=\"w-72 h-96 overflow-hidden rounded-lg bg-white cursor-pointer block hover:-translate-y-2 duration-[180ms]\"\n [routerLink]=\"['/dataset', record.uniqueIdentifier]\"\n target=\"_blank\"\n>\n <div class=\"h-52 bg-gray-100\">\n <gn-ui-thumbnail\n class=\"h-52 w-full object-cover\"\n [thumbnailUrl]=\"record.overviews?.[0]?.url.toString()\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col justify-between h-44 px-5 pt-4 pb-6\">\n <h4\n class=\"max-h-24 font-title text-21 text-black text-ellipsis overflow-hidden\"\n >\n {{ record.title }}\n </h4>\n <div>\n <button\n mat-raised-button\n [matTooltip]=\"'tooltip.url.open' | translate\"\n matTooltipPosition=\"above\"\n >\n <mat-icon class=\"material-symbols-outlined align-middle text-secondary\"\n >open_in_new</mat-icon\n >\n </button>\n </div>\n </div>\n</a>\n" }]
15
15
  }], propDecorators: { record: [{
16
16
  type: Input
17
17
  }] } });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRlZC1yZWNvcmQtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvcmVsYXRlZC1yZWNvcmQtY2FyZC9yZWxhdGVkLXJlY29yZC1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9yZWxhdGVkLXJlY29yZC1jYXJkL3JlbGF0ZWQtcmVjb3JkLWNhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUE7Ozs7Ozs7QUFTekUsTUFBTSxPQUFPLDBCQUEwQjs4R0FBMUIsMEJBQTBCO2tHQUExQiwwQkFBMEIsK0ZDVHZDLDg2QkE4QkE7OzJGRHJCYSwwQkFBMEI7a0JBTnRDLFNBQVM7K0JBQ0UsMkJBQTJCLG1CQUdwQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDYXRhbG9nUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1yZWxhdGVkLXJlY29yZC1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JlbGF0ZWQtcmVjb3JkLWNhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yZWxhdGVkLXJlY29yZC1jYXJkLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFJlbGF0ZWRSZWNvcmRDYXJkQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcmVjb3JkOiBDYXRhbG9nUmVjb3JkXG59XG4iLCI8YVxuICBjbGFzcz1cInctNzIgaC05NiBvdmVyZmxvdy1oaWRkZW4gcm91bmRlZC1sZyBiZy13aGl0ZSBjdXJzb3ItcG9pbnRlciBibG9jayBob3ZlcjotdHJhbnNsYXRlLXktMiBkdXJhdGlvbi1bMTgwbXNdXCJcbiAgW3JvdXRlckxpbmtdPVwiWycvZGF0YXNldCcsIHJlY29yZC51bmlxdWVJZGVudGlmaWVyXVwiXG4gIHRhcmdldD1cIl9ibGFua1wiXG4+XG4gIDxkaXYgY2xhc3M9XCJoLTUyIGJnLWdyYXktMTAwXCI+XG4gICAgPGduLXVpLXRodW1ibmFpbFxuICAgICAgY2xhc3M9XCJoLTUyIHctZnVsbCBvYmplY3QtY292ZXJcIlxuICAgICAgW3RodW1ibmFpbFVybF09XCJyZWNvcmQub3ZlcnZpZXdzPy5bMF0udXJsLnRvU3RyaW5nKClcIlxuICAgID48L2duLXVpLXRodW1ibmFpbD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGp1c3RpZnktYmV0d2VlbiBoLTQ0IHB4LTUgcHQtNCBwYi02XCI+XG4gICAgPGg0XG4gICAgICBjbGFzcz1cIm1heC1oLTI0IGZvbnQtdGl0bGUgdGV4dC0yMSB0ZXh0LWJsYWNrIHRleHQtZWxsaXBzaXMgb3ZlcmZsb3ctaGlkZGVuXCJcbiAgICA+XG4gICAgICB7eyByZWNvcmQudGl0bGUgfX1cbiAgICA8L2g0PlxuICAgIDxkaXY+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICAgIFttYXRUb29sdGlwXT1cIid0b29sdGlwLnVybC5vcGVuJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCJcbiAgICAgID5cbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBhbGlnbi1taWRkbGUgdGV4dC1zZWNvbmRhcnlcIlxuICAgICAgICAgID5vcGVuX2luX25ldzwvbWF0LWljb25cbiAgICAgICAgPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9hPlxuIl19
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRlZC1yZWNvcmQtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9saWIvcmVsYXRlZC1yZWNvcmQtY2FyZC9yZWxhdGVkLXJlY29yZC1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9yZWxhdGVkLXJlY29yZC1jYXJkL3JlbGF0ZWQtcmVjb3JkLWNhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUE7Ozs7Ozs7QUFTekUsTUFBTSxPQUFPLDBCQUEwQjs4R0FBMUIsMEJBQTBCO2tHQUExQiwwQkFBMEIsK0ZDVHZDLCs2QkE4QkE7OzJGRHJCYSwwQkFBMEI7a0JBTnRDLFNBQVM7K0JBQ0UsMkJBQTJCLG1CQUdwQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDYXRhbG9nUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1yZWxhdGVkLXJlY29yZC1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JlbGF0ZWQtcmVjb3JkLWNhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yZWxhdGVkLXJlY29yZC1jYXJkLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFJlbGF0ZWRSZWNvcmRDYXJkQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcmVjb3JkOiBDYXRhbG9nUmVjb3JkXG59XG4iLCI8YVxuICBjbGFzcz1cInctNzIgaC05NiBvdmVyZmxvdy1oaWRkZW4gcm91bmRlZC1sZyBiZy13aGl0ZSBjdXJzb3ItcG9pbnRlciBibG9jayBob3ZlcjotdHJhbnNsYXRlLXktMiBkdXJhdGlvbi1bMTgwbXNdXCJcbiAgW3JvdXRlckxpbmtdPVwiWycvZGF0YXNldCcsIHJlY29yZC51bmlxdWVJZGVudGlmaWVyXVwiXG4gIHRhcmdldD1cIl9ibGFua1wiXG4+XG4gIDxkaXYgY2xhc3M9XCJoLTUyIGJnLWdyYXktMTAwXCI+XG4gICAgPGduLXVpLXRodW1ibmFpbFxuICAgICAgY2xhc3M9XCJoLTUyIHctZnVsbCBvYmplY3QtY292ZXJcIlxuICAgICAgW3RodW1ibmFpbFVybF09XCJyZWNvcmQub3ZlcnZpZXdzPy5bMF0/LnVybC50b1N0cmluZygpXCJcbiAgICA+PC9nbi11aS10aHVtYm5haWw+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBqdXN0aWZ5LWJldHdlZW4gaC00NCBweC01IHB0LTQgcGItNlwiPlxuICAgIDxoNFxuICAgICAgY2xhc3M9XCJtYXgtaC0yNCBmb250LXRpdGxlIHRleHQtMjEgdGV4dC1ibGFjayB0ZXh0LWVsbGlwc2lzIG92ZXJmbG93LWhpZGRlblwiXG4gICAgPlxuICAgICAge3sgcmVjb3JkLnRpdGxlIH19XG4gICAgPC9oND5cbiAgICA8ZGl2PlxuICAgICAgPGJ1dHRvblxuICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICBbbWF0VG9vbHRpcF09XCIndG9vbHRpcC51cmwub3BlbicgfCB0cmFuc2xhdGVcIlxuICAgICAgICBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiXG4gICAgICA+XG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgYWxpZ24tbWlkZGxlIHRleHQtc2Vjb25kYXJ5XCJcbiAgICAgICAgICA+b3Blbl9pbl9uZXc8L21hdC1pY29uXG4gICAgICAgID5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvYT5cbiJdfQ==
@@ -1,4 +1,5 @@
1
- import { ChangeDetectionStrategy, Component, ElementRef, Inject, InjectionToken, Input, Optional, ViewChild, } from '@angular/core';
1
+ import { CommonModule } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, ElementRef, Inject, InjectionToken, Input, Optional, ViewChild, Output, EventEmitter, } from '@angular/core';
2
3
  import * as i0 from "@angular/core";
3
4
  import * as i1 from "@angular/common";
4
5
  export const THUMBNAIL_PLACEHOLDER = new InjectionToken('thumbnail-placeholder');
@@ -10,6 +11,7 @@ export class ThumbnailComponent {
10
11
  constructor(optionalPlaceholderUrl) {
11
12
  this.optionalPlaceholderUrl = optionalPlaceholderUrl;
12
13
  this.fit = 'cover';
14
+ this.placeholderShown = new EventEmitter();
13
15
  this.placeholderUrl = this.optionalPlaceholderUrl || DEFAULT_PLACEHOLDER;
14
16
  this.images = [];
15
17
  }
@@ -45,6 +47,7 @@ export class ThumbnailComponent {
45
47
  setNewSrcImage(image) {
46
48
  this.imgFit = image.fit;
47
49
  this.imgUrl = image.url;
50
+ this.placeholderShown.emit(this.isPlaceholder);
48
51
  }
49
52
  setPlaceholder() {
50
53
  this.setNewSrcImage({ url: this.placeholderUrl, fit: 'scale-down' });
@@ -67,11 +70,11 @@ export class ThumbnailComponent {
67
70
  }
68
71
  }
69
72
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ThumbnailComponent, deps: [{ token: THUMBNAIL_PLACEHOLDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
70
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: { thumbnailUrl: "thumbnailUrl", fit: "fit" }, viewQueries: [{ propertyName: "imgElement", first: true, predicate: ["imageElement"], descendants: true }, { propertyName: "containerElement", first: true, predicate: ["containerElement"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n #containerElement\n class=\"h-full w-full relative shrink-0 overflow-hidden flex items-center\"\n [ngClass]=\"isPlaceholder ? 'bg-gray-100' : 'bg-white'\"\n [attr.data-cy-is-placeholder]=\"isPlaceholder.toString()\"\n>\n <img\n #imageElement\n class=\"relative w-full object-center\"\n [ngClass]=\"imgFit === 'contain' ? 'h-4/5' : 'h-full'\"\n [ngStyle]=\"{ objectFit: imgFit }\"\n alt=\"thumbnail\"\n loading=\"lazy\"\n (load)=\"setObjectFit()\"\n [src]=\"imgUrl\"\n (error)=\"useFallback()\"\n />\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
73
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: ThumbnailComponent, isStandalone: true, selector: "gn-ui-thumbnail", inputs: { thumbnailUrl: "thumbnailUrl", fit: "fit" }, outputs: { placeholderShown: "placeholderShown" }, viewQueries: [{ propertyName: "imgElement", first: true, predicate: ["imageElement"], descendants: true }, { propertyName: "containerElement", first: true, predicate: ["containerElement"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n #containerElement\n class=\"h-full w-full relative shrink-0 overflow-hidden flex items-center justify-center\"\n [ngClass]=\"isPlaceholder ? 'bg-gray-100' : 'bg-white'\"\n [attr.data-cy-is-placeholder]=\"isPlaceholder.toString()\"\n>\n <img\n #imageElement\n class=\"relative w-full object-center\"\n [ngClass]=\"imgFit === 'contain' ? 'h-4/5 w-4/5' : 'h-full'\"\n [ngStyle]=\"{ objectFit: imgFit }\"\n alt=\"thumbnail\"\n loading=\"lazy\"\n (load)=\"setObjectFit()\"\n [src]=\"imgUrl\"\n (error)=\"useFallback()\"\n />\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
71
74
  }
72
75
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ThumbnailComponent, decorators: [{
73
76
  type: Component,
74
- args: [{ selector: 'gn-ui-thumbnail', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n #containerElement\n class=\"h-full w-full relative shrink-0 overflow-hidden flex items-center\"\n [ngClass]=\"isPlaceholder ? 'bg-gray-100' : 'bg-white'\"\n [attr.data-cy-is-placeholder]=\"isPlaceholder.toString()\"\n>\n <img\n #imageElement\n class=\"relative w-full object-center\"\n [ngClass]=\"imgFit === 'contain' ? 'h-4/5' : 'h-full'\"\n [ngStyle]=\"{ objectFit: imgFit }\"\n alt=\"thumbnail\"\n loading=\"lazy\"\n (load)=\"setObjectFit()\"\n [src]=\"imgUrl\"\n (error)=\"useFallback()\"\n />\n</div>\n" }]
77
+ args: [{ selector: 'gn-ui-thumbnail', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<div\n #containerElement\n class=\"h-full w-full relative shrink-0 overflow-hidden flex items-center justify-center\"\n [ngClass]=\"isPlaceholder ? 'bg-gray-100' : 'bg-white'\"\n [attr.data-cy-is-placeholder]=\"isPlaceholder.toString()\"\n>\n <img\n #imageElement\n class=\"relative w-full object-center\"\n [ngClass]=\"imgFit === 'contain' ? 'h-4/5 w-4/5' : 'h-full'\"\n [ngStyle]=\"{ objectFit: imgFit }\"\n alt=\"thumbnail\"\n loading=\"lazy\"\n (load)=\"setObjectFit()\"\n [src]=\"imgUrl\"\n (error)=\"useFallback()\"\n />\n</div>\n" }]
75
78
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
76
79
  type: Optional
77
80
  }, {
@@ -87,5 +90,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
87
90
  }], containerElement: [{
88
91
  type: ViewChild,
89
92
  args: ['containerElement']
93
+ }], placeholderShown: [{
94
+ type: Output
90
95
  }] } });
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGh1bWJuYWlsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi90aHVtYm5haWwvdGh1bWJuYWlsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi90aHVtYm5haWwvdGh1bWJuYWlsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sY0FBYyxFQUNkLEtBQUssRUFHTCxRQUFRLEVBRVIsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBOzs7QUFFdEIsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxjQUFjLENBQ3JELHVCQUF1QixDQUN4QixDQUFBO0FBT0QsTUFBTSxtQkFBbUIsR0FDdkIsNHlDQUE0eUMsQ0FBQTtBQVM5eUMsTUFBTSxPQUFPLGtCQUFrQjtJQVE3QixJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLGNBQWMsQ0FBQTtJQUM1QyxDQUFDO0lBR0QsWUFHVSxzQkFBOEI7UUFBOUIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUFRO1FBZC9CLFFBQUcsR0FBOEIsT0FBTyxDQUFBO1FBS2pELG1CQUFjLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixJQUFJLG1CQUFtQixDQUFBO1FBSTNELFdBQU0sR0FBMkIsRUFBRSxDQUFBO0lBTXhDLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFBO0lBQ3hCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLENBQUMsY0FBYyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLEVB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TSxnQkFBZ0I7c0JBQTlDLFNBQVM7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5qZWN0LFxuICBJbmplY3Rpb25Ub2tlbixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuXG5leHBvcnQgY29uc3QgVEhVTUJOQUlMX1BMQUNFSE9MREVSID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oXG4gICd0aHVtYm5haWwtcGxhY2Vob2xkZXInXG4pXG5cbnR5cGUgVGh1bWJuYWlsSW1hZ2VPYmplY3QgPSB7XG4gIHVybDogc3RyaW5nXG4gIGZpdD86ICdjb3ZlcicgfCAnY29udGFpbicgfCAnc2NhbGUtZG93bidcbn1cblxuY29uc3QgREVGQVVMVF9QTEFDRUhPTERFUiA9XG4gICdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUdBQUFBQmdDQVlBQUFEaW1IYzRBQUFBQm1KTFIwUUEvd0QvQVArZ3ZhZVRBQUFBQ1hCSVdYTUFBQTNYQUFBTjF3RkNLSnQ0QUFBQUIzUkpUVVVINWdrTkRDVUZZakExbndBQUExcEpSRUZVZU5ydG5XMlRtakFVUmg4Q0xsVGRybXVuLy8vM3RaMjIrekx1WWxlaEg3anNNR29nd1JpaWVjNE1NNDRLNkQzeDNoQXdBSVFRUWdnaGhKRFlTTTVjUHdOUUFNZ0JwQUNVZzIyR1RnMmdBckFEOEE5QUtZKzlDc2dBTEFGOFlSc0dBTHdEZUFXdzl5R2dBTENLb0tXUCtXVThpd3hqVXN1ZExCajgzc1pjaUlpUFN3aG9XejdwSjVkVVpGUVhsRVhPWi9ETmVUQnQzSm5oQnBjOWFhY0dzT24wQnVvSVVrM2IrNXRyR25FQzRCN0FrNHNVbEluUlUrd0IvSmJnVnhHMThLclRCYzAxRW1ZbWNURkpRVVZQeS85elRoLzRCdGhMRE9xZWVuQjJEZEJ0WkJONThMc1NOcGNVb0V0VEpXTS9HSXZNaFFEZGU5ajZoMk9oWEFqbzYvMlEvbGdrTGdTUUMwSUJGRUFCWkVLeWlhUXY1QUF2N2ZTbFMrbFBWeFJ3T1hUbkV0b1RQQXMwNHlmUkhHTW96OEYvSE9pYUpmS2VnZ0xjNzhkbU9Ic1ZTMzN5OVNVWHNEdUxsc2c2Rk9Bdy9maFlod0kwcEo3V29RQVNwb0M5cDNVb1FFUHBhUjBLMExDQjNmQjFlNktmQWh4UndlQUtnUTVQc1F4SitDekNKWUMvQTcrRVd0NFR6VkNFNzdHZ0VzQlBIQS9HN1FCc3djRTRiK25vVlJaMlF4a0NDcUFBUWdFVVFDaUFBZ2dGVUFDaEFBb2dGRUFCaEFKY2ZUOUZBZE94UXVCL01MOWxBZmRvL3FXWXkyTUs4RWlPNW1ycmxpVUN2ZEl1ZEFFeldXelF6V3V4d2pSbkFLOVd3QXpBV2haVENlM2w3Y3J5TlFyUUJML3R4WmhLR0dybHdjMzZvZ0lQZnZkemZodVFzRERNODBFVlpYVUZ3ZSttRUoyRU93QmZMZllUVEZGV1Z4TDhRd2wzbmVkU3llMWpqaEV5Q2pBUGZsZkNXaVNjVTFpREtNcnF5b0ovS09GeFJEZjFzQ2cveEN4Z1RQQzdFbklIbjZHWXNpaXJLdzIrYXlZcnlvckJuN1lvS3diL3FDZ250eXdnMU9CUGRxU3NHUHlUUlhucDA3Z3ZQZ0Q4QUFsNktJSUNDQVZRQUFsTHdPZzVNU05pOU55cUpnS3FBSHBRb1pOWnhzNUtnRzdTRE43QVp6Z1dPeGNDdHBybjUvd1ZmTGIrdVdYc3JBU1VQWGx2SGJtRVRHS1FqQlZnTWl0VkpUdWFhUVMydC9Hb0VNZUUzb25Fb3IyamxLNFJ2d040RzF1OVQ0bjZ6cDZQTVRXQVh6Q1lkQ3ExMk9DT2hkZVlaelQzbUlFckFXMUZyK0htTk9BdDgyS1Nlc1lJQUpvUnpSMmFJVnVtbytNczhXd1QvSE9PWmxNMFkrWnp4djJ6cC9nQ1R6ZnpQT3lHdGRmZ3A3TEVjRHZidlN4YldYZy9IVUlJSVlRUVFvZ3gvd0hMb1g3Tm9DTUZQd0FBQUFCSlJVNUVya0pnZ2c9PSdcblxudHlwZSBGaXRPcHRpb25zID0gJ2NvdmVyJyB8ICdjb250YWluJyB8ICdzY2FsZS1kb3duJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS10aHVtYm5haWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGh1bWJuYWlsLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFRodW1ibmFpbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgdGh1bWJuYWlsVXJsOiBzdHJpbmcgfCBzdHJpbmdbXVxuICBASW5wdXQoKSBmaXQ6IEZpdE9wdGlvbnMgfCBGaXRPcHRpb25zW10gPSAnY292ZXInXG4gIEBWaWV3Q2hpbGQoJ2ltYWdlRWxlbWVudCcpIGltZ0VsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEltYWdlRWxlbWVudD5cbiAgQFZpZXdDaGlsZCgnY29udGFpbmVyRWxlbWVudCcpIGNvbnRhaW5lckVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+XG4gIGltZ1VybDogc3RyaW5nXG4gIGltZ0ZpdDogRml0T3B0aW9uc1xuICBwbGFjZWhvbGRlclVybCA9IHRoaXMub3B0aW9uYWxQbGFjZWhvbGRlclVybCB8fCBERUZBVUxUX1BMQUNFSE9MREVSXG4gIGdldCBpc1BsYWNlaG9sZGVyKCkge1xuICAgIHJldHVybiB0aGlzLmltZ1VybCA9PT0gdGhpcy5wbGFjZWhvbGRlclVybFxuICB9XG4gIHByaXZhdGUgaW1hZ2VzOiBUaHVtYm5haWxJbWFnZU9iamVjdFtdID0gW11cblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoVEhVTUJOQUlMX1BMQUNFSE9MREVSKVxuICAgIHByaXZhdGUgb3B0aW9uYWxQbGFjZWhvbGRlclVybDogc3RyaW5nXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnVwZGF0ZUltYWdlTGlzdCgpXG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKCEoJ3RodW1ibmFpbFVybCcgaW4gY2hhbmdlcykgJiYgISgnZml0JyBpbiBjaGFuZ2VzKSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIHRoaXMudXBkYXRlSW1hZ2VMaXN0KClcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlSW1hZ2VMaXN0KCkge1xuICAgIGlmICghdGhpcy50aHVtYm5haWxVcmwpIHtcbiAgICAgIHRoaXMuc2V0UGxhY2Vob2xkZXIoKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGNvbnN0IHVybHMgPSBBcnJheS5pc0FycmF5KHRoaXMudGh1bWJuYWlsVXJsKVxuICAgICAgPyB0aGlzLnRodW1ibmFpbFVybFxuICAgICAgOiBbdGhpcy50aHVtYm5haWxVcmxdXG4gICAgdGhpcy5pbWFnZXMgPSB1cmxzXG4gICAgICAubWFwKCh1cmwsIGluZGV4KSA9PiAoe1xuICAgICAgICB1cmwsXG4gICAgICAgIGZpdDogKEFycmF5LmlzQXJyYXkodGhpcy5maXQpID8gdGhpcy5maXRbaW5kZXhdIDogdGhpcy5maXQpIHx8ICdjb3ZlcicsXG4gICAgICB9KSlcbiAgICAgIC5maWx0ZXIoKGltZykgPT4gISFpbWcudXJsKVxuICAgIGlmICghdGhpcy5pbWFnZXMubGVuZ3RoKSB7XG4gICAgICB0aGlzLnNldFBsYWNlaG9sZGVyKClcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0aGlzLnNldE5ld1NyY0ltYWdlKHRoaXMuaW1hZ2VzWzBdKVxuICB9XG5cbiAgcHJpdmF0ZSBzZXROZXdTcmNJbWFnZShpbWFnZTogVGh1bWJuYWlsSW1hZ2VPYmplY3QpIHtcbiAgICB0aGlzLmltZ0ZpdCA9IGltYWdlLmZpdFxuICAgIHRoaXMuaW1nVXJsID0gaW1hZ2UudXJsXG4gIH1cblxuICBwcml2YXRlIHNldFBsYWNlaG9sZGVyKCk6IHZvaWQge1xuICAgIHRoaXMuc2V0TmV3U3JjSW1hZ2UoeyB1cmw6IHRoaXMucGxhY2Vob2xkZXJVcmwsIGZpdDogJ3NjYWxlLWRvd24nIH0pXG4gIH1cblxuICB1c2VGYWxsYmFjaygpIHtcbiAgICBpZiAodGhpcy5pbWFnZXMubGVuZ3RoID4gMSkge1xuICAgICAgdGhpcy5pbWFnZXMuc2hpZnQoKVxuICAgICAgdGhpcy5zZXROZXdTcmNJbWFnZSh0aGlzLmltYWdlc1swXSlcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZXRQbGFjZWhvbGRlcigpXG4gICAgfVxuICB9XG5cbiAgc2V0T2JqZWN0Rml0KCkge1xuICAgIGNvbnN0IGN3ID0gdGhpcy5jb250YWluZXJFbGVtZW50Py5uYXRpdmVFbGVtZW50Py5jbGllbnRXaWR0aFxuICAgIGNvbnN0IGNoID0gdGhpcy5jb250YWluZXJFbGVtZW50Py5uYXRpdmVFbGVtZW50Py5jbGllbnRIZWlnaHRcbiAgICBpZiAoXG4gICAgICB0aGlzLmltZ0VsZW1lbnQubmF0aXZlRWxlbWVudC5uYXR1cmFsV2lkdGggPCBjdyAmJlxuICAgICAgdGhpcy5pbWdFbGVtZW50Lm5hdGl2ZUVsZW1lbnQubmF0dXJhbEhlaWdodCA8IGNoXG4gICAgKSB7XG4gICAgICB0aGlzLmltZ0ZpdCA9ICdzY2FsZS1kb3duJ1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICAjY29udGFpbmVyRWxlbWVudFxuICBjbGFzcz1cImgtZnVsbCB3LWZ1bGwgcmVsYXRpdmUgc2hyaW5rLTAgb3ZlcmZsb3ctaGlkZGVuIGZsZXggaXRlbXMtY2VudGVyXCJcbiAgW25nQ2xhc3NdPVwiaXNQbGFjZWhvbGRlciA/ICdiZy1ncmF5LTEwMCcgOiAnYmctd2hpdGUnXCJcbiAgW2F0dHIuZGF0YS1jeS1pcy1wbGFjZWhvbGRlcl09XCJpc1BsYWNlaG9sZGVyLnRvU3RyaW5nKClcIlxuPlxuICA8aW1nXG4gICAgI2ltYWdlRWxlbWVudFxuICAgIGNsYXNzPVwicmVsYXRpdmUgdy1mdWxsIG9iamVjdC1jZW50ZXJcIlxuICAgIFtuZ0NsYXNzXT1cImltZ0ZpdCA9PT0gJ2NvbnRhaW4nID8gJ2gtNC81JyA6ICdoLWZ1bGwnXCJcbiAgICBbbmdTdHlsZV09XCJ7IG9iamVjdEZpdDogaW1nRml0IH1cIlxuICAgIGFsdD1cInRodW1ibmFpbFwiXG4gICAgbG9hZGluZz1cImxhenlcIlxuICAgIChsb2FkKT1cInNldE9iamVjdEZpdCgpXCJcbiAgICBbc3JjXT1cImltZ1VybFwiXG4gICAgKGVycm9yKT1cInVzZUZhbGxiYWNrKClcIlxuICAvPlxuPC9kaXY+XG4iXX0=
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGh1bWJuYWlsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi90aHVtYm5haWwvdGh1bWJuYWlsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi90aHVtYm5haWwvdGh1bWJuYWlsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBR0wsUUFBUSxFQUVSLFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFBOzs7QUFFdEIsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxjQUFjLENBQ3JELHVCQUF1QixDQUN4QixDQUFBO0FBUUQsTUFBTSxtQkFBbUIsR0FDdkIsNHlDQUE0eUMsQ0FBQTtBQVM5eUMsTUFBTSxPQUFPLGtCQUFrQjtJQVM3QixJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLGNBQWMsQ0FBQTtJQUM1QyxDQUFDO0lBR0QsWUFHVSxzQkFBOEI7UUFBOUIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUFRO1FBZi9CLFFBQUcsR0FBOEIsT0FBTyxDQUFBO1FBR3ZDLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUE7UUFHeEQsbUJBQWMsR0FBRyxJQUFJLENBQUMsc0JBQXNCLElBQUksbUJBQW1CLENBQUE7UUFJM0QsV0FBTSxHQUEyQixFQUFFLENBQUE7SUFNeEMsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7SUFDeEIsQ0FB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QkFBa0I7a0JBUDlCLFNBQVM7K0JBQ0UsaUJBQWlCLG1CQUVWLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDOzswQkFpQnBCLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMscUJBQXFCOzRDQWZ0QixZQUFZO3NCQUFwQixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDcUIsVUFBVTtzQkFBcEMsU0FBUzt1QkFBQyxjQUFjO2dCQUNNLGdCQUFnQjtzQkFBOUMsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBQ25CLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdCxcbiAgSW5qZWN0aW9uVG9rZW4sXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdDaGlsZCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmV4cG9ydCBjb25zdCBUSFVNQk5BSUxfUExBQ0VIT0xERVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48c3RyaW5nPihcbiAgJ3RodW1ibmFpbC1wbGFjZWhvbGRlcidcbilcblxudHlwZSBGaXRPcHRpb25zID0gJ2NvdmVyJyB8ICdjb250YWluJyB8ICdzY2FsZS1kb3duJ1xudHlwZSBUaHVtYm5haWxJbWFnZU9iamVjdCA9IHtcbiAgdXJsOiBzdHJpbmdcbiAgZml0PzogRml0T3B0aW9uc1xufVxuXG5jb25zdCBERUZBVUxUX1BMQUNFSE9MREVSID1cbiAgJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBR0FBQUFCZ0NBWUFBQURpbUhjNEFBQUFCbUpMUjBRQS93RC9BUCtndmFlVEFBQUFDWEJJV1hNQUFBM1hBQUFOMXdGQ0tKdDRBQUFBQjNSSlRVVUg1Z2tORENVRllqQTFud0FBQTFwSlJFRlVlTnJ0blcyVG1qQVVSaDhDTGxUZHJtdW4vLy8zdFoyMit6THVZbGVoSDdqc01Hb2d3UmlpZWM0TU00NEs2RDN4M2hBd0FJUVFRZ2doaEpEWVNNNWNQd05RQU1nQnBBQ1VnMjJHVGcyZ0FyQUQ4QTlBS1krOUNzZ0FMQUY4WVJzR0FMd0RlQVd3OXlHZ0FMQ0tvS1dQK1dVOGl3eGpVc3VkTEJqODNzWmNpSWlQU3dob1d6N3BKNWRVWkZRWGxFWE9aL0ROZVRCdDNKbmhCcGM5YWFjR3NPbjBCdW9JVWszYis1dHJHbkVDNEI3QWs0c1VsSW5SVSt3Qi9KYmdWeEcxOEtyVEJjMDFFbVltY1RGSlFVVlB5Lzl6VGgvNEJ0aExET3FlZW5CMkRkQnRaQk41OExzU05wY1VvRXRUSldNL0dJdk1oUURkZTlqNmgyT2hYQWpvNi8yUS9sZ2tMZ1NRQzBJQkZFQUJaRUt5aWFRdjVBQXY3ZlNsUytsUFZ4UndPWFRuRXRvVFBBczA0eWZSSEdNb3o4Ri9IT2lhSmZLZWdnTGM3OGRtT0hzVlMzM3k5U1VYc0R1TGxzZzZGT0F3L2ZoWWh3STBwSjdXb1FBU3BvQzlwM1VvUUVQcGFSMEswTENCM2ZCMWU2S2ZBaHhSd2VBS2dRNVBzUXhKK0N6Q0pZQy9BNytFV3Q0VHpWQ0U3N0dnRXNCUEhBL0c3UUJzd2NFNGIrbm9WUloyUXhrQ0NxQUFRZ0VVUUNpQUFnZ0ZVQUNoQUFvZ0ZFQUJoQUpjZlQ5RkFkT3hRdUIvTUw5bEFmZG8vcVdZeTJNSzhFaU81bXJybGlVQ3ZkSXVkQUV6V1d6UXpXdXh3alJuQUs5V3dBekFXaFpUQ2UzbDdjcnlOUXJRQkwvdHhaaEtHR3Jsd2MzNm9nSVBmdmR6Zmh1UXNERE04MEVWWlhVRndlK21FSjJFT3dCZkxmWVRURkZXVnhMOFF3bDNuZWRTeWUxampoRXlDakFQZmxmQ1dpU2NVMWlES01ycXlvSi9LT0Z4UkRmMXNDZy94Q3hnVFBDN0VuSUhuNkdZc2lpckt3MitheVlyeW9yQm43WW9Ld2IvcUNnbnR5d2cxT0JQZHFTc0dQeVRSWG5wMDdndlBnRDhBQWw2S0lJQ0NBVlFBQWxMd09nNU1TTmk5TnlxSmdLcUFIcFFvWk5aeHM1S2dHN1NETjdBWnpnV094Y0N0cHJuNS93VmZMYit1V1hzckFTVVBYbHZIYm1FVEdLUWpCVmdNaXRWSlR1YWFRUzJ0L0dvRU1lRTNvbkVvcjJqbEs0UnZ3TjRHMXU5VDRuNnpwNlBNVFdBWHpDWWRDcTEyT0NPaGRlWVp6VDNtSUVyQVcxRnIrSG1OT0F0ODJLU2VzWUlBSm9SelIyYUlWdW1vK01zOFd3VC9IT09abE0wWStaenh2MnpwL2dDVHpmelBPeUd0ZGZncDdMRWNEdmJ2U3hiV1hnL0hVSUlJWVFRUW9neC93SExvWDdOb0NNRlB3QUFBQUJKUlU1RXJrSmdnZz09J1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS10aHVtYm5haWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGh1bWJuYWlsLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBUaHVtYm5haWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHRodW1ibmFpbFVybDogc3RyaW5nIHwgc3RyaW5nW11cbiAgQElucHV0KCkgZml0OiBGaXRPcHRpb25zIHwgRml0T3B0aW9uc1tdID0gJ2NvdmVyJ1xuICBAVmlld0NoaWxkKCdpbWFnZUVsZW1lbnQnKSBpbWdFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxJbWFnZUVsZW1lbnQ+XG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lckVsZW1lbnQnKSBjb250YWluZXJFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PlxuICBAT3V0cHV0KCkgcGxhY2Vob2xkZXJTaG93biA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKVxuICBpbWdVcmw6IHN0cmluZ1xuICBpbWdGaXQ6IEZpdE9wdGlvbnNcbiAgcGxhY2Vob2xkZXJVcmwgPSB0aGlzLm9wdGlvbmFsUGxhY2Vob2xkZXJVcmwgfHwgREVGQVVMVF9QTEFDRUhPTERFUlxuICBnZXQgaXNQbGFjZWhvbGRlcigpIHtcbiAgICByZXR1cm4gdGhpcy5pbWdVcmwgPT09IHRoaXMucGxhY2Vob2xkZXJVcmxcbiAgfVxuICBwcml2YXRlIGltYWdlczogVGh1bWJuYWlsSW1hZ2VPYmplY3RbXSA9IFtdXG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KFRIVU1CTkFJTF9QTEFDRUhPTERFUilcbiAgICBwcml2YXRlIG9wdGlvbmFsUGxhY2Vob2xkZXJVcmw6IHN0cmluZ1xuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy51cGRhdGVJbWFnZUxpc3QoKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmICghKCd0aHVtYm5haWxVcmwnIGluIGNoYW5nZXMpICYmICEoJ2ZpdCcgaW4gY2hhbmdlcykpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0aGlzLnVwZGF0ZUltYWdlTGlzdCgpXG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUltYWdlTGlzdCgpIHtcbiAgICBpZiAoIXRoaXMudGh1bWJuYWlsVXJsKSB7XG4gICAgICB0aGlzLnNldFBsYWNlaG9sZGVyKClcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBjb25zdCB1cmxzID0gQXJyYXkuaXNBcnJheSh0aGlzLnRodW1ibmFpbFVybClcbiAgICAgID8gdGhpcy50aHVtYm5haWxVcmxcbiAgICAgIDogW3RoaXMudGh1bWJuYWlsVXJsXVxuICAgIHRoaXMuaW1hZ2VzID0gdXJsc1xuICAgICAgLm1hcCgodXJsLCBpbmRleCkgPT4gKHtcbiAgICAgICAgdXJsLFxuICAgICAgICBmaXQ6IChBcnJheS5pc0FycmF5KHRoaXMuZml0KSA/IHRoaXMuZml0W2luZGV4XSA6IHRoaXMuZml0KSB8fCAnY292ZXInLFxuICAgICAgfSkpXG4gICAgICAuZmlsdGVyKChpbWcpID0+ICEhaW1nLnVybClcbiAgICBpZiAoIXRoaXMuaW1hZ2VzLmxlbmd0aCkge1xuICAgICAgdGhpcy5zZXRQbGFjZWhvbGRlcigpXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgdGhpcy5zZXROZXdTcmNJbWFnZSh0aGlzLmltYWdlc1swXSlcbiAgfVxuXG4gIHByaXZhdGUgc2V0TmV3U3JjSW1hZ2UoaW1hZ2U6IFRodW1ibmFpbEltYWdlT2JqZWN0KSB7XG4gICAgdGhpcy5pbWdGaXQgPSBpbWFnZS5maXRcbiAgICB0aGlzLmltZ1VybCA9IGltYWdlLnVybFxuICAgIHRoaXMucGxhY2Vob2xkZXJTaG93bi5lbWl0KHRoaXMuaXNQbGFjZWhvbGRlcilcbiAgfVxuXG4gIHByaXZhdGUgc2V0UGxhY2Vob2xkZXIoKTogdm9pZCB7XG4gICAgdGhpcy5zZXROZXdTcmNJbWFnZSh7IHVybDogdGhpcy5wbGFjZWhvbGRlclVybCwgZml0OiAnc2NhbGUtZG93bicgfSlcbiAgfVxuXG4gIHVzZUZhbGxiYWNrKCkge1xuICAgIGlmICh0aGlzLmltYWdlcy5sZW5ndGggPiAxKSB7XG4gICAgICB0aGlzLmltYWdlcy5zaGlmdCgpXG4gICAgICB0aGlzLnNldE5ld1NyY0ltYWdlKHRoaXMuaW1hZ2VzWzBdKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNldFBsYWNlaG9sZGVyKClcbiAgICB9XG4gIH1cblxuICBzZXRPYmplY3RGaXQoKSB7XG4gICAgY29uc3QgY3cgPSB0aGlzLmNvbnRhaW5lckVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQ/LmNsaWVudFdpZHRoXG4gICAgY29uc3QgY2ggPSB0aGlzLmNvbnRhaW5lckVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQ/LmNsaWVudEhlaWdodFxuICAgIGlmIChcbiAgICAgIHRoaXMuaW1nRWxlbWVudC5uYXRpdmVFbGVtZW50Lm5hdHVyYWxXaWR0aCA8IGN3ICYmXG4gICAgICB0aGlzLmltZ0VsZW1lbnQubmF0aXZlRWxlbWVudC5uYXR1cmFsSGVpZ2h0IDwgY2hcbiAgICApIHtcbiAgICAgIHRoaXMuaW1nRml0ID0gJ3NjYWxlLWRvd24nXG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gICNjb250YWluZXJFbGVtZW50XG4gIGNsYXNzPVwiaC1mdWxsIHctZnVsbCByZWxhdGl2ZSBzaHJpbmstMCBvdmVyZmxvdy1oaWRkZW4gZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXJcIlxuICBbbmdDbGFzc109XCJpc1BsYWNlaG9sZGVyID8gJ2JnLWdyYXktMTAwJyA6ICdiZy13aGl0ZSdcIlxuICBbYXR0ci5kYXRhLWN5LWlzLXBsYWNlaG9sZGVyXT1cImlzUGxhY2Vob2xkZXIudG9TdHJpbmcoKVwiXG4+XG4gIDxpbWdcbiAgICAjaW1hZ2VFbGVtZW50XG4gICAgY2xhc3M9XCJyZWxhdGl2ZSB3LWZ1bGwgb2JqZWN0LWNlbnRlclwiXG4gICAgW25nQ2xhc3NdPVwiaW1nRml0ID09PSAnY29udGFpbicgPyAnaC00LzUgdy00LzUnIDogJ2gtZnVsbCdcIlxuICAgIFtuZ1N0eWxlXT1cInsgb2JqZWN0Rml0OiBpbWdGaXQgfVwiXG4gICAgYWx0PVwidGh1bWJuYWlsXCJcbiAgICBsb2FkaW5nPVwibGF6eVwiXG4gICAgKGxvYWQpPVwic2V0T2JqZWN0Rml0KClcIlxuICAgIFtzcmNdPVwiaW1nVXJsXCJcbiAgICAoZXJyb3IpPVwidXNlRmFsbGJhY2soKVwiXG4gIC8+XG48L2Rpdj5cbiJdfQ==
@@ -29,6 +29,8 @@ import { GnUiLinkifyDirective } from './metadata-info/linkify.directive';
29
29
  import { PaginationButtonsComponent } from './pagination-buttons/pagination-buttons.component';
30
30
  import { MaxLinesComponent } from './max-lines/max-lines.component';
31
31
  import { RecordApiFormComponent } from './record-api-form/record-api-form.component';
32
+ import { MarkdownParserComponent } from './markdown-parser/markdown-parser.component';
33
+ import { ImageOverlayPreviewComponent } from './image-overlay-preview/image-overlay-preview.component';
32
34
  import * as i0 from "@angular/core";
33
35
  import * as i1 from "@ngx-translate/core";
34
36
  export class UiElementsModule {
@@ -46,13 +48,13 @@ export class UiElementsModule {
46
48
  MetadataQualityItemComponent,
47
49
  SearchResultsErrorComponent,
48
50
  PaginationComponent,
49
- ThumbnailComponent,
50
51
  AvatarComponent,
51
52
  UserPreviewComponent,
52
53
  GnUiLinkifyDirective,
53
54
  PaginationButtonsComponent,
54
55
  MaxLinesComponent,
55
- RecordApiFormComponent], imports: [CommonModule,
56
+ RecordApiFormComponent,
57
+ ImageOverlayPreviewComponent], imports: [CommonModule,
56
58
  MatIconModule,
57
59
  MatTooltipModule,
58
60
  UiWidgetsModule,
@@ -60,7 +62,9 @@ export class UiElementsModule {
60
62
  RouterModule,
61
63
  UiInputsModule,
62
64
  FormsModule,
63
- NgOptimizedImage], exports: [MetadataInfoComponent,
65
+ NgOptimizedImage,
66
+ MarkdownParserComponent,
67
+ ThumbnailComponent], exports: [MetadataInfoComponent,
64
68
  ContentGhostComponent,
65
69
  DownloadItemComponent,
66
70
  DownloadsListComponent,
@@ -77,7 +81,10 @@ export class UiElementsModule {
77
81
  AvatarComponent,
78
82
  UserPreviewComponent,
79
83
  PaginationButtonsComponent,
80
- RecordApiFormComponent] }); }
84
+ MaxLinesComponent,
85
+ RecordApiFormComponent,
86
+ MarkdownParserComponent,
87
+ ImageOverlayPreviewComponent] }); }
81
88
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: UiElementsModule, imports: [CommonModule,
82
89
  MatIconModule,
83
90
  MatTooltipModule,
@@ -87,7 +94,8 @@ export class UiElementsModule {
87
94
  UtilSharedModule,
88
95
  RouterModule,
89
96
  UiInputsModule,
90
- FormsModule] }); }
97
+ FormsModule,
98
+ ThumbnailComponent] }); }
91
99
  }
92
100
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: UiElementsModule, decorators: [{
93
101
  type: NgModule,
@@ -104,6 +112,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
104
112
  UiInputsModule,
105
113
  FormsModule,
106
114
  NgOptimizedImage,
115
+ MarkdownParserComponent,
116
+ ThumbnailComponent,
107
117
  ],
108
118
  declarations: [
109
119
  MetadataInfoComponent,
@@ -119,13 +129,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
119
129
  MetadataQualityItemComponent,
120
130
  SearchResultsErrorComponent,
121
131
  PaginationComponent,
122
- ThumbnailComponent,
123
132
  AvatarComponent,
124
133
  UserPreviewComponent,
125
134
  GnUiLinkifyDirective,
126
135
  PaginationButtonsComponent,
127
136
  MaxLinesComponent,
128
137
  RecordApiFormComponent,
138
+ ImageOverlayPreviewComponent,
129
139
  ],
130
140
  exports: [
131
141
  MetadataInfoComponent,
@@ -145,8 +155,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
145
155
  AvatarComponent,
146
156
  UserPreviewComponent,
147
157
  PaginationButtonsComponent,
158
+ MaxLinesComponent,
148
159
  RecordApiFormComponent,
160
+ MarkdownParserComponent,
161
+ ImageOverlayPreviewComponent,
149
162
  ],
150
163
  }]
151
164
  }] });
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZWxlbWVudHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL3VpLWVsZW1lbnRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFBO0FBQ2xGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFBO0FBQ25FLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFBO0FBQ2hHLE9BQU8sRUFBRSx3QkFB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QkFDeEIsNEJBQTRCO3dCQUM1QiwyQkFBMkI7d0JBQzNCLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsb0JBQW9CO3dCQUNwQiwwQkFBMEI7d0JBQzFCLGlCQUFpQjt3QkFDakIsc0JBQXNCO3FCQUN2QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsc0JBQXNCO3dCQUN0QixnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsMEJBQTBCO3dCQUMxQix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4Qiw0QkFBNEI7d0JBQzVCLDJCQUEyQjt3QkFDM0IsbUJBQW1CO3dCQUNuQixrQkFBa0I7d0JBQ2xCLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQiwwQkFBMEI7d0JBQzFCLHNCQUFzQjtxQkFDdkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIE5nT3B0aW1pemVkSW1hZ2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJ1xuaW1wb3J0IHsgVXRpbFNoYXJlZE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHsgTWV0YWRhdGFJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1pbmZvL21ldGFkYXRhLWluZm8uY29tcG9uZW50J1xuaW1wb3J0IHsgQ29udGVudEdob3N0Q29tcG9uZW50IH0gZnJvbSAnLi9jb250ZW50LWdob3N0L2NvbnRlbnQtZ2hvc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgRG93bmxvYWRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9kb3dubG9hZC1pdGVtL2Rvd25sb2FkLWl0ZW0uY29tcG9uZW50J1xuaW1wb3J0IHsgRG93bmxvYWRzTGlzdENvbXBvbmVudCB9IGZyb20gJy4vZG93bmxvYWRzLWxpc3QvZG93bmxvYWRzLWxpc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgQXBpQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vYXBpLWNhcmQvYXBpLWNhcmQuY29tcG9uZW50J1xuaW1wb3J0IHsgVWlXaWRnZXRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS93aWRnZXRzL3NyYydcbmltcG9ydCB7IFVpTGF5b3V0TW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IExpbmtDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9saW5rLWNhcmQvbGluay1jYXJkLmNvbXBvbmVudCdcbmltcG9ydCB7IFJlbGF0ZWRSZWNvcmRDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9yZWxhdGVkLXJlY29yZC1jYXJkL3JlbGF0ZWQtcmVjb3JkLWNhcmQuY29tcG9uZW50J1xuaW1wb3J0IHsgTWV0YWRhdGFDb250YWN0Q29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1jb250YWN0L21ldGFkYXRhLWNvbnRhY3QuY29tcG9uZW50J1xuaW1wb3J0IHsgTWV0YWRhdGFDYXRhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1jYXRhbG9nL21ldGFkYXRhLWNhdGFsb2cuY29tcG9uZW50J1xuaW1wb3J0IHsgTWV0YWRhdGFRdWFsaXR5Q29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1xdWFsaXR5L21ldGFkYXRhLXF1YWxpdHkuY29tcG9uZW50J1xuaW1wb3J0IHsgTWV0YWRhdGFRdWFsaXR5SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vbWV0YWRhdGEtcXVhbGl0eS1pdGVtL21ldGFkYXRhLXF1YWxpdHktaXRlbS5jb21wb25lbnQnXG5pbXBvcnQgeyBTZWFyY2hSZXN1bHRzRXJyb3JDb21wb25lbnQgfSBmcm9tICcuL3NlYXJjaC1yZXN1bHRzLWVycm9yL3NlYXJjaC1yZXN1bHRzLWVycm9yLmNvbXBvbmVudCdcbmltcG9ydCB7IFBhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQnXG5pbXBvcnQgeyBUaHVtYm5haWxDb21wb25lbnQgfSBmcm9tICcuL3RodW1ibmFpbC90aHVtYm5haWwuY29tcG9uZW50J1xuaW1wb3J0IHsgVWlJbnB1dHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgQXZhdGFyQ29tcG9uZW50IH0gZnJvbSAnLi9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudCdcbmltcG9ydCB7IFVzZXJQcmV2aWV3Q29tcG9uZW50IH0gZnJvbSAnLi91c2VyLXByZXZpZXcvdXNlci1wcmV2aWV3LmNvbXBvbmVudCdcbmltcG9ydCB7IEduVWlMaW5raWZ5RGlyZWN0aXZlIH0gZnJvbSAnLi9tZXRhZGF0YS1pbmZvL2xpbmtpZnkuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgUGFnaW5hdGlvbkJ1dHRvbnNDb21wb25lbnQgfSBmcm9tICcuL3BhZ2luYXRpb24tYnV0dG9ucy9wYWdpbmF0aW9uLWJ1dHRvbnMuY29tcG9uZW50J1xuaW1wb3J0IHsgTWF4TGluZXNDb21wb25lbnQgfSBmcm9tICcuL21heC1saW5lcy9tYXgtbGluZXMuY29tcG9uZW50J1xuaW1wb3J0IHsgUmVjb3JkQXBpRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vcmVjb3JkLWFwaS1mb3JtL3JlY29yZC1hcGktZm9ybS5jb21wb25lbnQnXG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIFVpV2lkZ2V0c01vZHVsZSxcbiAgICBVaUxheW91dE1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUuZm9yQ2hpbGQoKSxcbiAgICBVdGlsU2hhcmVkTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBVaUlucHV0c01vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBOZ09wdGltaXplZEltYWdlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBNZXRhZGF0YUluZm9Db21wb25lbnQsXG4gICAgQ29udGVudEdob3N0Q29tcG9uZW50LFxuICAgIERvd25sb2FkSXRlbUNvbXBvbmVudCxcbiAgICBEb3dubG9hZHNMaXN0Q29tcG9uZW50LFxuICAgIEFwaUNhcmRDb21wb25lbnQsXG4gICAgTGlua0NhcmRDb21wb25lbnQsXG4gICAgUmVsYXRlZFJlY29yZENhcmRDb21wb25lbnQsXG4gICAgTWV0YWRhdGFDb250YWN0Q29tcG9uZW50LFxuICAgIE1ldGFkYXRhQ2F0YWxvZ0NvbXBvbmVudCxcbiAgICBNZXRhZGF0YVF1YWxpdHlDb21wb25lbnQsXG4gICAgTWV0YWRhdGFRdWFsaXR5SXRlbUNvbXBvbmVudCxcbiAgICBTZWFyY2hSZXN1bHRzRXJyb3JDb21wb25lbnQsXG4gICAgUGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgICBUaHVtYm5haWxDb21wb25lbnQsXG4gICAgQXZhdGFyQ29tcG9uZW50LFxuICAgIFVzZXJQcmV2aWV3Q29tcG9uZW50LFxuICAgIEduVWlMaW5raWZ5RGlyZWN0aXZlLFxuICAgIFBhZ2luYXRpb25CdXR0b25zQ29tcG9uZW50LFxuICAgIE1heExpbmVzQ29tcG9uZW50LFxuICAgIFJlY29yZEFwaUZvcm1Db21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBNZXRhZGF0YUluZm9Db21wb25lbnQsXG4gICAgQ29udGVudEdob3N0Q29tcG9uZW50LFxuICAgIERvd25sb2FkSXRlbUNvbXBvbmVudCxcbiAgICBEb3dubG9hZHNMaXN0Q29tcG9uZW50LFxuICAgIEFwaUNhcmRDb21wb25lbnQsXG4gICAgTGlua0NhcmRDb21wb25lbnQsXG4gICAgUmVsYXRlZFJlY29yZENhcmRDb21wb25lbnQsXG4gICAgTWV0YWRhdGFDb250YWN0Q29tcG9uZW50LFxuICAgIE1ldGFkYXRhQ2F0YWxvZ0NvbXBvbmVudCxcbiAgICBNZXRhZGF0YVF1YWxpdHlDb21wb25lbnQsXG4gICAgTWV0YWRhdGFRdWFsaXR5SXRlbUNvbXBvbmVudCxcbiAgICBTZWFyY2hSZXN1bHRzRXJyb3JDb21wb25lbnQsXG4gICAgUGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgICBUaHVtYm5haWxDb21wb25lbnQsXG4gICAgQXZhdGFyQ29tcG9uZW50LFxuICAgIFVzZXJQcmV2aWV3Q29tcG9uZW50LFxuICAgIFBhZ2luYXRpb25CdXR0b25zQ29tcG9uZW50LFxuICAgIFJlY29yZEFwaUZvcm1Db21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFVpRWxlbWVudHNNb2R1bGUge31cbiJdfQ==
165
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZWxlbWVudHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL3VpLWVsZW1lbnRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFBO0FBQ2xGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFBO0FBQ25FLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFBO0FBQ2hHLE9BQU8sRUFBRSx3QkFB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QUFnQjt3QkFDaEIsdUJBQXVCO3dCQUN2QixrQkFBa0I7cUJBQ25CO29CQUNELFlBQVksRUFBRTt3QkFDWixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixzQkFBc0I7d0JBQ3RCLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQiwwQkFBMEI7d0JBQzFCLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLDRCQUE0Qjt3QkFDNUIsMkJBQTJCO3dCQUMzQixtQkFBbUI7d0JBQ25CLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixvQkFBb0I7d0JBQ3BCLDBCQUEwQjt3QkFDMUIsaUJBQWlCO3dCQUNqQixzQkFBc0I7d0JBQ3RCLDRCQUE0QjtxQkFDN0I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLHNCQUFzQjt3QkFDdEIsZ0JBQWdCO3dCQUNoQixpQkFBaUI7d0JBQ2pCLDBCQUEwQjt3QkFDMUIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsNEJBQTRCO3dCQUM1QiwyQkFBMkI7d0JBQzNCLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsMEJBQTBCO3dCQUMxQixpQkFBaUI7d0JBQ2pCLHNCQUFzQjt3QkFDdEIsdUJBQXVCO3dCQUN2Qiw0QkFBNEI7cUJBQzdCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBOZ09wdGltaXplZEltYWdlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCdcbmltcG9ydCB7IFV0aWxTaGFyZWRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB7IE1ldGFkYXRhSW5mb0NvbXBvbmVudCB9IGZyb20gJy4vbWV0YWRhdGEtaW5mby9tZXRhZGF0YS1pbmZvLmNvbXBvbmVudCdcbmltcG9ydCB7IENvbnRlbnRHaG9zdENvbXBvbmVudCB9IGZyb20gJy4vY29udGVudC1naG9zdC9jb250ZW50LWdob3N0LmNvbXBvbmVudCdcbmltcG9ydCB7IERvd25sb2FkSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vZG93bmxvYWQtaXRlbS9kb3dubG9hZC1pdGVtLmNvbXBvbmVudCdcbmltcG9ydCB7IERvd25sb2Fkc0xpc3RDb21wb25lbnQgfSBmcm9tICcuL2Rvd25sb2Fkcy1saXN0L2Rvd25sb2Fkcy1saXN0LmNvbXBvbmVudCdcbmltcG9ydCB7IEFwaUNhcmRDb21wb25lbnQgfSBmcm9tICcuL2FwaS1jYXJkL2FwaS1jYXJkLmNvbXBvbmVudCdcbmltcG9ydCB7IFVpV2lkZ2V0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvd2lkZ2V0cy9zcmMnXG5pbXBvcnQgeyBVaUxheW91dE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbGF5b3V0L3NyYydcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBMaW5rQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vbGluay1jYXJkL2xpbmstY2FyZC5jb21wb25lbnQnXG5pbXBvcnQgeyBSZWxhdGVkUmVjb3JkQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vcmVsYXRlZC1yZWNvcmQtY2FyZC9yZWxhdGVkLXJlY29yZC1jYXJkLmNvbXBvbmVudCdcbmltcG9ydCB7IE1ldGFkYXRhQ29udGFjdENvbXBvbmVudCB9IGZyb20gJy4vbWV0YWRhdGEtY29udGFjdC9tZXRhZGF0YS1jb250YWN0LmNvbXBvbmVudCdcbmltcG9ydCB7IE1ldGFkYXRhQ2F0YWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vbWV0YWRhdGEtY2F0YWxvZy9tZXRhZGF0YS1jYXRhbG9nLmNvbXBvbmVudCdcbmltcG9ydCB7IE1ldGFkYXRhUXVhbGl0eUNvbXBvbmVudCB9IGZyb20gJy4vbWV0YWRhdGEtcXVhbGl0eS9tZXRhZGF0YS1xdWFsaXR5LmNvbXBvbmVudCdcbmltcG9ydCB7IE1ldGFkYXRhUXVhbGl0eUl0ZW1Db21wb25lbnQgfSBmcm9tICcuL21ldGFkYXRhLXF1YWxpdHktaXRlbS9tZXRhZGF0YS1xdWFsaXR5LWl0ZW0uY29tcG9uZW50J1xuaW1wb3J0IHsgU2VhcmNoUmVzdWx0c0Vycm9yQ29tcG9uZW50IH0gZnJvbSAnLi9zZWFyY2gtcmVzdWx0cy1lcnJvci9zZWFyY2gtcmVzdWx0cy1lcnJvci5jb21wb25lbnQnXG5pbXBvcnQgeyBQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50J1xuaW1wb3J0IHsgVGh1bWJuYWlsQ29tcG9uZW50IH0gZnJvbSAnLi90aHVtYm5haWwvdGh1bWJuYWlsLmNvbXBvbmVudCdcbmltcG9ydCB7IFVpSW5wdXRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IEF2YXRhckNvbXBvbmVudCB9IGZyb20gJy4vYXZhdGFyL2F2YXRhci5jb21wb25lbnQnXG5pbXBvcnQgeyBVc2VyUHJldmlld0NvbXBvbmVudCB9IGZyb20gJy4vdXNlci1wcmV2aWV3L3VzZXItcHJldmlldy5jb21wb25lbnQnXG5pbXBvcnQgeyBHblVpTGlua2lmeURpcmVjdGl2ZSB9IGZyb20gJy4vbWV0YWRhdGEtaW5mby9saW5raWZ5LmRpcmVjdGl2ZSdcbmltcG9ydCB7IFBhZ2luYXRpb25CdXR0b25zQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdpbmF0aW9uLWJ1dHRvbnMvcGFnaW5hdGlvbi1idXR0b25zLmNvbXBvbmVudCdcbmltcG9ydCB7IE1heExpbmVzQ29tcG9uZW50IH0gZnJvbSAnLi9tYXgtbGluZXMvbWF4LWxpbmVzLmNvbXBvbmVudCdcbmltcG9ydCB7IFJlY29yZEFwaUZvcm1Db21wb25lbnQgfSBmcm9tICcuL3JlY29yZC1hcGktZm9ybS9yZWNvcmQtYXBpLWZvcm0uY29tcG9uZW50J1xuaW1wb3J0IHsgTWFya2Rvd25QYXJzZXJDb21wb25lbnQgfSBmcm9tICcuL21hcmtkb3duLXBhcnNlci9tYXJrZG93bi1wYXJzZXIuY29tcG9uZW50J1xuaW1wb3J0IHsgSW1hZ2VPdmVybGF5UHJldmlld0NvbXBvbmVudCB9IGZyb20gJy4vaW1hZ2Utb3ZlcmxheS1wcmV2aWV3L2ltYWdlLW92ZXJsYXktcHJldmlldy5jb21wb25lbnQnXG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIFVpV2lkZ2V0c01vZHVsZSxcbiAgICBVaUxheW91dE1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUuZm9yQ2hpbGQoKSxcbiAgICBVdGlsU2hhcmVkTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBVaUlucHV0c01vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBOZ09wdGltaXplZEltYWdlLFxuICAgIE1hcmtkb3duUGFyc2VyQ29tcG9uZW50LFxuICAgIFRodW1ibmFpbENvbXBvbmVudCxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgTWV0YWRhdGFJbmZvQ29tcG9uZW50LFxuICAgIENvbnRlbnRHaG9zdENvbXBvbmVudCxcbiAgICBEb3dubG9hZEl0ZW1Db21wb25lbnQsXG4gICAgRG93bmxvYWRzTGlzdENvbXBvbmVudCxcbiAgICBBcGlDYXJkQ29tcG9uZW50LFxuICAgIExpbmtDYXJkQ29tcG9uZW50LFxuICAgIFJlbGF0ZWRSZWNvcmRDYXJkQ29tcG9uZW50LFxuICAgIE1ldGFkYXRhQ29udGFjdENvbXBvbmVudCxcbiAgICBNZXRhZGF0YUNhdGFsb2dDb21wb25lbnQsXG4gICAgTWV0YWRhdGFRdWFsaXR5Q29tcG9uZW50LFxuICAgIE1ldGFkYXRhUXVhbGl0eUl0ZW1Db21wb25lbnQsXG4gICAgU2VhcmNoUmVzdWx0c0Vycm9yQ29tcG9uZW50LFxuICAgIFBhZ2luYXRpb25Db21wb25lbnQsXG4gICAgQXZhdGFyQ29tcG9uZW50LFxuICAgIFVzZXJQcmV2aWV3Q29tcG9uZW50LFxuICAgIEduVWlMaW5raWZ5RGlyZWN0aXZlLFxuICAgIFBhZ2luYXRpb25CdXR0b25zQ29tcG9uZW50LFxuICAgIE1heExpbmVzQ29tcG9uZW50LFxuICAgIFJlY29yZEFwaUZvcm1Db21wb25lbnQsXG4gICAgSW1hZ2VPdmVybGF5UHJldmlld0NvbXBvbmVudCxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIE1ldGFkYXRhSW5mb0NvbXBvbmVudCxcbiAgICBDb250ZW50R2hvc3RDb21wb25lbnQsXG4gICAgRG93bmxvYWRJdGVtQ29tcG9uZW50LFxuICAgIERvd25sb2Fkc0xpc3RDb21wb25lbnQsXG4gICAgQXBpQ2FyZENvbXBvbmVudCxcbiAgICBMaW5rQ2FyZENvbXBvbmVudCxcbiAgICBSZWxhdGVkUmVjb3JkQ2FyZENvbXBvbmVudCxcbiAgICBNZXRhZGF0YUNvbnRhY3RDb21wb25lbnQsXG4gICAgTWV0YWRhdGFDYXRhbG9nQ29tcG9uZW50LFxuICAgIE1ldGFkYXRhUXVhbGl0eUNvbXBvbmVudCxcbiAgICBNZXRhZGF0YVF1YWxpdHlJdGVtQ29tcG9uZW50LFxuICAgIFNlYXJjaFJlc3VsdHNFcnJvckNvbXBvbmVudCxcbiAgICBQYWdpbmF0aW9uQ29tcG9uZW50LFxuICAgIFRodW1ibmFpbENvbXBvbmVudCxcbiAgICBBdmF0YXJDb21wb25lbnQsXG4gICAgVXNlclByZXZpZXdDb21wb25lbnQsXG4gICAgUGFnaW5hdGlvbkJ1dHRvbnNDb21wb25lbnQsXG4gICAgTWF4TGluZXNDb21wb25lbnQsXG4gICAgUmVjb3JkQXBpRm9ybUNvbXBvbmVudCxcbiAgICBNYXJrZG93blBhcnNlckNvbXBvbmVudCxcbiAgICBJbWFnZU92ZXJsYXlQcmV2aWV3Q29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBVaUVsZW1lbnRzTW9kdWxlIHt9XG4iXX0=
@@ -19,4 +19,5 @@ export * from './lib/viewport-intersector/viewport-intersector.component';
19
19
  export * from './lib/checkbox/checkbox.component';
20
20
  export * from './lib/search-input/search-input.component';
21
21
  export * from './lib/date-range-picker/date-range-picker.component';
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxREFBcUQsQ0FBQTtBQUNuRSxjQUFjLGlEQUFpRCxDQUFBO0FBQy9ELGNBQWMsMkRBQTJELENBQUE7QUFDekUsY0FBYyx1REFBdUQsQ0FBQTtBQUNyRSxjQUFjLHVDQUF1QyxDQUFBO0FBQ3JELGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYyxxQ0FBcUMsQ0FBQTtBQUNuRCxjQUFjLDJDQUEyQyxDQUFBO0FBQ3pELGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYywrQkFBK0IsQ0FBQTtBQUM3QyxjQUFjLDJEQUEyRCxDQUFBO0FBQ3pFLGNBQWMsMkNBQTJDLENBQUE7QUFDekQsY0FBYyx3QkFBd0IsQ0FBQTtBQUN0QyxjQUFjLGtCQUFrQixDQUFBO0FBQ2hDLGNBQWMsbURBQW1ELENBQUE7QUFDakUsY0FBYyxtRUFBbUUsQ0FBQTtBQUNqRixjQUFjLHFEQUFxRCxDQUFBO0FBQ25FLGNBQWMsMkRBQTJELENBQUE7QUFDekUsY0FBYyxtQ0FBbUMsQ0FBQTtBQUNqRCxjQUFjLDJDQUEyQyxDQUFBO0FBQ3pELGNBQWMscURBQXFELENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9kcm9wZG93bi1zZWxlY3Rvci9kcm9wZG93bi1zZWxlY3Rvci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kcm9wZG93bi1zZWxlY3Rvci9kcm9wZG93bi1zZWxlY3Rvci5tb2RlbCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Ryb3Bkb3duLW11bHRpc2VsZWN0L2Ryb3Bkb3duLW11bHRpc2VsZWN0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Ryb3Bkb3duLW11bHRpc2VsZWN0L2Ryb3Bkb3duLW11bHRpc2VsZWN0Lm1vZGVsJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGV4dC1pbnB1dC90ZXh0LWlucHV0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NoaXBzLWlucHV0L2NoaXBzLWlucHV0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RleHQtYXJlYS90ZXh0LWFyZWEuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zdGFyLXRvZ2dsZS9zdGFyLXRvZ2dsZS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZpZXdwb3J0LWludGVyc2VjdG9yL3ZpZXdwb3J0LWludGVyc2VjdG9yLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NoZWNrLXRvZ2dsZS9jaGVjay10b2dnbGUuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWktaW5wdXRzLm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Zvcm0tZmllbGQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3B5LXRleHQtYnV0dG9uL2NvcHktdGV4dC1idXR0b24uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJhZy1hbmQtZHJvcC1maWxlLWlucHV0L2RyYWctYW5kLWRyb3AtZmlsZS1pbnB1dC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uYXZpZ2F0aW9uLWJ1dHRvbi9uYXZpZ2F0aW9uLWJ1dHRvbi5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi92aWV3cG9ydC1pbnRlcnNlY3Rvci92aWV3cG9ydC1pbnRlcnNlY3Rvci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZWFyY2gtaW5wdXQvc2VhcmNoLWlucHV0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGUtcmFuZ2UtcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyLmNvbXBvbmVudCdcbiJdfQ==
22
+ export * from './lib/editable-label/editable-label.directive';
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxREFBcUQsQ0FBQTtBQUNuRSxjQUFjLGlEQUFpRCxDQUFBO0FBQy9ELGNBQWMsMkRBQTJELENBQUE7QUFDekUsY0FBYyx1REFBdUQsQ0FBQTtBQUNyRSxjQUFjLHVDQUF1QyxDQUFBO0FBQ3JELGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYyxxQ0FBcUMsQ0FBQTtBQUNuRCxjQUFjLDJDQUEyQyxDQUFBO0FBQ3pELGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYywrQkFBK0IsQ0FBQTtBQUM3QyxjQUFjLDJEQUEyRCxDQUFBO0FBQ3pFLGNBQWMsMkNBQTJDLENBQUE7QUFDekQsY0FBYyx3QkFBd0IsQ0FBQTtBQUN0QyxjQUFjLGtCQUFrQixDQUFBO0FBQ2hDLGNBQWMsbURBQW1ELENBQUE7QUFDakUsY0FBYyxtRUFBbUUsQ0FBQTtBQUNqRixjQUFjLHFEQUFxRCxDQUFBO0FBQ25FLGNBQWMsMkRBQTJELENBQUE7QUFDekUsY0FBYyxtQ0FBbUMsQ0FBQTtBQUNqRCxjQUFjLDJDQUEyQyxDQUFBO0FBQ3pELGNBQWMscURBQXFELENBQUE7QUFDbkUsY0FBYywrQ0FBK0MsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2Ryb3Bkb3duLXNlbGVjdG9yL2Ryb3Bkb3duLXNlbGVjdG9yLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Ryb3Bkb3duLXNlbGVjdG9yL2Ryb3Bkb3duLXNlbGVjdG9yLm1vZGVsJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24tbXVsdGlzZWxlY3QvZHJvcGRvd24tbXVsdGlzZWxlY3QuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24tbXVsdGlzZWxlY3QvZHJvcGRvd24tbXVsdGlzZWxlY3QubW9kZWwnXG5leHBvcnQgKiBmcm9tICcuL2xpYi90ZXh0LWlucHV0L3RleHQtaW5wdXQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hpcHMtaW5wdXQvY2hpcHMtaW5wdXQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGV4dC1hcmVhL3RleHQtYXJlYS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXItdG9nZ2xlL3N0YXItdG9nZ2xlLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2J1dHRvbi9idXR0b24uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmlld3BvcnQtaW50ZXJzZWN0b3Ivdmlld3BvcnQtaW50ZXJzZWN0b3IuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hlY2stdG9nZ2xlL2NoZWNrLXRvZ2dsZS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS1pbnB1dHMubW9kdWxlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZm9ybS1maWVsZCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcHktdGV4dC1idXR0b24vY29weS10ZXh0LWJ1dHRvbi5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kcmFnLWFuZC1kcm9wLWZpbGUtaW5wdXQvZHJhZy1hbmQtZHJvcC1maWxlLWlucHV0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL25hdmlnYXRpb24tYnV0dG9uL25hdmlnYXRpb24tYnV0dG9uLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZpZXdwb3J0LWludGVyc2VjdG9yL3ZpZXdwb3J0LWludGVyc2VjdG9yLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlYXJjaC1pbnB1dC9zZWFyY2gtaW5wdXQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZS1yYW5nZS1waWNrZXIvZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZWRpdGFibGUtbGFiZWwvZWRpdGFibGUtbGFiZWwuZGlyZWN0aXZlJ1xuIl19
@@ -98,11 +98,11 @@ export class AutocompleteComponent {
98
98
  }
99
99
  }
100
100
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AutocompleteComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
101
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: AutocompleteComponent, selector: "gn-ui-autocomplete", inputs: { placeholder: "placeholder", action: "action", value: "value", clearOnSelection: "clearOnSelection", autoFocus: "autoFocus", displayWithFn: "displayWithFn" }, outputs: { itemSelected: "itemSelected", inputSubmitted: "inputSubmitted", inputCleared: "inputCleared" }, viewQueries: [{ propertyName: "triggerRef", first: true, predicate: MatAutocompleteTrigger, descendants: true }, { propertyName: "autocomplete", first: true, predicate: MatAutocomplete, descendants: true }, { propertyName: "inputRef", first: true, predicate: ["searchInput"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"relative\">\n <input\n #searchInput\n type=\"text\"\n class=\"appearance-none focus:outline-white focus:outline-2 focus:outline-dotted focus:outline-offset-2 leading-tight rounded w-full text-black shadow-xl focus:shadow-[0_0_24px_0_rgba(21,40,184,0.09)]\"\n [placeholder]=\"placeholder\"\n [formControl]=\"control\"\n [matAutocomplete]=\"auto\"\n (keyup.enter)=\"handleEnter($event.target.value)\"\n />\n <button\n type=\"button\"\n class=\"text-primary-lightest hover:text-primary hover:bg-gray-50 absolute transition-all duration-100 clear-btn inset-y-0\"\n *ngIf=\"searchInput.value\"\n aria-label=\"Clear\"\n (click)=\"clear()\"\n >\n <mat-icon class=\"material-symbols-outlined\">close</mat-icon>\n </button>\n <button\n type=\"button\"\n class=\"text-primary bg-white hover:text-primary-darkest hover:bg-gray-100 border-gray-300 hover:border-gray-500 absolute transition-all duration-100 search-btn rounded-r inset-y-0 right-0\"\n aria-label=\"Trigger search\"\n (click)=\"handleClickSearch()\"\n >\n <mat-icon class=\"material-symbols-outlined\">search</mat-icon>\n </button>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n class=\"absolute mt-2 w-full top-[100%] left-0\"\n icon=\"error_outline\"\n position=\"top\"\n type=\"warning\"\n >\n <span translate>search.autocomplete.error</span>\n {{ error }}\n </gn-ui-popup-alert>\n</div>\n<mat-autocomplete\n #auto=\"matAutocomplete\"\n (optionSelected)=\"handleSelection($event)\"\n [displayWith]=\"displayWithFn\"\n>\n <mat-option\n *ngFor=\"let suggestion of suggestions$ | async\"\n [value]=\"suggestion\"\n class=\"p-2 suggestion\"\n >\n {{ displayWithFn(suggestion) }}\n </mat-option>\n</mat-autocomplete>\n", styles: [":host{--input-height: 3.5em}.clear-btn{width:var(--input-height);right:var(--input-height);height:100%}.search-btn{width:var(--input-height);height:100%;border-left-width:.1em}mat-icon{width:100%;height:100%;padding:.65em;font-size:1.5em}input{height:var(--input-height);padding:1.05em;padding-right:calc(2 * var(--input-height))}input:placeholder-shown{text-overflow:ellipsis}.mat-mdc-option.suggestion.mat-mdc-option-active{background-color:var(--color-primary-lightest)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i4.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
101
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: AutocompleteComponent, selector: "gn-ui-autocomplete", inputs: { placeholder: "placeholder", action: "action", value: "value", clearOnSelection: "clearOnSelection", autoFocus: "autoFocus", displayWithFn: "displayWithFn" }, outputs: { itemSelected: "itemSelected", inputSubmitted: "inputSubmitted", inputCleared: "inputCleared" }, viewQueries: [{ propertyName: "triggerRef", first: true, predicate: MatAutocompleteTrigger, descendants: true }, { propertyName: "autocomplete", first: true, predicate: MatAutocomplete, descendants: true }, { propertyName: "inputRef", first: true, predicate: ["searchInput"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"relative\">\n <input\n #searchInput\n type=\"text\"\n class=\"appearance-none focus:outline-white focus:outline-2 focus:outline-dotted focus:outline-offset-2 leading-tight rounded w-full text-black shadow-xl focus:shadow-[0_0_24px_0_rgba(21,40,184,0.09)]\"\n [placeholder]=\"placeholder\"\n [formControl]=\"control\"\n [matAutocomplete]=\"auto\"\n (keyup.enter)=\"handleEnter(searchInput.value)\"\n />\n <button\n type=\"button\"\n class=\"text-primary-lightest hover:text-primary hover:bg-gray-50 absolute transition-all duration-100 clear-btn inset-y-0\"\n *ngIf=\"searchInput.value\"\n aria-label=\"Clear\"\n (click)=\"clear()\"\n >\n <mat-icon class=\"material-symbols-outlined\">close</mat-icon>\n </button>\n <button\n type=\"button\"\n class=\"text-primary bg-white hover:text-primary-darkest hover:bg-gray-100 border-gray-300 hover:border-gray-500 absolute transition-all duration-100 search-btn rounded-r inset-y-0 right-0\"\n aria-label=\"Trigger search\"\n (click)=\"handleClickSearch()\"\n >\n <mat-icon class=\"material-symbols-outlined\">search</mat-icon>\n </button>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n class=\"absolute mt-2 w-full top-[100%] left-0\"\n icon=\"error_outline\"\n position=\"top\"\n type=\"warning\"\n >\n <span translate>search.autocomplete.error</span>\n {{ error }}\n </gn-ui-popup-alert>\n</div>\n<mat-autocomplete\n #auto=\"matAutocomplete\"\n (optionSelected)=\"handleSelection($event)\"\n [displayWith]=\"displayWithFn\"\n>\n <mat-option\n *ngFor=\"let suggestion of suggestions$ | async\"\n [value]=\"suggestion\"\n class=\"p-2 suggestion\"\n >\n {{ displayWithFn(suggestion) }}\n </mat-option>\n</mat-autocomplete>\n", styles: [":host{--input-height: 3.5em}.clear-btn{width:var(--input-height);right:var(--input-height);height:100%}.search-btn{width:var(--input-height);height:100%;border-left-width:.1em}mat-icon{width:100%;height:100%;padding:.65em;font-size:1.5em}input{height:var(--input-height);padding:1.05em;padding-right:calc(2 * var(--input-height))}input:placeholder-shown{text-overflow:ellipsis}.mat-mdc-option.suggestion.mat-mdc-option-active{background-color:var(--color-primary-lightest)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i4.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
102
102
  }
103
103
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AutocompleteComponent, decorators: [{
104
104
  type: Component,
105
- args: [{ selector: 'gn-ui-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"relative\">\n <input\n #searchInput\n type=\"text\"\n class=\"appearance-none focus:outline-white focus:outline-2 focus:outline-dotted focus:outline-offset-2 leading-tight rounded w-full text-black shadow-xl focus:shadow-[0_0_24px_0_rgba(21,40,184,0.09)]\"\n [placeholder]=\"placeholder\"\n [formControl]=\"control\"\n [matAutocomplete]=\"auto\"\n (keyup.enter)=\"handleEnter($event.target.value)\"\n />\n <button\n type=\"button\"\n class=\"text-primary-lightest hover:text-primary hover:bg-gray-50 absolute transition-all duration-100 clear-btn inset-y-0\"\n *ngIf=\"searchInput.value\"\n aria-label=\"Clear\"\n (click)=\"clear()\"\n >\n <mat-icon class=\"material-symbols-outlined\">close</mat-icon>\n </button>\n <button\n type=\"button\"\n class=\"text-primary bg-white hover:text-primary-darkest hover:bg-gray-100 border-gray-300 hover:border-gray-500 absolute transition-all duration-100 search-btn rounded-r inset-y-0 right-0\"\n aria-label=\"Trigger search\"\n (click)=\"handleClickSearch()\"\n >\n <mat-icon class=\"material-symbols-outlined\">search</mat-icon>\n </button>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n class=\"absolute mt-2 w-full top-[100%] left-0\"\n icon=\"error_outline\"\n position=\"top\"\n type=\"warning\"\n >\n <span translate>search.autocomplete.error</span>\n {{ error }}\n </gn-ui-popup-alert>\n</div>\n<mat-autocomplete\n #auto=\"matAutocomplete\"\n (optionSelected)=\"handleSelection($event)\"\n [displayWith]=\"displayWithFn\"\n>\n <mat-option\n *ngFor=\"let suggestion of suggestions$ | async\"\n [value]=\"suggestion\"\n class=\"p-2 suggestion\"\n >\n {{ displayWithFn(suggestion) }}\n </mat-option>\n</mat-autocomplete>\n", styles: [":host{--input-height: 3.5em}.clear-btn{width:var(--input-height);right:var(--input-height);height:100%}.search-btn{width:var(--input-height);height:100%;border-left-width:.1em}mat-icon{width:100%;height:100%;padding:.65em;font-size:1.5em}input{height:var(--input-height);padding:1.05em;padding-right:calc(2 * var(--input-height))}input:placeholder-shown{text-overflow:ellipsis}.mat-mdc-option.suggestion.mat-mdc-option-active{background-color:var(--color-primary-lightest)}\n"] }]
105
+ args: [{ selector: 'gn-ui-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"relative\">\n <input\n #searchInput\n type=\"text\"\n class=\"appearance-none focus:outline-white focus:outline-2 focus:outline-dotted focus:outline-offset-2 leading-tight rounded w-full text-black shadow-xl focus:shadow-[0_0_24px_0_rgba(21,40,184,0.09)]\"\n [placeholder]=\"placeholder\"\n [formControl]=\"control\"\n [matAutocomplete]=\"auto\"\n (keyup.enter)=\"handleEnter(searchInput.value)\"\n />\n <button\n type=\"button\"\n class=\"text-primary-lightest hover:text-primary hover:bg-gray-50 absolute transition-all duration-100 clear-btn inset-y-0\"\n *ngIf=\"searchInput.value\"\n aria-label=\"Clear\"\n (click)=\"clear()\"\n >\n <mat-icon class=\"material-symbols-outlined\">close</mat-icon>\n </button>\n <button\n type=\"button\"\n class=\"text-primary bg-white hover:text-primary-darkest hover:bg-gray-100 border-gray-300 hover:border-gray-500 absolute transition-all duration-100 search-btn rounded-r inset-y-0 right-0\"\n aria-label=\"Trigger search\"\n (click)=\"handleClickSearch()\"\n >\n <mat-icon class=\"material-symbols-outlined\">search</mat-icon>\n </button>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n class=\"absolute mt-2 w-full top-[100%] left-0\"\n icon=\"error_outline\"\n position=\"top\"\n type=\"warning\"\n >\n <span translate>search.autocomplete.error</span>\n {{ error }}\n </gn-ui-popup-alert>\n</div>\n<mat-autocomplete\n #auto=\"matAutocomplete\"\n (optionSelected)=\"handleSelection($event)\"\n [displayWith]=\"displayWithFn\"\n>\n <mat-option\n *ngFor=\"let suggestion of suggestions$ | async\"\n [value]=\"suggestion\"\n class=\"p-2 suggestion\"\n >\n {{ displayWithFn(suggestion) }}\n </mat-option>\n</mat-autocomplete>\n", styles: [":host{--input-height: 3.5em}.clear-btn{width:var(--input-height);right:var(--input-height);height:100%}.search-btn{width:var(--input-height);height:100%;border-left-width:.1em}mat-icon{width:100%;height:100%;padding:.65em;font-size:1.5em}input{height:var(--input-height);padding:1.05em;padding-right:calc(2 * var(--input-height))}input:placeholder-shown{text-overflow:ellipsis}.mat-mdc-option.suggestion.mat-mdc-option-active{background-color:var(--color-primary-lightest)}\n"] }]
106
106
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { placeholder: [{
107
107
  type: Input
108
108
  }], action: [{
@@ -131,4 +131,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
131
131
  }], displayWithFn: [{
132
132
  type: Input
133
133
  }] } });
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYy9saWIvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMvbGliL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUlMLE1BQU0sRUFFTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDbkQsT0FBTyxFQUNMLGVBQWUsRUFFZixzQkFBc0IsR0FDdkIsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUN2QyxPQUFPLEVBQUUsS0FBSyxFQUFjLEVBQUUsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ3pFLE9BQU8sRUFDTCxVQUFVLEVBQ1YsWUFBWSxFQUNaLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sUUFBUSxFQUNSLEtBQUssRUFDTCxHQUFHLEVBQ0gsU0FBUyxFQUNULElBQUksRUFDSixHQUFHLEdBQ0osTUFBTSxnQkFBZ0IsQ0FBQTs7Ozs7Ozs7O0FBVXZCLE1BQU0sT0FBTyxxQkFBcUI7SUEwQmhDLFlBQW9CLEtBQXdCO1FBQXhCLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBcEJuQyxxQkFBZ0IsR0FBRyxLQUFLLENBQUE7UUFDeEIsY0FBUyxHQUFHLEtBQUssQ0FBQTtRQUNoQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFvQixDQUFBO1FBQ25ELG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVB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QUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDNEIsVUFBVTtzQkFBNUMsU0FBUzt1QkFBQyxzQkFBc0I7Z0JBQ0wsWUFBWTtzQkFBdkMsU0FBUzt1QkFBQyxlQUFlO2dCQUNBLFFBQVE7c0JBQWpDLFNBQVM7dUJBQUMsYUFBYTtnQkFXZixhQUFhO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQge1xuICBNYXRBdXRvY29tcGxldGUsXG4gIE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQsXG4gIE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSdcbmltcG9ydCB7IG1lcmdlLCBPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcydcbmltcG9ydCB7XG4gIGNhdGNoRXJyb3IsXG4gIGRlYm91bmNlVGltZSxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZpbHRlcixcbiAgZmluYWxpemUsXG4gIGZpcnN0LFxuICBtYXAsXG4gIHN3aXRjaE1hcCxcbiAgdGFrZSxcbiAgdGFwLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuZXhwb3J0IHR5cGUgQXV0b2NvbXBsZXRlSXRlbSA9IHVua25vd25cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktYXV0b2NvbXBsZXRlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2F1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2F1dG9jb21wbGV0ZS5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBBdXRvY29tcGxldGVDb21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzXG57XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmdcbiAgQElucHV0KCkgYWN0aW9uOiAodmFsdWU6IHN0cmluZykgPT4gT2JzZXJ2YWJsZTxBdXRvY29tcGxldGVJdGVtW10+XG4gIEBJbnB1dCgpIHZhbHVlPzogQXV0b2NvbXBsZXRlSXRlbVxuICBASW5wdXQoKSBjbGVhck9uU2VsZWN0aW9uID0gZmFsc2VcbiAgQElucHV0KCkgYXV0b0ZvY3VzID0gZmFsc2VcbiAgQE91dHB1dCgpIGl0ZW1TZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8QXV0b2NvbXBsZXRlSXRlbT4oKVxuICBAT3V0cHV0KCkgaW5wdXRTdWJtaXR0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKVxuICBAT3V0cHV0KCkgaW5wdXRDbGVhcmVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpXG4gIEBWaWV3Q2hpbGQoTWF0QXV0b2NvbXBsZXRlVHJpZ2dlcikgdHJpZ2dlclJlZjogTWF0QXV0b2NvbXBsZXRlVHJpZ2dlclxuICBAVmlld0NoaWxkKE1hdEF1dG9jb21wbGV0ZSkgYXV0b2NvbXBsZXRlOiBNYXRBdXRvY29tcGxldGVcbiAgQFZpZXdDaGlsZCgnc2VhcmNoSW5wdXQnKSBpbnB1dFJlZjogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PlxuXG4gIHNlYXJjaGluZzogYm9vbGVhblxuICBzdWdnZXN0aW9ucyQ6IE9ic2VydmFibGU8QXV0b2NvbXBsZXRlSXRlbVtdPlxuICBjb250cm9sID0gbmV3IFVudHlwZWRGb3JtQ29udHJvbCgpXG4gIHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKVxuICBjYW5jZWxFbnRlciA9IHRydWVcbiAgc2VsZWN0aW9uU3ViamVjdCA9IG5ldyBSZXBsYXlTdWJqZWN0PE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQ+KDEpXG4gIGxhc3RJbnB1dFZhbHVlJCA9IG5ldyBSZXBsYXlTdWJqZWN0PHN0cmluZz4oMSlcbiAgZXJyb3I6IHN0cmluZyB8IG51bGwgPSBudWxsXG5cbiAgQElucHV0KCkgZGlzcGxheVdpdGhGbjogKEF1dG9jb21wbGV0ZUl0ZW0pID0+IHN0cmluZyA9IChpdGVtKSA9PiBpdGVtXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zdCB7IHZhbHVlIH0gPSBjaGFuZ2VzXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBjb25zdCBwcmV2aW91c1RleHRWYWx1ZSA9IHRoaXMuZGlzcGxheVdpdGhGbih2YWx1ZS5wcmV2aW91c1ZhbHVlKVxuICAgICAgY29uc3QgY3VycmVudFRleHRWYWx1ZSA9IHRoaXMuZGlzcGxheVdpdGhGbih2YWx1ZS5jdXJyZW50VmFsdWUpXG4gICAgICBpZiAocHJldmlvdXNUZXh0VmFsdWUgIT09IGN1cnJlbnRUZXh0VmFsdWUpIHtcbiAgICAgICAgdGhpcy51cGRhdGVJbnB1dFZhbHVlKHZhbHVlLmN1cnJlbnRWYWx1ZSlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1Z2dlc3Rpb25zJCA9IG1lcmdlKFxuICAgICAgdGhpcy5jb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICBmaWx0ZXIoKHZhbHVlKSA9PiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSxcbiAgICAgICAgZmlsdGVyKCh2YWx1ZTogc3RyaW5nKSA9PiB2YWx1ZS5sZW5ndGggPiAyKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDQwMCksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIHRhcCgoKSA9PiAodGhpcy5zZWFyY2hpbmcgPSB0cnVlKSlcbiAgICAgICksXG4gICAgICB0aGlzLmNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgIGZpbHRlcigodmFsdWUpID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgdmFsdWUudGl0bGUpLFxuICAgICAgICBtYXAoKGl0ZW0pID0+IGl0ZW0udGl0bGUpXG4gICAgICApXG4gICAgKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCh2YWx1ZSkgPT4gKHZhbHVlID8gdGhpcy5hY3Rpb24odmFsdWUpIDogb2YoW10pKSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5lcnJvciA9IGVycm9yLm1lc3NhZ2VcbiAgICAgICAgcmV0dXJuIG9mKFtdKVxuICAgICAgfSksXG4gICAgICBmaW5hbGl6ZSgoKSA9PiAodGhpcy5zZWFyY2hpbmcgPSBmYWxzZSkpXG4gICAgKVxuXG4gICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLmNvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoYW55KSA9PiB7XG4gICAgICBpZiAoYW55ICE9PSAnJykge1xuICAgICAgICB0aGlzLmNhbmNlbEVudGVyID0gZmFsc2VcbiAgICAgIH1cbiAgICB9KVxuICAgIHRoaXMuY29udHJvbC52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKGZpbHRlcigodmFsdWUpID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpKVxuICAgICAgLnN1YnNjcmliZSh0aGlzLmxhc3RJbnB1dFZhbHVlJClcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmF1dG9jb21wbGV0ZS5vcHRpb25TZWxlY3RlZC5zdWJzY3JpYmUodGhpcy5zZWxlY3Rpb25TdWJqZWN0KVxuICAgIGlmICh0aGlzLmF1dG9Gb2N1cykge1xuICAgICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpXG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKVxuICB9XG5cbiAgdXBkYXRlSW5wdXRWYWx1ZSh2YWx1ZTogQXV0b2NvbXBsZXRlSXRlbSkge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5jb250cm9sLnNldFZhbHVlKHZhbHVlKVxuICAgIH1cbiAgICBpZiAodGhpcy5pbnB1dFJlZikge1xuICAgICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gKHZhbHVlIGFzIGFueSk/LnRpdGxlIHx8ICcnXG4gICAgfVxuICB9XG5cbiAgY2xlYXIoKTogdm9pZCB7XG4gICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gJydcbiAgICB0aGlzLmlucHV0Q2xlYXJlZC5lbWl0KClcbiAgICB0aGlzLnNlbGVjdGlvblN1YmplY3RcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChzZWxlY3Rpb24pID0+IHNlbGVjdGlvbiAmJiBzZWxlY3Rpb24ub3B0aW9uLmRlc2VsZWN0KCkpXG4gICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgICB0aGlzLnRyaWdnZXJSZWYuY2xvc2VQYW5lbCgpXG4gIH1cblxuICBoYW5kbGVFbnRlcihhbnk6IHN0cmluZykge1xuICAgIGlmICghdGhpcy5jYW5jZWxFbnRlcikge1xuICAgICAgdGhpcy5pbnB1dFN1Ym1pdHRlZC5lbWl0KGFueSlcbiAgICAgIHRoaXMudHJpZ2dlclJlZi5jbG9zZVBhbmVsKClcbiAgICB9XG4gIH1cblxuICBoYW5kbGVDbGlja1NlYXJjaCgpIHtcbiAgICB0aGlzLmlucHV0U3VibWl0dGVkLmVtaXQodGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlKVxuICAgIHRoaXMudHJpZ2dlclJlZi5jbG9zZVBhbmVsKClcbiAgfVxuXG4gIGhhbmRsZVNlbGVjdGlvbihldmVudDogTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCkge1xuICAgIHRoaXMuY2FuY2VsRW50ZXIgPSB0cnVlXG4gICAgdGhpcy5pdGVtU2VsZWN0ZWQuZW1pdChldmVudC5vcHRpb24udmFsdWUpXG4gICAgaWYgKHRoaXMuY2xlYXJPblNlbGVjdGlvbikge1xuICAgICAgdGhpcy5sYXN0SW5wdXRWYWx1ZSQucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKGFueSkgPT4ge1xuICAgICAgICB0aGlzLmlucHV0UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSBhbnlcbiAgICAgIH0pXG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIj5cbiAgPGlucHV0XG4gICAgI3NlYXJjaElucHV0XG4gICAgdHlwZT1cInRleHRcIlxuICAgIGNsYXNzPVwiYXBwZWFyYW5jZS1ub25lIGZvY3VzOm91dGxpbmUtd2hpdGUgZm9jdXM6b3V0bGluZS0yIGZvY3VzOm91dGxpbmUtZG90dGVkIGZvY3VzOm91dGxpbmUtb2Zmc2V0LTIgbGVhZGluZy10aWdodCByb3VuZGVkIHctZnVsbCB0ZXh0LWJsYWNrIHNoYWRvdy14bCBmb2N1czpzaGFkb3ctWzBfMF8yNHB4XzBfcmdiYSgyMSw0MCwxODQsMC4wOSldXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIlxuICAgIChrZXl1cC5lbnRlcik9XCJoYW5kbGVFbnRlcigkZXZlbnQudGFyZ2V0LnZhbHVlKVwiXG4gIC8+XG4gIDxidXR0b25cbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBjbGFzcz1cInRleHQtcHJpbWFyeS1saWdodGVzdCBob3Zlcjp0ZXh0LXByaW1hcnkgaG92ZXI6YmctZ3JheS01MCBhYnNvbHV0ZSB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0xMDAgY2xlYXItYnRuIGluc2V0LXktMFwiXG4gICAgKm5nSWY9XCJzZWFyY2hJbnB1dC52YWx1ZVwiXG4gICAgYXJpYS1sYWJlbD1cIkNsZWFyXCJcbiAgICAoY2xpY2spPVwiY2xlYXIoKVwiXG4gID5cbiAgICA8bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+Y2xvc2U8L21hdC1pY29uPlxuICA8L2J1dHRvbj5cbiAgPGJ1dHRvblxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGNsYXNzPVwidGV4dC1wcmltYXJ5IGJnLXdoaXRlIGhvdmVyOnRleHQtcHJpbWFyeS1kYXJrZXN0IGhvdmVyOmJnLWdyYXktMTAwIGJvcmRlci1ncmF5LTMwMCBob3Zlcjpib3JkZXItZ3JheS01MDAgYWJzb2x1dGUgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMTAwIHNlYXJjaC1idG4gcm91bmRlZC1yIGluc2V0LXktMCByaWdodC0wXCJcbiAgICBhcmlhLWxhYmVsPVwiVHJpZ2dlciBzZWFyY2hcIlxuICAgIChjbGljayk9XCJoYW5kbGVDbGlja1NlYXJjaCgpXCJcbiAgPlxuICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWRcIj5zZWFyY2g8L21hdC1pY29uPlxuICA8L2J1dHRvbj5cbiAgPGduLXVpLXBvcHVwLWFsZXJ0XG4gICAgKm5nSWY9XCJlcnJvclwiXG4gICAgY2xhc3M9XCJhYnNvbHV0ZSBtdC0yIHctZnVsbCB0b3AtWzEwMCVdIGxlZnQtMFwiXG4gICAgaWNvbj1cImVycm9yX291dGxpbmVcIlxuICAgIHBvc2l0aW9uPVwidG9wXCJcbiAgICB0eXBlPVwid2FybmluZ1wiXG4gID5cbiAgICA8c3BhbiB0cmFuc2xhdGU+c2VhcmNoLmF1dG9jb21wbGV0ZS5lcnJvcjwvc3Bhbj5cbiAgICB7eyBlcnJvciB9fVxuICA8L2duLXVpLXBvcHVwLWFsZXJ0PlxuPC9kaXY+XG48bWF0LWF1dG9jb21wbGV0ZVxuICAjYXV0bz1cIm1hdEF1dG9jb21wbGV0ZVwiXG4gIChvcHRpb25TZWxlY3RlZCk9XCJoYW5kbGVTZWxlY3Rpb24oJGV2ZW50KVwiXG4gIFtkaXNwbGF5V2l0aF09XCJkaXNwbGF5V2l0aEZuXCJcbj5cbiAgPG1hdC1vcHRpb25cbiAgICAqbmdGb3I9XCJsZXQgc3VnZ2VzdGlvbiBvZiBzdWdnZXN0aW9ucyQgfCBhc3luY1wiXG4gICAgW3ZhbHVlXT1cInN1Z2dlc3Rpb25cIlxuICAgIGNsYXNzPVwicC0yIHN1Z2dlc3Rpb25cIlxuICA+XG4gICAge3sgZGlzcGxheVdpdGhGbihzdWdnZXN0aW9uKSB9fVxuICA8L21hdC1vcHRpb24+XG48L21hdC1hdXRvY29tcGxldGU+XG4iXX0=
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYy9saWIvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMvbGliL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUlMLE1BQU0sRUFFTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDbkQsT0FBTyxFQUNMLGVBQWUsRUFFZixzQkFBc0IsR0FDdkIsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUN2QyxPQUFPLEVBQUUsS0FBSyxFQUFjLEVBQUUsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ3pFLE9BQU8sRUFDTCxVQUFVLEVBQ1YsWUFBWSxFQUNaLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sUUFBUSxFQUNSLEtBQUssRUFDTCxHQUFHLEVBQ0gsU0FBUyxFQUNULElBQUksRUFDSixHQUFHLEdBQ0osTUFBTSxnQkFBZ0IsQ0FBQTs7Ozs7Ozs7O0FBVXZCLE1BQU0sT0FBTyxxQkFBcUI7SUEwQmhDLFlBQW9CLEtBQXdCO1FBQXhCLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBcEJuQyxxQkFBZ0IsR0FBRyxLQUFLLENBQUE7UUFDeEIsY0FBUyxHQUFHLEtBQUssQ0FBQTtRQUNoQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFvQixDQUFBO1FBQ25ELG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVB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QUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDNEIsVUFBVTtzQkFBNUMsU0FBUzt1QkFBQyxzQkFBc0I7Z0JBQ0wsWUFBWTtzQkFBdkMsU0FBUzt1QkFBQyxlQUFlO2dCQUNBLFFBQVE7c0JBQWpDLFNBQVM7dUJBQUMsYUFBYTtnQkFXZixhQUFhO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQge1xuICBNYXRBdXRvY29tcGxldGUsXG4gIE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQsXG4gIE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSdcbmltcG9ydCB7IG1lcmdlLCBPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcydcbmltcG9ydCB7XG4gIGNhdGNoRXJyb3IsXG4gIGRlYm91bmNlVGltZSxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZpbHRlcixcbiAgZmluYWxpemUsXG4gIGZpcnN0LFxuICBtYXAsXG4gIHN3aXRjaE1hcCxcbiAgdGFrZSxcbiAgdGFwLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuZXhwb3J0IHR5cGUgQXV0b2NvbXBsZXRlSXRlbSA9IHVua25vd25cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktYXV0b2NvbXBsZXRlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2F1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2F1dG9jb21wbGV0ZS5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBBdXRvY29tcGxldGVDb21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzXG57XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmdcbiAgQElucHV0KCkgYWN0aW9uOiAodmFsdWU6IHN0cmluZykgPT4gT2JzZXJ2YWJsZTxBdXRvY29tcGxldGVJdGVtW10+XG4gIEBJbnB1dCgpIHZhbHVlPzogQXV0b2NvbXBsZXRlSXRlbVxuICBASW5wdXQoKSBjbGVhck9uU2VsZWN0aW9uID0gZmFsc2VcbiAgQElucHV0KCkgYXV0b0ZvY3VzID0gZmFsc2VcbiAgQE91dHB1dCgpIGl0ZW1TZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8QXV0b2NvbXBsZXRlSXRlbT4oKVxuICBAT3V0cHV0KCkgaW5wdXRTdWJtaXR0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKVxuICBAT3V0cHV0KCkgaW5wdXRDbGVhcmVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpXG4gIEBWaWV3Q2hpbGQoTWF0QXV0b2NvbXBsZXRlVHJpZ2dlcikgdHJpZ2dlclJlZjogTWF0QXV0b2NvbXBsZXRlVHJpZ2dlclxuICBAVmlld0NoaWxkKE1hdEF1dG9jb21wbGV0ZSkgYXV0b2NvbXBsZXRlOiBNYXRBdXRvY29tcGxldGVcbiAgQFZpZXdDaGlsZCgnc2VhcmNoSW5wdXQnKSBpbnB1dFJlZjogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PlxuXG4gIHNlYXJjaGluZzogYm9vbGVhblxuICBzdWdnZXN0aW9ucyQ6IE9ic2VydmFibGU8QXV0b2NvbXBsZXRlSXRlbVtdPlxuICBjb250cm9sID0gbmV3IFVudHlwZWRGb3JtQ29udHJvbCgpXG4gIHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKVxuICBjYW5jZWxFbnRlciA9IHRydWVcbiAgc2VsZWN0aW9uU3ViamVjdCA9IG5ldyBSZXBsYXlTdWJqZWN0PE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQ+KDEpXG4gIGxhc3RJbnB1dFZhbHVlJCA9IG5ldyBSZXBsYXlTdWJqZWN0PHN0cmluZz4oMSlcbiAgZXJyb3I6IHN0cmluZyB8IG51bGwgPSBudWxsXG5cbiAgQElucHV0KCkgZGlzcGxheVdpdGhGbjogKEF1dG9jb21wbGV0ZUl0ZW0pID0+IHN0cmluZyA9IChpdGVtKSA9PiBpdGVtXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zdCB7IHZhbHVlIH0gPSBjaGFuZ2VzXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBjb25zdCBwcmV2aW91c1RleHRWYWx1ZSA9IHRoaXMuZGlzcGxheVdpdGhGbih2YWx1ZS5wcmV2aW91c1ZhbHVlKVxuICAgICAgY29uc3QgY3VycmVudFRleHRWYWx1ZSA9IHRoaXMuZGlzcGxheVdpdGhGbih2YWx1ZS5jdXJyZW50VmFsdWUpXG4gICAgICBpZiAocHJldmlvdXNUZXh0VmFsdWUgIT09IGN1cnJlbnRUZXh0VmFsdWUpIHtcbiAgICAgICAgdGhpcy51cGRhdGVJbnB1dFZhbHVlKHZhbHVlLmN1cnJlbnRWYWx1ZSlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1Z2dlc3Rpb25zJCA9IG1lcmdlKFxuICAgICAgdGhpcy5jb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICBmaWx0ZXIoKHZhbHVlKSA9PiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSxcbiAgICAgICAgZmlsdGVyKCh2YWx1ZTogc3RyaW5nKSA9PiB2YWx1ZS5sZW5ndGggPiAyKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDQwMCksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIHRhcCgoKSA9PiAodGhpcy5zZWFyY2hpbmcgPSB0cnVlKSlcbiAgICAgICksXG4gICAgICB0aGlzLmNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgIGZpbHRlcigodmFsdWUpID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgdmFsdWUudGl0bGUpLFxuICAgICAgICBtYXAoKGl0ZW0pID0+IGl0ZW0udGl0bGUpXG4gICAgICApXG4gICAgKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCh2YWx1ZSkgPT4gKHZhbHVlID8gdGhpcy5hY3Rpb24odmFsdWUpIDogb2YoW10pKSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5lcnJvciA9IGVycm9yLm1lc3NhZ2VcbiAgICAgICAgcmV0dXJuIG9mKFtdKVxuICAgICAgfSksXG4gICAgICBmaW5hbGl6ZSgoKSA9PiAodGhpcy5zZWFyY2hpbmcgPSBmYWxzZSkpXG4gICAgKVxuXG4gICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLmNvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoYW55KSA9PiB7XG4gICAgICBpZiAoYW55ICE9PSAnJykge1xuICAgICAgICB0aGlzLmNhbmNlbEVudGVyID0gZmFsc2VcbiAgICAgIH1cbiAgICB9KVxuICAgIHRoaXMuY29udHJvbC52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKGZpbHRlcigodmFsdWUpID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpKVxuICAgICAgLnN1YnNjcmliZSh0aGlzLmxhc3RJbnB1dFZhbHVlJClcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmF1dG9jb21wbGV0ZS5vcHRpb25TZWxlY3RlZC5zdWJzY3JpYmUodGhpcy5zZWxlY3Rpb25TdWJqZWN0KVxuICAgIGlmICh0aGlzLmF1dG9Gb2N1cykge1xuICAgICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpXG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKVxuICB9XG5cbiAgdXBkYXRlSW5wdXRWYWx1ZSh2YWx1ZTogQXV0b2NvbXBsZXRlSXRlbSkge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5jb250cm9sLnNldFZhbHVlKHZhbHVlKVxuICAgIH1cbiAgICBpZiAodGhpcy5pbnB1dFJlZikge1xuICAgICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gKHZhbHVlIGFzIGFueSk/LnRpdGxlIHx8ICcnXG4gICAgfVxuICB9XG5cbiAgY2xlYXIoKTogdm9pZCB7XG4gICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gJydcbiAgICB0aGlzLmlucHV0Q2xlYXJlZC5lbWl0KClcbiAgICB0aGlzLnNlbGVjdGlvblN1YmplY3RcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChzZWxlY3Rpb24pID0+IHNlbGVjdGlvbiAmJiBzZWxlY3Rpb24ub3B0aW9uLmRlc2VsZWN0KCkpXG4gICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgICB0aGlzLnRyaWdnZXJSZWYuY2xvc2VQYW5lbCgpXG4gIH1cblxuICBoYW5kbGVFbnRlcihhbnk6IHN0cmluZykge1xuICAgIGlmICghdGhpcy5jYW5jZWxFbnRlcikge1xuICAgICAgdGhpcy5pbnB1dFN1Ym1pdHRlZC5lbWl0KGFueSlcbiAgICAgIHRoaXMudHJpZ2dlclJlZi5jbG9zZVBhbmVsKClcbiAgICB9XG4gIH1cblxuICBoYW5kbGVDbGlja1NlYXJjaCgpIHtcbiAgICB0aGlzLmlucHV0U3VibWl0dGVkLmVtaXQodGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlKVxuICAgIHRoaXMudHJpZ2dlclJlZi5jbG9zZVBhbmVsKClcbiAgfVxuXG4gIGhhbmRsZVNlbGVjdGlvbihldmVudDogTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCkge1xuICAgIHRoaXMuY2FuY2VsRW50ZXIgPSB0cnVlXG4gICAgdGhpcy5pdGVtU2VsZWN0ZWQuZW1pdChldmVudC5vcHRpb24udmFsdWUpXG4gICAgaWYgKHRoaXMuY2xlYXJPblNlbGVjdGlvbikge1xuICAgICAgdGhpcy5sYXN0SW5wdXRWYWx1ZSQucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKGFueSkgPT4ge1xuICAgICAgICB0aGlzLmlucHV0UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSBhbnlcbiAgICAgIH0pXG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIj5cbiAgPGlucHV0XG4gICAgI3NlYXJjaElucHV0XG4gICAgdHlwZT1cInRleHRcIlxuICAgIGNsYXNzPVwiYXBwZWFyYW5jZS1ub25lIGZvY3VzOm91dGxpbmUtd2hpdGUgZm9jdXM6b3V0bGluZS0yIGZvY3VzOm91dGxpbmUtZG90dGVkIGZvY3VzOm91dGxpbmUtb2Zmc2V0LTIgbGVhZGluZy10aWdodCByb3VuZGVkIHctZnVsbCB0ZXh0LWJsYWNrIHNoYWRvdy14bCBmb2N1czpzaGFkb3ctWzBfMF8yNHB4XzBfcmdiYSgyMSw0MCwxODQsMC4wOSldXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIlxuICAgIChrZXl1cC5lbnRlcik9XCJoYW5kbGVFbnRlcihzZWFyY2hJbnB1dC52YWx1ZSlcIlxuICAvPlxuICA8YnV0dG9uXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgY2xhc3M9XCJ0ZXh0LXByaW1hcnktbGlnaHRlc3QgaG92ZXI6dGV4dC1wcmltYXJ5IGhvdmVyOmJnLWdyYXktNTAgYWJzb2x1dGUgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMTAwIGNsZWFyLWJ0biBpbnNldC15LTBcIlxuICAgICpuZ0lmPVwic2VhcmNoSW5wdXQudmFsdWVcIlxuICAgIGFyaWEtbGFiZWw9XCJDbGVhclwiXG4gICAgKGNsaWNrKT1cImNsZWFyKClcIlxuICA+XG4gICAgPG1hdC1pY29uIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZFwiPmNsb3NlPC9tYXQtaWNvbj5cbiAgPC9idXR0b24+XG4gIDxidXR0b25cbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBjbGFzcz1cInRleHQtcHJpbWFyeSBiZy13aGl0ZSBob3Zlcjp0ZXh0LXByaW1hcnktZGFya2VzdCBob3ZlcjpiZy1ncmF5LTEwMCBib3JkZXItZ3JheS0zMDAgaG92ZXI6Ym9yZGVyLWdyYXktNTAwIGFic29sdXRlIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTEwMCBzZWFyY2gtYnRuIHJvdW5kZWQtciBpbnNldC15LTAgcmlnaHQtMFwiXG4gICAgYXJpYS1sYWJlbD1cIlRyaWdnZXIgc2VhcmNoXCJcbiAgICAoY2xpY2spPVwiaGFuZGxlQ2xpY2tTZWFyY2goKVwiXG4gID5cbiAgICA8bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+c2VhcmNoPC9tYXQtaWNvbj5cbiAgPC9idXR0b24+XG4gIDxnbi11aS1wb3B1cC1hbGVydFxuICAgICpuZ0lmPVwiZXJyb3JcIlxuICAgIGNsYXNzPVwiYWJzb2x1dGUgbXQtMiB3LWZ1bGwgdG9wLVsxMDAlXSBsZWZ0LTBcIlxuICAgIGljb249XCJlcnJvcl9vdXRsaW5lXCJcbiAgICBwb3NpdGlvbj1cInRvcFwiXG4gICAgdHlwZT1cIndhcm5pbmdcIlxuICA+XG4gICAgPHNwYW4gdHJhbnNsYXRlPnNlYXJjaC5hdXRvY29tcGxldGUuZXJyb3I8L3NwYW4+XG4gICAge3sgZXJyb3IgfX1cbiAgPC9nbi11aS1wb3B1cC1hbGVydD5cbjwvZGl2PlxuPG1hdC1hdXRvY29tcGxldGVcbiAgI2F1dG89XCJtYXRBdXRvY29tcGxldGVcIlxuICAob3B0aW9uU2VsZWN0ZWQpPVwiaGFuZGxlU2VsZWN0aW9uKCRldmVudClcIlxuICBbZGlzcGxheVdpdGhdPVwiZGlzcGxheVdpdGhGblwiXG4+XG4gIDxtYXQtb3B0aW9uXG4gICAgKm5nRm9yPVwibGV0IHN1Z2dlc3Rpb24gb2Ygc3VnZ2VzdGlvbnMkIHwgYXN5bmNcIlxuICAgIFt2YWx1ZV09XCJzdWdnZXN0aW9uXCJcbiAgICBjbGFzcz1cInAtMiBzdWdnZXN0aW9uXCJcbiAgPlxuICAgIHt7IGRpc3BsYXlXaXRoRm4oc3VnZ2VzdGlvbikgfX1cbiAgPC9tYXQtb3B0aW9uPlxuPC9tYXQtYXV0b2NvbXBsZXRlPlxuIl19