geonetwork-ui 2.6.0-dev.3e7617888 → 2.6.0-dev.4a61a87f9

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 (339) hide show
  1. package/esm2022/libs/api/metadata-converter/src/lib/common/distribution.mapper.mjs +3 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +40 -4
  3. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
  4. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +8 -4
  5. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +5 -2
  6. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +4 -4
  7. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +2 -2
  8. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/constant.mjs +2 -1
  9. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +3 -3
  10. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +66 -12
  11. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +7 -1
  12. package/esm2022/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.mjs +2 -1
  13. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  14. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  15. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +45 -9
  16. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +2 -2
  17. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +32 -2
  18. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +25 -6
  19. package/esm2022/libs/feature/editor/src/index.mjs +2 -1
  20. package/esm2022/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.mjs +273 -0
  21. package/esm2022/libs/feature/record/src/index.mjs +2 -3
  22. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +3 -3
  23. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +3 -3
  24. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +6 -3
  25. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +33 -7
  26. package/esm2022/libs/feature/record/src/lib/state/mdview.actions.mjs +3 -1
  27. package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +7 -1
  28. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +13 -13
  29. package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +7 -1
  30. package/esm2022/libs/feature/record/src/lib/state/mdview.selectors.mjs +3 -1
  31. package/esm2022/libs/feature/search/src/lib/constants.mjs +2 -1
  32. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +6 -2
  33. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +13 -10
  34. package/esm2022/libs/ui/dataviz/src/lib/chart/chart.component.mjs +5 -3
  35. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.component.mjs +11 -6
  36. package/esm2022/libs/ui/elements/src/index.mjs +3 -1
  37. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +3 -3
  38. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +3 -3
  39. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +18 -7
  40. package/esm2022/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.mjs +55 -0
  41. package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +3 -3
  42. package/esm2022/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.mjs +42 -83
  43. package/esm2022/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.mjs +59 -0
  44. package/esm2022/libs/ui/elements/src/lib/kind-badge/kind-badge.component.mjs +22 -5
  45. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +3 -3
  46. package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +3 -3
  47. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +3 -3
  48. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +3 -3
  49. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +3 -3
  50. package/esm2022/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.mjs +51 -0
  51. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +17 -7
  52. package/esm2022/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.mjs +12 -4
  53. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +10 -4
  54. package/esm2022/libs/ui/inputs/src/index.mjs +2 -1
  55. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +3 -3
  56. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +2 -2
  57. package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +3 -3
  58. package/esm2022/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.mjs +68 -0
  59. package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +3 -3
  60. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +2 -8
  61. package/esm2022/libs/ui/layout/src/index.mjs +2 -1
  62. package/esm2022/libs/ui/layout/src/lib/block-list/block-list.component.mjs +48 -11
  63. package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +3 -3
  64. package/esm2022/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.mjs +34 -13
  65. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +20 -10
  66. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +3 -3
  67. package/esm2022/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +6 -6
  68. package/esm2022/libs/ui/layout/src/lib/truncated-text/truncated-text.component.mjs +107 -0
  69. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +4 -12
  70. package/esm2022/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.mjs +29 -4
  71. package/esm2022/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.mjs +2 -1
  72. package/esm2022/libs/ui/search/src/index.mjs +2 -1
  73. package/esm2022/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.mjs +4 -8
  74. package/esm2022/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.mjs +3 -3
  75. package/esm2022/libs/ui/search/src/lib/results-list/results-layout.config.mjs +2 -2
  76. package/esm2022/libs/ui/search/src/lib/results-list/results-list.component.mjs +3 -3
  77. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +21 -12
  78. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +39 -18
  79. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +10 -4
  80. package/esm2022/libs/util/i18n/src/lib/i18n.constants.mjs +42 -1
  81. package/esm2022/libs/util/i18n/src/lib/language-codes.mjs +24 -2
  82. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +4 -1
  83. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +4 -1
  84. package/esm2022/translations/de.json +44 -11
  85. package/esm2022/translations/en.json +44 -11
  86. package/esm2022/translations/es.json +43 -10
  87. package/esm2022/translations/fr.json +45 -12
  88. package/esm2022/translations/it.json +70 -37
  89. package/esm2022/translations/nl.json +43 -10
  90. package/esm2022/translations/pt.json +43 -10
  91. package/fesm2022/geonetwork-ui.mjs +2027 -813
  92. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  93. package/libs/api/metadata-converter/src/lib/common/distribution.mapper.d.ts.map +1 -1
  94. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  95. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +0 -1
  96. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  97. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +1 -0
  98. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  99. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
  100. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  101. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  102. package/libs/api/repository/src/lib/gn4/elasticsearch/constant.d.ts.map +1 -1
  103. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +1 -1
  104. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
  105. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +13 -2
  106. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  107. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +2 -0
  108. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  109. package/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.d.ts +1 -0
  110. package/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.d.ts.map +1 -1
  111. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +4 -1
  112. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  113. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +6 -0
  114. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  115. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +12 -8
  116. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  117. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +1 -0
  118. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  119. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +5 -2
  120. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  121. package/libs/feature/editor/src/index.d.ts +1 -0
  122. package/libs/feature/editor/src/index.d.ts.map +1 -1
  123. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts +52 -0
  124. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts.map +1 -0
  125. package/libs/feature/record/src/index.d.ts +1 -2
  126. package/libs/feature/record/src/index.d.ts.map +1 -1
  127. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +2 -1
  128. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  129. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  130. package/libs/feature/record/src/lib/state/mdview.actions.d.ts +10 -0
  131. package/libs/feature/record/src/lib/state/mdview.actions.d.ts.map +1 -1
  132. package/libs/feature/record/src/lib/state/mdview.effects.d.ts +6 -0
  133. package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
  134. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +28 -21
  135. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  136. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts +2 -0
  137. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts.map +1 -1
  138. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts +2 -0
  139. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts.map +1 -1
  140. package/libs/feature/search/src/lib/constants.d.ts.map +1 -1
  141. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts +1 -1
  142. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts.map +1 -1
  143. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +6 -5
  144. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -1
  145. package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts +2 -1
  146. package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts.map +1 -1
  147. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts +6 -1
  148. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts.map +1 -1
  149. package/libs/ui/elements/src/index.d.ts +2 -0
  150. package/libs/ui/elements/src/index.d.ts.map +1 -1
  151. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +1 -1
  152. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  153. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -1
  154. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  155. package/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.d.ts +15 -0
  156. package/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.d.ts.map +1 -0
  157. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts +6 -13
  158. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts.map +1 -1
  159. package/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.d.ts +14 -0
  160. package/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.d.ts.map +1 -0
  161. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts +3 -1
  162. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts.map +1 -1
  163. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +1 -1
  164. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  165. package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts +16 -0
  166. package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts.map +1 -0
  167. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +8 -1
  168. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +1 -1
  169. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts +1 -0
  170. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts.map +1 -1
  171. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +2 -1
  172. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  173. package/libs/ui/inputs/src/index.d.ts +1 -0
  174. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  175. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  176. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  177. package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts +17 -0
  178. package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts.map +1 -0
  179. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  180. package/libs/ui/layout/src/index.d.ts +1 -0
  181. package/libs/ui/layout/src/index.d.ts.map +1 -1
  182. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts +9 -2
  183. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts.map +1 -1
  184. package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts +15 -8
  185. package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts.map +1 -1
  186. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +4 -2
  187. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -1
  188. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts +27 -0
  189. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts.map +1 -0
  190. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
  191. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts +6 -2
  192. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts.map +1 -1
  193. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts.map +1 -1
  194. package/libs/ui/search/src/index.d.ts +1 -0
  195. package/libs/ui/search/src/index.d.ts.map +1 -1
  196. package/libs/ui/search/src/lib/results-list/results-list.component.d.ts.map +1 -1
  197. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +4 -3
  198. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -1
  199. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +10 -4
  200. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  201. package/libs/ui/search/src/lib/ui-search.module.d.ts +2 -1
  202. package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
  203. package/libs/util/i18n/src/lib/i18n.constants.d.ts +1 -0
  204. package/libs/util/i18n/src/lib/i18n.constants.d.ts.map +1 -1
  205. package/libs/util/i18n/src/lib/language-codes.d.ts +23 -1
  206. package/libs/util/i18n/src/lib/language-codes.d.ts.map +1 -1
  207. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  208. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  209. package/package.json +2 -2
  210. package/src/libs/api/metadata-converter/src/lib/common/distribution.mapper.ts +1 -0
  211. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +1 -1
  212. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +62 -4
  213. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +0 -1
  214. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +13 -3
  215. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +5 -1
  216. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +8 -4
  217. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +4 -1
  218. package/src/libs/api/repository/src/lib/gn4/elasticsearch/constant.ts +1 -0
  219. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +2 -2
  220. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +105 -12
  221. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +11 -0
  222. package/src/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.ts +3 -0
  223. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +9 -2
  224. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +6 -0
  225. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +10 -0
  226. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +14 -0
  227. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +50 -1
  228. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.html +12 -9
  229. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +54 -10
  230. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +37 -0
  231. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.html +1 -0
  232. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +27 -1
  233. package/src/libs/feature/editor/src/index.ts +1 -0
  234. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.css +0 -0
  235. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.html +120 -0
  236. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.ts +325 -0
  237. package/src/libs/feature/record/src/index.ts +1 -2
  238. package/src/libs/feature/record/src/lib/data-view/data-view.component.html +16 -10
  239. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +1 -1
  240. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.html +2 -2
  241. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +1 -0
  242. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +25 -16
  243. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +35 -4
  244. package/src/libs/feature/record/src/lib/state/mdview.actions.ts +10 -0
  245. package/src/libs/feature/record/src/lib/state/mdview.effects.ts +22 -0
  246. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +22 -15
  247. package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +12 -0
  248. package/src/libs/feature/record/src/lib/state/mdview.selectors.ts +9 -0
  249. package/src/libs/feature/search/src/lib/constants.ts +1 -0
  250. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +2 -0
  251. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +1 -0
  252. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +13 -3
  253. package/src/libs/ui/dataviz/src/lib/chart/chart.component.ts +2 -1
  254. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.html +6 -3
  255. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.ts +5 -4
  256. package/src/libs/ui/elements/src/index.ts +2 -0
  257. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +4 -4
  258. package/src/libs/ui/elements/src/lib/download-item/download-item.component.html +8 -5
  259. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +2 -2
  260. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +38 -7
  261. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +29 -2
  262. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.css +4 -0
  263. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.html +13 -0
  264. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.ts +54 -0
  265. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +1 -1
  266. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.html +68 -141
  267. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.ts +38 -97
  268. package/src/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.html +69 -0
  269. package/src/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.ts +61 -0
  270. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.html +7 -5
  271. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.ts +21 -2
  272. package/src/libs/ui/elements/src/lib/link-card/link-card.component.html +5 -2
  273. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +3 -7
  274. package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.html +3 -5
  275. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +12 -9
  276. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +1 -1
  277. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +11 -3
  278. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +2 -3
  279. package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.html +48 -0
  280. package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.ts +52 -0
  281. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +8 -29
  282. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +14 -1
  283. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.html +16 -2
  284. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.ts +9 -1
  285. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +3 -1
  286. package/src/libs/ui/inputs/src/index.ts +1 -0
  287. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +1 -1
  288. package/src/libs/ui/inputs/src/lib/button/button.component.ts +2 -2
  289. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +1 -1
  290. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.css +0 -0
  291. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.html +43 -0
  292. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.ts +77 -0
  293. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.html +3 -4
  294. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +0 -3
  295. package/src/libs/ui/layout/src/index.ts +1 -0
  296. package/src/libs/ui/layout/src/lib/block-list/block-list.component.css +22 -0
  297. package/src/libs/ui/layout/src/lib/block-list/block-list.component.html +2 -2
  298. package/src/libs/ui/layout/src/lib/block-list/block-list.component.ts +43 -5
  299. package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +0 -1
  300. package/src/libs/ui/layout/src/lib/carousel/carousel.component.html +1 -1
  301. package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.html +24 -8
  302. package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.ts +36 -10
  303. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +3 -2
  304. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +13 -6
  305. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.html +1 -1
  306. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.html +17 -5
  307. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.ts +3 -3
  308. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.html +44 -0
  309. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.ts +130 -0
  310. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +1 -5
  311. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.html +3 -3
  312. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.ts +27 -3
  313. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.ts +1 -0
  314. package/src/libs/ui/search/src/index.ts +1 -0
  315. package/src/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.html +9 -81
  316. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.html +1 -0
  317. package/src/libs/ui/search/src/lib/results-list/results-layout.config.ts +2 -2
  318. package/src/libs/ui/search/src/lib/results-list/results-list.component.html +1 -0
  319. package/src/libs/ui/search/src/lib/results-list/results-list.component.ts +0 -1
  320. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +16 -6
  321. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +15 -11
  322. package/src/libs/ui/search/src/lib/results-table/results-table.component.css +4 -0
  323. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +31 -27
  324. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +33 -15
  325. package/src/libs/ui/search/src/lib/ui-search.module.ts +3 -0
  326. package/src/libs/util/i18n/src/lib/i18n.constants.ts +42 -0
  327. package/src/libs/util/i18n/src/lib/language-codes.ts +23 -1
  328. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +3 -0
  329. package/src/libs/util/shared/src/lib/links/link-utils.ts +3 -0
  330. package/tailwind.base.config.js +3 -0
  331. package/tailwind.base.css +2 -14
  332. package/translations/de.json +44 -11
  333. package/translations/en.json +44 -11
  334. package/translations/es.json +43 -10
  335. package/translations/fr.json +45 -12
  336. package/translations/it.json +70 -37
  337. package/translations/nl.json +43 -10
  338. package/translations/pt.json +43 -10
  339. package/translations/sk.json +43 -10
@@ -0,0 +1,273 @@
1
+ import { ChangeDetectorRef, Component, ElementRef, Input, QueryList, ViewChildren, ViewContainerRef, } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { ButtonComponent, CheckToggleComponent } from '../../../../../../../libs/ui/inputs/src';
4
+ import { TranslateModule, TranslateService } from '@ngx-translate/core';
5
+ import { NgIconComponent, provideIcons, provideNgIconsConfig, } from '@ng-icons/core';
6
+ import { iconoirCheckCircle, iconoirCircle, iconoirSettings, } from '@ng-icons/iconoir';
7
+ import { matMoreHorizOutline } from '@ng-icons/material-icons/outline';
8
+ import { EditorFacade } from '../../+state/editor.facade';
9
+ import { ConfirmationDialogComponent } from '../../../../../../../libs/ui/elements/src';
10
+ import { MatDialog } from '@angular/material/dialog';
11
+ import { RecordsRepositoryInterface } from '../../../../../../../libs/common/domain/src/lib/repository/records-repository.interface';
12
+ import { map, Subscription } from 'rxjs';
13
+ import { Overlay } from '@angular/cdk/overlay';
14
+ import { TemplatePortal } from '@angular/cdk/portal';
15
+ import { ActionMenuComponent } from '../../../../../../../libs/ui/search/src';
16
+ import * as i0 from "@angular/core";
17
+ import * as i1 from "../../+state/editor.facade";
18
+ import * as i2 from "@angular/material/dialog";
19
+ import * as i3 from "@ngx-translate/core";
20
+ import * as i4 from "../../../../../../../libs/common/domain/src/lib/repository/records-repository.interface";
21
+ import * as i5 from "@angular/cdk/overlay";
22
+ import * as i6 from "@angular/common";
23
+ const extraFlagMap = {
24
+ ar: 'arab',
25
+ en: 'gb',
26
+ ko: 'kr',
27
+ cs: 'cz',
28
+ zh: 'cn',
29
+ ca: 'es-ct',
30
+ rm: 'ch',
31
+ da: 'dk',
32
+ sv: 'se',
33
+ cy: 'gb-wls',
34
+ hy: 'am',
35
+ ka: 'ge',
36
+ uk: 'ua',
37
+ };
38
+ export class MultilingualPanelComponent {
39
+ set record(value) {
40
+ this._record = value;
41
+ this.isMultilingual = value.otherLanguages.length > 0;
42
+ this.editTranslations = false;
43
+ this.recordLanguages = [...value.otherLanguages, value.defaultLanguage];
44
+ this.selectedLanguages = this.recordLanguages;
45
+ this.formLanguage = value.defaultLanguage;
46
+ }
47
+ constructor(facade, dialog, translateService, recordsRepository, overlay, viewContainerRef, cdr) {
48
+ this.facade = facade;
49
+ this.dialog = dialog;
50
+ this.translateService = translateService;
51
+ this.recordsRepository = recordsRepository;
52
+ this.overlay = overlay;
53
+ this.viewContainerRef = viewContainerRef;
54
+ this.cdr = cdr;
55
+ this.selectedLanguages = [];
56
+ this.recordLanguages = [];
57
+ this.formLanguage = '';
58
+ this.isActionMenuOpen = false;
59
+ this.subscription = new Subscription();
60
+ this.supportedLanguages$ = this.recordsRepository
61
+ .getApplicationLanguages()
62
+ .pipe(map((languages) => this.sortLanguages(languages)));
63
+ }
64
+ ngOnDestroy() {
65
+ this.subscription.unsubscribe();
66
+ }
67
+ sortLanguages(languages) {
68
+ return languages
69
+ .map((lang) => {
70
+ const label = this.translateService.instant('language.' + lang);
71
+ const isTranslated = label !== 'language.' + lang;
72
+ return {
73
+ lang,
74
+ label,
75
+ isTranslated,
76
+ };
77
+ })
78
+ .sort((a, b) => {
79
+ if (a.isTranslated && !b.isTranslated)
80
+ return -1;
81
+ if (!a.isTranslated && b.isTranslated)
82
+ return 1;
83
+ return a.label.localeCompare(b.label);
84
+ })
85
+ .map((item) => item.lang);
86
+ }
87
+ toggleLanguageSelection() {
88
+ this.editTranslations = !this.editTranslations;
89
+ }
90
+ getIconClass(lang) {
91
+ return extraFlagMap[lang]
92
+ ? `fi fi-${extraFlagMap[lang]} w-4 h-3`
93
+ : `fi fi-${lang} w-4 h-3`;
94
+ }
95
+ switchMultilingual() {
96
+ if (this.isMultilingual && this.selectedLanguages.length > 1) {
97
+ this.confirmDeleteAction();
98
+ }
99
+ else {
100
+ this.isMultilingual = true;
101
+ this.editTranslations = true;
102
+ }
103
+ }
104
+ getExtraClass(lang) {
105
+ const baseClass = 'h-[34px] w-full font-bold justify-start hover:bg-white';
106
+ if (this.selectedLanguages.includes(lang)) {
107
+ return `${baseClass} bg-white border border-black`;
108
+ }
109
+ return baseClass;
110
+ }
111
+ toggleLanguage(lang) {
112
+ if (this.selectedLanguages.includes(lang)) {
113
+ this.removeSelectedLanguage(lang);
114
+ }
115
+ else {
116
+ this.selectedLanguages.push(lang);
117
+ }
118
+ }
119
+ removeSelectedLanguage(lang) {
120
+ this.selectedLanguages = this.selectedLanguages.filter((language) => language !== lang);
121
+ }
122
+ validateTranslations() {
123
+ const equalLength = this.selectedLanguages.length === this.recordLanguages.length;
124
+ if (this.selectedLanguages.length < this.recordLanguages.length ||
125
+ (equalLength && this.selectedLanguages !== this.recordLanguages)) {
126
+ this.confirmDeleteAction(this.selectedLanguages);
127
+ }
128
+ else {
129
+ this.updateTranslations();
130
+ }
131
+ }
132
+ updateTranslations() {
133
+ this.facade.updateRecordField('otherLanguages', this.selectedLanguages.filter((lang) => lang !== this.formLanguage));
134
+ this.recordLanguages = this.selectedLanguages;
135
+ this.editTranslations = false;
136
+ }
137
+ switchFormLang(lang) {
138
+ // TO IMPLEMENT FURTHER
139
+ }
140
+ switchDefaultLang(lang) {
141
+ this.formLanguage = lang;
142
+ this.facade.updateRecordField('defaultLanguage', lang);
143
+ this.facade.updateRecordField('otherLanguages', this.selectedLanguages.filter((lang) => lang !== this.formLanguage));
144
+ this.closeActionMenu();
145
+ }
146
+ confirmDeleteAction(lang) {
147
+ const dialogRef = this.dialog.open(ConfirmationDialogComponent, {
148
+ data: {
149
+ title: this.translateService.instant('editor.record.multilingual.confirmation.title'),
150
+ message: this.translateService.instant('editor.record.multilingual.confirmation.message'),
151
+ confirmText: this.translateService.instant('editor.record.multilingual.confirmation.confirmText'),
152
+ cancelText: this.translateService.instant('editor.record.multilingual.confirmation.cancelText'),
153
+ },
154
+ restoreFocus: true,
155
+ });
156
+ this.subscription.add(dialogRef.afterClosed().subscribe((confirmed) => {
157
+ if (confirmed) {
158
+ if (lang) {
159
+ if (!Array.isArray(lang)) {
160
+ this.removeSelectedLanguage(lang);
161
+ this.closeActionMenu();
162
+ }
163
+ this.updateTranslations();
164
+ }
165
+ else {
166
+ this.facade.updateRecordField('otherLanguages', []);
167
+ this.isMultilingual = false;
168
+ this.selectedLanguages = [];
169
+ }
170
+ }
171
+ else {
172
+ this.isMultilingual = true;
173
+ this.selectedLanguages = this.recordLanguages;
174
+ }
175
+ this.editTranslations = false;
176
+ }));
177
+ }
178
+ isFirstUnsupported(index) {
179
+ const langs = this.sortLanguages(this.recordLanguages);
180
+ return (langs[index].length === 3 &&
181
+ langs.slice(0, index).every((lang) => lang.length !== 3));
182
+ }
183
+ isLangSupported(lang) {
184
+ return lang.length === 2;
185
+ }
186
+ getToggleTitle(lang) {
187
+ if (lang === this._record.defaultLanguage) {
188
+ return this.translateService.instant('editor.record.form.multilingual.forbidden');
189
+ }
190
+ return '';
191
+ }
192
+ openActionMenu(item, template) {
193
+ this.isActionMenuOpen = true;
194
+ const index = this.sortLanguages(this.selectedLanguages).indexOf(item);
195
+ const buttonElement = this.actionMenuButtons.toArray()[index];
196
+ const positionStrategy = this.overlay
197
+ .position()
198
+ .flexibleConnectedTo(buttonElement)
199
+ .withFlexibleDimensions(true)
200
+ .withPush(true)
201
+ .withPositions([
202
+ {
203
+ originX: 'end',
204
+ originY: 'bottom',
205
+ overlayX: 'end',
206
+ overlayY: 'top',
207
+ },
208
+ {
209
+ originX: 'end',
210
+ originY: 'top',
211
+ overlayX: 'end',
212
+ overlayY: 'bottom',
213
+ },
214
+ ]);
215
+ this.overlayRef = this.overlay.create({
216
+ hasBackdrop: true,
217
+ backdropClass: 'cdk-overlay-transparent-backdrop',
218
+ positionStrategy: positionStrategy,
219
+ scrollStrategy: this.overlay.scrollStrategies.reposition(),
220
+ });
221
+ const portal = new TemplatePortal(template, this.viewContainerRef);
222
+ this.overlayRef.attach(portal);
223
+ this.subscription.add(this.overlayRef.backdropClick().subscribe(() => {
224
+ this.closeActionMenu();
225
+ }));
226
+ }
227
+ closeActionMenu() {
228
+ if (this.overlayRef) {
229
+ this.isActionMenuOpen = false;
230
+ this.overlayRef.dispose();
231
+ this.cdr.markForCheck();
232
+ }
233
+ }
234
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultilingualPanelComponent, deps: [{ token: i1.EditorFacade }, { token: i2.MatDialog }, { token: i3.TranslateService }, { token: i4.RecordsRepositoryInterface }, { token: i5.Overlay }, { token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
235
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MultilingualPanelComponent, isStandalone: true, selector: "gn-ui-multilingual-panel", inputs: { record: "record" }, providers: [
236
+ provideIcons({
237
+ iconoirSettings,
238
+ matMoreHorizOutline,
239
+ iconoirCheckCircle,
240
+ iconoirCircle,
241
+ }),
242
+ provideNgIconsConfig({
243
+ size: '1.25em',
244
+ }),
245
+ ], viewQueries: [{ propertyName: "actionMenuButtons", predicate: ["actionMenuButton"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div\n class=\"flex flex-col h-full w-[302px] bg-neutral-100 border-l border-gray-300 py-8 px-3 gap-6 overflow-auto\"\n>\n <div class=\"flex flex-row px-2 justify-between\">\n <span class=\"text-3xl font-title text-black/80\" translate\n >editor.record.form.multilingual.title</span\n >\n <button\n [title]=\"'editor.record.form.multilingual.open' | translate\"\n (click)=\"toggleLanguageSelection()\"\n *ngIf=\"isMultilingual\"\n data-test=\"activateSelection\"\n >\n <ng-icon class=\"mt-1\" name=\"iconoirSettings\"></ng-icon>\n </button>\n </div>\n <div class=\"flex flex-col gap-2\" *ngIf=\"editTranslations || !isMultilingual\">\n <gn-ui-check-toggle\n class=\"p-2\"\n [label]=\"'editor.record.form.multilingual.enable' | translate\"\n [color]=\"'primary'\"\n [(value)]=\"isMultilingual\"\n (toggled)=\"switchMultilingual($event)\"\n ></gn-ui-check-toggle>\n <div *ngIf=\"isMultilingual\" class=\"flex flex-col gap-2\">\n <div class=\"flex flex-row justify-between border-t border-gray-300 p-3\">\n <span class=\"mt-2 text-sm text-gray-600\" translate\n >editor.record.form.multilingual.activate</span\n >\n <gn-ui-button\n extraClass=\"w-16 h-8 font-bold\"\n type=\"gray\"\n (buttonClick)=\"validateTranslations()\"\n data-test=\"validateSelection\"\n >{{ 'editor.record.form.multilingual.validate' | translate }}\n </gn-ui-button>\n </div>\n <ng-container *ngIf=\"supportedLanguages$ | async as languages\">\n <div\n class=\"flex flex-col gap-2 w-full px-2\"\n data-test=\"langAvailable\"\n *ngFor=\"let lang of languages\"\n >\n <gn-ui-button\n [extraClass]=\"getExtraClass(lang)\"\n type=\"gray\"\n (buttonClick)=\"toggleLanguage(lang)\"\n [disabled]=\"lang === _record.defaultLanguage\"\n [title]=\"getToggleTitle(lang)\"\n >\n <span [class]=\"getIconClass(lang)\"></span>\n <span class=\"ml-2\">{{ 'language.' + lang | translate }}</span>\n </gn-ui-button>\n </div>\n </ng-container>\n </div>\n </div>\n <div *ngIf=\"!editTranslations && isMultilingual\" class=\"flex flex-col gap-2\">\n <gn-ui-button\n *ngFor=\"let recordLang of sortLanguages(recordLanguages); let i = index\"\n extraClass=\"flex flex-row justify-between bg-white border border-white rounded mb-1 h-[34px] w-full\"\n [ngClass]=\"{\n 'mt-8': isFirstUnsupported(i),\n '': true,\n }\"\n (buttonClick)=\"switchFormLang(recordLang)\"\n type=\"outline\"\n data-test=\"langSwitch\"\n >\n <div class=\"flex flex-row gap-2 items-center\">\n <ng-icon\n *ngIf=\"recordLang === formLanguage\"\n class=\"text-primary mt-1\"\n name=\"iconoirCheckCircle\"\n ></ng-icon>\n <ng-icon\n *ngIf=\"recordLang !== formLanguage\"\n class=\"text-gray-800 mt-1\"\n name=\"iconoirCircle\"\n ></ng-icon>\n <span\n *ngIf=\"recordLang.length === 2\"\n [class]=\"getIconClass(recordLang) + 'mt-1'\"\n ></span>\n <span [ngClass]=\"recordLang === formLanguage ? 'text-black' : ''\">{{\n isLangSupported(recordLang)\n ? ('language.' + recordLang | translate)\n : recordLang.toUpperCase()\n }}</span>\n </div>\n <div class=\"flex flex-row gap-2 items-center\">\n <span\n *ngIf=\"recordLang === formLanguage\"\n class=\"text-xs text-base\"\n translate\n >editor.record.form.multilingual.default</span\n >\n <button\n (click)=\"\n openActionMenu(recordLang, template); $event.stopPropagation()\n \"\n cdkOverlayOrigin\n #actionMenuButton\n >\n <ng-icon class=\"pb-5\" name=\"matMoreHorizOutline\"></ng-icon>\n </button>\n <ng-template #template>\n <gn-ui-action-menu\n [canDelete]=\"recordLang !== _record.defaultLanguage\"\n page=\"record\"\n (delete)=\"confirmDeleteAction(recordLang)\"\n (closeActionMenu)=\"closeActionMenu()\"\n (switch)=\"switchDefaultLang(recordLang)\"\n >\n </gn-ui-action-menu>\n </ng-template>\n </div>\n </gn-ui-button>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "component", type: CheckToggleComponent, selector: "gn-ui-check-toggle", inputs: ["title", "label", "value", "color"], outputs: ["toggled"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "component", type: ActionMenuComponent, selector: "gn-ui-action-menu", inputs: ["canDuplicate", "isDuplicating", "canDelete", "page"], outputs: ["duplicate", "delete", "closeActionMenu", "rollback", "switch"] }] }); }
246
+ }
247
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultilingualPanelComponent, decorators: [{
248
+ type: Component,
249
+ args: [{ selector: 'gn-ui-multilingual-panel', standalone: true, imports: [
250
+ CommonModule,
251
+ CheckToggleComponent,
252
+ TranslateModule,
253
+ ButtonComponent,
254
+ NgIconComponent,
255
+ ActionMenuComponent,
256
+ ], providers: [
257
+ provideIcons({
258
+ iconoirSettings,
259
+ matMoreHorizOutline,
260
+ iconoirCheckCircle,
261
+ iconoirCircle,
262
+ }),
263
+ provideNgIconsConfig({
264
+ size: '1.25em',
265
+ }),
266
+ ], template: "<div\n class=\"flex flex-col h-full w-[302px] bg-neutral-100 border-l border-gray-300 py-8 px-3 gap-6 overflow-auto\"\n>\n <div class=\"flex flex-row px-2 justify-between\">\n <span class=\"text-3xl font-title text-black/80\" translate\n >editor.record.form.multilingual.title</span\n >\n <button\n [title]=\"'editor.record.form.multilingual.open' | translate\"\n (click)=\"toggleLanguageSelection()\"\n *ngIf=\"isMultilingual\"\n data-test=\"activateSelection\"\n >\n <ng-icon class=\"mt-1\" name=\"iconoirSettings\"></ng-icon>\n </button>\n </div>\n <div class=\"flex flex-col gap-2\" *ngIf=\"editTranslations || !isMultilingual\">\n <gn-ui-check-toggle\n class=\"p-2\"\n [label]=\"'editor.record.form.multilingual.enable' | translate\"\n [color]=\"'primary'\"\n [(value)]=\"isMultilingual\"\n (toggled)=\"switchMultilingual($event)\"\n ></gn-ui-check-toggle>\n <div *ngIf=\"isMultilingual\" class=\"flex flex-col gap-2\">\n <div class=\"flex flex-row justify-between border-t border-gray-300 p-3\">\n <span class=\"mt-2 text-sm text-gray-600\" translate\n >editor.record.form.multilingual.activate</span\n >\n <gn-ui-button\n extraClass=\"w-16 h-8 font-bold\"\n type=\"gray\"\n (buttonClick)=\"validateTranslations()\"\n data-test=\"validateSelection\"\n >{{ 'editor.record.form.multilingual.validate' | translate }}\n </gn-ui-button>\n </div>\n <ng-container *ngIf=\"supportedLanguages$ | async as languages\">\n <div\n class=\"flex flex-col gap-2 w-full px-2\"\n data-test=\"langAvailable\"\n *ngFor=\"let lang of languages\"\n >\n <gn-ui-button\n [extraClass]=\"getExtraClass(lang)\"\n type=\"gray\"\n (buttonClick)=\"toggleLanguage(lang)\"\n [disabled]=\"lang === _record.defaultLanguage\"\n [title]=\"getToggleTitle(lang)\"\n >\n <span [class]=\"getIconClass(lang)\"></span>\n <span class=\"ml-2\">{{ 'language.' + lang | translate }}</span>\n </gn-ui-button>\n </div>\n </ng-container>\n </div>\n </div>\n <div *ngIf=\"!editTranslations && isMultilingual\" class=\"flex flex-col gap-2\">\n <gn-ui-button\n *ngFor=\"let recordLang of sortLanguages(recordLanguages); let i = index\"\n extraClass=\"flex flex-row justify-between bg-white border border-white rounded mb-1 h-[34px] w-full\"\n [ngClass]=\"{\n 'mt-8': isFirstUnsupported(i),\n '': true,\n }\"\n (buttonClick)=\"switchFormLang(recordLang)\"\n type=\"outline\"\n data-test=\"langSwitch\"\n >\n <div class=\"flex flex-row gap-2 items-center\">\n <ng-icon\n *ngIf=\"recordLang === formLanguage\"\n class=\"text-primary mt-1\"\n name=\"iconoirCheckCircle\"\n ></ng-icon>\n <ng-icon\n *ngIf=\"recordLang !== formLanguage\"\n class=\"text-gray-800 mt-1\"\n name=\"iconoirCircle\"\n ></ng-icon>\n <span\n *ngIf=\"recordLang.length === 2\"\n [class]=\"getIconClass(recordLang) + 'mt-1'\"\n ></span>\n <span [ngClass]=\"recordLang === formLanguage ? 'text-black' : ''\">{{\n isLangSupported(recordLang)\n ? ('language.' + recordLang | translate)\n : recordLang.toUpperCase()\n }}</span>\n </div>\n <div class=\"flex flex-row gap-2 items-center\">\n <span\n *ngIf=\"recordLang === formLanguage\"\n class=\"text-xs text-base\"\n translate\n >editor.record.form.multilingual.default</span\n >\n <button\n (click)=\"\n openActionMenu(recordLang, template); $event.stopPropagation()\n \"\n cdkOverlayOrigin\n #actionMenuButton\n >\n <ng-icon class=\"pb-5\" name=\"matMoreHorizOutline\"></ng-icon>\n </button>\n <ng-template #template>\n <gn-ui-action-menu\n [canDelete]=\"recordLang !== _record.defaultLanguage\"\n page=\"record\"\n (delete)=\"confirmDeleteAction(recordLang)\"\n (closeActionMenu)=\"closeActionMenu()\"\n (switch)=\"switchDefaultLang(recordLang)\"\n >\n </gn-ui-action-menu>\n </ng-template>\n </div>\n </gn-ui-button>\n </div>\n</div>\n" }]
267
+ }], ctorParameters: () => [{ type: i1.EditorFacade }, { type: i2.MatDialog }, { type: i3.TranslateService }, { type: i4.RecordsRepositoryInterface }, { type: i5.Overlay }, { type: i0.ViewContainerRef }, { type: i0.ChangeDetectorRef }], propDecorators: { record: [{
268
+ type: Input
269
+ }], actionMenuButtons: [{
270
+ type: ViewChildren,
271
+ args: ['actionMenuButton', { read: ElementRef }]
272
+ }] } });
273
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlsaW5ndWFsLXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi9jb21wb25lbnRzL211bHRpbGluZ3VhbC1wYW5lbC9tdWx0aWxpbmd1YWwtcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvbXVsdGlsaW5ndWFsLXBhbmVsL211bHRpbGluZ3VhbC1wYW5lbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDL0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBRXZFLE9BQU8sRUFDTCxlQUFlLEVBQ2YsWUFBWSxFQUNaLG9CQUFvQixHQUNyQixNQUFNLGdCQUFnQixDQUFBO0FBQ3ZCLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLGVBQWUsR0FDaEIsTUFBTSxtQkFBbUIsQ0FBQTtBQUMxQixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUE7QUFDekQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFDdkYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFN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LFFBQVE7YUFDZixDQUFDO1NBQ0gsK0dBbUJ5QyxVQUFVLDZCQzFGdEQsaTZJQXdIQSx5RERsRUksWUFBWSxtWkFDWixvQkFBb0Isa0lBQ3BCLGVBQWUsbU9BQ2YsZUFBZSwrSEFDZixlQUFlLDZHQUNmLG1CQUFtQjs7NEZBZ0JWLDBCQUEwQjtrQkF6QnRDLFNBQVM7K0JBQ0UsMEJBQTBCLGNBQ3hCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLG9CQUFvQjt3QkFDcEIsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsbUJBQW1CO3FCQUNwQixhQUNVO3dCQUNULFlBQVksQ0FBQzs0QkFDWCxlQUFlOzRCQUNmLG1CQUFtQjs0QkFDbkIsa0JBQWtCOzRCQUNsQixhQUFhO3lCQUNkLENBQUM7d0JBQ0Ysb0JBQW9CLENBQUM7NEJBQ25CLElBQUksRUFBRSxRQUFRO3lCQUNmLENBQUM7cUJBQ0g7c1FBV1ksTUFBTTtzQkFBbEIsS0FBSztnQkFTTixpQkFBaUI7c0JBRGhCLFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgUXVlcnlMaXN0LFxuICBWaWV3Q2hpbGRyZW4sXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQsIENoZWNrVG9nZ2xlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IENhdGFsb2dSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQge1xuICBOZ0ljb25Db21wb25lbnQsXG4gIHByb3ZpZGVJY29ucyxcbiAgcHJvdmlkZU5nSWNvbnNDb25maWcsXG59IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHtcbiAgaWNvbm9pckNoZWNrQ2lyY2xlLFxuICBpY29ub2lyQ2lyY2xlLFxuICBpY29ub2lyU2V0dGluZ3MsXG59IGZyb20gJ0BuZy1pY29ucy9pY29ub2lyJ1xuaW1wb3J0IHsgbWF0TW9yZUhvcml6T3V0bGluZSB9IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9vdXRsaW5lJ1xuaW1wb3J0IHsgRWRpdG9yRmFjYWRlIH0gZnJvbSAnLi4vLi4vK3N0YXRlL2VkaXRvci5mYWNhZGUnXG5pbXBvcnQgeyBDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYydcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZydcbmltcG9ydCB7IFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvcmVwb3NpdG9yeS9yZWNvcmRzLXJlcG9zaXRvcnkuaW50ZXJmYWNlJ1xuaW1wb3J0IHsgbWFwLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5J1xuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJ1xuaW1wb3J0IHsgQWN0aW9uTWVudUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvc2VhcmNoL3NyYydcblxuY29uc3QgZXh0cmFGbGFnTWFwOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge1xuICBhcjogJ2FyYWInLFxuICBlbjogJ2diJyxcbiAga286ICdrcicsXG4gIGNzOiAnY3onLFxuICB6aDogJ2NuJyxcbiAgY2E6ICdlcy1jdCcsXG4gIHJtOiAnY2gnLFxuICBkYTogJ2RrJyxcbiAgc3Y6ICdzZScsXG4gIGN5OiAnZ2Itd2xzJyxcbiAgaHk6ICdhbScsXG4gIGthOiAnZ2UnLFxuICB1azogJ3VhJyxcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktbXVsdGlsaW5ndWFsLXBhbmVsJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBDaGVja1RvZ2dsZUNvbXBvbmVudCxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgQnV0dG9uQ29tcG9uZW50LFxuICAgIE5nSWNvbkNvbXBvbmVudCxcbiAgICBBY3Rpb25NZW51Q29tcG9uZW50LFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICBwcm92aWRlSWNvbnMoe1xuICAgICAgaWNvbm9pclNldHRpbmdzLFxuICAgICAgbWF0TW9yZUhvcml6T3V0bGluZSxcbiAgICAgIGljb25vaXJDaGVja0NpcmNsZSxcbiAgICAgIGljb25vaXJDaXJjbGUsXG4gICAgfSksXG4gICAgcHJvdmlkZU5nSWNvbnNDb25maWcoe1xuICAgICAgc2l6ZTogJzEuMjVlbScsXG4gICAgfSksXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9tdWx0aWxpbmd1YWwtcGFuZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vbXVsdGlsaW5ndWFsLXBhbmVsLmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBNdWx0aWxpbmd1YWxQYW5lbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIGlzTXVsdGlsaW5ndWFsOiBib29sZWFuXG4gIF9yZWNvcmQ6IENhdGFsb2dSZWNvcmRcbiAgZWRpdFRyYW5zbGF0aW9uczogYm9vbGVhblxuICBzZWxlY3RlZExhbmd1YWdlcyA9IFtdXG4gIHJlY29yZExhbmd1YWdlcyA9IFtdXG4gIGZvcm1MYW5ndWFnZSA9ICcnXG4gIEBJbnB1dCgpIHNldCByZWNvcmQodmFsdWU6IENhdGFsb2dSZWNvcmQpIHtcbiAgICB0aGlzLl9yZWNvcmQgPSB2YWx1ZVxuICAgIHRoaXMuaXNNdWx0aWxpbmd1YWwgPSB2YWx1ZS5vdGhlckxhbmd1YWdlcy5sZW5ndGggPiAwXG4gICAgdGhpcy5lZGl0VHJhbnNsYXRpb25zID0gZmFsc2VcbiAgICB0aGlzLnJlY29yZExhbmd1YWdlcyA9IFsuLi52YWx1ZS5vdGhlckxhbmd1YWdlcywgdmFsdWUuZGVmYXVsdExhbmd1YWdlXVxuICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMgPSB0aGlzLnJlY29yZExhbmd1YWdlc1xuICAgIHRoaXMuZm9ybUxhbmd1YWdlID0gdmFsdWUuZGVmYXVsdExhbmd1YWdlXG4gIH1cbiAgQFZpZXdDaGlsZHJlbignYWN0aW9uTWVudUJ1dHRvbicsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICBhY3Rpb25NZW51QnV0dG9ucyE6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPlxuICBwcml2YXRlIG92ZXJsYXlSZWYhOiBPdmVybGF5UmVmXG5cbiAgaXNBY3Rpb25NZW51T3BlbiA9IGZhbHNlXG4gIHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKVxuXG4gIHN1cHBvcnRlZExhbmd1YWdlcyQgPSB0aGlzLnJlY29yZHNSZXBvc2l0b3J5XG4gICAgLmdldEFwcGxpY2F0aW9uTGFuZ3VhZ2VzKClcbiAgICAucGlwZShtYXAoKGxhbmd1YWdlcykgPT4gdGhpcy5zb3J0TGFuZ3VhZ2VzKGxhbmd1YWdlcykpKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBmYWNhZGU6IEVkaXRvckZhY2FkZSxcbiAgICBwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2csXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVjb3Jkc1JlcG9zaXRvcnk6IFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlLFxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpXG4gIH1cblxuICBzb3J0TGFuZ3VhZ2VzKGxhbmd1YWdlczogc3RyaW5nW10pIHtcbiAgICByZXR1cm4gbGFuZ3VhZ2VzXG4gICAgICAubWFwKChsYW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IGxhYmVsID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2xhbmd1YWdlLicgKyBsYW5nKVxuICAgICAgICBjb25zdCBpc1RyYW5zbGF0ZWQgPSBsYWJlbCAhPT0gJ2xhbmd1YWdlLicgKyBsYW5nXG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBsYW5nLFxuICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgIGlzVHJhbnNsYXRlZCxcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICAgIC5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAgIGlmIChhLmlzVHJhbnNsYXRlZCAmJiAhYi5pc1RyYW5zbGF0ZWQpIHJldHVybiAtMVxuICAgICAgICBpZiAoIWEuaXNUcmFuc2xhdGVkICYmIGIuaXNUcmFuc2xhdGVkKSByZXR1cm4gMVxuXG4gICAgICAgIHJldHVybiBhLmxhYmVsLmxvY2FsZUNvbXBhcmUoYi5sYWJlbClcbiAgICAgIH0pXG4gICAgICAubWFwKChpdGVtKSA9PiBpdGVtLmxhbmcpXG4gIH1cblxuICB0b2dnbGVMYW5ndWFnZVNlbGVjdGlvbigpIHtcbiAgICB0aGlzLmVkaXRUcmFuc2xhdGlvbnMgPSAhdGhpcy5lZGl0VHJhbnNsYXRpb25zXG4gIH1cblxuICBnZXRJY29uQ2xhc3MobGFuZzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGV4dHJhRmxhZ01hcFtsYW5nXVxuICAgICAgPyBgZmkgZmktJHtleHRyYUZsYWdNYXBbbGFuZ119IHctNCBoLTNgXG4gICAgICA6IGBmaSBmaS0ke2xhbmd9IHctNCBoLTNgXG4gIH1cblxuICBzd2l0Y2hNdWx0aWxpbmd1YWwoKSB7XG4gICAgaWYgKHRoaXMuaXNNdWx0aWxpbmd1YWwgJiYgdGhpcy5zZWxlY3RlZExhbmd1YWdlcy5sZW5ndGggPiAxKSB7XG4gICAgICB0aGlzLmNvbmZpcm1EZWxldGVBY3Rpb24oKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlzTXVsdGlsaW5ndWFsID0gdHJ1ZVxuICAgICAgdGhpcy5lZGl0VHJhbnNsYXRpb25zID0gdHJ1ZVxuICAgIH1cbiAgfVxuXG4gIGdldEV4dHJhQ2xhc3MobGFuZzogc3RyaW5nKSB7XG4gICAgY29uc3QgYmFzZUNsYXNzID0gJ2gtWzM0cHhdIHctZnVsbCBmb250LWJvbGQganVzdGlmeS1zdGFydCBob3ZlcjpiZy13aGl0ZSdcbiAgICBpZiAodGhpcy5zZWxlY3RlZExhbmd1YWdlcy5pbmNsdWRlcyhsYW5nKSkge1xuICAgICAgcmV0dXJuIGAke2Jhc2VDbGFzc30gYmctd2hpdGUgYm9yZGVyIGJvcmRlci1ibGFja2BcbiAgICB9XG4gICAgcmV0dXJuIGJhc2VDbGFzc1xuICB9XG5cbiAgdG9nZ2xlTGFuZ3VhZ2UobGFuZzogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMuaW5jbHVkZXMobGFuZykpIHtcbiAgICAgIHRoaXMucmVtb3ZlU2VsZWN0ZWRMYW5ndWFnZShsYW5nKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzLnB1c2gobGFuZylcbiAgICB9XG4gIH1cblxuICByZW1vdmVTZWxlY3RlZExhbmd1YWdlKGxhbmc6IHN0cmluZykge1xuICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMgPSB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzLmZpbHRlcihcbiAgICAgIChsYW5ndWFnZSkgPT4gbGFuZ3VhZ2UgIT09IGxhbmdcbiAgICApXG4gIH1cblxuICB2YWxpZGF0ZVRyYW5zbGF0aW9ucygpIHtcbiAgICBjb25zdCBlcXVhbExlbmd0aCA9XG4gICAgICB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzLmxlbmd0aCA9PT0gdGhpcy5yZWNvcmRMYW5ndWFnZXMubGVuZ3RoXG4gICAgaWYgKFxuICAgICAgdGhpcy5zZWxlY3RlZExhbmd1YWdlcy5sZW5ndGggPCB0aGlzLnJlY29yZExhbmd1YWdlcy5sZW5ndGggfHxcbiAgICAgIChlcXVhbExlbmd0aCAmJiB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzICE9PSB0aGlzLnJlY29yZExhbmd1YWdlcylcbiAgICApIHtcbiAgICAgIHRoaXMuY29uZmlybURlbGV0ZUFjdGlvbih0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnVwZGF0ZVRyYW5zbGF0aW9ucygpXG4gICAgfVxuICB9XG5cbiAgdXBkYXRlVHJhbnNsYXRpb25zKCkge1xuICAgIHRoaXMuZmFjYWRlLnVwZGF0ZVJlY29yZEZpZWxkKFxuICAgICAgJ290aGVyTGFuZ3VhZ2VzJyxcbiAgICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMuZmlsdGVyKChsYW5nKSA9PiBsYW5nICE9PSB0aGlzLmZvcm1MYW5ndWFnZSlcbiAgICApXG4gICAgdGhpcy5yZWNvcmRMYW5ndWFnZXMgPSB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzXG4gICAgdGhpcy5lZGl0VHJhbnNsYXRpb25zID0gZmFsc2VcbiAgfVxuXG4gIHN3aXRjaEZvcm1MYW5nKGxhbmcpIHtcbiAgICAvLyBUTyBJTVBMRU1FTlQgRlVSVEhFUlxuICB9XG5cbiAgc3dpdGNoRGVmYXVsdExhbmcobGFuZzogc3RyaW5nKSB7XG4gICAgdGhpcy5mb3JtTGFuZ3VhZ2UgPSBsYW5nXG4gICAgdGhpcy5mYWNhZGUudXBkYXRlUmVjb3JkRmllbGQoJ2RlZmF1bHRMYW5ndWFnZScsIGxhbmcpXG4gICAgdGhpcy5mYWNhZGUudXBkYXRlUmVjb3JkRmllbGQoXG4gICAgICAnb3RoZXJMYW5ndWFnZXMnLFxuICAgICAgdGhpcy5zZWxlY3RlZExhbmd1YWdlcy5maWx0ZXIoKGxhbmcpID0+IGxhbmcgIT09IHRoaXMuZm9ybUxhbmd1YWdlKVxuICAgIClcbiAgICB0aGlzLmNsb3NlQWN0aW9uTWVudSgpXG4gIH1cblxuICBjb25maXJtRGVsZXRlQWN0aW9uKGxhbmc/OiBzdHJpbmdbXSB8IHN0cmluZykge1xuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICBkYXRhOiB7XG4gICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgICAnZWRpdG9yLnJlY29yZC5tdWx0aWxpbmd1YWwuY29uZmlybWF0aW9uLnRpdGxlJ1xuICAgICAgICApLFxuICAgICAgICBtZXNzYWdlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgICAnZWRpdG9yLnJlY29yZC5tdWx0aWxpbmd1YWwuY29uZmlybWF0aW9uLm1lc3NhZ2UnXG4gICAgICAgICksXG4gICAgICAgIGNvbmZpcm1UZXh0OiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgICAnZWRpdG9yLnJlY29yZC5tdWx0aWxpbmd1YWwuY29uZmlybWF0aW9uLmNvbmZpcm1UZXh0J1xuICAgICAgICApLFxuICAgICAgICBjYW5jZWxUZXh0OiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgICAnZWRpdG9yLnJlY29yZC5tdWx0aWxpbmd1YWwuY29uZmlybWF0aW9uLmNhbmNlbFRleHQnXG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAgcmVzdG9yZUZvY3VzOiB0cnVlLFxuICAgIH0pXG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKFxuICAgICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChjb25maXJtZWQpID0+IHtcbiAgICAgICAgaWYgKGNvbmZpcm1lZCkge1xuICAgICAgICAgIGlmIChsYW5nKSB7XG4gICAgICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkobGFuZykpIHtcbiAgICAgICAgICAgICAgdGhpcy5yZW1vdmVTZWxlY3RlZExhbmd1YWdlKGxhbmcpXG4gICAgICAgICAgICAgIHRoaXMuY2xvc2VBY3Rpb25NZW51KClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMudXBkYXRlVHJhbnNsYXRpb25zKClcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5mYWNhZGUudXBkYXRlUmVjb3JkRmllbGQoJ290aGVyTGFuZ3VhZ2VzJywgW10pXG4gICAgICAgICAgICB0aGlzLmlzTXVsdGlsaW5ndWFsID0gZmFsc2VcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMgPSBbXVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmlzTXVsdGlsaW5ndWFsID0gdHJ1ZVxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMgPSB0aGlzLnJlY29yZExhbmd1YWdlc1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZWRpdFRyYW5zbGF0aW9ucyA9IGZhbHNlXG4gICAgICB9KVxuICAgIClcbiAgfVxuXG4gIGlzRmlyc3RVbnN1cHBvcnRlZChpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgY29uc3QgbGFuZ3MgPSB0aGlzLnNvcnRMYW5ndWFnZXModGhpcy5yZWNvcmRMYW5ndWFnZXMpXG4gICAgcmV0dXJuIChcbiAgICAgIGxhbmdzW2luZGV4XS5sZW5ndGggPT09IDMgJiZcbiAgICAgIGxhbmdzLnNsaWNlKDAsIGluZGV4KS5ldmVyeSgobGFuZykgPT4gbGFuZy5sZW5ndGggIT09IDMpXG4gICAgKVxuICB9XG5cbiAgaXNMYW5nU3VwcG9ydGVkKGxhbmc6IHN0cmluZykge1xuICAgIHJldHVybiBsYW5nLmxlbmd0aCA9PT0gMlxuICB9XG5cbiAgZ2V0VG9nZ2xlVGl0bGUobGFuZzogc3RyaW5nKSB7XG4gICAgaWYgKGxhbmcgPT09IHRoaXMuX3JlY29yZC5kZWZhdWx0TGFuZ3VhZ2UpIHtcbiAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgJ2VkaXRvci5yZWNvcmQuZm9ybS5tdWx0aWxpbmd1YWwuZm9yYmlkZGVuJ1xuICAgICAgKVxuICAgIH1cbiAgICByZXR1cm4gJydcbiAgfVxuXG4gIG9wZW5BY3Rpb25NZW51KGl0ZW06IHN0cmluZywgdGVtcGxhdGUpIHtcbiAgICB0aGlzLmlzQWN0aW9uTWVudU9wZW4gPSB0cnVlXG4gICAgY29uc3QgaW5kZXggPSB0aGlzLnNvcnRMYW5ndWFnZXModGhpcy5zZWxlY3RlZExhbmd1YWdlcykuaW5kZXhPZihpdGVtKVxuICAgIGNvbnN0IGJ1dHRvbkVsZW1lbnQgPSB0aGlzLmFjdGlvbk1lbnVCdXR0b25zLnRvQXJyYXkoKVtpbmRleF1cblxuICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLm92ZXJsYXlcbiAgICAgIC5wb3NpdGlvbigpXG4gICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyhidXR0b25FbGVtZW50KVxuICAgICAgLndpdGhGbGV4aWJsZURpbWVuc2lvbnModHJ1ZSlcbiAgICAgIC53aXRoUHVzaCh0cnVlKVxuICAgICAgLndpdGhQb3NpdGlvbnMoW1xuICAgICAgICB7XG4gICAgICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgICAgIG92ZXJsYXlYOiAnZW5kJyxcbiAgICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgICAgIH0sXG4gICAgICBdKVxuXG4gICAgdGhpcy5vdmVybGF5UmVmID0gdGhpcy5vdmVybGF5LmNyZWF0ZSh7XG4gICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgIGJhY2tkcm9wQ2xhc3M6ICdjZGstb3ZlcmxheS10cmFuc3BhcmVudC1iYWNrZHJvcCcsXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5OiBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKSxcbiAgICB9KVxuXG4gICAgY29uc3QgcG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRlbXBsYXRlLCB0aGlzLnZpZXdDb250YWluZXJSZWYpXG5cbiAgICB0aGlzLm92ZXJsYXlSZWYuYXR0YWNoKHBvcnRhbClcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoXG4gICAgICB0aGlzLm92ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2xvc2VBY3Rpb25NZW51KClcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgY2xvc2VBY3Rpb25NZW51KCkge1xuICAgIGlmICh0aGlzLm92ZXJsYXlSZWYpIHtcbiAgICAgIHRoaXMuaXNBY3Rpb25NZW51T3BlbiA9IGZhbHNlXG4gICAgICB0aGlzLm92ZXJsYXlSZWYuZGlzcG9zZSgpXG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImZsZXggZmxleC1jb2wgaC1mdWxsIHctWzMwMnB4XSBiZy1uZXV0cmFsLTEwMCBib3JkZXItbCBib3JkZXItZ3JheS0zMDAgcHktOCBweC0zIGdhcC02IG92ZXJmbG93LWF1dG9cIlxuPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBweC0yIGp1c3RpZnktYmV0d2VlblwiPlxuICAgIDxzcGFuIGNsYXNzPVwidGV4dC0zeGwgZm9udC10aXRsZSB0ZXh0LWJsYWNrLzgwXCIgdHJhbnNsYXRlXG4gICAgICA+ZWRpdG9yLnJlY29yZC5mb3JtLm11bHRpbGluZ3VhbC50aXRsZTwvc3BhblxuICAgID5cbiAgICA8YnV0dG9uXG4gICAgICBbdGl0bGVdPVwiJ2VkaXRvci5yZWNvcmQuZm9ybS5tdWx0aWxpbmd1YWwub3BlbicgfCB0cmFuc2xhdGVcIlxuICAgICAgKGNsaWNrKT1cInRvZ2dsZUxhbmd1YWdlU2VsZWN0aW9uKClcIlxuICAgICAgKm5nSWY9XCJpc011bHRpbGluZ3VhbFwiXG4gICAgICBkYXRhLXRlc3Q9XCJhY3RpdmF0ZVNlbGVjdGlvblwiXG4gICAgPlxuICAgICAgPG5nLWljb24gY2xhc3M9XCJtdC0xXCIgbmFtZT1cImljb25vaXJTZXR0aW5nc1wiPjwvbmctaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0yXCIgKm5nSWY9XCJlZGl0VHJhbnNsYXRpb25zIHx8ICFpc011bHRpbGluZ3VhbFwiPlxuICAgIDxnbi11aS1jaGVjay10b2dnbGVcbiAgICAgIGNsYXNzPVwicC0yXCJcbiAgICAgIFtsYWJlbF09XCInZWRpdG9yLnJlY29yZC5mb3JtLm11bHRpbGluZ3VhbC5lbmFibGUnIHwgdHJhbnNsYXRlXCJcbiAgICAgIFtjb2xvcl09XCIncHJpbWFyeSdcIlxuICAgICAgWyh2YWx1ZSldPVwiaXNNdWx0aWxpbmd1YWxcIlxuICAgICAgKHRvZ2dsZWQpPVwic3dpdGNoTXVsdGlsaW5ndWFsKCRldmVudClcIlxuICAgID48L2duLXVpLWNoZWNrLXRvZ2dsZT5cbiAgICA8ZGl2ICpuZ0lmPVwiaXNNdWx0aWxpbmd1YWxcIiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGp1c3RpZnktYmV0d2VlbiBib3JkZXItdCBib3JkZXItZ3JheS0zMDAgcC0zXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMiB0ZXh0LXNtIHRleHQtZ3JheS02MDBcIiB0cmFuc2xhdGVcbiAgICAgICAgICA+ZWRpdG9yLnJlY29yZC5mb3JtLm11bHRpbGluZ3VhbC5hY3RpdmF0ZTwvc3BhblxuICAgICAgICA+XG4gICAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgICBleHRyYUNsYXNzPVwidy0xNiBoLTggZm9udC1ib2xkXCJcbiAgICAgICAgICB0eXBlPVwiZ3JheVwiXG4gICAgICAgICAgKGJ1dHRvbkNsaWNrKT1cInZhbGlkYXRlVHJhbnNsYXRpb25zKClcIlxuICAgICAgICAgIGRhdGEtdGVzdD1cInZhbGlkYXRlU2VsZWN0aW9uXCJcbiAgICAgICAgICA+e3sgJ2VkaXRvci5yZWNvcmQuZm9ybS5tdWx0aWxpbmd1YWwudmFsaWRhdGUnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvZ24tdWktYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3VwcG9ydGVkTGFuZ3VhZ2VzJCB8IGFzeW5jIGFzIGxhbmd1YWdlc1wiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0yIHctZnVsbCBweC0yXCJcbiAgICAgICAgICBkYXRhLXRlc3Q9XCJsYW5nQXZhaWxhYmxlXCJcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgbGFuZyBvZiBsYW5ndWFnZXNcIlxuICAgICAgICA+XG4gICAgICAgICAgPGduLXVpLWJ1dHRvblxuICAgICAgICAgICAgW2V4dHJhQ2xhc3NdPVwiZ2V0RXh0cmFDbGFzcyhsYW5nKVwiXG4gICAgICAgICAgICB0eXBlPVwiZ3JheVwiXG4gICAgICAgICAgICAoYnV0dG9uQ2xpY2spPVwidG9nZ2xlTGFuZ3VhZ2UobGFuZylcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImxhbmcgPT09IF9yZWNvcmQuZGVmYXVsdExhbmd1YWdlXCJcbiAgICAgICAgICAgIFt0aXRsZV09XCJnZXRUb2dnbGVUaXRsZShsYW5nKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gW2NsYXNzXT1cImdldEljb25DbGFzcyhsYW5nKVwiPjwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWwtMlwiPnt7ICdsYW5ndWFnZS4nICsgbGFuZyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2duLXVpLWJ1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCIhZWRpdFRyYW5zbGF0aW9ucyAmJiBpc011bHRpbGluZ3VhbFwiIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMlwiPlxuICAgIDxnbi11aS1idXR0b25cbiAgICAgICpuZ0Zvcj1cImxldCByZWNvcmRMYW5nIG9mIHNvcnRMYW5ndWFnZXMocmVjb3JkTGFuZ3VhZ2VzKTsgbGV0IGkgPSBpbmRleFwiXG4gICAgICBleHRyYUNsYXNzPVwiZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWJldHdlZW4gYmctd2hpdGUgYm9yZGVyIGJvcmRlci13aGl0ZSByb3VuZGVkIG1iLTEgaC1bMzRweF0gdy1mdWxsXCJcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgJ210LTgnOiBpc0ZpcnN0VW5zdXBwb3J0ZWQoaSksXG4gICAgICAgICcnOiB0cnVlLFxuICAgICAgfVwiXG4gICAgICAoYnV0dG9uQ2xpY2spPVwic3dpdGNoRm9ybUxhbmcocmVjb3JkTGFuZylcIlxuICAgICAgdHlwZT1cIm91dGxpbmVcIlxuICAgICAgZGF0YS10ZXN0PVwibGFuZ1N3aXRjaFwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZ2FwLTIgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgKm5nSWY9XCJyZWNvcmRMYW5nID09PSBmb3JtTGFuZ3VhZ2VcIlxuICAgICAgICAgIGNsYXNzPVwidGV4dC1wcmltYXJ5IG10LTFcIlxuICAgICAgICAgIG5hbWU9XCJpY29ub2lyQ2hlY2tDaXJjbGVcIlxuICAgICAgICA+PC9uZy1pY29uPlxuICAgICAgICA8bmctaWNvblxuICAgICAgICAgICpuZ0lmPVwicmVjb3JkTGFuZyAhPT0gZm9ybUxhbmd1YWdlXCJcbiAgICAgICAgICBjbGFzcz1cInRleHQtZ3JheS04MDAgbXQtMVwiXG4gICAgICAgICAgbmFtZT1cImljb25vaXJDaXJjbGVcIlxuICAgICAgICA+PC9uZy1pY29uPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICpuZ0lmPVwicmVjb3JkTGFuZy5sZW5ndGggPT09IDJcIlxuICAgICAgICAgIFtjbGFzc109XCJnZXRJY29uQ2xhc3MocmVjb3JkTGFuZykgKyAnbXQtMSdcIlxuICAgICAgICA+PC9zcGFuPlxuICAgICAgICA8c3BhbiBbbmdDbGFzc109XCJyZWNvcmRMYW5nID09PSBmb3JtTGFuZ3VhZ2UgPyAndGV4dC1ibGFjaycgOiAnJ1wiPnt7XG4gICAgICAgICAgaXNMYW5nU3VwcG9ydGVkKHJlY29yZExhbmcpXG4gICAgICAgICAgICA/ICgnbGFuZ3VhZ2UuJyArIHJlY29yZExhbmcgfCB0cmFuc2xhdGUpXG4gICAgICAgICAgICA6IHJlY29yZExhbmcudG9VcHBlckNhc2UoKVxuICAgICAgICB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZ2FwLTIgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgKm5nSWY9XCJyZWNvcmRMYW5nID09PSBmb3JtTGFuZ3VhZ2VcIlxuICAgICAgICAgIGNsYXNzPVwidGV4dC14cyB0ZXh0LWJhc2VcIlxuICAgICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICAgID5lZGl0b3IucmVjb3JkLmZvcm0ubXVsdGlsaW5ndWFsLmRlZmF1bHQ8L3NwYW5cbiAgICAgICAgPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cIlxuICAgICAgICAgICAgb3BlbkFjdGlvbk1lbnUocmVjb3JkTGFuZywgdGVtcGxhdGUpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICBcIlxuICAgICAgICAgIGNka092ZXJsYXlPcmlnaW5cbiAgICAgICAgICAjYWN0aW9uTWVudUJ1dHRvblxuICAgICAgICA+XG4gICAgICAgICAgPG5nLWljb24gY2xhc3M9XCJwYi01XCIgbmFtZT1cIm1hdE1vcmVIb3Jpek91dGxpbmVcIj48L25nLWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICAgICAgICAgIDxnbi11aS1hY3Rpb24tbWVudVxuICAgICAgICAgICAgW2NhbkRlbGV0ZV09XCJyZWNvcmRMYW5nICE9PSBfcmVjb3JkLmRlZmF1bHRMYW5ndWFnZVwiXG4gICAgICAgICAgICBwYWdlPVwicmVjb3JkXCJcbiAgICAgICAgICAgIChkZWxldGUpPVwiY29uZmlybURlbGV0ZUFjdGlvbihyZWNvcmRMYW5nKVwiXG4gICAgICAgICAgICAoY2xvc2VBY3Rpb25NZW51KT1cImNsb3NlQWN0aW9uTWVudSgpXCJcbiAgICAgICAgICAgIChzd2l0Y2gpPVwic3dpdGNoRGVmYXVsdExhbmcocmVjb3JkTGFuZylcIlxuICAgICAgICAgID5cbiAgICAgICAgICA8L2duLXVpLWFjdGlvbi1tZW51PlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9kaXY+XG4gICAgPC9nbi11aS1idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -5,8 +5,7 @@ export * from './lib/data-view/data-view.component';
5
5
  export * from './lib/data-view-share/data-view-share.component';
6
6
  export * from './lib/data-view-web-component/data-view-web-component.component';
7
7
  export * from './lib/external-viewer-button/external-viewer-button.component';
8
- export * from './lib/map-view/map-view.component';
9
8
  export * from './lib/gpf-api-dl/gpf-api-dl.component';
9
+ export * from './lib/map-view/map-view.component';
10
10
  export * from './lib/record-meta/record-meta.component';
11
- export * from './lib/external-viewer-button/external-viewer-button.component';
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvcmVjb3JkL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsYUFBYSxDQUFBO0FBQzNCLGNBQWMseURBQXlELENBQUE7QUFDdkUsY0FBYyxxQ0FBcUMsQ0FBQTtBQUNuRCxjQUFjLGlEQUFpRCxDQUFBO0FBQy9ELGNBQWMsaUVBQWlFLENBQUE7QUFDL0UsY0FBYywrREFBK0QsQ0FBQTtBQUM3RSxjQUFjLG1DQUFtQyxDQUFBO0FBQ2pELGNBQWMsdUNBQXVDLENBQUE7QUFDckQsY0FBYyx5Q0FBeUMsQ0FBQTtBQUN2RCxjQUFjLCtEQUErRCxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvZmVhdHVyZS1yZWNvcmQubW9kdWxlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc3RhdGUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRhLXZpZXctcGVybWFsaW5rL2RhdGEtdmlldy1wZXJtYWxpbmsuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0YS12aWV3L2RhdGEtdmlldy5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRhLXZpZXctc2hhcmUvZGF0YS12aWV3LXNoYXJlLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGEtdmlldy13ZWItY29tcG9uZW50L2RhdGEtdmlldy13ZWItY29tcG9uZW50LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2V4dGVybmFsLXZpZXdlci1idXR0b24vZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tYXAtdmlldy9tYXAtdmlldy5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9ncGYtYXBpLWRsL2dwZi1hcGktZGwuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcmVjb3JkLW1ldGEvcmVjb3JkLW1ldGEuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi9leHRlcm5hbC12aWV3ZXItYnV0dG9uLmNvbXBvbmVudCdcbiJdfQ==
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvcmVjb3JkL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsYUFBYSxDQUFBO0FBQzNCLGNBQWMseURBQXlELENBQUE7QUFDdkUsY0FBYyxxQ0FBcUMsQ0FBQTtBQUNuRCxjQUFjLGlEQUFpRCxDQUFBO0FBQy9ELGNBQWMsaUVBQWlFLENBQUE7QUFDL0UsY0FBYywrREFBK0QsQ0FBQTtBQUM3RSxjQUFjLHVDQUF1QyxDQUFBO0FBQ3JELGNBQWMsbUNBQW1DLENBQUE7QUFDakQsY0FBYyx5Q0FBeUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2ZlYXR1cmUtcmVjb3JkLm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0YS12aWV3LXBlcm1hbGluay9kYXRhLXZpZXctcGVybWFsaW5rLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGEtdmlldy9kYXRhLXZpZXcuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0YS12aWV3LXNoYXJlL2RhdGEtdmlldy1zaGFyZS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRhLXZpZXctd2ViLWNvbXBvbmVudC9kYXRhLXZpZXctd2ViLWNvbXBvbmVudC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9leHRlcm5hbC12aWV3ZXItYnV0dG9uL2V4dGVybmFsLXZpZXdlci1idXR0b24uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZ3BmLWFwaS1kbC9ncGYtYXBpLWRsLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21hcC12aWV3L21hcC12aWV3LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3JlY29yZC1tZXRhL3JlY29yZC1tZXRhLmNvbXBvbmVudCdcbiJdfQ==
@@ -60,7 +60,7 @@ export class DataViewComponent {
60
60
  .subscribe();
61
61
  }
62
62
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataViewComponent, deps: [{ token: i1.MdViewFacade }], target: i0.ɵɵFactoryTarget.Component }); }
63
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DataViewComponent, isStandalone: true, selector: "gn-ui-data-view", inputs: { mode: "mode", displaySource: "displaySource", exceedsLimit: "exceedsLimit" }, outputs: { chartConfig$: "chartConfig$" }, ngImport: i0, template: "<div class=\"w-full h-full flex flex-col p-1\">\n <gn-ui-dropdown-selector\n *ngIf=\"dropdownChoices$ | async as choices\"\n [ngClass]=\"{ hidden: !displaySource }\"\n [title]=\"'table.select.data' | translate\"\n class=\"truncate p-1 -mx-1 self-end mb-1\"\n extraBtnClass=\"!text-primary font-sans font-medium\"\n [choices]=\"choices\"\n (selectValue)=\"selectLink($event)\"\n ></gn-ui-dropdown-selector>\n <ng-container *ngIf=\"hidePreview; else dataView\">\n <gn-ui-popup-alert\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"block h-12 p-1\"\n >\n <span translate>record.feature.limit</span>\n </gn-ui-popup-alert>\n </ng-container>\n <ng-template #dataView>\n <div class=\"relative h-[460px]\">\n <gn-ui-table-view\n *ngIf=\"mode === 'table'\"\n [cacheActive]=\"cacheActive$ | async\"\n [link]=\"selectedLink$ | async\"\n ></gn-ui-table-view>\n <gn-ui-chart-view\n *ngIf=\"mode === 'chart'\"\n (chartConfig$)=\"setChartConfig($event)\"\n [cacheActive]=\"cacheActive$ | async\"\n [link]=\"selectedLink$ | async\"\n ></gn-ui-chart-view>\n </div>\n </ng-template>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "component", type: DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth", "disabled"], outputs: ["selectValue"] }, { kind: "component", type: TableViewComponent, selector: "gn-ui-table-view", inputs: ["cacheActive", "link"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: ChartViewComponent, selector: "gn-ui-chart-view", inputs: ["cacheActive", "link", "aggregation", "xProperty", "yProperty", "chartType"], outputs: ["chartConfig$"] }, { kind: "component", type: PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
63
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DataViewComponent, isStandalone: true, selector: "gn-ui-data-view", inputs: { mode: "mode", displaySource: "displaySource", exceedsLimit: "exceedsLimit" }, outputs: { chartConfig$: "chartConfig$" }, ngImport: i0, template: "<div class=\"w-full h-full flex flex-col gap-[13px]\">\n <div\n class=\"w-full py-4 px-5 bg-white border border-color-border rounded-lg mt-6\"\n >\n <gn-ui-dropdown-selector\n *ngIf=\"dropdownChoices$ | async as choices\"\n [ngClass]=\"{ hidden: !displaySource }\"\n [title]=\"'table.select.data' | translate\"\n class=\"h-[44px] w-full\"\n extraBtnClass=\"font-sans font-bold\"\n [choices]=\"choices\"\n (selectValue)=\"selectLink($event)\"\n ></gn-ui-dropdown-selector>\n </div>\n <ng-container *ngIf=\"hidePreview; else dataView\">\n <gn-ui-popup-alert\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"block h-12 p-1\"\n >\n <span translate>record.feature.limit</span>\n </gn-ui-popup-alert>\n </ng-container>\n <ng-template #dataView>\n <div class=\"relative h-[460px]\">\n <gn-ui-table-view\n *ngIf=\"mode === 'table'\"\n [cacheActive]=\"cacheActive$ | async\"\n [link]=\"selectedLink$ | async\"\n [featureCatalog]=\"mdViewFacade.featureCatalog$ | async\"\n ></gn-ui-table-view>\n <gn-ui-chart-view\n *ngIf=\"mode === 'chart'\"\n (chartConfig$)=\"setChartConfig($event)\"\n [cacheActive]=\"cacheActive$ | async\"\n [link]=\"selectedLink$ | async\"\n [featureCatalog]=\"mdViewFacade.featureCatalog$ | async\"\n ></gn-ui-chart-view>\n </div>\n </ng-template>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "component", type: DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth", "disabled"], outputs: ["selectValue"] }, { kind: "component", type: TableViewComponent, selector: "gn-ui-table-view", inputs: ["featureCatalog", "cacheActive", "link"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: ChartViewComponent, selector: "gn-ui-chart-view", inputs: ["featureCatalog", "cacheActive", "link", "aggregation", "xProperty", "yProperty", "chartType"], outputs: ["chartConfig$"] }, { kind: "component", type: PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
64
64
  }
65
65
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataViewComponent, decorators: [{
66
66
  type: Component,
@@ -71,7 +71,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
71
71
  TranslateModule,
72
72
  ChartViewComponent,
73
73
  PopupAlertComponent,
74
- ], template: "<div class=\"w-full h-full flex flex-col p-1\">\n <gn-ui-dropdown-selector\n *ngIf=\"dropdownChoices$ | async as choices\"\n [ngClass]=\"{ hidden: !displaySource }\"\n [title]=\"'table.select.data' | translate\"\n class=\"truncate p-1 -mx-1 self-end mb-1\"\n extraBtnClass=\"!text-primary font-sans font-medium\"\n [choices]=\"choices\"\n (selectValue)=\"selectLink($event)\"\n ></gn-ui-dropdown-selector>\n <ng-container *ngIf=\"hidePreview; else dataView\">\n <gn-ui-popup-alert\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"block h-12 p-1\"\n >\n <span translate>record.feature.limit</span>\n </gn-ui-popup-alert>\n </ng-container>\n <ng-template #dataView>\n <div class=\"relative h-[460px]\">\n <gn-ui-table-view\n *ngIf=\"mode === 'table'\"\n [cacheActive]=\"cacheActive$ | async\"\n [link]=\"selectedLink$ | async\"\n ></gn-ui-table-view>\n <gn-ui-chart-view\n *ngIf=\"mode === 'chart'\"\n (chartConfig$)=\"setChartConfig($event)\"\n [cacheActive]=\"cacheActive$ | async\"\n [link]=\"selectedLink$ | async\"\n ></gn-ui-chart-view>\n </div>\n </ng-template>\n</div>\n" }]
74
+ ], template: "<div class=\"w-full h-full flex flex-col gap-[13px]\">\n <div\n class=\"w-full py-4 px-5 bg-white border border-color-border rounded-lg mt-6\"\n >\n <gn-ui-dropdown-selector\n *ngIf=\"dropdownChoices$ | async as choices\"\n [ngClass]=\"{ hidden: !displaySource }\"\n [title]=\"'table.select.data' | translate\"\n class=\"h-[44px] w-full\"\n extraBtnClass=\"font-sans font-bold\"\n [choices]=\"choices\"\n (selectValue)=\"selectLink($event)\"\n ></gn-ui-dropdown-selector>\n </div>\n <ng-container *ngIf=\"hidePreview; else dataView\">\n <gn-ui-popup-alert\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"block h-12 p-1\"\n >\n <span translate>record.feature.limit</span>\n </gn-ui-popup-alert>\n </ng-container>\n <ng-template #dataView>\n <div class=\"relative h-[460px]\">\n <gn-ui-table-view\n *ngIf=\"mode === 'table'\"\n [cacheActive]=\"cacheActive$ | async\"\n [link]=\"selectedLink$ | async\"\n [featureCatalog]=\"mdViewFacade.featureCatalog$ | async\"\n ></gn-ui-table-view>\n <gn-ui-chart-view\n *ngIf=\"mode === 'chart'\"\n (chartConfig$)=\"setChartConfig($event)\"\n [cacheActive]=\"cacheActive$ | async\"\n [link]=\"selectedLink$ | async\"\n [featureCatalog]=\"mdViewFacade.featureCatalog$ | async\"\n ></gn-ui-chart-view>\n </div>\n </ng-template>\n</div>\n" }]
75
75
  }], ctorParameters: () => [{ type: i1.MdViewFacade }], propDecorators: { mode: [{
76
76
  type: Input
77
77
  }], displaySource: [{
@@ -81,4 +81,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
81
81
  }], chartConfig$: [{
82
82
  type: Output
83
83
  }] } });
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXcvZGF0YS12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXcvZGF0YS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUN0RixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBTSxNQUFNLE1BQU0sQ0FBQTtBQUN6RCxPQUFPLEVBQXdCLEdBQUcsRUFBYSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBR3ZDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBQ2hGLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsa0JBQWtCLEdBQ25CLE1BQU0sNENBQTRDLENBQUE7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQTs7Ozs7QUFpQjNFLE1BQU0sT0FBTyxpQkFBaUI7SUFHNUIsSUFBYSxZQUFZLENBQUMsS0FBYztRQUN0QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUM5QixDQUFDO0lBZ0NE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QkFBaUIsOE1DcEM5Qix1c0NBbUNBLHlERFBJLFlBQVksc1JBQ1oseUJBQXlCLHFOQUN6QixrQkFBa0IsNkZBQ2xCLGVBQWUsbU9BQ2Ysa0JBQWtCLCtLQUNsQixtQkFBbUI7OzRGQUdWLGlCQUFpQjtrQkFmN0IsU0FBUzsrQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWix5QkFBeUI7d0JBQ3pCLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLG1CQUFtQjtxQkFDcEI7aUZBR1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ08sWUFBWTtzQkFBeEIsS0FBSztnQkFHSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IGdldExpbmtMYWJlbCwgZ2V0TGlua1ByaW9yaXR5IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG9mIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGZpbmFsaXplLCBtYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBNZFZpZXdGYWNhZGUgfSBmcm9tICcuLi9zdGF0ZSdcbmltcG9ydCB7IERhdGF2aXpDb25maWd1cmF0aW9uTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9kYXRhdml6L2RhdGF2aXotY29uZmlndXJhdGlvbi5tb2RlbCdcbmltcG9ydCB7IERhdGFzZXRPbmxpbmVSZXNvdXJjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IERyb3Bkb3duU2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQge1xuICBDaGFydFZpZXdDb21wb25lbnQsXG4gIFRhYmxlVmlld0NvbXBvbmVudCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2RhdGF2aXovc3JjJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IFBvcHVwQWxlcnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL3dpZGdldHMvc3JjJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1kYXRhLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0YS12aWV3LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRHJvcGRvd25TZWxlY3RvckNvbXBvbmVudCxcbiAgICBUYWJsZVZpZXdDb21wb25lbnQsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIENoYXJ0Vmlld0NvbXBvbmVudCxcbiAgICBQb3B1cEFsZXJ0Q29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEYXRhVmlld0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIG1vZGU6ICd0YWJsZScgfCAnY2hhcnQnXG4gIEBJbnB1dCgpIGRpc3BsYXlTb3VyY2UgPSB0cnVlXG4gIEBJbnB1dCgpIHNldCBleGNlZWRzTGltaXQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmV4Y2x1ZGVXZnMkLm5leHQodmFsdWUpXG4gIH1cbiAgQE91dHB1dCgpIGNoYXJ0Q29uZmlnJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGF0YXZpekNvbmZpZ3VyYXRpb25Nb2RlbD4obnVsbClcbiAgY2FjaGVBY3RpdmUkID0gdGhpcy5tZFZpZXdGYWNhZGUuaXNIaWdoVXBkYXRlRnJlcXVlbmN5JC5waXBlKFxuICAgIG1hcCgoaGlnaEYpID0+ICFoaWdoRilcbiAgKVxuICBoaWRlUHJldmlldyA9IGZhbHNlXG4gIGV4Y2x1ZGVXZnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSlcbiAgY29tcGF0aWJsZURhdGFMaW5rcyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLm1kVmlld0ZhY2FkZS5kYXRhTGlua3MkLFxuICAgIHRoaXMubWRWaWV3RmFjYWRlLmdlb0RhdGFMaW5rcyQsXG4gIF0pLnBpcGUoXG4gICAgbWFwKChbZGF0YUxpbmtzLCBnZW9EYXRhTGlua3NdKSA9PiB7XG4gICAgICBjb25zdCBhID0gWy4uLmRhdGFMaW5rcywgLi4uZ2VvRGF0YUxpbmtzXVxuICAgICAgYS5zb3J0KChhLCBiKSA9PiBnZXRMaW5rUHJpb3JpdHkoYikgLSBnZXRMaW5rUHJpb3JpdHkoYSkpXG4gICAgICByZXR1cm4gYVxuICAgIH0pXG4gIClcbiAgZHJvcGRvd25DaG9pY2VzJCA9IHRoaXMuY29tcGF0aWJsZURhdGFMaW5rcyQucGlwZShcbiAgICB0YXAoKGxpbmtzKSA9PiB7XG4gICAgICBpZiAobGlua3MuaW5kZXhPZih0aGlzLnNlbGVjdGVkTGluayQudmFsdWUpID09PSAtMSkge1xuICAgICAgICB0aGlzLnNlbGVjdExpbmsoSlNPTi5zdHJpbmdpZnkobGlua3NbMF0pKVxuICAgICAgfVxuICAgIH0pLFxuICAgIG1hcCgobGlua3MpID0+XG4gICAgICBsaW5rcy5tYXAoKGxpbmspID0+ICh7XG4gICAgICAgIGxhYmVsOiBnZXRMaW5rTGFiZWwobGluayksXG4gICAgICAgIHZhbHVlOiBKU09OLnN0cmluZ2lmeShsaW5rKSxcbiAgICAgIH0pKVxuICAgIClcbiAgKVxuICBzZWxlY3RlZExpbmskID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEYXRhc2V0T25saW5lUmVzb3VyY2U+KG51bGwpXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtZFZpZXdGYWNhZGU6IE1kVmlld0ZhY2FkZSkge31cblxuICBzZXRDaGFydENvbmZpZyhldmVudDogRGF0YXZpekNvbmZpZ3VyYXRpb25Nb2RlbCkge1xuICAgIHRoaXMubWRWaWV3RmFjYWRlLnNldENoYXJ0Q29uZmlnKGV2ZW50KVxuICB9XG5cbiAgc2VsZWN0TGluayhsaW5rQXNTdHJpbmc6IHN0cmluZykge1xuICAgIGNvbnN0IGxpbms6IERhdGFzZXRPbmxpbmVSZXNvdXJjZSA9IEpTT04ucGFyc2UobGlua0FzU3RyaW5nKVxuICAgIGxpbmsudXJsID0gbmV3IFVSTChsaW5rLnVybClcbiAgICB0aGlzLmV4Y2x1ZGVXZnMkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKChleGNsdWRlV2ZzKSA9PiB7XG4gICAgICAgICAgdGhpcy5oaWRlUHJldmlldyA9XG4gICAgICAgICAgICBsaW5rWydhY2Nlc3NTZXJ2aWNlUHJvdG9jb2wnXSA9PT0gJ3dmcycgJiZcbiAgICAgICAgICAgIGV4Y2x1ZGVXZnMgJiZcbiAgICAgICAgICAgIHRoaXMubW9kZSA9PT0gJ2NoYXJ0J1xuICAgICAgICAgICAgICA/IHRydWVcbiAgICAgICAgICAgICAgOiBmYWxzZVxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRMaW5rJC5uZXh0KGxpbmspXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKClcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInctZnVsbCBoLWZ1bGwgZmxleCBmbGV4LWNvbCBwLTFcIj5cbiAgPGduLXVpLWRyb3Bkb3duLXNlbGVjdG9yXG4gICAgKm5nSWY9XCJkcm9wZG93bkNob2ljZXMkIHwgYXN5bmMgYXMgY2hvaWNlc1wiXG4gICAgW25nQ2xhc3NdPVwieyBoaWRkZW46ICFkaXNwbGF5U291cmNlIH1cIlxuICAgIFt0aXRsZV09XCIndGFibGUuc2VsZWN0LmRhdGEnIHwgdHJhbnNsYXRlXCJcbiAgICBjbGFzcz1cInRydW5jYXRlIHAtMSAtbXgtMSBzZWxmLWVuZCBtYi0xXCJcbiAgICBleHRyYUJ0bkNsYXNzPVwiIXRleHQtcHJpbWFyeSBmb250LXNhbnMgZm9udC1tZWRpdW1cIlxuICAgIFtjaG9pY2VzXT1cImNob2ljZXNcIlxuICAgIChzZWxlY3RWYWx1ZSk9XCJzZWxlY3RMaW5rKCRldmVudClcIlxuICA+PC9nbi11aS1kcm9wZG93bi1zZWxlY3Rvcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhpZGVQcmV2aWV3OyBlbHNlIGRhdGFWaWV3XCI+XG4gICAgPGduLXVpLXBvcHVwLWFsZXJ0XG4gICAgICB0eXBlPVwid2FybmluZ1wiXG4gICAgICBpY29uPVwibWF0RXJyb3JPdXRsaW5lT3V0bGluZVwiXG4gICAgICBjbGFzcz1cImJsb2NrIGgtMTIgcC0xXCJcbiAgICA+XG4gICAgICA8c3BhbiB0cmFuc2xhdGU+cmVjb3JkLmZlYXR1cmUubGltaXQ8L3NwYW4+XG4gICAgPC9nbi11aS1wb3B1cC1hbGVydD5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy10ZW1wbGF0ZSAjZGF0YVZpZXc+XG4gICAgPGRpdiBjbGFzcz1cInJlbGF0aXZlIGgtWzQ2MHB4XVwiPlxuICAgICAgPGduLXVpLXRhYmxlLXZpZXdcbiAgICAgICAgKm5nSWY9XCJtb2RlID09PSAndGFibGUnXCJcbiAgICAgICAgW2NhY2hlQWN0aXZlXT1cImNhY2hlQWN0aXZlJCB8IGFzeW5jXCJcbiAgICAgICAgW2xpbmtdPVwic2VsZWN0ZWRMaW5rJCB8IGFzeW5jXCJcbiAgICAgID48L2duLXVpLXRhYmxlLXZpZXc+XG4gICAgICA8Z24tdWktY2hhcnQtdmlld1xuICAgICAgICAqbmdJZj1cIm1vZGUgPT09ICdjaGFydCdcIlxuICAgICAgICAoY2hhcnRDb25maWckKT1cInNldENoYXJ0Q29uZmlnKCRldmVudClcIlxuICAgICAgICBbY2FjaGVBY3RpdmVdPVwiY2FjaGVBY3RpdmUkIHwgYXN5bmNcIlxuICAgICAgICBbbGlua109XCJzZWxlY3RlZExpbmskIHwgYXN5bmNcIlxuICAgICAgPjwvZ24tdWktY2hhcnQtdmlldz5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuIl19
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXcvZGF0YS12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXcvZGF0YS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUN0RixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBTSxNQUFNLE1BQU0sQ0FBQTtBQUN6RCxPQUFPLEVBQXdCLEdBQUcsRUFBYSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBR3ZDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBQ2hGLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsa0JBQWtCLEdBQ25CLE1BQU0sNENBQTRDLENBQUE7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQTs7Ozs7QUFpQjNFLE1BQU0sT0FBTyxpQkFBaUI7SUFHNUIsSUFBYSxZQUFZLENBQUMsS0FBYztRQUN0QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUM5QixDQUFDO0lBZ0NE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QkFBaUIsOE1DcEM5QixnN0NBeUNBLHlERGJJLFlBQVksc1JBQ1oseUJBQXlCLHFOQUN6QixrQkFBa0IsK0dBQ2xCLGVBQWUsbU9BQ2Ysa0JBQWtCLGlNQUNsQixtQkFBbUI7OzRGQUdWLGlCQUFpQjtrQkFmN0IsU0FBUzsrQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWix5QkFBeUI7d0JBQ3pCLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLG1CQUFtQjtxQkFDcEI7aUZBR1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ08sWUFBWTtzQkFBeEIsS0FBSztnQkFHSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IGdldExpbmtMYWJlbCwgZ2V0TGlua1ByaW9yaXR5IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG9mIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGZpbmFsaXplLCBtYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBNZFZpZXdGYWNhZGUgfSBmcm9tICcuLi9zdGF0ZSdcbmltcG9ydCB7IERhdGF2aXpDb25maWd1cmF0aW9uTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9kYXRhdml6L2RhdGF2aXotY29uZmlndXJhdGlvbi5tb2RlbCdcbmltcG9ydCB7IERhdGFzZXRPbmxpbmVSZXNvdXJjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IERyb3Bkb3duU2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQge1xuICBDaGFydFZpZXdDb21wb25lbnQsXG4gIFRhYmxlVmlld0NvbXBvbmVudCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2RhdGF2aXovc3JjJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IFBvcHVwQWxlcnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL3dpZGdldHMvc3JjJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1kYXRhLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0YS12aWV3LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRHJvcGRvd25TZWxlY3RvckNvbXBvbmVudCxcbiAgICBUYWJsZVZpZXdDb21wb25lbnQsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIENoYXJ0Vmlld0NvbXBvbmVudCxcbiAgICBQb3B1cEFsZXJ0Q29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEYXRhVmlld0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIG1vZGU6ICd0YWJsZScgfCAnY2hhcnQnXG4gIEBJbnB1dCgpIGRpc3BsYXlTb3VyY2UgPSB0cnVlXG4gIEBJbnB1dCgpIHNldCBleGNlZWRzTGltaXQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmV4Y2x1ZGVXZnMkLm5leHQodmFsdWUpXG4gIH1cbiAgQE91dHB1dCgpIGNoYXJ0Q29uZmlnJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGF0YXZpekNvbmZpZ3VyYXRpb25Nb2RlbD4obnVsbClcbiAgY2FjaGVBY3RpdmUkID0gdGhpcy5tZFZpZXdGYWNhZGUuaXNIaWdoVXBkYXRlRnJlcXVlbmN5JC5waXBlKFxuICAgIG1hcCgoaGlnaEYpID0+ICFoaWdoRilcbiAgKVxuICBoaWRlUHJldmlldyA9IGZhbHNlXG4gIGV4Y2x1ZGVXZnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSlcbiAgY29tcGF0aWJsZURhdGFMaW5rcyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLm1kVmlld0ZhY2FkZS5kYXRhTGlua3MkLFxuICAgIHRoaXMubWRWaWV3RmFjYWRlLmdlb0RhdGFMaW5rcyQsXG4gIF0pLnBpcGUoXG4gICAgbWFwKChbZGF0YUxpbmtzLCBnZW9EYXRhTGlua3NdKSA9PiB7XG4gICAgICBjb25zdCBhID0gWy4uLmRhdGFMaW5rcywgLi4uZ2VvRGF0YUxpbmtzXVxuICAgICAgYS5zb3J0KChhLCBiKSA9PiBnZXRMaW5rUHJpb3JpdHkoYikgLSBnZXRMaW5rUHJpb3JpdHkoYSkpXG4gICAgICByZXR1cm4gYVxuICAgIH0pXG4gIClcbiAgZHJvcGRvd25DaG9pY2VzJCA9IHRoaXMuY29tcGF0aWJsZURhdGFMaW5rcyQucGlwZShcbiAgICB0YXAoKGxpbmtzKSA9PiB7XG4gICAgICBpZiAobGlua3MuaW5kZXhPZih0aGlzLnNlbGVjdGVkTGluayQudmFsdWUpID09PSAtMSkge1xuICAgICAgICB0aGlzLnNlbGVjdExpbmsoSlNPTi5zdHJpbmdpZnkobGlua3NbMF0pKVxuICAgICAgfVxuICAgIH0pLFxuICAgIG1hcCgobGlua3MpID0+XG4gICAgICBsaW5rcy5tYXAoKGxpbmspID0+ICh7XG4gICAgICAgIGxhYmVsOiBnZXRMaW5rTGFiZWwobGluayksXG4gICAgICAgIHZhbHVlOiBKU09OLnN0cmluZ2lmeShsaW5rKSxcbiAgICAgIH0pKVxuICAgIClcbiAgKVxuICBzZWxlY3RlZExpbmskID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEYXRhc2V0T25saW5lUmVzb3VyY2U+KG51bGwpXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtZFZpZXdGYWNhZGU6IE1kVmlld0ZhY2FkZSkge31cblxuICBzZXRDaGFydENvbmZpZyhldmVudDogRGF0YXZpekNvbmZpZ3VyYXRpb25Nb2RlbCkge1xuICAgIHRoaXMubWRWaWV3RmFjYWRlLnNldENoYXJ0Q29uZmlnKGV2ZW50KVxuICB9XG5cbiAgc2VsZWN0TGluayhsaW5rQXNTdHJpbmc6IHN0cmluZykge1xuICAgIGNvbnN0IGxpbms6IERhdGFzZXRPbmxpbmVSZXNvdXJjZSA9IEpTT04ucGFyc2UobGlua0FzU3RyaW5nKVxuICAgIGxpbmsudXJsID0gbmV3IFVSTChsaW5rLnVybClcbiAgICB0aGlzLmV4Y2x1ZGVXZnMkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKChleGNsdWRlV2ZzKSA9PiB7XG4gICAgICAgICAgdGhpcy5oaWRlUHJldmlldyA9XG4gICAgICAgICAgICBsaW5rWydhY2Nlc3NTZXJ2aWNlUHJvdG9jb2wnXSA9PT0gJ3dmcycgJiZcbiAgICAgICAgICAgIGV4Y2x1ZGVXZnMgJiZcbiAgICAgICAgICAgIHRoaXMubW9kZSA9PT0gJ2NoYXJ0J1xuICAgICAgICAgICAgICA/IHRydWVcbiAgICAgICAgICAgICAgOiBmYWxzZVxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRMaW5rJC5uZXh0KGxpbmspXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKClcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInctZnVsbCBoLWZ1bGwgZmxleCBmbGV4LWNvbCBnYXAtWzEzcHhdXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cInctZnVsbCBweS00IHB4LTUgYmctd2hpdGUgYm9yZGVyIGJvcmRlci1jb2xvci1ib3JkZXIgcm91bmRlZC1sZyBtdC02XCJcbiAgPlxuICAgIDxnbi11aS1kcm9wZG93bi1zZWxlY3RvclxuICAgICAgKm5nSWY9XCJkcm9wZG93bkNob2ljZXMkIHwgYXN5bmMgYXMgY2hvaWNlc1wiXG4gICAgICBbbmdDbGFzc109XCJ7IGhpZGRlbjogIWRpc3BsYXlTb3VyY2UgfVwiXG4gICAgICBbdGl0bGVdPVwiJ3RhYmxlLnNlbGVjdC5kYXRhJyB8IHRyYW5zbGF0ZVwiXG4gICAgICBjbGFzcz1cImgtWzQ0cHhdIHctZnVsbFwiXG4gICAgICBleHRyYUJ0bkNsYXNzPVwiZm9udC1zYW5zIGZvbnQtYm9sZFwiXG4gICAgICBbY2hvaWNlc109XCJjaG9pY2VzXCJcbiAgICAgIChzZWxlY3RWYWx1ZSk9XCJzZWxlY3RMaW5rKCRldmVudClcIlxuICAgID48L2duLXVpLWRyb3Bkb3duLXNlbGVjdG9yPlxuICA8L2Rpdj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhpZGVQcmV2aWV3OyBlbHNlIGRhdGFWaWV3XCI+XG4gICAgPGduLXVpLXBvcHVwLWFsZXJ0XG4gICAgICB0eXBlPVwid2FybmluZ1wiXG4gICAgICBpY29uPVwibWF0RXJyb3JPdXRsaW5lT3V0bGluZVwiXG4gICAgICBjbGFzcz1cImJsb2NrIGgtMTIgcC0xXCJcbiAgICA+XG4gICAgICA8c3BhbiB0cmFuc2xhdGU+cmVjb3JkLmZlYXR1cmUubGltaXQ8L3NwYW4+XG4gICAgPC9nbi11aS1wb3B1cC1hbGVydD5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy10ZW1wbGF0ZSAjZGF0YVZpZXc+XG4gICAgPGRpdiBjbGFzcz1cInJlbGF0aXZlIGgtWzQ2MHB4XVwiPlxuICAgICAgPGduLXVpLXRhYmxlLXZpZXdcbiAgICAgICAgKm5nSWY9XCJtb2RlID09PSAndGFibGUnXCJcbiAgICAgICAgW2NhY2hlQWN0aXZlXT1cImNhY2hlQWN0aXZlJCB8IGFzeW5jXCJcbiAgICAgICAgW2xpbmtdPVwic2VsZWN0ZWRMaW5rJCB8IGFzeW5jXCJcbiAgICAgICAgW2ZlYXR1cmVDYXRhbG9nXT1cIm1kVmlld0ZhY2FkZS5mZWF0dXJlQ2F0YWxvZyQgfCBhc3luY1wiXG4gICAgICA+PC9nbi11aS10YWJsZS12aWV3PlxuICAgICAgPGduLXVpLWNoYXJ0LXZpZXdcbiAgICAgICAgKm5nSWY9XCJtb2RlID09PSAnY2hhcnQnXCJcbiAgICAgICAgKGNoYXJ0Q29uZmlnJCk9XCJzZXRDaGFydENvbmZpZygkZXZlbnQpXCJcbiAgICAgICAgW2NhY2hlQWN0aXZlXT1cImNhY2hlQWN0aXZlJCB8IGFzeW5jXCJcbiAgICAgICAgW2xpbmtdPVwic2VsZWN0ZWRMaW5rJCB8IGFzeW5jXCJcbiAgICAgICAgW2ZlYXR1cmVDYXRhbG9nXT1cIm1kVmlld0ZhY2FkZS5mZWF0dXJlQ2F0YWxvZyQgfCBhc3luY1wiXG4gICAgICA+PC9nbi11aS1jaGFydC12aWV3PlxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
@@ -19,7 +19,7 @@ export class DataViewShareComponent {
19
19
  this.wcEmbedderBaseUrl = wcEmbedderBaseUrl;
20
20
  }
21
21
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataViewShareComponent, deps: [{ token: WEB_COMPONENT_EMBEDDER_URL, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
22
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DataViewShareComponent, isStandalone: true, selector: "gn-ui-data-view-share", inputs: { viewType: "viewType" }, ngImport: i0, template: "<div class=\"px-5 my-1\">\n <mat-tab-group\n [selectedIndex]=\"0\"\n animationDuration=\"0ms\"\n mat-stretch-tabs=\"false\"\n mat-align-tabs=\"start\"\n [disableRipple]=\"!wcEmbedderBaseUrl\"\n >\n <mat-tab *ngIf=\"wcEmbedderBaseUrl\">\n <ng-template mat-tab-label>\n <span class=\"tab-header-label-gray\" translate>share.tab.permalink</span>\n </ng-template>\n <gn-ui-data-view-permalink\n [viewType]=\"viewType\"\n ></gn-ui-data-view-permalink>\n </mat-tab>\n <mat-tab>\n <ng-template mat-tab-label>\n <span\n [class]=\"\n wcEmbedderBaseUrl\n ? 'tab-header-label-gray'\n : 'single-tab-header-label-gray'\n \"\n translate\n >share.tab.webComponent</span\n >\n </ng-template>\n <gn-ui-data-view-web-component\n [viewType]=\"viewType\"\n ></gn-ui-data-view-web-component>\n </mat-tab>\n </mat-tab-group>\n</div>\n", styles: ["::ng-deep .mat-mdc-tab.mdc-tab.mdc-tab--active .tab-header-label-gray{opacity:100%;font-weight:700}.tab-header-label-gray{@apply text-sm text-gray-700 opacity-75 hover:text-gray-900;}.single-tab-header-label-gray{@apply text-sm text-gray-900;}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatTabsModule }, { kind: "directive", type: i2.MatTabLabel, selector: "[mat-tab-label], [matTabLabel]" }, { kind: "component", type: i2.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: i2.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor", "aria-label", "aria-labelledby"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "component", type: DataViewPermalinkComponent, selector: "gn-ui-data-view-permalink", inputs: ["viewType"] }, { kind: "component", type: DataViewWebComponentComponent, selector: "gn-ui-data-view-web-component", inputs: ["viewType"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DataViewShareComponent, isStandalone: true, selector: "gn-ui-data-view-share", inputs: { viewType: "viewType" }, ngImport: i0, template: "<div>\n <mat-tab-group\n [selectedIndex]=\"0\"\n animationDuration=\"0ms\"\n mat-stretch-tabs=\"false\"\n mat-align-tabs=\"start\"\n [disableRipple]=\"!wcEmbedderBaseUrl\"\n >\n <mat-tab *ngIf=\"wcEmbedderBaseUrl\">\n <ng-template mat-tab-label>\n <span class=\"tab-header-label-gray\" translate>share.tab.permalink</span>\n </ng-template>\n <gn-ui-data-view-permalink\n [viewType]=\"viewType\"\n ></gn-ui-data-view-permalink>\n </mat-tab>\n <mat-tab>\n <ng-template mat-tab-label>\n <span\n [class]=\"\n wcEmbedderBaseUrl\n ? 'tab-header-label-gray'\n : 'single-tab-header-label-gray'\n \"\n translate\n >share.tab.webComponent</span\n >\n </ng-template>\n <gn-ui-data-view-web-component\n [viewType]=\"viewType\"\n ></gn-ui-data-view-web-component>\n </mat-tab>\n </mat-tab-group>\n</div>\n", styles: ["::ng-deep .mat-mdc-tab.mdc-tab.mdc-tab--active .tab-header-label-gray{opacity:100%;font-weight:700}.tab-header-label-gray{@apply text-sm text-gray-700 opacity-75 hover:text-gray-900;}.single-tab-header-label-gray{@apply text-sm text-gray-900;}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatTabsModule }, { kind: "directive", type: i2.MatTabLabel, selector: "[mat-tab-label], [matTabLabel]" }, { kind: "component", type: i2.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: i2.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor", "aria-label", "aria-labelledby"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "component", type: DataViewPermalinkComponent, selector: "gn-ui-data-view-permalink", inputs: ["viewType"] }, { kind: "component", type: DataViewWebComponentComponent, selector: "gn-ui-data-view-web-component", inputs: ["viewType"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
23
23
  }
24
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataViewShareComponent, decorators: [{
25
25
  type: Component,
@@ -29,7 +29,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
29
29
  DataViewPermalinkComponent,
30
30
  DataViewWebComponentComponent,
31
31
  TranslateModule,
32
- ], standalone: true, template: "<div class=\"px-5 my-1\">\n <mat-tab-group\n [selectedIndex]=\"0\"\n animationDuration=\"0ms\"\n mat-stretch-tabs=\"false\"\n mat-align-tabs=\"start\"\n [disableRipple]=\"!wcEmbedderBaseUrl\"\n >\n <mat-tab *ngIf=\"wcEmbedderBaseUrl\">\n <ng-template mat-tab-label>\n <span class=\"tab-header-label-gray\" translate>share.tab.permalink</span>\n </ng-template>\n <gn-ui-data-view-permalink\n [viewType]=\"viewType\"\n ></gn-ui-data-view-permalink>\n </mat-tab>\n <mat-tab>\n <ng-template mat-tab-label>\n <span\n [class]=\"\n wcEmbedderBaseUrl\n ? 'tab-header-label-gray'\n : 'single-tab-header-label-gray'\n \"\n translate\n >share.tab.webComponent</span\n >\n </ng-template>\n <gn-ui-data-view-web-component\n [viewType]=\"viewType\"\n ></gn-ui-data-view-web-component>\n </mat-tab>\n </mat-tab-group>\n</div>\n", styles: ["::ng-deep .mat-mdc-tab.mdc-tab.mdc-tab--active .tab-header-label-gray{opacity:100%;font-weight:700}.tab-header-label-gray{@apply text-sm text-gray-700 opacity-75 hover:text-gray-900;}.single-tab-header-label-gray{@apply text-sm text-gray-900;}\n"] }]
32
+ ], standalone: true, template: "<div>\n <mat-tab-group\n [selectedIndex]=\"0\"\n animationDuration=\"0ms\"\n mat-stretch-tabs=\"false\"\n mat-align-tabs=\"start\"\n [disableRipple]=\"!wcEmbedderBaseUrl\"\n >\n <mat-tab *ngIf=\"wcEmbedderBaseUrl\">\n <ng-template mat-tab-label>\n <span class=\"tab-header-label-gray\" translate>share.tab.permalink</span>\n </ng-template>\n <gn-ui-data-view-permalink\n [viewType]=\"viewType\"\n ></gn-ui-data-view-permalink>\n </mat-tab>\n <mat-tab>\n <ng-template mat-tab-label>\n <span\n [class]=\"\n wcEmbedderBaseUrl\n ? 'tab-header-label-gray'\n : 'single-tab-header-label-gray'\n \"\n translate\n >share.tab.webComponent</span\n >\n </ng-template>\n <gn-ui-data-view-web-component\n [viewType]=\"viewType\"\n ></gn-ui-data-view-web-component>\n </mat-tab>\n </mat-tab-group>\n</div>\n", styles: ["::ng-deep .mat-mdc-tab.mdc-tab.mdc-tab--active .tab-header-label-gray{opacity:100%;font-weight:700}.tab-header-label-gray{@apply text-sm text-gray-700 opacity-75 hover:text-gray-900;}.single-tab-header-label-gray{@apply text-sm text-gray-900;}\n"] }]
33
33
  }], ctorParameters: () => [{ type: undefined, decorators: [{
34
34
  type: Optional
35
35
  }, {
@@ -38,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
38
38
  }] }], propDecorators: { viewType: [{
39
39
  type: Input
40
40
  }] } });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LXNoYXJlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXctc2hhcmUvZGF0YS12aWV3LXNoYXJlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXctc2hhcmUvZGF0YS12aWV3LXNoYXJlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFDTCwwQkFBMEIsRUFDMUIsMEJBQTBCLEdBQzNCLE1BQU0sc0RBQXNELENBQUE7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQTtBQUM1RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7Ozs7O0FBZ0JyRCxNQUFNLE9BQU8sc0JBQXNCO0lBR2pDLElBQ0ksUUFBUSxDQUFDLEtBQWE7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUE7SUFDeEIsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQTtJQUN2QixDQUFDO0lBQ0QsWUFHWSxpQkFBeUI7UUFBekIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFRO0lBQ2xDLENBQUM7K0dBZk8sc0JBQXNCLGtCQWF2QiwwQkFBMEI7bUdBYnpCLHNCQUFzQixtSEM5Qm5DLGcrQkFrQ0EsOFNEWkksWUFBWSxrSUFDWixhQUFhLHN1QkFDYiwwQkFBMEIsNEZBQzFCLDZCQUE2QiwrRkFDN0IsZUFBZTs7NEZBSU4sc0JBQXNCO2tCQWRsQyxTQUFTOytCQUNFLHVCQUF1QixtQkFHaEIsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsMEJBQTBCO3dCQUMxQiw2QkFBNkI7d0JBQzdCLGVBQWU7cUJBQ2hCLGNBQ1csSUFBSTs7MEJBY2IsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQywwQkFBMEI7eUNBVGhDLFFBQVE7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9wdGlvbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHtcbiAgRGF0YVZpZXdQZXJtYWxpbmtDb21wb25lbnQsXG4gIFdFQl9DT01QT05FTlRfRU1CRURERVJfVVJMLFxufSBmcm9tICcuLi9kYXRhLXZpZXctcGVybWFsaW5rL2RhdGEtdmlldy1wZXJtYWxpbmsuY29tcG9uZW50J1xuaW1wb3J0IHsgTWF0VGFic01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYnMnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBEYXRhVmlld1dlYkNvbXBvbmVudENvbXBvbmVudCB9IGZyb20gJy4uL2RhdGEtdmlldy13ZWItY29tcG9uZW50L2RhdGEtdmlldy13ZWItY29tcG9uZW50LmNvbXBvbmVudCdcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWRhdGEtdmlldy1zaGFyZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhLXZpZXctc2hhcmUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kYXRhLXZpZXctc2hhcmUuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNYXRUYWJzTW9kdWxlLFxuICAgIERhdGFWaWV3UGVybWFsaW5rQ29tcG9uZW50LFxuICAgIERhdGFWaWV3V2ViQ29tcG9uZW50Q29tcG9uZW50LFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgRGF0YVZpZXdTaGFyZUNvbXBvbmVudCB7XG4gIHByaXZhdGUgX3ZpZXdUeXBlOiBzdHJpbmdcblxuICBASW5wdXQoKVxuICBzZXQgdmlld1R5cGUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX3ZpZXdUeXBlID0gdmFsdWVcbiAgfVxuXG4gIGdldCB2aWV3VHlwZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl92aWV3VHlwZVxuICB9XG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChXRUJfQ09NUE9ORU5UX0VNQkVEREVSX1VSTClcbiAgICBwcm90ZWN0ZWQgd2NFbWJlZGRlckJhc2VVcmw6IHN0cmluZ1xuICApIHt9XG59XG4iLCI8ZGl2IGNsYXNzPVwicHgtNSBteS0xXCI+XG4gIDxtYXQtdGFiLWdyb3VwXG4gICAgW3NlbGVjdGVkSW5kZXhdPVwiMFwiXG4gICAgYW5pbWF0aW9uRHVyYXRpb249XCIwbXNcIlxuICAgIG1hdC1zdHJldGNoLXRhYnM9XCJmYWxzZVwiXG4gICAgbWF0LWFsaWduLXRhYnM9XCJzdGFydFwiXG4gICAgW2Rpc2FibGVSaXBwbGVdPVwiIXdjRW1iZWRkZXJCYXNlVXJsXCJcbiAgPlxuICAgIDxtYXQtdGFiICpuZ0lmPVwid2NFbWJlZGRlckJhc2VVcmxcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBtYXQtdGFiLWxhYmVsPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInRhYi1oZWFkZXItbGFiZWwtZ3JheVwiIHRyYW5zbGF0ZT5zaGFyZS50YWIucGVybWFsaW5rPC9zcGFuPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxnbi11aS1kYXRhLXZpZXctcGVybWFsaW5rXG4gICAgICAgIFt2aWV3VHlwZV09XCJ2aWV3VHlwZVwiXG4gICAgICA+PC9nbi11aS1kYXRhLXZpZXctcGVybWFsaW5rPlxuICAgIDwvbWF0LXRhYj5cbiAgICA8bWF0LXRhYj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBtYXQtdGFiLWxhYmVsPlxuICAgICAgICA8c3BhblxuICAgICAgICAgIFtjbGFzc109XCJcbiAgICAgICAgICAgIHdjRW1iZWRkZXJCYXNlVXJsXG4gICAgICAgICAgICAgID8gJ3RhYi1oZWFkZXItbGFiZWwtZ3JheSdcbiAgICAgICAgICAgICAgOiAnc2luZ2xlLXRhYi1oZWFkZXItbGFiZWwtZ3JheSdcbiAgICAgICAgICBcIlxuICAgICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICAgID5zaGFyZS50YWIud2ViQ29tcG9uZW50PC9zcGFuXG4gICAgICAgID5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8Z24tdWktZGF0YS12aWV3LXdlYi1jb21wb25lbnRcbiAgICAgICAgW3ZpZXdUeXBlXT1cInZpZXdUeXBlXCJcbiAgICAgID48L2duLXVpLWRhdGEtdmlldy13ZWItY29tcG9uZW50PlxuICAgIDwvbWF0LXRhYj5cbiAgPC9tYXQtdGFiLWdyb3VwPlxuPC9kaXY+XG4iXX0=
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LXNoYXJlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXctc2hhcmUvZGF0YS12aWV3LXNoYXJlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXctc2hhcmUvZGF0YS12aWV3LXNoYXJlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFDTCwwQkFBMEIsRUFDMUIsMEJBQTBCLEdBQzNCLE1BQU0sc0RBQXNELENBQUE7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQTtBQUM1RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7Ozs7O0FBZ0JyRCxNQUFNLE9BQU8sc0JBQXNCO0lBR2pDLElBQ0ksUUFBUSxDQUFDLEtBQWE7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUE7SUFDeEIsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQTtJQUN2QixDQUFDO0lBQ0QsWUFHWSxpQkFBeUI7UUFBekIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFRO0lBQ2xDLENBQUM7K0dBZk8sc0JBQXNCLGtCQWF2QiwwQkFBMEI7bUdBYnpCLHNCQUFzQixtSEM5Qm5DLDQ4QkFrQ0EsOFNEWkksWUFBWSxrSUFDWixhQUFhLHN1QkFDYiwwQkFBMEIsNEZBQzFCLDZCQUE2QiwrRkFDN0IsZUFBZTs7NEZBSU4sc0JBQXNCO2tCQWRsQyxTQUFTOytCQUNFLHVCQUF1QixtQkFHaEIsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsMEJBQTBCO3dCQUMxQiw2QkFBNkI7d0JBQzdCLGVBQWU7cUJBQ2hCLGNBQ1csSUFBSTs7MEJBY2IsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQywwQkFBMEI7eUNBVGhDLFFBQVE7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9wdGlvbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHtcbiAgRGF0YVZpZXdQZXJtYWxpbmtDb21wb25lbnQsXG4gIFdFQl9DT01QT05FTlRfRU1CRURERVJfVVJMLFxufSBmcm9tICcuLi9kYXRhLXZpZXctcGVybWFsaW5rL2RhdGEtdmlldy1wZXJtYWxpbmsuY29tcG9uZW50J1xuaW1wb3J0IHsgTWF0VGFic01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYnMnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBEYXRhVmlld1dlYkNvbXBvbmVudENvbXBvbmVudCB9IGZyb20gJy4uL2RhdGEtdmlldy13ZWItY29tcG9uZW50L2RhdGEtdmlldy13ZWItY29tcG9uZW50LmNvbXBvbmVudCdcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWRhdGEtdmlldy1zaGFyZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhLXZpZXctc2hhcmUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kYXRhLXZpZXctc2hhcmUuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNYXRUYWJzTW9kdWxlLFxuICAgIERhdGFWaWV3UGVybWFsaW5rQ29tcG9uZW50LFxuICAgIERhdGFWaWV3V2ViQ29tcG9uZW50Q29tcG9uZW50LFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgRGF0YVZpZXdTaGFyZUNvbXBvbmVudCB7XG4gIHByaXZhdGUgX3ZpZXdUeXBlOiBzdHJpbmdcblxuICBASW5wdXQoKVxuICBzZXQgdmlld1R5cGUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX3ZpZXdUeXBlID0gdmFsdWVcbiAgfVxuXG4gIGdldCB2aWV3VHlwZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl92aWV3VHlwZVxuICB9XG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChXRUJfQ09NUE9ORU5UX0VNQkVEREVSX1VSTClcbiAgICBwcm90ZWN0ZWQgd2NFbWJlZGRlckJhc2VVcmw6IHN0cmluZ1xuICApIHt9XG59XG4iLCI8ZGl2PlxuICA8bWF0LXRhYi1ncm91cFxuICAgIFtzZWxlY3RlZEluZGV4XT1cIjBcIlxuICAgIGFuaW1hdGlvbkR1cmF0aW9uPVwiMG1zXCJcbiAgICBtYXQtc3RyZXRjaC10YWJzPVwiZmFsc2VcIlxuICAgIG1hdC1hbGlnbi10YWJzPVwic3RhcnRcIlxuICAgIFtkaXNhYmxlUmlwcGxlXT1cIiF3Y0VtYmVkZGVyQmFzZVVybFwiXG4gID5cbiAgICA8bWF0LXRhYiAqbmdJZj1cIndjRW1iZWRkZXJCYXNlVXJsXCI+XG4gICAgICA8bmctdGVtcGxhdGUgbWF0LXRhYi1sYWJlbD5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0YWItaGVhZGVyLWxhYmVsLWdyYXlcIiB0cmFuc2xhdGU+c2hhcmUudGFiLnBlcm1hbGluazwvc3Bhbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8Z24tdWktZGF0YS12aWV3LXBlcm1hbGlua1xuICAgICAgICBbdmlld1R5cGVdPVwidmlld1R5cGVcIlxuICAgICAgPjwvZ24tdWktZGF0YS12aWV3LXBlcm1hbGluaz5cbiAgICA8L21hdC10YWI+XG4gICAgPG1hdC10YWI+XG4gICAgICA8bmctdGVtcGxhdGUgbWF0LXRhYi1sYWJlbD5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBbY2xhc3NdPVwiXG4gICAgICAgICAgICB3Y0VtYmVkZGVyQmFzZVVybFxuICAgICAgICAgICAgICA/ICd0YWItaGVhZGVyLWxhYmVsLWdyYXknXG4gICAgICAgICAgICAgIDogJ3NpbmdsZS10YWItaGVhZGVyLWxhYmVsLWdyYXknXG4gICAgICAgICAgXCJcbiAgICAgICAgICB0cmFuc2xhdGVcbiAgICAgICAgICA+c2hhcmUudGFiLndlYkNvbXBvbmVudDwvc3BhblxuICAgICAgICA+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPGduLXVpLWRhdGEtdmlldy13ZWItY29tcG9uZW50XG4gICAgICAgIFt2aWV3VHlwZV09XCJ2aWV3VHlwZVwiXG4gICAgICA+PC9nbi11aS1kYXRhLXZpZXctd2ViLWNvbXBvbmVudD5cbiAgICA8L21hdC10YWI+XG4gIDwvbWF0LXRhYi1ncm91cD5cbjwvZGl2PlxuIl19
@@ -37,6 +37,7 @@ export class ExternalViewerButtonComponent {
37
37
  this.translateService = translateService;
38
38
  this.urlTemplate = urlTemplate;
39
39
  this.openinNewTab = openinNewTab;
40
+ this.extraClass = '';
40
41
  }
41
42
  openInExternalViewer() {
42
43
  const templateUrl = this.urlTemplate;
@@ -50,11 +51,11 @@ export class ExternalViewerButtonComponent {
50
51
  window.open(url, this.openinNewTab ? '_blank' : '_self').focus();
51
52
  }
52
53
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ExternalViewerButtonComponent, deps: [{ token: i1.TranslateService }, { token: EXTERNAL_VIEWER_URL_TEMPLATE, optional: true }, { token: EXTERNAL_VIEWER_OPEN_NEW_TAB }], target: i0.ɵɵFactoryTarget.Component }); }
53
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ExternalViewerButtonComponent, isStandalone: true, selector: "gn-ui-external-viewer-button", inputs: { link: "link" }, ngImport: i0, template: "<gn-ui-button\n *ngIf=\"externalViewer\"\n (buttonClick)=\"openInExternalViewer()\"\n type=\"secondary\"\n [title]=\"'record.externalViewer.open' | translate\"\n extraClass=\"ms-2 !rounded-lg\"\n>\n <ng-icon name=\"matOpenInNew\"></ng-icon>\n</gn-ui-button>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }], viewProviders: [provideIcons({ matOpenInNew })], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
54
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ExternalViewerButtonComponent, isStandalone: true, selector: "gn-ui-external-viewer-button", inputs: { link: "link", extraClass: "extraClass" }, ngImport: i0, template: "<gn-ui-button\n *ngIf=\"externalViewer\"\n (buttonClick)=\"openInExternalViewer()\"\n type=\"primary\"\n [title]=\"'record.externalViewer.open' | translate\"\n [extraClass]=\"extraClass + 'bg-primary ms-2 !rounded-lg'\"\n>\n <ng-icon name=\"matOpenInNew\"></ng-icon>\n</gn-ui-button>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }], viewProviders: [provideIcons({ matOpenInNew })], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
54
55
  }
55
56
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ExternalViewerButtonComponent, decorators: [{
56
57
  type: Component,
57
- args: [{ selector: 'gn-ui-external-viewer-button', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, ButtonComponent, NgIcon, TranslateModule], viewProviders: [provideIcons({ matOpenInNew })], template: "<gn-ui-button\n *ngIf=\"externalViewer\"\n (buttonClick)=\"openInExternalViewer()\"\n type=\"secondary\"\n [title]=\"'record.externalViewer.open' | translate\"\n extraClass=\"ms-2 !rounded-lg\"\n>\n <ng-icon name=\"matOpenInNew\"></ng-icon>\n</gn-ui-button>\n" }]
58
+ args: [{ selector: 'gn-ui-external-viewer-button', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, ButtonComponent, NgIcon, TranslateModule], viewProviders: [provideIcons({ matOpenInNew })], template: "<gn-ui-button\n *ngIf=\"externalViewer\"\n (buttonClick)=\"openInExternalViewer()\"\n type=\"primary\"\n [title]=\"'record.externalViewer.open' | translate\"\n [extraClass]=\"extraClass + 'bg-primary ms-2 !rounded-lg'\"\n>\n <ng-icon name=\"matOpenInNew\"></ng-icon>\n</gn-ui-button>\n" }]
58
59
  }], ctorParameters: () => [{ type: i1.TranslateService }, { type: undefined, decorators: [{
59
60
  type: Inject,
60
61
  args: [EXTERNAL_VIEWER_URL_TEMPLATE]
@@ -65,5 +66,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
65
66
  args: [EXTERNAL_VIEWER_OPEN_NEW_TAB]
66
67
  }] }], propDecorators: { link: [{
67
68
  type: Input
69
+ }], extraClass: [{
70
+ type: Input
68
71
  }] } });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvcmVjb3JkL3NyYy9saWIvZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi9leHRlcm5hbC12aWV3ZXItYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9leHRlcm5hbC12aWV3ZXItYnV0dG9uL2V4dGVybmFsLXZpZXdlci1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBQ0wsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFBO0FBRXRCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdDQUF3QyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUNBQW1DLENBQUE7Ozs7QUFFaEUsTUFBTSxDQUFDLGdDQUFnQyxDQUFDLENBQUE7QUFFeEMsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsSUFBSSxjQUFjLENBQzVELDJCQUEyQixDQUM1QixDQUFBO0FBQ0QsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsSUFBSSxjQUFjLENB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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEluamVjdCxcbiAgSW5qZWN0aW9uVG9rZW4sXG4gIElucHV0LFxuICBPcHRpb25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IERhdGFzZXRPbmxpbmVSZXNvdXJjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IG1hcmtlciB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcidcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBnZXRGaWxlRm9ybWF0IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBOZ0ljb24sIHByb3ZpZGVJY29ucyB9IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgbWF0T3BlbkluTmV3IH0gZnJvbSAnQG5nLWljb25zL21hdGVyaWFsLWljb25zL2Jhc2VsaW5lJ1xuXG5tYXJrZXIoJ2V4dGVybmFsdmlld2VyLmRhdGFzZXQudW5uYW1lZCcpXG5cbmV4cG9ydCBjb25zdCBFWFRFUk5BTF9WSUVXRVJfVVJMX1RFTVBMQVRFID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oXG4gICdleHRlcm5hbFZpZXdlclVybFRlbXBsYXRlJ1xuKVxuZXhwb3J0IGNvbnN0IEVYVEVSTkFMX1ZJRVdFUl9PUEVOX05FV19UQUIgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oXG4gICdleHRlcm5hbFZpZXdlck9wZW5OZXdUYWInLFxuICB7IGZhY3Rvcnk6ICgpID0+IGZhbHNlIH1cbilcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9leHRlcm5hbC12aWV3ZXItYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBCdXR0b25Db21wb25lbnQsIE5nSWNvbiwgVHJhbnNsYXRlTW9kdWxlXSxcbiAgdmlld1Byb3ZpZGVyczogW3Byb3ZpZGVJY29ucyh7IG1hdE9wZW5Jbk5ldyB9KV0sXG59KVxuZXhwb3J0IGNsYXNzIEV4dGVybmFsVmlld2VyQnV0dG9uQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbGluazogRGF0YXNldE9ubGluZVJlc291cmNlXG5cbiAgZ2V0IGV4dGVybmFsVmlld2VyKCkge1xuICAgIHJldHVybiAhIXRoaXMudXJsVGVtcGxhdGUgJiYgISF0aGlzLnN1cHBvcnRlZExpbmtMYXllclR5cGVcbiAgfVxuXG4gIGdldCBzdXBwb3J0ZWRMaW5rTGF5ZXJUeXBlKCkge1xuICAgIGlmICghdGhpcy5saW5rKSByZXR1cm4gbnVsbFxuICAgIGlmICh0aGlzLmxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnKSB7XG4gICAgICBpZiAodGhpcy5saW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dtcycpIHtcbiAgICAgICAgcmV0dXJuICd3bXMnXG4gICAgICB9XG4gICAgICBpZiAodGhpcy5saW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dmcycpIHtcbiAgICAgICAgcmV0dXJuICd3ZnMnXG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIHRoaXMubGluay50eXBlID09PSAnZG93bmxvYWQnICYmXG4gICAgICBnZXRGaWxlRm9ybWF0KHRoaXMubGluaykgPT09ICdnZW9qc29uJ1xuICAgICkge1xuICAgICAgcmV0dXJuICdnZW9qc29uJ1xuICAgIH1cbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIEBJbmplY3QoRVhURVJOQUxfVklFV0VSX1VSTF9URU1QTEFURSlcbiAgICBAT3B0aW9uYWwoKVxuICAgIHByaXZhdGUgdXJsVGVtcGxhdGU6IHN0cmluZyxcbiAgICBASW5qZWN0KEVYVEVSTkFMX1ZJRVdFUl9PUEVOX05FV19UQUIpXG4gICAgcHJpdmF0ZSBvcGVuaW5OZXdUYWI6IGJvb2xlYW5cbiAgKSB7fVxuXG4gIG9wZW5JbkV4dGVybmFsVmlld2VyKCkge1xuICAgIGNvbnN0IHRlbXBsYXRlVXJsID0gdGhpcy51cmxUZW1wbGF0ZVxuICAgIGNvbnN0IGxheWVyTmFtZSA9IHRoaXMubGluay5uYW1lXG4gICAgICA/IHRoaXMubGluay5uYW1lXG4gICAgICA6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdleHRlcm5hbHZpZXdlci5kYXRhc2V0LnVubmFtZWQnKVxuICAgIGNvbnN0IHVybCA9IHRlbXBsYXRlVXJsXG4gICAgICAucmVwbGFjZSgnJHtsYXllcl9uYW1lfScsIGAke2xheWVyTmFtZX1gKVxuICAgICAgLnJlcGxhY2UoXG4gICAgICAgICcke3NlcnZpY2VfdXJsfScsXG4gICAgICAgIGAke2VuY29kZVVSSUNvbXBvbmVudCh0aGlzLmxpbmsudXJsLnRvU3RyaW5nKCkpfWBcbiAgICAgIClcbiAgICAgIC5yZXBsYWNlKCcke3NlcnZpY2VfdHlwZX0nLCBgJHt0aGlzLnN1cHBvcnRlZExpbmtMYXllclR5cGV9YClcbiAgICB3aW5kb3cub3Blbih1cmwsIHRoaXMub3BlbmluTmV3VGFiID8gJ19ibGFuaycgOiAnX3NlbGYnKS5mb2N1cygpXG4gIH1cbn1cbiIsIjxnbi11aS1idXR0b25cbiAgKm5nSWY9XCJleHRlcm5hbFZpZXdlclwiXG4gIChidXR0b25DbGljayk9XCJvcGVuSW5FeHRlcm5hbFZpZXdlcigpXCJcbiAgdHlwZT1cInNlY29uZGFyeVwiXG4gIFt0aXRsZV09XCIncmVjb3JkLmV4dGVybmFsVmlld2VyLm9wZW4nIHwgdHJhbnNsYXRlXCJcbiAgZXh0cmFDbGFzcz1cIm1zLTIgIXJvdW5kZWQtbGdcIlxuPlxuICA8bmctaWNvbiBuYW1lPVwibWF0T3BlbkluTmV3XCI+PC9uZy1pY29uPlxuPC9nbi11aS1idXR0b24+XG4iXX0=
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvcmVjb3JkL3NyYy9saWIvZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi9leHRlcm5hbC12aWV3ZXItYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9leHRlcm5hbC12aWV3ZXItYnV0dG9uL2V4dGVybmFsLXZpZXdlci1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBQ0wsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFBO0FBRXRCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdDQUF3QyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUNBQW1DLENBQUE7Ozs7QUFFaEUsTUFBTSxDQUFDLGdDQUFnQyxDQUFDLENBQUE7QUFFeEMsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsSUFBSSxjQUFjLENBQzVELDJCQUEyQixDQUM1QixDQUFBO0FBQ0QsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsSUFBSSxjQUFjLENB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NEI7eUNBOUI3QixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEluamVjdCxcbiAgSW5qZWN0aW9uVG9rZW4sXG4gIElucHV0LFxuICBPcHRpb25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IERhdGFzZXRPbmxpbmVSZXNvdXJjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IG1hcmtlciB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcidcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBnZXRGaWxlRm9ybWF0IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBOZ0ljb24sIHByb3ZpZGVJY29ucyB9IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgbWF0T3BlbkluTmV3IH0gZnJvbSAnQG5nLWljb25zL21hdGVyaWFsLWljb25zL2Jhc2VsaW5lJ1xuXG5tYXJrZXIoJ2V4dGVybmFsdmlld2VyLmRhdGFzZXQudW5uYW1lZCcpXG5cbmV4cG9ydCBjb25zdCBFWFRFUk5BTF9WSUVXRVJfVVJMX1RFTVBMQVRFID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oXG4gICdleHRlcm5hbFZpZXdlclVybFRlbXBsYXRlJ1xuKVxuZXhwb3J0IGNvbnN0IEVYVEVSTkFMX1ZJRVdFUl9PUEVOX05FV19UQUIgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oXG4gICdleHRlcm5hbFZpZXdlck9wZW5OZXdUYWInLFxuICB7IGZhY3Rvcnk6ICgpID0+IGZhbHNlIH1cbilcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9leHRlcm5hbC12aWV3ZXItYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBCdXR0b25Db21wb25lbnQsIE5nSWNvbiwgVHJhbnNsYXRlTW9kdWxlXSxcbiAgdmlld1Byb3ZpZGVyczogW3Byb3ZpZGVJY29ucyh7IG1hdE9wZW5Jbk5ldyB9KV0sXG59KVxuZXhwb3J0IGNsYXNzIEV4dGVybmFsVmlld2VyQnV0dG9uQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbGluazogRGF0YXNldE9ubGluZVJlc291cmNlXG4gIEBJbnB1dCgpIGV4dHJhQ2xhc3MgPSAnJ1xuXG4gIGdldCBleHRlcm5hbFZpZXdlcigpIHtcbiAgICByZXR1cm4gISF0aGlzLnVybFRlbXBsYXRlICYmICEhdGhpcy5zdXBwb3J0ZWRMaW5rTGF5ZXJUeXBlXG4gIH1cblxuICBnZXQgc3VwcG9ydGVkTGlua0xheWVyVHlwZSgpIHtcbiAgICBpZiAoIXRoaXMubGluaykgcmV0dXJuIG51bGxcbiAgICBpZiAodGhpcy5saW5rLnR5cGUgPT09ICdzZXJ2aWNlJykge1xuICAgICAgaWYgKHRoaXMubGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPT09ICd3bXMnKSB7XG4gICAgICAgIHJldHVybiAnd21zJ1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMubGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPT09ICd3ZnMnKSB7XG4gICAgICAgIHJldHVybiAnd2ZzJ1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoXG4gICAgICB0aGlzLmxpbmsudHlwZSA9PT0gJ2Rvd25sb2FkJyAmJlxuICAgICAgZ2V0RmlsZUZvcm1hdCh0aGlzLmxpbmspID09PSAnZ2VvanNvbidcbiAgICApIHtcbiAgICAgIHJldHVybiAnZ2VvanNvbidcbiAgICB9XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBASW5qZWN0KEVYVEVSTkFMX1ZJRVdFUl9VUkxfVEVNUExBVEUpXG4gICAgQE9wdGlvbmFsKClcbiAgICBwcml2YXRlIHVybFRlbXBsYXRlOiBzdHJpbmcsXG4gICAgQEluamVjdChFWFRFUk5BTF9WSUVXRVJfT1BFTl9ORVdfVEFCKVxuICAgIHByaXZhdGUgb3BlbmluTmV3VGFiOiBib29sZWFuXG4gICkge31cblxuICBvcGVuSW5FeHRlcm5hbFZpZXdlcigpIHtcbiAgICBjb25zdCB0ZW1wbGF0ZVVybCA9IHRoaXMudXJsVGVtcGxhdGVcbiAgICBjb25zdCBsYXllck5hbWUgPSB0aGlzLmxpbmsubmFtZVxuICAgICAgPyB0aGlzLmxpbmsubmFtZVxuICAgICAgOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnZXh0ZXJuYWx2aWV3ZXIuZGF0YXNldC51bm5hbWVkJylcbiAgICBjb25zdCB1cmwgPSB0ZW1wbGF0ZVVybFxuICAgICAgLnJlcGxhY2UoJyR7bGF5ZXJfbmFtZX0nLCBgJHtsYXllck5hbWV9YClcbiAgICAgIC5yZXBsYWNlKFxuICAgICAgICAnJHtzZXJ2aWNlX3VybH0nLFxuICAgICAgICBgJHtlbmNvZGVVUklDb21wb25lbnQodGhpcy5saW5rLnVybC50b1N0cmluZygpKX1gXG4gICAgICApXG4gICAgICAucmVwbGFjZSgnJHtzZXJ2aWNlX3R5cGV9JywgYCR7dGhpcy5zdXBwb3J0ZWRMaW5rTGF5ZXJUeXBlfWApXG4gICAgd2luZG93Lm9wZW4odXJsLCB0aGlzLm9wZW5pbk5ld1RhYiA/ICdfYmxhbmsnIDogJ19zZWxmJykuZm9jdXMoKVxuICB9XG59XG4iLCI8Z24tdWktYnV0dG9uXG4gICpuZ0lmPVwiZXh0ZXJuYWxWaWV3ZXJcIlxuICAoYnV0dG9uQ2xpY2spPVwib3BlbkluRXh0ZXJuYWxWaWV3ZXIoKVwiXG4gIHR5cGU9XCJwcmltYXJ5XCJcbiAgW3RpdGxlXT1cIidyZWNvcmQuZXh0ZXJuYWxWaWV3ZXIub3BlbicgfCB0cmFuc2xhdGVcIlxuICBbZXh0cmFDbGFzc109XCJleHRyYUNsYXNzICsgJ2JnLXByaW1hcnkgbXMtMiAhcm91bmRlZC1sZydcIlxuPlxuICA8bmctaWNvbiBuYW1lPVwibWF0T3BlbkluTmV3XCI+PC9uZy1pY29uPlxuPC9nbi11aS1idXR0b24+XG4iXX0=