geonetwork-ui 2.4.0-dev.6c8dcba0 → 2.4.0-dev.6f312e64

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 (723) hide show
  1. package/esm2022/libs/api/metadata-converter/src/lib/gn4/atomic-operations.mjs +2 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +10 -3
  3. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/index.mjs +2 -1
  4. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.mjs +2 -0
  5. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
  6. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.mjs +5 -5
  7. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +7 -4
  8. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +10 -7
  9. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +11 -16
  10. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +35 -7
  11. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.mjs +31 -0
  12. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.mjs +1 -1
  13. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +50 -18
  14. package/esm2022/libs/api/metadata-converter/src/lib/xml-utils.mjs +10 -3
  15. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +44 -7
  16. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.mjs +2 -1
  17. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +3 -1
  18. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.mjs +22 -4
  19. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +84 -16
  20. package/esm2022/libs/common/domain/src/lib/model/record/contact.model.mjs +28 -1
  21. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  22. package/esm2022/libs/common/domain/src/lib/model/record/organization.model.mjs +1 -1
  23. package/esm2022/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.mjs +1 -1
  24. package/esm2022/libs/common/domain/src/lib/model/user/user.model.mjs +1 -1
  25. package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
  26. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  27. package/esm2022/libs/data-access/gn4/src/fixtures/site.fixtures.mjs +5 -5
  28. package/esm2022/libs/data-access/gn4/src/fixtures/ui.fixtures.mjs +3 -3
  29. package/esm2022/libs/data-access/gn4/src/openapi/api/records.api.service.mjs +2 -6
  30. package/esm2022/libs/data-access/gn4/src/openapi/model/user.api.model.mjs +1 -1
  31. package/esm2022/libs/feature/catalog/src/index.mjs +2 -1
  32. package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +1 -1
  33. package/esm2022/libs/feature/catalog/src/lib/organisations/organisations.component.mjs +6 -6
  34. package/esm2022/libs/feature/catalog/src/lib/organization-url.token.mjs +4 -0
  35. package/esm2022/libs/feature/catalog/src/lib/records/records.service.mjs +4 -6
  36. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +5 -5
  37. package/esm2022/libs/feature/dataviz/src/lib/feature-dataviz.module.mjs +7 -4
  38. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +1 -1
  39. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +2 -2
  40. package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +4 -1
  41. package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +11 -4
  42. package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +11 -2
  43. package/esm2022/libs/feature/editor/src/lib/+state/editor.models.mjs +1 -1
  44. package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +7 -3
  45. package/esm2022/libs/feature/editor/src/lib/+state/editor.selectors.mjs +16 -6
  46. package/esm2022/libs/feature/editor/src/lib/components/contact-card/contact-card.component.mjs +29 -0
  47. package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +78 -0
  48. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +71 -0
  49. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.mjs +143 -0
  50. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +37 -0
  51. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.mjs +10 -8
  52. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +101 -0
  53. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.mjs +148 -0
  54. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.mjs +44 -0
  55. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.mjs +103 -0
  56. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.mjs +10 -6
  57. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.mjs +11 -11
  58. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.mjs +9 -8
  59. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +111 -5
  60. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +38 -68
  61. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +70 -54
  62. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +44 -61
  63. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +2 -2
  64. package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +13 -7
  65. package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +8 -8
  66. package/esm2022/libs/feature/editor/src/lib/expressions.mjs +1 -1
  67. package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +9 -6
  68. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +184 -53
  69. package/esm2022/libs/feature/editor/src/lib/models/editor-config.model.mjs +2 -0
  70. package/esm2022/libs/feature/editor/src/lib/models/index.mjs +2 -1
  71. package/esm2022/libs/feature/editor/src/lib/services/editor.service.mjs +19 -8
  72. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +6 -6
  73. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.mjs +7 -6
  74. package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +8 -5
  75. package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +6 -7
  76. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +8 -7
  77. package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +7 -6
  78. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +7 -26
  79. package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +29 -13
  80. package/esm2022/libs/feature/map/src/lib/style/map-style.fixtures.mjs +3 -3
  81. package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +10 -5
  82. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +1 -1
  83. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +42 -23
  84. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +13 -5
  85. package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +49 -15
  86. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +1 -1
  87. package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +7 -4
  88. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +4 -4
  89. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +11 -13
  90. package/esm2022/libs/feature/router/src/lib/default/constants.mjs +2 -1
  91. package/esm2022/libs/feature/router/src/lib/default/router.config.mjs +1 -1
  92. package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +9 -2
  93. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +8 -1
  94. package/esm2022/libs/feature/search/src/index.mjs +2 -2
  95. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +7 -4
  96. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +4 -4
  97. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +89 -0
  98. package/esm2022/libs/feature/search/src/lib/state/search.facade.mjs +8 -3
  99. package/esm2022/libs/feature/search/src/lib/state/selectors.mjs +4 -1
  100. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +7 -3
  101. package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +5 -5
  102. package/esm2022/libs/ui/catalog/src/lib/ui-catalog.module.mjs +5 -2
  103. package/esm2022/libs/ui/dataviz/src/lib/figure/figure.component.mjs +5 -8
  104. package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +3 -3
  105. package/esm2022/libs/ui/elements/src/index.mjs +2 -3
  106. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +3 -3
  107. package/esm2022/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.mjs +27 -0
  108. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +2 -2
  109. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +1 -1
  110. package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +5 -3
  111. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +2 -2
  112. package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +4 -3
  113. package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +2 -2
  114. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +9 -9
  115. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +5 -11
  116. package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +3 -3
  117. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +5 -5
  118. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +24 -5
  119. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +15 -11
  120. package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +3 -3
  121. package/esm2022/libs/ui/inputs/src/index.mjs +6 -1
  122. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +76 -29
  123. package/esm2022/libs/ui/inputs/src/lib/badge/badge.component.mjs +28 -0
  124. package/esm2022/libs/ui/inputs/src/lib/editable-label/editable-label.directive.mjs +26 -24
  125. package/esm2022/libs/ui/inputs/src/lib/file-input/file-input.component.mjs +87 -0
  126. package/esm2022/libs/ui/inputs/src/lib/image-input/image-input.component.mjs +19 -15
  127. package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +32 -0
  128. package/esm2022/libs/ui/inputs/src/lib/text-area/text-area.component.mjs +7 -21
  129. package/esm2022/libs/ui/inputs/src/lib/text-input/text-input.component.mjs +6 -17
  130. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +12 -15
  131. package/esm2022/libs/ui/inputs/src/lib/url-input/url-input.component.mjs +43 -0
  132. package/esm2022/libs/ui/layout/src/index.mjs +4 -1
  133. package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +3 -3
  134. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +3 -3
  135. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +71 -0
  136. package/esm2022/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.mjs +29 -0
  137. package/esm2022/libs/ui/layout/src/lib/sortable-list/sortable-list.component.mjs +43 -0
  138. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +1 -1
  139. package/esm2022/libs/ui/map/src/lib/ui-map.module.mjs +3 -3
  140. package/esm2022/libs/ui/search/src/index.mjs +2 -1
  141. package/esm2022/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.mjs +7 -7
  142. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +67 -0
  143. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +140 -0
  144. package/esm2022/libs/ui/widgets/src/index.mjs +2 -2
  145. package/esm2022/libs/ui/widgets/src/lib/popover/popover.component.mjs +68 -0
  146. package/esm2022/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.mjs +5 -3
  147. package/esm2022/libs/ui/widgets/src/lib/ui-widgets.module.mjs +1 -6
  148. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +10 -10
  149. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +1 -1
  150. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +1 -1
  151. package/esm2022/libs/util/shared/src/lib/utils/bytes-convert.mjs +4 -1
  152. package/esm2022/translations/de.json +155 -38
  153. package/esm2022/translations/en.json +129 -12
  154. package/esm2022/translations/es.json +126 -9
  155. package/esm2022/translations/fr.json +141 -24
  156. package/esm2022/translations/it.json +129 -12
  157. package/esm2022/translations/nl.json +126 -9
  158. package/esm2022/translations/pt.json +126 -9
  159. package/fesm2022/geonetwork-ui.mjs +4993 -2470
  160. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  161. package/libs/api/metadata-converter/src/lib/gn4/atomic-operations.d.ts.map +1 -1
  162. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +3 -3
  163. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  164. package/libs/api/metadata-converter/src/lib/gn4/types/index.d.ts +1 -0
  165. package/libs/api/metadata-converter/src/lib/gn4/types/index.d.ts.map +1 -1
  166. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts +27 -0
  167. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts.map +1 -0
  168. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +1 -0
  169. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  170. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +2 -2
  171. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  172. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts +1 -1
  173. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
  174. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -1
  175. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts +13 -6
  176. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  177. package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts +5 -0
  178. package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts.map +1 -0
  179. package/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.d.ts +1 -1
  180. package/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.d.ts.map +1 -1
  181. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +11 -7
  182. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  183. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts +1 -0
  184. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts.map +1 -1
  185. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +8 -1
  186. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  187. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts.map +1 -1
  188. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts.map +1 -1
  189. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts +3 -3
  190. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts.map +1 -1
  191. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +30 -6
  192. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  193. package/libs/common/domain/src/lib/model/record/contact.model.d.ts +1 -0
  194. package/libs/common/domain/src/lib/model/record/contact.model.d.ts.map +1 -1
  195. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +13 -14
  196. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  197. package/libs/common/domain/src/lib/model/record/organization.model.d.ts +1 -0
  198. package/libs/common/domain/src/lib/model/record/organization.model.d.ts.map +1 -1
  199. package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts +12 -5
  200. package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts.map +1 -1
  201. package/libs/common/domain/src/lib/model/user/user.model.d.ts +1 -1
  202. package/libs/common/domain/src/lib/model/user/user.model.d.ts.map +1 -1
  203. package/libs/common/domain/src/lib/platform.service.interface.d.ts +20 -3
  204. package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
  205. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +20 -1
  206. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  207. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts +2 -2
  208. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts.map +1 -1
  209. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts +1 -1
  210. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts.map +1 -1
  211. package/libs/data-access/gn4/src/openapi/api/records.api.service.d.ts.map +1 -1
  212. package/libs/data-access/gn4/src/openapi/model/user.api.model.d.ts +1 -1
  213. package/libs/feature/catalog/src/index.d.ts +1 -0
  214. package/libs/feature/catalog/src/index.d.ts.map +1 -1
  215. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts.map +1 -1
  216. package/libs/feature/catalog/src/lib/organisations/organisations.component.d.ts.map +1 -1
  217. package/libs/feature/catalog/src/lib/organization-url.token.d.ts +3 -0
  218. package/libs/feature/catalog/src/lib/organization-url.token.d.ts.map +1 -0
  219. package/libs/feature/catalog/src/lib/records/records.service.d.ts.map +1 -1
  220. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +2 -2
  221. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  222. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts +2 -1
  223. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts.map +1 -1
  224. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +6 -6
  225. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  226. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +3 -3
  227. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  228. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +7 -0
  229. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -1
  230. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts +6 -1
  231. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -1
  232. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +6 -4
  233. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -1
  234. package/libs/feature/editor/src/lib/+state/editor.models.d.ts +8 -0
  235. package/libs/feature/editor/src/lib/+state/editor.models.d.ts.map +1 -1
  236. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts +4 -3
  237. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -1
  238. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +4 -8
  239. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -1
  240. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts +12 -0
  241. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts.map +1 -0
  242. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts +32 -0
  243. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts.map +1 -0
  244. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts +15 -0
  245. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -0
  246. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts +41 -0
  247. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts.map +1 -0
  248. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts +14 -0
  249. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -0
  250. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts +6 -4
  251. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts.map +1 -1
  252. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +22 -0
  253. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts.map +1 -0
  254. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.d.ts +35 -0
  255. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.d.ts.map +1 -0
  256. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts +15 -0
  257. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts.map +1 -0
  258. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts +31 -0
  259. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts.map +1 -0
  260. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts +4 -3
  261. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts.map +1 -1
  262. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts +4 -4
  263. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts.map +1 -1
  264. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts +4 -3
  265. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts.map +1 -1
  266. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts +23 -0
  267. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts.map +1 -1
  268. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts +10 -16
  269. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts.map +1 -1
  270. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts +9 -9
  271. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts.map +1 -1
  272. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +19 -25
  273. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  274. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts +1 -1
  275. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts.map +1 -1
  276. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts +7 -7
  277. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts.map +1 -1
  278. package/libs/feature/editor/src/lib/expressions.d.ts +1 -1
  279. package/libs/feature/editor/src/lib/expressions.d.ts.map +1 -1
  280. package/libs/feature/editor/src/lib/feature-editor.module.d.ts +2 -1
  281. package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
  282. package/libs/feature/editor/src/lib/fields.config.d.ts +48 -2
  283. package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
  284. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts +41 -0
  285. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts.map +1 -0
  286. package/libs/feature/editor/src/lib/models/index.d.ts +1 -0
  287. package/libs/feature/editor/src/lib/models/index.d.ts.map +1 -1
  288. package/libs/feature/editor/src/lib/services/editor.service.d.ts +3 -2
  289. package/libs/feature/editor/src/lib/services/editor.service.d.ts.map +1 -1
  290. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts +1 -1
  291. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts.map +1 -1
  292. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts +6 -6
  293. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts.map +1 -1
  294. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts +1 -1
  295. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -1
  296. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts +1 -1
  297. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
  298. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts +1 -1
  299. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -1
  300. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts +1 -1
  301. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts.map +1 -1
  302. package/libs/feature/map/src/lib/feature-map.module.d.ts +16 -21
  303. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  304. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts +1 -1
  305. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
  306. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts +2 -2
  307. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts.map +1 -1
  308. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
  309. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +3 -3
  310. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  311. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +4 -1
  312. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
  313. package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts +4 -1
  314. package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts.map +1 -1
  315. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +4 -1
  316. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
  317. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +2 -2
  318. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  319. package/libs/feature/record/src/lib/feature-record.module.d.ts +2 -1
  320. package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
  321. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +2 -2
  322. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  323. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +7 -7
  324. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  325. package/libs/feature/router/src/lib/default/constants.d.ts +1 -0
  326. package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
  327. package/libs/feature/router/src/lib/default/router.config.d.ts +1 -0
  328. package/libs/feature/router/src/lib/default/router.config.d.ts.map +1 -1
  329. package/libs/feature/router/src/lib/default/router.service.d.ts +1 -0
  330. package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
  331. package/libs/feature/router/src/lib/default/state/router.facade.d.ts +1 -0
  332. package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
  333. package/libs/feature/search/src/index.d.ts +1 -1
  334. package/libs/feature/search/src/index.d.ts.map +1 -1
  335. package/libs/feature/search/src/lib/feature-search.module.d.ts +2 -1
  336. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  337. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
  338. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +36 -0
  339. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -0
  340. package/libs/feature/search/src/lib/state/search.facade.d.ts +2 -0
  341. package/libs/feature/search/src/lib/state/search.facade.d.ts.map +1 -1
  342. package/libs/feature/search/src/lib/state/selectors.d.ts +1 -0
  343. package/libs/feature/search/src/lib/state/selectors.d.ts.map +1 -1
  344. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  345. package/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.d.ts +2 -2
  346. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts +2 -1
  347. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts.map +1 -1
  348. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts +1 -2
  349. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts.map +1 -1
  350. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts +2 -2
  351. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts.map +1 -1
  352. package/libs/ui/elements/src/index.d.ts +1 -2
  353. package/libs/ui/elements/src/index.d.ts.map +1 -1
  354. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts +18 -0
  355. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts.map +1 -0
  356. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +2 -2
  357. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  358. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -7
  359. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  360. package/libs/ui/elements/src/lib/error/error.component.d.ts +3 -1
  361. package/libs/ui/elements/src/lib/error/error.component.d.ts.map +1 -1
  362. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +2 -2
  363. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  364. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +0 -3
  365. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
  366. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +1 -1
  367. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +5 -1
  368. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +1 -1
  369. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +18 -16
  370. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  371. package/libs/ui/inputs/src/index.d.ts +5 -0
  372. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  373. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts +15 -4
  374. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
  375. package/libs/ui/inputs/src/lib/badge/badge.component.d.ts +11 -0
  376. package/libs/ui/inputs/src/lib/badge/badge.component.d.ts.map +1 -0
  377. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts +5 -3
  378. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts.map +1 -1
  379. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts +24 -0
  380. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts.map +1 -0
  381. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts +4 -5
  382. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts.map +1 -1
  383. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts +17 -0
  384. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts.map +1 -0
  385. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts +0 -4
  386. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts.map +1 -1
  387. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts +2 -4
  388. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts.map +1 -1
  389. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +34 -35
  390. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  391. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts +18 -0
  392. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts.map +1 -0
  393. package/libs/ui/layout/src/index.d.ts +3 -0
  394. package/libs/ui/layout/src/index.d.ts.map +1 -1
  395. package/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.d.ts +2 -2
  396. package/libs/ui/layout/src/lib/max-lines/max-lines.component.d.ts.map +1 -0
  397. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts +20 -0
  398. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts.map +1 -0
  399. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts +14 -0
  400. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts.map +1 -0
  401. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
  402. package/libs/ui/search/src/index.d.ts +1 -0
  403. package/libs/ui/search/src/index.d.ts.map +1 -1
  404. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts +3 -3
  405. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts.map +1 -1
  406. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +20 -0
  407. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -0
  408. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +36 -0
  409. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -0
  410. package/libs/ui/widgets/src/index.d.ts +1 -1
  411. package/libs/ui/widgets/src/index.d.ts.map +1 -1
  412. package/libs/ui/widgets/src/lib/popover/popover.component.d.ts +19 -0
  413. package/libs/ui/widgets/src/lib/popover/popover.component.d.ts.map +1 -0
  414. package/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.d.ts +1 -1
  415. package/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.d.ts.map +1 -1
  416. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts +10 -11
  417. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts.map +1 -1
  418. package/libs/util/app-config/src/lib/fixtures.d.ts +8 -8
  419. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  420. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  421. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  422. package/libs/util/shared/src/lib/links/link-utils.d.ts +6 -6
  423. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  424. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts +2 -1
  425. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts.map +1 -1
  426. package/package.json +1 -1
  427. package/src/libs/api/metadata-converter/src/lib/fixtures/generic.records.ts +7 -2
  428. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +6 -2
  429. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +38 -13
  430. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +6 -2
  431. package/src/libs/api/metadata-converter/src/lib/gn4/atomic-operations.ts +1 -0
  432. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +18 -16
  433. package/src/libs/api/metadata-converter/src/lib/gn4/types/index.ts +1 -0
  434. package/src/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.ts +27 -0
  435. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +1 -0
  436. package/src/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.ts +4 -4
  437. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +12 -4
  438. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +14 -8
  439. package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +10 -14
  440. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +86 -18
  441. package/src/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.ts +39 -0
  442. package/src/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.ts +1 -1
  443. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +119 -38
  444. package/src/libs/api/metadata-converter/src/lib/xml-utils.ts +13 -5
  445. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +63 -10
  446. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.ts +1 -0
  447. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +3 -1
  448. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.ts +37 -5
  449. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +165 -30
  450. package/src/libs/common/domain/src/lib/model/record/contact.model.ts +28 -0
  451. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +14 -17
  452. package/src/libs/common/domain/src/lib/model/record/organization.model.ts +1 -0
  453. package/src/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.ts +13 -6
  454. package/src/libs/common/domain/src/lib/model/user/user.model.ts +1 -1
  455. package/src/libs/common/domain/src/lib/platform.service.interface.ts +37 -3
  456. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +26 -1
  457. package/src/libs/common/fixtures/src/index.ts +3 -1
  458. package/src/libs/common/fixtures/src/lib/editor/editor.fixtures.ts +156 -0
  459. package/src/libs/common/fixtures/src/lib/editor/index.ts +1 -0
  460. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-request.ts → aggregations-request.fixtures.ts} +1 -3
  461. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-response.ts → aggregations-response.fixtures.ts} +6 -8
  462. package/src/libs/common/fixtures/src/lib/elasticsearch/{full-response.ts → full-response.fixtures.ts} +1 -3
  463. package/src/libs/common/fixtures/src/lib/elasticsearch/index.ts +5 -5
  464. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +1 -3
  465. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata.fixtures.ts +1739 -1742
  466. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-requests.ts → search-requests.fixtures.ts} +1 -3
  467. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-responses.ts → search-responses.fixtures.ts} +4 -6
  468. package/src/libs/common/fixtures/src/lib/geojson.fixtures.ts +57178 -57195
  469. package/src/libs/common/fixtures/src/lib/gn4/groups.fixtures.ts +2 -4
  470. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +233 -164
  471. package/src/libs/common/fixtures/src/lib/ol-feature.fixtures.ts +10 -0
  472. package/src/libs/common/fixtures/src/lib/organisations.fixture.ts +65 -3
  473. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +9 -7
  474. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +17 -9
  475. package/src/libs/common/fixtures/src/lib/repository.fixtures.ts +4 -4
  476. package/src/libs/common/fixtures/src/lib/search/aggregations.ts +2 -3
  477. package/src/libs/common/fixtures/src/lib/user-feedbacks.fixtures.ts +14 -15
  478. package/src/libs/common/fixtures/src/lib/user.fixtures.ts +32 -15
  479. package/src/libs/data-access/datafeeder/src/openapi/model/datasetMetadata.api.model.ts +4 -0
  480. package/src/libs/data-access/datafeeder/src/openapi/model/datasetUploadStatus.api.model.ts +2 -0
  481. package/src/libs/data-access/gn4/src/fixtures/site.fixtures.ts +4 -4
  482. package/src/libs/data-access/gn4/src/fixtures/ui.fixtures.ts +2 -2
  483. package/src/libs/data-access/gn4/src/openapi/api/records.api.service.ts +1 -5
  484. package/src/libs/data-access/gn4/src/openapi/model/user.api.model.ts +1 -1
  485. package/src/libs/data-access/gn4/src/spec.yaml +0 -8
  486. package/src/libs/feature/catalog/src/index.ts +1 -0
  487. package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +0 -1
  488. package/src/libs/feature/catalog/src/lib/organisations/organisations.component.html +1 -1
  489. package/src/libs/feature/catalog/src/lib/organisations/organisations.component.ts +2 -2
  490. package/src/libs/feature/catalog/src/lib/organization-url.token.ts +6 -0
  491. package/src/libs/feature/catalog/src/lib/records/records.service.ts +6 -8
  492. package/src/libs/feature/catalog/src/lib/sources/sources.fixture.ts +1 -1
  493. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +3 -3
  494. package/src/libs/feature/dataviz/src/lib/feature-dataviz.module.ts +2 -1
  495. package/src/libs/feature/dataviz/src/lib/figure/figure.fixtures.ts +2 -2
  496. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +6 -6
  497. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +4 -4
  498. package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +9 -0
  499. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +50 -29
  500. package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +14 -1
  501. package/src/libs/feature/editor/src/lib/+state/editor.models.ts +11 -0
  502. package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +11 -5
  503. package/src/libs/feature/editor/src/lib/+state/editor.selectors.ts +22 -8
  504. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.html +25 -0
  505. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.ts +30 -0
  506. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.html +26 -0
  507. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +89 -0
  508. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.html +35 -0
  509. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +79 -0
  510. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.html +86 -0
  511. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +210 -0
  512. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.html +9 -0
  513. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +46 -0
  514. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.ts +13 -5
  515. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +4 -0
  516. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.ts +128 -0
  517. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.css +0 -0
  518. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.html +33 -0
  519. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.ts +182 -0
  520. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.css +0 -0
  521. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.html +6 -0
  522. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.ts +48 -0
  523. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.css +0 -0
  524. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.html +11 -0
  525. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +122 -0
  526. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.html +2 -2
  527. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.ts +9 -3
  528. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.html +2 -2
  529. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.ts +13 -7
  530. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.html +5 -3
  531. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.ts +11 -4
  532. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +15 -1
  533. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +156 -1
  534. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.html +30 -4
  535. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +41 -86
  536. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +101 -90
  537. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +113 -85
  538. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +50 -70
  539. package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +1 -2
  540. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.html +53 -11
  541. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +20 -7
  542. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +1 -1
  543. package/src/libs/feature/editor/src/lib/expressions.ts +1 -1
  544. package/src/libs/feature/editor/src/lib/feature-editor.module.ts +4 -2
  545. package/src/libs/feature/editor/src/lib/fields.config.ts +222 -54
  546. package/src/libs/feature/editor/src/lib/models/editor-config.model.ts +62 -0
  547. package/src/libs/feature/editor/src/lib/models/index.ts +1 -0
  548. package/src/libs/feature/editor/src/lib/services/editor.service.ts +34 -9
  549. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.ts +3 -0
  550. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.ts +12 -8
  551. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +5 -0
  552. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.html +1 -1
  553. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +10 -7
  554. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.html +1 -1
  555. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +5 -0
  556. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.html +1 -1
  557. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.ts +6 -1
  558. package/src/libs/feature/map/src/lib/feature-map.module.ts +2 -15
  559. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +24 -1
  560. package/src/libs/feature/map/src/lib/map-context/map-context.fixtures.ts +26 -22
  561. package/src/libs/feature/map/src/lib/style/map-style.fixtures.ts +29 -27
  562. package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +8 -4
  563. package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +3 -3
  564. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +36 -19
  565. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +6 -2
  566. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.ts +11 -0
  567. package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +59 -12
  568. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +2 -2
  569. package/src/libs/feature/record/src/lib/feature-record.module.ts +3 -2
  570. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +2 -2
  571. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +47 -32
  572. package/src/libs/feature/router/src/lib/default/constants.ts +1 -0
  573. package/src/libs/feature/router/src/lib/default/router.config.ts +1 -0
  574. package/src/libs/feature/router/src/lib/default/router.service.ts +13 -1
  575. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +9 -1
  576. package/src/libs/feature/search/src/index.ts +1 -1
  577. package/src/libs/feature/search/src/lib/feature-search.module.ts +2 -1
  578. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +1 -1
  579. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +2 -2
  580. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.css +0 -0
  581. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +12 -0
  582. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +112 -0
  583. package/src/libs/feature/search/src/lib/state/fixtures/search-state.fixtures.ts +2 -2
  584. package/src/libs/feature/search/src/lib/state/search.facade.ts +11 -0
  585. package/src/libs/feature/search/src/lib/state/selectors.ts +7 -0
  586. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +16 -2
  587. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.html +8 -6
  588. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.ts +2 -2
  589. package/src/libs/ui/catalog/src/lib/ui-catalog.module.ts +2 -0
  590. package/src/libs/ui/dataviz/src/lib/chart/chart.fixtures.ts +2 -2
  591. package/src/libs/ui/dataviz/src/lib/figure/figure.component.html +11 -3
  592. package/src/libs/ui/dataviz/src/lib/figure/figure.component.ts +3 -7
  593. package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +2 -2
  594. package/src/libs/ui/elements/src/index.ts +1 -2
  595. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +29 -29
  596. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.css +0 -0
  597. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.html +12 -0
  598. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.ts +37 -0
  599. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +4 -4
  600. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +7 -7
  601. package/src/libs/ui/elements/src/lib/error/error.component.html +30 -6
  602. package/src/libs/ui/elements/src/lib/error/error.component.ts +2 -0
  603. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +3 -3
  604. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.html +4 -1
  605. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.css +2 -1
  606. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +12 -8
  607. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +14 -20
  608. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +0 -10
  609. package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.html +1 -1
  610. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +2 -2
  611. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +1 -1
  612. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +22 -1
  613. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +10 -6
  614. package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.html +1 -1
  615. package/src/libs/ui/inputs/src/index.ts +5 -0
  616. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.css +0 -1
  617. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +23 -19
  618. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +94 -30
  619. package/src/libs/ui/inputs/src/lib/badge/badge.component.css +0 -0
  620. package/src/libs/ui/inputs/src/lib/badge/badge.component.html +18 -0
  621. package/src/libs/ui/inputs/src/lib/badge/badge.component.ts +27 -0
  622. package/src/libs/ui/inputs/src/lib/editable-label/editable-label.directive.ts +40 -26
  623. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.css +0 -0
  624. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.html +85 -0
  625. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +92 -0
  626. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.html +50 -50
  627. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.ts +17 -14
  628. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.css +31 -0
  629. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.html +15 -0
  630. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +38 -0
  631. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.html +3 -2
  632. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.ts +3 -28
  633. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.html +4 -3
  634. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.ts +4 -16
  635. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +3 -6
  636. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.css +9 -0
  637. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.html +37 -0
  638. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.ts +33 -0
  639. package/src/libs/ui/layout/src/index.ts +3 -0
  640. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.html +1 -1
  641. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +1 -0
  642. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.css +0 -0
  643. package/src/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.html +1 -0
  644. package/src/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.ts +9 -5
  645. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.css +0 -0
  646. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.html +15 -0
  647. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.ts +44 -0
  648. package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.html +37 -0
  649. package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.ts +15 -18
  650. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +0 -1
  651. package/src/libs/ui/map/src/lib/ui-map.module.ts +1 -1
  652. package/src/libs/ui/search/src/index.ts +1 -0
  653. package/src/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.ts +7 -6
  654. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.css +0 -0
  655. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +26 -0
  656. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +74 -0
  657. package/src/libs/ui/search/src/lib/results-table/results-table.component.css +0 -0
  658. package/src/libs/{feature → ui}/search/src/lib/results-table/results-table.component.html +30 -9
  659. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +151 -0
  660. package/src/libs/ui/widgets/src/index.ts +1 -1
  661. package/src/libs/ui/widgets/src/lib/popover/popover.component.css +0 -0
  662. package/src/libs/ui/widgets/src/lib/popover/popover.component.html +3 -0
  663. package/src/libs/ui/widgets/src/lib/popover/popover.component.ts +85 -0
  664. package/src/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.ts +4 -0
  665. package/src/libs/ui/widgets/src/lib/ui-widgets.module.ts +0 -3
  666. package/src/libs/util/app-config/src/lib/fixtures.ts +9 -9
  667. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +4 -3
  668. package/src/libs/util/shared/src/lib/links/link-utils.ts +6 -6
  669. package/src/libs/util/shared/src/lib/utils/bytes-convert.ts +4 -1
  670. package/tailwind.base.css +23 -5
  671. package/translations/de.json +155 -38
  672. package/translations/en.json +129 -12
  673. package/translations/es.json +126 -9
  674. package/translations/fr.json +141 -24
  675. package/translations/it.json +129 -12
  676. package/translations/nl.json +126 -9
  677. package/translations/pt.json +126 -9
  678. package/translations/sk.json +128 -11
  679. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.mjs +0 -17
  680. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.mjs +0 -17
  681. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.mjs +0 -2
  682. package/esm2022/libs/feature/editor/src/lib/models/fields.model.mjs +0 -2
  683. package/esm2022/libs/feature/search/src/lib/results-table/results-table.component.mjs +0 -136
  684. package/esm2022/libs/ui/elements/src/lib/max-lines/max-lines.component.mjs +0 -69
  685. package/esm2022/libs/ui/elements/src/lib/sortable-list/sortable-list.component.mjs +0 -43
  686. package/esm2022/libs/ui/widgets/src/lib/badge/badge.component.mjs +0 -18
  687. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts +0 -8
  688. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts.map +0 -1
  689. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.d.ts +0 -8
  690. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.d.ts.map +0 -1
  691. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts +0 -26
  692. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts.map +0 -1
  693. package/libs/feature/editor/src/lib/models/fields.model.d.ts +0 -15
  694. package/libs/feature/editor/src/lib/models/fields.model.d.ts.map +0 -1
  695. package/libs/feature/search/src/lib/results-table/results-table.component.d.ts +0 -36
  696. package/libs/feature/search/src/lib/results-table/results-table.component.d.ts.map +0 -1
  697. package/libs/ui/elements/src/lib/max-lines/max-lines.component.d.ts.map +0 -1
  698. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts +0 -22
  699. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts.map +0 -1
  700. package/libs/ui/widgets/src/lib/badge/badge.component.d.ts +0 -7
  701. package/libs/ui/widgets/src/lib/badge/badge.component.d.ts.map +0 -1
  702. package/src/libs/common/fixtures/src/lib/ol-feature.fixture.ts +0 -7
  703. package/src/libs/common/fixtures/src/lib/utils/freeze.ts +0 -10
  704. package/src/libs/common/fixtures/src/lib/utils/index.ts +0 -1
  705. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.html +0 -8
  706. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.ts +0 -70
  707. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.html +0 -7
  708. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.ts +0 -16
  709. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.html +0 -13
  710. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.ts +0 -16
  711. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.ts +0 -43
  712. package/src/libs/feature/editor/src/lib/models/fields.model.ts +0 -29
  713. package/src/libs/feature/search/src/lib/results-table/results-table.component.ts +0 -172
  714. package/src/libs/ui/elements/src/lib/sortable-list/sortable-list.component.html +0 -36
  715. package/src/libs/ui/widgets/src/lib/badge/badge.component.html +0 -10
  716. package/src/libs/ui/widgets/src/lib/badge/badge.component.ts +0 -14
  717. /package/src/libs/feature/editor/src/lib/components/{overview-upload/overview-upload.component.css → contact-card/contact-card.component.css} +0 -0
  718. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.css → generic-keywords/generic-keywords.component.css} +0 -0
  719. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.css → online-resource-card/online-resource-card.component.css} +0 -0
  720. /package/src/libs/feature/{search/src/lib/results-table/results-table.component.css → editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.css} +0 -0
  721. /package/src/libs/{ui/elements/src/lib/max-lines/max-lines.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.css} +0 -0
  722. /package/src/libs/{ui/widgets/src/lib/badge/badge.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.css} +0 -0
  723. /package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.css +0 -0
@@ -10,4 +10,4 @@ export var UserApiModel;
10
10
  Monitor: 'Monitor',
11
11
  };
12
12
  })(UserApiModel || (UserApiModel = {}));
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5hcGkubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtYWNjZXNzL2duNC9zcmMvb3BlbmFwaS9tb2RlbC91c2VyLmFwaS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQ0EsTUFBTSxLQUFXLFlBQVksQ0FrQjVCO0FBbEJELFdBQWlCLFlBQVk7SUFTZCx3QkFBVyxHQUFHO1FBQ3pCLGFBQWEsRUFBRSxlQUE4QjtRQUM3QyxTQUFTLEVBQUUsV0FBMEI7UUFDckMsUUFBUSxFQUFFLFVBQXlCO1FBQ25DLE1BQU0sRUFBRSxRQUF1QjtRQUMvQixjQUFjLEVBQUUsZ0JBQStCO1FBQy9DLEtBQUssRUFBRSxPQUFzQjtRQUM3QixPQUFPLEVBQUUsU0FBd0I7S0FDbEMsQ0FBQTtBQUNILENBQUMsRUFsQmdCLFlBQVksS0FBWixZQUFZLFFBa0I1QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VvTmV0d29yayA0LjIuNyBPcGVuQVBJIERvY3VtZW50YXRpb25cbiAqIFRoaXMgaXMgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBHZW9OZXR3b3JrIE9wZW5BUEkuIFVzZSB0aGlzIEFQSSB0byBtYW5hZ2UgeW91ciBjYXRhbG9nLlxuICpcbiAqIFRoZSB2ZXJzaW9uIG9mIHRoZSBPcGVuQVBJIGRvY3VtZW50OiA0LjIuN1xuICogQ29udGFjdDogZ2VvbmV0d29yay11c2Vyc0BsaXN0cy5zb3VyY2Vmb3JnZS5uZXRcbiAqXG4gKiBOT1RFOiBUaGlzIGNsYXNzIGlzIGF1dG8gZ2VuZXJhdGVkIGJ5IE9wZW5BUEkgR2VuZXJhdG9yIChodHRwczovL29wZW5hcGktZ2VuZXJhdG9yLnRlY2gpLlxuICogaHR0cHM6Ly9vcGVuYXBpLWdlbmVyYXRvci50ZWNoXG4gKiBEbyBub3QgZWRpdCB0aGUgY2xhc3MgbWFudWFsbHkuXG4gKi9cbmltcG9ydCB7IFVzZXJTZWN1cml0eUFwaU1vZGVsIH0gZnJvbSAnLi91c2VyU2VjdXJpdHkuYXBpLm1vZGVsJ1xuaW1wb3J0IHsgR3JhbnRlZEF1dGhvcml0eUFwaU1vZGVsIH0gZnJvbSAnLi9ncmFudGVkQXV0aG9yaXR5LmFwaS5tb2RlbCdcbmltcG9ydCB7IEFkZHJlc3NBcGlNb2RlbCB9IGZyb20gJy4vYWRkcmVzcy5hcGkubW9kZWwnXG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlckFwaU1vZGVsIHtcbiAgc2VjdXJpdHk/OiBVc2VyU2VjdXJpdHlBcGlNb2RlbFxuICBlbWFpbD86IHN0cmluZ1xuICBwcm9maWxlPzogVXNlckFwaU1vZGVsLlByb2ZpbGVFbnVtXG4gIHN1cm5hbWU/OiBzdHJpbmdcbiAgZW1haWxBZGRyZXNzZXM/OiBTZXQ8c3RyaW5nPlxuICBhZGRyZXNzZXM/OiBTZXQ8QWRkcmVzc0FwaU1vZGVsPlxuICBwcmltYXJ5QWRkcmVzcz86IEFkZHJlc3NBcGlNb2RlbFxuICBvcmdhbmlzYXRpb24/OiBzdHJpbmdcbiAga2luZD86IHN0cmluZ1xuICBsYXN0TG9naW5EYXRlPzogc3RyaW5nXG4gIGF1dGhvcml0aWVzPzogQXJyYXk8R3JhbnRlZEF1dGhvcml0eUFwaU1vZGVsPlxuICBhY2NvdW50Tm9uRXhwaXJlZD86IGJvb2xlYW5cbiAgYWNjb3VudE5vbkxvY2tlZD86IGJvb2xlYW5cbiAgY3JlZGVudGlhbHNOb25FeHBpcmVkPzogYm9vbGVhblxuICBlbmFibGVkPzogYm9vbGVhblxuICB1c2VybmFtZT86IHN0cmluZ1xuICBpZD86IG51bWJlclxuICBuYW1lPzogc3RyaW5nXG59XG5leHBvcnQgbmFtZXNwYWNlIFVzZXJBcGlNb2RlbCB7XG4gIGV4cG9ydCB0eXBlIFByb2ZpbGVFbnVtID1cbiAgICB8ICdBZG1pbmlzdHJhdG9yJ1xuICAgIHwgJ1VzZXJBZG1pbidcbiAgICB8ICdSZXZpZXdlcidcbiAgICB8ICdFZGl0b3InXG4gICAgfCAnUmVnaXN0ZXJlZFVzZXInXG4gICAgfCAnR3Vlc3QnXG4gICAgfCAnTW9uaXRvcidcbiAgZXhwb3J0IGNvbnN0IFByb2ZpbGVFbnVtID0ge1xuICAgIEFkbWluaXN0cmF0b3I6ICdBZG1pbmlzdHJhdG9yJyBhcyBQcm9maWxlRW51bSxcbiAgICBVc2VyQWRtaW46ICdVc2VyQWRtaW4nIGFzIFByb2ZpbGVFbnVtLFxuICAgIFJldmlld2VyOiAnUmV2aWV3ZXInIGFzIFByb2ZpbGVFbnVtLFxuICAgIEVkaXRvcjogJ0VkaXRvcicgYXMgUHJvZmlsZUVudW0sXG4gICAgUmVnaXN0ZXJlZFVzZXI6ICdSZWdpc3RlcmVkVXNlcicgYXMgUHJvZmlsZUVudW0sXG4gICAgR3Vlc3Q6ICdHdWVzdCcgYXMgUHJvZmlsZUVudW0sXG4gICAgTW9uaXRvcjogJ01vbml0b3InIGFzIFByb2ZpbGVFbnVtLFxuICB9XG59XG4iXX0=
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5hcGkubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtYWNjZXNzL2duNC9zcmMvb3BlbmFwaS9tb2RlbC91c2VyLmFwaS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQ0EsTUFBTSxLQUFXLFlBQVksQ0FrQjVCO0FBbEJELFdBQWlCLFlBQVk7SUFTZCx3QkFBVyxHQUFHO1FBQ3pCLGFBQWEsRUFBRSxlQUE4QjtRQUM3QyxTQUFTLEVBQUUsV0FBMEI7UUFDckMsUUFBUSxFQUFFLFVBQXlCO1FBQ25DLE1BQU0sRUFBRSxRQUF1QjtRQUMvQixjQUFjLEVBQUUsZ0JBQStCO1FBQy9DLEtBQUssRUFBRSxPQUFzQjtRQUM3QixPQUFPLEVBQUUsU0FBd0I7S0FDbEMsQ0FBQTtBQUNILENBQUMsRUFsQmdCLFlBQVksS0FBWixZQUFZLFFBa0I1QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VvTmV0d29yayA0LjIuNyBPcGVuQVBJIERvY3VtZW50YXRpb25cbiAqIFRoaXMgaXMgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBHZW9OZXR3b3JrIE9wZW5BUEkuIFVzZSB0aGlzIEFQSSB0byBtYW5hZ2UgeW91ciBjYXRhbG9nLlxuICpcbiAqIFRoZSB2ZXJzaW9uIG9mIHRoZSBPcGVuQVBJIGRvY3VtZW50OiA0LjIuN1xuICogQ29udGFjdDogZ2VvbmV0d29yay11c2Vyc0BsaXN0cy5zb3VyY2Vmb3JnZS5uZXRcbiAqXG4gKiBOT1RFOiBUaGlzIGNsYXNzIGlzIGF1dG8gZ2VuZXJhdGVkIGJ5IE9wZW5BUEkgR2VuZXJhdG9yIChodHRwczovL29wZW5hcGktZ2VuZXJhdG9yLnRlY2gpLlxuICogaHR0cHM6Ly9vcGVuYXBpLWdlbmVyYXRvci50ZWNoXG4gKiBEbyBub3QgZWRpdCB0aGUgY2xhc3MgbWFudWFsbHkuXG4gKi9cbmltcG9ydCB7IFVzZXJTZWN1cml0eUFwaU1vZGVsIH0gZnJvbSAnLi91c2VyU2VjdXJpdHkuYXBpLm1vZGVsJ1xuaW1wb3J0IHsgR3JhbnRlZEF1dGhvcml0eUFwaU1vZGVsIH0gZnJvbSAnLi9ncmFudGVkQXV0aG9yaXR5LmFwaS5tb2RlbCdcbmltcG9ydCB7IEFkZHJlc3NBcGlNb2RlbCB9IGZyb20gJy4vYWRkcmVzcy5hcGkubW9kZWwnXG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlckFwaU1vZGVsIHtcbiAgc2VjdXJpdHk/OiBVc2VyU2VjdXJpdHlBcGlNb2RlbFxuICBlbWFpbD86IHN0cmluZ1xuICBwcm9maWxlPzogVXNlckFwaU1vZGVsLlByb2ZpbGVFbnVtXG4gIHN1cm5hbWU/OiBzdHJpbmdcbiAgZW1haWxBZGRyZXNzZXM/OiBTZXQ8c3RyaW5nPlxuICBhZGRyZXNzZXM/OiBTZXQ8QWRkcmVzc0FwaU1vZGVsPlxuICBwcmltYXJ5QWRkcmVzcz86IEFkZHJlc3NBcGlNb2RlbFxuICBvcmdhbml6YXRpb24/OiBzdHJpbmdcbiAga2luZD86IHN0cmluZ1xuICBsYXN0TG9naW5EYXRlPzogc3RyaW5nXG4gIGF1dGhvcml0aWVzPzogQXJyYXk8R3JhbnRlZEF1dGhvcml0eUFwaU1vZGVsPlxuICBhY2NvdW50Tm9uRXhwaXJlZD86IGJvb2xlYW5cbiAgYWNjb3VudE5vbkxvY2tlZD86IGJvb2xlYW5cbiAgY3JlZGVudGlhbHNOb25FeHBpcmVkPzogYm9vbGVhblxuICBlbmFibGVkPzogYm9vbGVhblxuICB1c2VybmFtZT86IHN0cmluZ1xuICBpZD86IG51bWJlclxuICBuYW1lPzogc3RyaW5nXG59XG5leHBvcnQgbmFtZXNwYWNlIFVzZXJBcGlNb2RlbCB7XG4gIGV4cG9ydCB0eXBlIFByb2ZpbGVFbnVtID1cbiAgICB8ICdBZG1pbmlzdHJhdG9yJ1xuICAgIHwgJ1VzZXJBZG1pbidcbiAgICB8ICdSZXZpZXdlcidcbiAgICB8ICdFZGl0b3InXG4gICAgfCAnUmVnaXN0ZXJlZFVzZXInXG4gICAgfCAnR3Vlc3QnXG4gICAgfCAnTW9uaXRvcidcbiAgZXhwb3J0IGNvbnN0IFByb2ZpbGVFbnVtID0ge1xuICAgIEFkbWluaXN0cmF0b3I6ICdBZG1pbmlzdHJhdG9yJyBhcyBQcm9maWxlRW51bSxcbiAgICBVc2VyQWRtaW46ICdVc2VyQWRtaW4nIGFzIFByb2ZpbGVFbnVtLFxuICAgIFJldmlld2VyOiAnUmV2aWV3ZXInIGFzIFByb2ZpbGVFbnVtLFxuICAgIEVkaXRvcjogJ0VkaXRvcicgYXMgUHJvZmlsZUVudW0sXG4gICAgUmVnaXN0ZXJlZFVzZXI6ICdSZWdpc3RlcmVkVXNlcicgYXMgUHJvZmlsZUVudW0sXG4gICAgR3Vlc3Q6ICdHdWVzdCcgYXMgUHJvZmlsZUVudW0sXG4gICAgTW9uaXRvcjogJ01vbml0b3InIGFzIFByb2ZpbGVFbnVtLFxuICB9XG59XG4iXX0=
@@ -1,4 +1,5 @@
1
1
  export * from './lib/feature-catalog.module';
2
+ export * from './lib/organization-url.token';
2
3
  export * from './lib/sources/sources.service';
3
4
  export * from './lib/sources/sources.model';
4
5
  export * from './lib/records/records.service';
@@ -6,4 +7,4 @@ export * from './lib/organisations/organisations.component';
6
7
  export * from './lib/site-title/site-title.component';
7
8
  export * from './lib/source-label/source-label.component';
8
9
  export * from './lib/my-org/my-org.service';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvY2F0YWxvZy9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLCtCQUErQixDQUFBO0FBQzdDLGNBQWMsNkJBQTZCLENBQUE7QUFDM0MsY0FBYywrQkFBK0IsQ0FBQTtBQUM3QyxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsdUNBQXVDLENBQUE7QUFDckQsY0FBYywyQ0FBMkMsQ0FBQTtBQUN6RCxjQUFjLDZCQUE2QixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvZmVhdHVyZS1jYXRhbG9nLm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NvdXJjZXMvc291cmNlcy5zZXJ2aWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc291cmNlcy9zb3VyY2VzLm1vZGVsJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcmVjb3Jkcy9yZWNvcmRzLnNlcnZpY2UnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9vcmdhbmlzYXRpb25zL29yZ2FuaXNhdGlvbnMuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2l0ZS10aXRsZS9zaXRlLXRpdGxlLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NvdXJjZS1sYWJlbC9zb3VyY2UtbGFiZWwuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbXktb3JnL215LW9yZy5zZXJ2aWNlJ1xuIl19
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvY2F0YWxvZy9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLDhCQUE4QixDQUFBO0FBQzVDLGNBQWMsK0JBQStCLENBQUE7QUFDN0MsY0FBYyw2QkFBNkIsQ0FBQTtBQUMzQyxjQUFjLCtCQUErQixDQUFBO0FBQzdDLGNBQWMsNkNBQTZDLENBQUE7QUFDM0QsY0FBYyx1Q0FBdUMsQ0FBQTtBQUNyRCxjQUFjLDJDQUEyQyxDQUFBO0FBQ3pELGNBQWMsNkJBQTZCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9mZWF0dXJlLWNhdGFsb2cubW9kdWxlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvb3JnYW5pemF0aW9uLXVybC50b2tlbidcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NvdXJjZXMvc291cmNlcy5zZXJ2aWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc291cmNlcy9zb3VyY2VzLm1vZGVsJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcmVjb3Jkcy9yZWNvcmRzLnNlcnZpY2UnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9vcmdhbmlzYXRpb25zL29yZ2FuaXNhdGlvbnMuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2l0ZS10aXRsZS9zaXRlLXRpdGxlLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NvdXJjZS1sYWJlbC9zb3VyY2UtbGFiZWwuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbXktb3JnL215LW9yZy5zZXJ2aWNlJ1xuIl19
@@ -82,4 +82,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
82
82
  ],
83
83
  }]
84
84
  }] });
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1jYXRhbG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9jYXRhbG9nL3NyYy9saWIvZmVhdHVyZS1jYXRhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFDcEUsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixnQkFBZ0IsR0FFakIsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUE7QUFDNUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUMvRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJFQUEyRSxDQUFBO0FBQ3pILE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsc0JBQXNCLEVBQ3RCLDhCQUE4QixFQUM5QixnQ0FBZ0MsR0FFakMsTUFBTSx3Q0FBd0MsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzRUFBc0UsQ0FBQTs7O0FBRS9HLHNDQUFzQztBQUN0QyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLGNBQWMsQ0FDdEQsd0JBQXdCLENBQ3pCLENBQUE7QUFFRCxNQUFNLDJCQUEyQixHQUFHLENBQ2xDLFFBQStCLEVBQy9CLFNBQStCLEVBQy9CLGdCQUFrQyxFQUNsQyxnQkFBa0MsRUFDbEMsZ0JBQWtDLEVBQ2xDLGVBQXlDLEVBQ3pDLFdBQXdCLEVBQ3hCLEVBQUUsQ0FDRixRQUFRLEtBQUssUUFBUTtJQUNuQixDQUFDLENBQUMsSUFBSSw4QkFBOEIsQ0FDaEMsU0FBUyxFQUNULGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsZ0JBQWdCLENBQ2pCO0lBQ0gsQ0FBQyxDQUFDLElBQUksZ0NBQWdDLENBQ2xDLFNBQVMsRUFDVCxnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDZixXQUFXLENBQ1osQ0FBQTtBQWlDUCxNQUFNLE9BQU8sb0JBQW9COytHQUFwQixvQkFBb0I7Z0hBQXBCLG9CQUFvQixpQkE3QjdCLGtCQUFrQjtZQUNsQixvQkFBb0I7WUFDcEIsc0JBQXNCLGFBR3RCLGVBQWU7WUFDZixjQUFjO1lBQ2QsWUFBWTtZQUNaLGNBQWMsc0JBRWQsZ0JBQWdCLGFBRVIsa0JBQWtCLEVBQUUsb0JBQW9CLEVBQUUsc0JBQXNCO2dIQWlCL0Qsb0JBQW9CLGFBaEJwQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSw2QkFBNkI7Z0JBQ3RDLFVBQVUsRUFBRSwyQkFBMkI7Z0JBQ3ZDLElBQUksRUFBRTtvQkFDSixzQkFBc0I7b0JBQ3RCLG9CQUFvQjtvQkFDcEIsZ0JBQWdCO29CQUNoQixnQkFBZ0I7b0JBQ2hCLGdCQUFnQjtvQkFDaEIsd0JBQXdCO29CQUN4QixXQUFXO2lCQUNaO2FBQ0Y7U0FDRixZQXRCQyxlQUFlO1lBQ2YsY0FBYztZQUNkLFlBQVk7WUFDWixjQUFjO1lBQ2QsZUFBZSxDQUFDLFFBQVEsRUFBRTtZQUMxQixnQkFBZ0I7OzRGQW1CUCxvQkFBb0I7a0JBL0JoQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixrQkFBa0I7d0JBQ2xCLG9CQUFvQjt3QkFDcEIsc0JBQXNCO3FCQUN2QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZUFBZTt3QkFDZixjQUFjO3dCQUNkLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxlQUFlLENBQUMsUUFBUSxFQUFFO3dCQUMxQixnQkFBZ0I7cUJBQ2pCO29CQUNELE9BQU8sRUFBRSxDQUFDLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLHNCQUFzQixDQUFDO29CQUMzRSxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLDZCQUE2Qjs0QkFDdEMsVUFBVSxFQUFFLDJCQUEyQjs0QkFDdkMsSUFBSSxFQUFFO2dDQUNKLHNCQUFzQjtnQ0FDdEIsb0JBQW9CO2dDQUNwQixnQkFBZ0I7Z0NBQ2hCLGdCQUFnQjtnQ0FDaEIsZ0JBQWdCO2dDQUNoQix3QkFBd0I7Z0NBQ3hCLFdBQVc7NkJBQ1o7eUJBQ0Y7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgU2l0ZVRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi9zaXRlLXRpdGxlL3NpdGUtdGl0bGUuY29tcG9uZW50J1xuaW1wb3J0IHsgVWlDYXRhbG9nTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9jYXRhbG9nL3NyYydcbmltcG9ydCB7XG4gIEdyb3Vwc0FwaVNlcnZpY2UsXG4gIFNlYXJjaEFwaVNlcnZpY2UsXG4gIFNpdGVBcGlTZXJ2aWNlLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtYWNjZXNzL2duNC9zcmMnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBTb3VyY2VMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vc291cmNlLWxhYmVsL3NvdXJjZS1sYWJlbC5jb21wb25lbnQnXG5pbXBvcnQgeyBMYW5nU2VydmljZSwgVXRpbEkxOG5Nb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvaTE4bi9zcmMnXG5pbXBvcnQgeyBPcmdhbmlzYXRpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9vcmdhbmlzYXRpb25zL29yZ2FuaXNhdGlvbnMuY29tcG9uZW50J1xuaW1wb3J0IHsgVWlMYXlvdXRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgVWlFbGVtZW50c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjJ1xuaW1wb3J0IHsgT3JnYW5pemF0aW9uc1NlcnZpY2VJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9vcmdhbml6YXRpb25zLnNlcnZpY2UuaW50ZXJmYWNlJ1xuaW1wb3J0IHtcbiAgRWxhc3RpY3NlYXJjaFNlcnZpY2UsXG4gIE9SR0FOSVpBVElPTlNfU1RSQVRFR1ksXG4gIE9yZ2FuaXphdGlvbnNGcm9tR3JvdXBzU2VydmljZSxcbiAgT3JnYW5pemF0aW9uc0Zyb21NZXRhZGF0YVNlcnZpY2UsXG4gIE9yZ2FuaXphdGlvbnNTdHJhdGVneSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvcmVwb3NpdG9yeS9zcmMnXG5pbXBvcnQgeyBQbGF0Zm9ybVNlcnZpY2VJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9wbGF0Zm9ybS5zZXJ2aWNlLmludGVyZmFjZSdcblxuLy8gZXhwZWN0cyB0aGUgcmVwbGFjZW1lbnQga2V5ICR7bmFtZX1cbmV4cG9ydCBjb25zdCBPUkdBTklaQVRJT05fVVJMX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oXG4gICdvcmdhbml6YXRpb24tdXJsLXRva2VuJ1xuKVxuXG5jb25zdCBvcmdhbml6YXRpb25zU2VydmljZUZhY3RvcnkgPSAoXG4gIHN0cmF0ZWd5OiBPcmdhbml6YXRpb25zU3RyYXRlZ3ksXG4gIGVzU2VydmljZTogRWxhc3RpY3NlYXJjaFNlcnZpY2UsXG4gIHNlYXJjaEFwaVNlcnZpY2U6IFNlYXJjaEFwaVNlcnZpY2UsXG4gIGdyb3Vwc0FwaVNlcnZpY2U6IEdyb3Vwc0FwaVNlcnZpY2UsXG4gIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gIHBsYXRmb3JtU2VydmljZTogUGxhdGZvcm1TZXJ2aWNlSW50ZXJmYWNlLFxuICBsYW5nU2VydmljZTogTGFuZ1NlcnZpY2VcbikgPT5cbiAgc3RyYXRlZ3kgPT09ICdncm91cHMnXG4gICAgPyBuZXcgT3JnYW5pemF0aW9uc0Zyb21Hcm91cHNTZXJ2aWNlKFxuICAgICAgICBlc1NlcnZpY2UsXG4gICAgICAgIHNlYXJjaEFwaVNlcnZpY2UsXG4gICAgICAgIGdyb3Vwc0FwaVNlcnZpY2UsXG4gICAgICAgIHRyYW5zbGF0ZVNlcnZpY2VcbiAgICAgIClcbiAgICA6IG5ldyBPcmdhbml6YXRpb25zRnJvbU1ldGFkYXRhU2VydmljZShcbiAgICAgICAgZXNTZXJ2aWNlLFxuICAgICAgICBzZWFyY2hBcGlTZXJ2aWNlLFxuICAgICAgICBncm91cHNBcGlTZXJ2aWNlLFxuICAgICAgICBwbGF0Zm9ybVNlcnZpY2UsXG4gICAgICAgIGxhbmdTZXJ2aWNlXG4gICAgICApXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFNpdGVUaXRsZUNvbXBvbmVudCxcbiAgICBTb3VyY2VMYWJlbENvbXBvbmVudCxcbiAgICBPcmdhbmlzYXRpb25zQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgVWlDYXRhbG9nTW9kdWxlLFxuICAgIFVpTGF5b3V0TW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBVdGlsSTE4bk1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUuZm9yQ2hpbGQoKSxcbiAgICBVaUVsZW1lbnRzTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbU2l0ZVRpdGxlQ29tcG9uZW50LCBTb3VyY2VMYWJlbENvbXBvbmVudCwgT3JnYW5pc2F0aW9uc0NvbXBvbmVudF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE9yZ2FuaXphdGlvbnNTZXJ2aWNlSW50ZXJmYWNlLFxuICAgICAgdXNlRmFjdG9yeTogb3JnYW5pemF0aW9uc1NlcnZpY2VGYWN0b3J5LFxuICAgICAgZGVwczogW1xuICAgICAgICBPUkdBTklaQVRJT05TX1NUUkFURUdZLFxuICAgICAgICBFbGFzdGljc2VhcmNoU2VydmljZSxcbiAgICAgICAgU2VhcmNoQXBpU2VydmljZSxcbiAgICAgICAgR3JvdXBzQXBpU2VydmljZSxcbiAgICAgICAgVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgUGxhdGZvcm1TZXJ2aWNlSW50ZXJmYWNlLFxuICAgICAgICBMYW5nU2VydmljZSxcbiAgICAgIF0sXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRmVhdHVyZUNhdGFsb2dNb2R1bGUge31cbiJdfQ==
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1jYXRhbG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9jYXRhbG9nL3NyYy9saWIvZmVhdHVyZS1jYXRhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFDcEUsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixnQkFBZ0IsR0FDakIsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUE7QUFDNUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUMvRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJFQUEyRSxDQUFBO0FBQ3pILE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsc0JBQXNCLEVBQ3RCLDhCQUE4QixFQUM5QixnQ0FBZ0MsR0FFakMsTUFBTSx3Q0FBd0MsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzRUFBc0UsQ0FBQTs7O0FBRS9HLHNDQUFzQztBQUN0QyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLGNBQWMsQ0FDdEQsd0JBQXdCLENBQ3pCLENBQUE7QUFFRCxNQUFNLDJCQUEyQixHQUFHLENBQ2xDLFFBQStCLEVBQy9CLFNBQStCLEVBQy9CLGdCQUFrQyxFQUNsQyxnQkFBa0MsRUFDbEMsZ0JBQWtDLEVBQ2xDLGVBQXlDLEVBQ3pDLFdBQXdCLEVBQ3hCLEVBQUUsQ0FDRixRQUFRLEtBQUssUUFBUTtJQUNuQixDQUFDLENBQUMsSUFBSSw4QkFBOEIsQ0FDaEMsU0FBUyxFQUNULGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsZ0JBQWdCLENBQ2pCO0lBQ0gsQ0FBQyxDQUFDLElBQUksZ0NBQWdDLENBQ2xDLFNBQVMsRUFDVCxnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDZixXQUFXLENBQ1osQ0FBQTtBQWlDUCxNQUFNLE9BQU8sb0JBQW9COytHQUFwQixvQkFBb0I7Z0hBQXBCLG9CQUFvQixpQkE3QjdCLGtCQUFrQjtZQUNsQixvQkFBb0I7WUFDcEIsc0JBQXNCLGFBR3RCLGVBQWU7WUFDZixjQUFjO1lBQ2QsWUFBWTtZQUNaLGNBQWMsc0JBRWQsZ0JBQWdCLGFBRVIsa0JBQWtCLEVBQUUsb0JBQW9CLEVBQUUsc0JBQXNCO2dIQWlCL0Qsb0JBQW9CLGFBaEJwQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSw2QkFBNkI7Z0JBQ3RDLFVBQVUsRUFBRSwyQkFBMkI7Z0JBQ3ZDLElBQUksRUFBRTtvQkFDSixzQkFBc0I7b0JBQ3RCLG9CQUFvQjtvQkFDcEIsZ0JBQWdCO29CQUNoQixnQkFBZ0I7b0JBQ2hCLGdCQUFnQjtvQkFDaEIsd0JBQXdCO29CQUN4QixXQUFXO2lCQUNaO2FBQ0Y7U0FDRixZQXRCQyxlQUFlO1lBQ2YsY0FBYztZQUNkLFlBQVk7WUFDWixjQUFjO1lBQ2QsZUFBZSxDQUFDLFFBQVEsRUFBRTtZQUMxQixnQkFBZ0I7OzRGQW1CUCxvQkFBb0I7a0JBL0JoQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixrQkFBa0I7d0JBQ2xCLG9CQUFvQjt3QkFDcEIsc0JBQXNCO3FCQUN2QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZUFBZTt3QkFDZixjQUFjO3dCQUNkLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxlQUFlLENBQUMsUUFBUSxFQUFFO3dCQUMxQixnQkFBZ0I7cUJBQ2pCO29CQUNELE9BQU8sRUFBRSxDQUFDLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLHNCQUFzQixDQUFDO29CQUMzRSxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLDZCQUE2Qjs0QkFDdEMsVUFBVSxFQUFFLDJCQUEyQjs0QkFDdkMsSUFBSSxFQUFFO2dDQUNKLHNCQUFzQjtnQ0FDdEIsb0JBQW9CO2dDQUNwQixnQkFBZ0I7Z0NBQ2hCLGdCQUFnQjtnQ0FDaEIsZ0JBQWdCO2dDQUNoQix3QkFBd0I7Z0NBQ3hCLFdBQVc7NkJBQ1o7eUJBQ0Y7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgU2l0ZVRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi9zaXRlLXRpdGxlL3NpdGUtdGl0bGUuY29tcG9uZW50J1xuaW1wb3J0IHsgVWlDYXRhbG9nTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9jYXRhbG9nL3NyYydcbmltcG9ydCB7XG4gIEdyb3Vwc0FwaVNlcnZpY2UsXG4gIFNlYXJjaEFwaVNlcnZpY2UsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvZGF0YS1hY2Nlc3MvZ240L3NyYydcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IFNvdXJjZUxhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi9zb3VyY2UtbGFiZWwvc291cmNlLWxhYmVsLmNvbXBvbmVudCdcbmltcG9ydCB7IExhbmdTZXJ2aWNlLCBVdGlsSTE4bk1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9pMThuL3NyYydcbmltcG9ydCB7IE9yZ2FuaXNhdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL29yZ2FuaXNhdGlvbnMvb3JnYW5pc2F0aW9ucy5jb21wb25lbnQnXG5pbXBvcnQgeyBVaUxheW91dE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbGF5b3V0L3NyYydcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBVaUVsZW1lbnRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMnXG5pbXBvcnQgeyBPcmdhbml6YXRpb25zU2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL29yZ2FuaXphdGlvbnMuc2VydmljZS5pbnRlcmZhY2UnXG5pbXBvcnQge1xuICBFbGFzdGljc2VhcmNoU2VydmljZSxcbiAgT1JHQU5JWkFUSU9OU19TVFJBVEVHWSxcbiAgT3JnYW5pemF0aW9uc0Zyb21Hcm91cHNTZXJ2aWNlLFxuICBPcmdhbml6YXRpb25zRnJvbU1ldGFkYXRhU2VydmljZSxcbiAgT3JnYW5pemF0aW9uc1N0cmF0ZWd5LFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL2FwaS9yZXBvc2l0b3J5L3NyYydcbmltcG9ydCB7IFBsYXRmb3JtU2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL3BsYXRmb3JtLnNlcnZpY2UuaW50ZXJmYWNlJ1xuXG4vLyBleHBlY3RzIHRoZSByZXBsYWNlbWVudCBrZXkgJHtuYW1lfVxuZXhwb3J0IGNvbnN0IE9SR0FOSVpBVElPTl9VUkxfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48c3RyaW5nPihcbiAgJ29yZ2FuaXphdGlvbi11cmwtdG9rZW4nXG4pXG5cbmNvbnN0IG9yZ2FuaXphdGlvbnNTZXJ2aWNlRmFjdG9yeSA9IChcbiAgc3RyYXRlZ3k6IE9yZ2FuaXphdGlvbnNTdHJhdGVneSxcbiAgZXNTZXJ2aWNlOiBFbGFzdGljc2VhcmNoU2VydmljZSxcbiAgc2VhcmNoQXBpU2VydmljZTogU2VhcmNoQXBpU2VydmljZSxcbiAgZ3JvdXBzQXBpU2VydmljZTogR3JvdXBzQXBpU2VydmljZSxcbiAgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgcGxhdGZvcm1TZXJ2aWNlOiBQbGF0Zm9ybVNlcnZpY2VJbnRlcmZhY2UsXG4gIGxhbmdTZXJ2aWNlOiBMYW5nU2VydmljZVxuKSA9PlxuICBzdHJhdGVneSA9PT0gJ2dyb3VwcydcbiAgICA/IG5ldyBPcmdhbml6YXRpb25zRnJvbUdyb3Vwc1NlcnZpY2UoXG4gICAgICAgIGVzU2VydmljZSxcbiAgICAgICAgc2VhcmNoQXBpU2VydmljZSxcbiAgICAgICAgZ3JvdXBzQXBpU2VydmljZSxcbiAgICAgICAgdHJhbnNsYXRlU2VydmljZVxuICAgICAgKVxuICAgIDogbmV3IE9yZ2FuaXphdGlvbnNGcm9tTWV0YWRhdGFTZXJ2aWNlKFxuICAgICAgICBlc1NlcnZpY2UsXG4gICAgICAgIHNlYXJjaEFwaVNlcnZpY2UsXG4gICAgICAgIGdyb3Vwc0FwaVNlcnZpY2UsXG4gICAgICAgIHBsYXRmb3JtU2VydmljZSxcbiAgICAgICAgbGFuZ1NlcnZpY2VcbiAgICAgIClcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU2l0ZVRpdGxlQ29tcG9uZW50LFxuICAgIFNvdXJjZUxhYmVsQ29tcG9uZW50LFxuICAgIE9yZ2FuaXNhdGlvbnNDb21wb25lbnQsXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBVaUNhdGFsb2dNb2R1bGUsXG4gICAgVWlMYXlvdXRNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFV0aWxJMThuTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZS5mb3JDaGlsZCgpLFxuICAgIFVpRWxlbWVudHNNb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtTaXRlVGl0bGVDb21wb25lbnQsIFNvdXJjZUxhYmVsQ29tcG9uZW50LCBPcmdhbmlzYXRpb25zQ29tcG9uZW50XSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogT3JnYW5pemF0aW9uc1NlcnZpY2VJbnRlcmZhY2UsXG4gICAgICB1c2VGYWN0b3J5OiBvcmdhbml6YXRpb25zU2VydmljZUZhY3RvcnksXG4gICAgICBkZXBzOiBbXG4gICAgICAgIE9SR0FOSVpBVElPTlNfU1RSQVRFR1ksXG4gICAgICAgIEVsYXN0aWNzZWFyY2hTZXJ2aWNlLFxuICAgICAgICBTZWFyY2hBcGlTZXJ2aWNlLFxuICAgICAgICBHcm91cHNBcGlTZXJ2aWNlLFxuICAgICAgICBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICBQbGF0Zm9ybVNlcnZpY2VJbnRlcmZhY2UsXG4gICAgICAgIExhbmdTZXJ2aWNlLFxuICAgICAgXSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGZWF0dXJlQ2F0YWxvZ01vZHVsZSB7fVxuIl19
@@ -1,9 +1,9 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, Optional, Output, } from '@angular/core';
2
2
  import { BehaviorSubject, combineLatest } from 'rxjs';
3
3
  import { map, startWith, tap } from 'rxjs/operators';
4
- import { ORGANIZATION_URL_TOKEN } from '../feature-catalog.module';
5
4
  import { OrganizationsServiceInterface } from '../../../../../../libs/common/domain/src/lib/organizations.service.interface';
6
5
  import { createFuzzyFilter } from '../../../../../../libs/util/shared/src';
6
+ import { ORGANIZATION_PAGE_URL_TOKEN } from '../organization-url.token';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "../../../../../../libs/common/domain/src/lib/organizations.service.interface";
9
9
  import * as i2 from "../../../../../ui/catalog/src/lib/organisation-preview/organisation-preview.component";
@@ -83,20 +83,20 @@ export class OrganisationsComponent {
83
83
  return null;
84
84
  return this.urlTemplate.replace('${name}', organisation.name);
85
85
  }
86
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: OrganisationsComponent, deps: [{ token: i1.OrganizationsServiceInterface }, { token: ORGANIZATION_URL_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
87
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: OrganisationsComponent, selector: "gn-ui-organisations", inputs: { itemsOnPage: "itemsOnPage" }, outputs: { orgSelect: "orgSelect" }, ngImport: i0, template: "<gn-ui-organisations-filter\n (sortBy)=\"setSortBy($event)\"\n (filterBy)=\"setFilterBy($event)\"\n></gn-ui-organisations-filter>\n<div class=\"mt-6 rounded-lg text-gray-800 p-4 bg-slate-100\">\n <gn-ui-organisations-result\n *ngIf=\"organisationsTotal$ | async\"\n [hits]=\"organisationResults\"\n [total]=\"organisationsTotal$ | async\"\n ></gn-ui-organisations-result>\n</div>\n<div\n class=\"grid grid-cols-1 mt-6 gap-x-6 gap-y-8 sm:grid-cols-2 lg:grid-cols-3\"\n>\n <gn-ui-content-ghost\n class=\"h-[300px]\"\n ghostClass=\"h-full mb-36\"\n *ngFor=\"let organisation of organisations$ | async; trackBy: trackByIndex\"\n [showContent]=\"!!organisation.name\"\n >\n <gn-ui-organisation-preview\n [organisation]=\"organisation\"\n [organisationUrl]=\"getOrganisationUrl(organisation)\"\n (clickedOrganisation)=\"orgSelect.emit($event)\"\n ></gn-ui-organisation-preview>\n </gn-ui-content-ghost>\n</div>\n<div class=\"py-20\">\n <gn-ui-pagination\n [currentPage]=\"currentPage$ | async\"\n [nPages]=\"totalPages\"\n (newCurrentPageEvent)=\"setCurrentPage($event)\"\n ></gn-ui-pagination>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: i2.OrganisationPreviewComponent, selector: "gn-ui-organisation-preview", inputs: ["organisation", "organisationUrl"], outputs: ["clickedOrganisation"] }, { kind: "component", type: i3.OrganisationsFilterComponent, selector: "gn-ui-organisations-filter", outputs: ["sortBy", "filterBy"] }, { kind: "component", type: i4.OrganisationsResultComponent, selector: "gn-ui-organisations-result", inputs: ["hits", "total"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.ContentGhostComponent, selector: "gn-ui-content-ghost", inputs: ["showContent", "ghostClass"] }, { kind: "component", type: i7.PaginationComponent, selector: "gn-ui-pagination", inputs: ["currentPage", "nPages", "hideButton"], outputs: ["newCurrentPageEvent"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
86
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: OrganisationsComponent, deps: [{ token: i1.OrganizationsServiceInterface }, { token: ORGANIZATION_PAGE_URL_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
87
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: OrganisationsComponent, selector: "gn-ui-organisations", inputs: { itemsOnPage: "itemsOnPage" }, outputs: { orgSelect: "orgSelect" }, ngImport: i0, template: "<gn-ui-organisations-filter\n (sortBy)=\"setSortBy($event)\"\n (filterBy)=\"setFilterBy($event)\"\n></gn-ui-organisations-filter>\n<div class=\"mt-6 rounded-lg text-gray-800 p-4 bg-slate-100\">\n <gn-ui-organisations-result\n *ngIf=\"organisationsTotal$ | async\"\n [hits]=\"organisationResults\"\n [total]=\"organisationsTotal$ | async\"\n ></gn-ui-organisations-result>\n</div>\n<div\n class=\"grid grid-cols-1 mt-6 gap-x-6 gap-y-8 sm:grid-cols-2 lg:grid-cols-3\"\n>\n <gn-ui-content-ghost\n class=\"h-[300px]\"\n ghostClass=\"h-full mb-36\"\n *ngFor=\"let organisation of organisations$ | async; trackBy: trackByIndex\"\n [showContent]=\"!!organisation.name\"\n >\n <gn-ui-organisation-preview\n [organization]=\"organisation\"\n [organisationUrl]=\"getOrganisationUrl(organisation)\"\n (clickedOrganisation)=\"orgSelect.emit($event)\"\n ></gn-ui-organisation-preview>\n </gn-ui-content-ghost>\n</div>\n<div class=\"py-20\">\n <gn-ui-pagination\n [currentPage]=\"currentPage$ | async\"\n [nPages]=\"totalPages\"\n (newCurrentPageEvent)=\"setCurrentPage($event)\"\n ></gn-ui-pagination>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: i2.OrganisationPreviewComponent, selector: "gn-ui-organisation-preview", inputs: ["organization", "organisationUrl"], outputs: ["clickedOrganisation"] }, { kind: "component", type: i3.OrganisationsFilterComponent, selector: "gn-ui-organisations-filter", outputs: ["sortBy", "filterBy"] }, { kind: "component", type: i4.OrganisationsResultComponent, selector: "gn-ui-organisations-result", inputs: ["hits", "total"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.ContentGhostComponent, selector: "gn-ui-content-ghost", inputs: ["showContent", "ghostClass"] }, { kind: "component", type: i7.PaginationComponent, selector: "gn-ui-pagination", inputs: ["currentPage", "nPages", "hideButton"], outputs: ["newCurrentPageEvent"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
88
88
  }
89
89
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: OrganisationsComponent, decorators: [{
90
90
  type: Component,
91
- args: [{ selector: 'gn-ui-organisations', changeDetection: ChangeDetectionStrategy.OnPush, template: "<gn-ui-organisations-filter\n (sortBy)=\"setSortBy($event)\"\n (filterBy)=\"setFilterBy($event)\"\n></gn-ui-organisations-filter>\n<div class=\"mt-6 rounded-lg text-gray-800 p-4 bg-slate-100\">\n <gn-ui-organisations-result\n *ngIf=\"organisationsTotal$ | async\"\n [hits]=\"organisationResults\"\n [total]=\"organisationsTotal$ | async\"\n ></gn-ui-organisations-result>\n</div>\n<div\n class=\"grid grid-cols-1 mt-6 gap-x-6 gap-y-8 sm:grid-cols-2 lg:grid-cols-3\"\n>\n <gn-ui-content-ghost\n class=\"h-[300px]\"\n ghostClass=\"h-full mb-36\"\n *ngFor=\"let organisation of organisations$ | async; trackBy: trackByIndex\"\n [showContent]=\"!!organisation.name\"\n >\n <gn-ui-organisation-preview\n [organisation]=\"organisation\"\n [organisationUrl]=\"getOrganisationUrl(organisation)\"\n (clickedOrganisation)=\"orgSelect.emit($event)\"\n ></gn-ui-organisation-preview>\n </gn-ui-content-ghost>\n</div>\n<div class=\"py-20\">\n <gn-ui-pagination\n [currentPage]=\"currentPage$ | async\"\n [nPages]=\"totalPages\"\n (newCurrentPageEvent)=\"setCurrentPage($event)\"\n ></gn-ui-pagination>\n</div>\n" }]
91
+ args: [{ selector: 'gn-ui-organisations', changeDetection: ChangeDetectionStrategy.OnPush, template: "<gn-ui-organisations-filter\n (sortBy)=\"setSortBy($event)\"\n (filterBy)=\"setFilterBy($event)\"\n></gn-ui-organisations-filter>\n<div class=\"mt-6 rounded-lg text-gray-800 p-4 bg-slate-100\">\n <gn-ui-organisations-result\n *ngIf=\"organisationsTotal$ | async\"\n [hits]=\"organisationResults\"\n [total]=\"organisationsTotal$ | async\"\n ></gn-ui-organisations-result>\n</div>\n<div\n class=\"grid grid-cols-1 mt-6 gap-x-6 gap-y-8 sm:grid-cols-2 lg:grid-cols-3\"\n>\n <gn-ui-content-ghost\n class=\"h-[300px]\"\n ghostClass=\"h-full mb-36\"\n *ngFor=\"let organisation of organisations$ | async; trackBy: trackByIndex\"\n [showContent]=\"!!organisation.name\"\n >\n <gn-ui-organisation-preview\n [organization]=\"organisation\"\n [organisationUrl]=\"getOrganisationUrl(organisation)\"\n (clickedOrganisation)=\"orgSelect.emit($event)\"\n ></gn-ui-organisation-preview>\n </gn-ui-content-ghost>\n</div>\n<div class=\"py-20\">\n <gn-ui-pagination\n [currentPage]=\"currentPage$ | async\"\n [nPages]=\"totalPages\"\n (newCurrentPageEvent)=\"setCurrentPage($event)\"\n ></gn-ui-pagination>\n</div>\n" }]
92
92
  }], ctorParameters: function () { return [{ type: i1.OrganizationsServiceInterface }, { type: undefined, decorators: [{
93
93
  type: Optional
94
94
  }, {
95
95
  type: Inject,
96
- args: [ORGANIZATION_URL_TOKEN]
96
+ args: [ORGANIZATION_PAGE_URL_TOKEN]
97
97
  }] }]; }, propDecorators: { itemsOnPage: [{
98
98
  type: Input
99
99
  }], orgSelect: [{
100
100
  type: Output
101
101
  }] } });
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnYW5pc2F0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvY2F0YWxvZy9zcmMvbGliL29yZ2FuaXNhdGlvbnMvb3JnYW5pc2F0aW9ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvY2F0YWxvZy9zcmMvbGliL29yZ2FuaXNhdGlvbnMvb3JnYW5pc2F0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFBO0FBRXRCLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFjLE1BQU0sTUFBTSxDQUFBO0FBQ2pFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3BELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQ2xFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDhFQUE4RSxDQUFBO0FBRTVILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFBOzs7Ozs7Ozs7QUFRMUUsTUFBTSxPQUFPLHNCQUFzQjtJQUlqQyxZQUNVLG9CQUFtRCxFQUduRCxXQUFtQjtRQUhuQix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQStCO1FBR25ELGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBUHBCLGdCQUFXLEdBQUcsRUFBRSxDQUFBO1FBQ2YsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFnQixDQUFBO1FBVXRELGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFFckMsWUFBTyxHQUFpQyxJQUFJLGVB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bEMsU0FBUzsrQkFDRSxxQkFBcUIsbUJBR2QsdUJBQXVCLENBQUMsTUFBTTs7MEJBUTVDLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsc0JBQXNCOzRDQU52QixXQUFXO3NCQUFuQixLQUFLO2dCQUNJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBPcmdhbml6YXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgbWFwLCBzdGFydFdpdGgsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgT1JHQU5JWkFUSU9OX1VSTF9UT0tFTiB9IGZyb20gJy4uL2ZlYXR1cmUtY2F0YWxvZy5tb2R1bGUnXG5pbXBvcnQgeyBPcmdhbml6YXRpb25zU2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL29yZ2FuaXphdGlvbnMuc2VydmljZS5pbnRlcmZhY2UnXG5pbXBvcnQgeyBTb3J0QnlGaWVsZCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3NlYXJjaCdcbmltcG9ydCB7IGNyZWF0ZUZ1enp5RmlsdGVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLW9yZ2FuaXNhdGlvbnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vb3JnYW5pc2F0aW9ucy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL29yZ2FuaXNhdGlvbnMuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgT3JnYW5pc2F0aW9uc0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGl0ZW1zT25QYWdlID0gMTJcbiAgQE91dHB1dCgpIG9yZ1NlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8T3JnYW5pemF0aW9uPigpXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBvcmdhbmlzYXRpb25zU2VydmljZTogT3JnYW5pemF0aW9uc1NlcnZpY2VJbnRlcmZhY2UsXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KE9SR0FOSVpBVElPTl9VUkxfVE9LRU4pXG4gICAgcHJpdmF0ZSB1cmxUZW1wbGF0ZTogc3RyaW5nXG4gICkge31cblxuICB0b3RhbFBhZ2VzOiBudW1iZXJcbiAgY3VycmVudFBhZ2UkID0gbmV3IEJlaGF2aW9yU3ViamVjdCgxKVxuICBvcmdhbmlzYXRpb25SZXN1bHRzOiBudW1iZXJcbiAgc29ydEJ5JDogQmVoYXZpb3JTdWJqZWN0PFNvcnRCeUZpZWxkPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoWydhc2MnLCAnbmFtZSddKVxuICBmaWx0ZXJCeSQ6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCgnJylcbiAgb3JnYW5pc2F0aW9uc1RvdGFsJCA9IHRoaXMub3JnYW5pc2F0aW9uc1NlcnZpY2Uub3JnYW5pc2F0aW9uc0NvdW50JFxuICBvcmdhbmlzYXRpb25zRmlsdGVyZWRBbmRTb3J0ZWQkOiBPYnNlcnZhYmxlPE9yZ2FuaXphdGlvbltdPiA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMub3JnYW5pc2F0aW9uc1NlcnZpY2Uub3JnYW5pc2F0aW9ucyQucGlwZShcbiAgICAgIHN0YXJ0V2l0aChBcnJheSh0aGlzLml0ZW1zT25QYWdlKS5maWxsKHt9KSlcbiAgICApLFxuICAgIHRoaXMuc29ydEJ5JCxcbiAgICB0aGlzLmZpbHRlckJ5JCxcbiAgXSkucGlwZShcbiAgICBtYXAoKFtvcmdhbmlzYXRpb25zLCBzb3J0QnksIGZpbHRlckJ5XSkgPT4ge1xuICAgICAgY29uc3QgZmlsdGVyZWRPcmdhbmlzYXRpb25zID0gdGhpcy5maWx0ZXJPcmdhbmlzYXRpb25zKFxuICAgICAgICBvcmdhbmlzYXRpb25zLFxuICAgICAgICBmaWx0ZXJCeVxuICAgICAgKVxuICAgICAgcmV0dXJuIHRoaXMuc29ydE9yZ2FuaXNhdGlvbnMoZmlsdGVyZWRPcmdhbmlzYXRpb25zLCBzb3J0QnkpXG4gICAgfSlcbiAgKVxuXG4gIG9yZ2FuaXNhdGlvbnMkOiBPYnNlcnZhYmxlPE9yZ2FuaXphdGlvbltdPiA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMub3JnYW5pc2F0aW9uc0ZpbHRlcmVkQW5kU29ydGVkJCxcbiAgICB0aGlzLmN1cnJlbnRQYWdlJCxcbiAgXSkucGlwZShcbiAgICB0YXAoKFtvcmdhbmlzYXRpb25zXSkgPT4ge1xuICAgICAgdGhpcy5vcmdhbmlzYXRpb25SZXN1bHRzID0gb3JnYW5pc2F0aW9ucy5sZW5ndGhcbiAgICAgIHRoaXMudG90YWxQYWdlcyA9IE1hdGguY2VpbChvcmdhbmlzYXRpb25zLmxlbmd0aCAvIHRoaXMuaXRlbXNPblBhZ2UpXG4gICAgfSksXG4gICAgbWFwKChbb3JnYW5pc2F0aW9ucywgcGFnZV0pID0+XG4gICAgICBvcmdhbmlzYXRpb25zLnNsaWNlKFxuICAgICAgICAocGFnZSAtIDEpICogdGhpcy5pdGVtc09uUGFnZSxcbiAgICAgICAgcGFnZSAqIHRoaXMuaXRlbXNPblBhZ2VcbiAgICAgIClcbiAgICApXG4gIClcblxuICBwcm90ZWN0ZWQgc2V0Q3VycmVudFBhZ2UocGFnZTogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5jdXJyZW50UGFnZSQubmV4dChwYWdlKVxuICB9XG5cbiAgcHJvdGVjdGVkIHNldEZpbHRlckJ5KHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmN1cnJlbnRQYWdlJC5uZXh0KDEpXG4gICAgdGhpcy5maWx0ZXJCeSQubmV4dCh2YWx1ZSlcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRTb3J0QnkodmFsdWU6IFNvcnRCeUZpZWxkKTogdm9pZCB7XG4gICAgdGhpcy5zb3J0QnkkLm5leHQodmFsdWUpXG4gIH1cblxuICBwcml2YXRlIGZpbHRlck9yZ2FuaXNhdGlvbnMob3JnYW5pc2F0aW9uczogT3JnYW5pemF0aW9uW10sIGZpbHRlckJ5OiBzdHJpbmcpIHtcbiAgICBpZiAoIWZpbHRlckJ5KSByZXR1cm4gb3JnYW5pc2F0aW9uc1xuICAgIGNvbnN0IGZpbHRlciA9IGNyZWF0ZUZ1enp5RmlsdGVyKGZpbHRlckJ5KVxuICAgIHJldHVybiBvcmdhbmlzYXRpb25zLmZpbHRlcigob3JnKSA9PiBmaWx0ZXIob3JnLm5hbWUpKVxuICB9XG5cbiAgcHJpdmF0ZSBzb3J0T3JnYW5pc2F0aW9ucyhcbiAgICBvcmdhbmlzYXRpb25zOiBPcmdhbml6YXRpb25bXSxcbiAgICBzb3J0Qnk6IFNvcnRCeUZpZWxkXG4gICk6IE9yZ2FuaXphdGlvbltdIHtcbiAgICBsZXQgb3JkZXI6ICdhc2MnIHwgJ2Rlc2MnXG4gICAgbGV0IGF0dHJpYnV0ZTogc3RyaW5nXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoc29ydEJ5WzBdKSkge1xuICAgICAgb3JkZXIgPSBzb3J0QnlbMF1bMF1cbiAgICAgIGF0dHJpYnV0ZSA9IHNvcnRCeVswXVsxXVxuICAgIH0gZWxzZSB7XG4gICAgICBvcmRlciA9IHNvcnRCeVswXVxuICAgICAgYXR0cmlidXRlID0gc29ydEJ5WzFdIGFzIHN0cmluZ1xuICAgIH1cbiAgICBjb25zdCBkaXJlY3Rpb24gPSBvcmRlciA9PT0gJ2FzYycgPyAxIDogLTFcbiAgICByZXR1cm4gWy4uLm9yZ2FuaXNhdGlvbnNdLnNvcnQoKGEsIGIpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlQSA9IGFbYXR0cmlidXRlXVxuICAgICAgY29uc3QgdmFsdWVCID0gYlthdHRyaWJ1dGVdXG4gICAgICBpZiAodHlwZW9mIHZhbHVlQSA9PT0gJ3N0cmluZycgJiYgdHlwZW9mIHZhbHVlQiA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIGRpcmVjdGlvbiAqIHZhbHVlQS5sb2NhbGVDb21wYXJlKHZhbHVlQilcbiAgICAgIH1cbiAgICAgIHJldHVybiBkaXJlY3Rpb24gKiBNYXRoLnNpZ24odmFsdWVBIC0gdmFsdWVCKVxuICAgIH0pXG4gIH1cblxuICB0cmFja0J5SW5kZXgoaW5kZXg6IG51bWJlcikge1xuICAgIHJldHVybiBpbmRleFxuICB9XG5cbiAgZ2V0T3JnYW5pc2F0aW9uVXJsKG9yZ2FuaXNhdGlvbjogT3JnYW5pemF0aW9uKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMudXJsVGVtcGxhdGUpIHJldHVybiBudWxsXG4gICAgcmV0dXJuIHRoaXMudXJsVGVtcGxhdGUucmVwbGFjZSgnJHtuYW1lfScsIG9yZ2FuaXNhdGlvbi5uYW1lKVxuICB9XG59XG4iLCI8Z24tdWktb3JnYW5pc2F0aW9ucy1maWx0ZXJcbiAgKHNvcnRCeSk9XCJzZXRTb3J0QnkoJGV2ZW50KVwiXG4gIChmaWx0ZXJCeSk9XCJzZXRGaWx0ZXJCeSgkZXZlbnQpXCJcbj48L2duLXVpLW9yZ2FuaXNhdGlvbnMtZmlsdGVyPlxuPGRpdiBjbGFzcz1cIm10LTYgcm91bmRlZC1sZyB0ZXh0LWdyYXktODAwIHAtNCBiZy1zbGF0ZS0xMDBcIj5cbiAgPGduLXVpLW9yZ2FuaXNhdGlvbnMtcmVzdWx0XG4gICAgKm5nSWY9XCJvcmdhbmlzYXRpb25zVG90YWwkIHwgYXN5bmNcIlxuICAgIFtoaXRzXT1cIm9yZ2FuaXNhdGlvblJlc3VsdHNcIlxuICAgIFt0b3RhbF09XCJvcmdhbmlzYXRpb25zVG90YWwkIHwgYXN5bmNcIlxuICA+PC9nbi11aS1vcmdhbmlzYXRpb25zLXJlc3VsdD5cbjwvZGl2PlxuPGRpdlxuICBjbGFzcz1cImdyaWQgZ3JpZC1jb2xzLTEgbXQtNiBnYXAteC02IGdhcC15LTggc206Z3JpZC1jb2xzLTIgbGc6Z3JpZC1jb2xzLTNcIlxuPlxuICA8Z24tdWktY29udGVudC1naG9zdFxuICAgIGNsYXNzPVwiaC1bMzAwcHhdXCJcbiAgICBnaG9zdENsYXNzPVwiaC1mdWxsIG1iLTM2XCJcbiAgICAqbmdGb3I9XCJsZXQgb3JnYW5pc2F0aW9uIG9mIG9yZ2FuaXNhdGlvbnMkIHwgYXN5bmM7IHRyYWNrQnk6IHRyYWNrQnlJbmRleFwiXG4gICAgW3Nob3dDb250ZW50XT1cIiEhb3JnYW5pc2F0aW9uLm5hbWVcIlxuICA+XG4gICAgPGduLXVpLW9yZ2FuaXNhdGlvbi1wcmV2aWV3XG4gICAgICBbb3JnYW5pc2F0aW9uXT1cIm9yZ2FuaXNhdGlvblwiXG4gICAgICBbb3JnYW5pc2F0aW9uVXJsXT1cImdldE9yZ2FuaXNhdGlvblVybChvcmdhbmlzYXRpb24pXCJcbiAgICAgIChjbGlja2VkT3JnYW5pc2F0aW9uKT1cIm9yZ1NlbGVjdC5lbWl0KCRldmVudClcIlxuICAgID48L2duLXVpLW9yZ2FuaXNhdGlvbi1wcmV2aWV3PlxuICA8L2duLXVpLWNvbnRlbnQtZ2hvc3Q+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJweS0yMFwiPlxuICA8Z24tdWktcGFnaW5hdGlvblxuICAgIFtjdXJyZW50UGFnZV09XCJjdXJyZW50UGFnZSQgfCBhc3luY1wiXG4gICAgW25QYWdlc109XCJ0b3RhbFBhZ2VzXCJcbiAgICAobmV3Q3VycmVudFBhZ2VFdmVudCk9XCJzZXRDdXJyZW50UGFnZSgkZXZlbnQpXCJcbiAgPjwvZ24tdWktcGFnaW5hdGlvbj5cbjwvZGl2PlxuIl19
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnYW5pc2F0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvY2F0YWxvZy9zcmMvbGliL29yZ2FuaXNhdGlvbnMvb3JnYW5pc2F0aW9ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvY2F0YWxvZy9zcmMvbGliL29yZ2FuaXNhdGlvbnMvb3JnYW5pc2F0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFBO0FBRXRCLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFjLE1BQU0sTUFBTSxDQUFBO0FBQ2pFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3BELE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDhFQUE4RSxDQUFBO0FBRTVILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFBO0FBQzFFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDJCQUEyQixDQUFBOzs7Ozs7Ozs7QUFRdkUsTUFBTSxPQUFPLHNCQUFzQjtJQUlqQyxZQUNVLG9CQUFtRCxFQUduRCxXQUFtQjtRQUhuQix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQStCO1FBR25ELGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBUHBCLGdCQUFXLEdBQUcsRUFBRSxDQUFBO1FBQ2YsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFnQixDQUFBO1FBVXRELGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFFckMsWUFBTyxHQUFpQyxJQUFJLGVB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bEMsU0FBUzsrQkFDRSxxQkFBcUIsbUJBR2QsdUJBQXVCLENBQUMsTUFBTTs7MEJBUTVDLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsMkJBQTJCOzRDQU41QixXQUFXO3NCQUFuQixLQUFLO2dCQUNJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBPcmdhbml6YXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgbWFwLCBzdGFydFdpdGgsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgT3JnYW5pemF0aW9uc1NlcnZpY2VJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9vcmdhbml6YXRpb25zLnNlcnZpY2UuaW50ZXJmYWNlJ1xuaW1wb3J0IHsgU29ydEJ5RmllbGQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9zZWFyY2gnXG5pbXBvcnQgeyBjcmVhdGVGdXp6eUZpbHRlciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHsgT1JHQU5JWkFUSU9OX1BBR0VfVVJMX1RPS0VOIH0gZnJvbSAnLi4vb3JnYW5pemF0aW9uLXVybC50b2tlbidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktb3JnYW5pc2F0aW9ucycsXG4gIHRlbXBsYXRlVXJsOiAnLi9vcmdhbmlzYXRpb25zLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vb3JnYW5pc2F0aW9ucy5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBPcmdhbmlzYXRpb25zQ29tcG9uZW50IHtcbiAgQElucHV0KCkgaXRlbXNPblBhZ2UgPSAxMlxuICBAT3V0cHV0KCkgb3JnU2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxPcmdhbml6YXRpb24+KClcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG9yZ2FuaXNhdGlvbnNTZXJ2aWNlOiBPcmdhbml6YXRpb25zU2VydmljZUludGVyZmFjZSxcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoT1JHQU5JWkFUSU9OX1BBR0VfVVJMX1RPS0VOKVxuICAgIHByaXZhdGUgdXJsVGVtcGxhdGU6IHN0cmluZ1xuICApIHt9XG5cbiAgdG90YWxQYWdlczogbnVtYmVyXG4gIGN1cnJlbnRQYWdlJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoMSlcbiAgb3JnYW5pc2F0aW9uUmVzdWx0czogbnVtYmVyXG4gIHNvcnRCeSQ6IEJlaGF2aW9yU3ViamVjdDxTb3J0QnlGaWVsZD4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFsnYXNjJywgJ25hbWUnXSlcbiAgZmlsdGVyQnkkOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoJycpXG4gIG9yZ2FuaXNhdGlvbnNUb3RhbCQgPSB0aGlzLm9yZ2FuaXNhdGlvbnNTZXJ2aWNlLm9yZ2FuaXNhdGlvbnNDb3VudCRcbiAgb3JnYW5pc2F0aW9uc0ZpbHRlcmVkQW5kU29ydGVkJDogT2JzZXJ2YWJsZTxPcmdhbml6YXRpb25bXT4gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLm9yZ2FuaXNhdGlvbnNTZXJ2aWNlLm9yZ2FuaXNhdGlvbnMkLnBpcGUoXG4gICAgICBzdGFydFdpdGgoQXJyYXkodGhpcy5pdGVtc09uUGFnZSkuZmlsbCh7fSkpXG4gICAgKSxcbiAgICB0aGlzLnNvcnRCeSQsXG4gICAgdGhpcy5maWx0ZXJCeSQsXG4gIF0pLnBpcGUoXG4gICAgbWFwKChbb3JnYW5pc2F0aW9ucywgc29ydEJ5LCBmaWx0ZXJCeV0pID0+IHtcbiAgICAgIGNvbnN0IGZpbHRlcmVkT3JnYW5pc2F0aW9ucyA9IHRoaXMuZmlsdGVyT3JnYW5pc2F0aW9ucyhcbiAgICAgICAgb3JnYW5pc2F0aW9ucyxcbiAgICAgICAgZmlsdGVyQnlcbiAgICAgIClcbiAgICAgIHJldHVybiB0aGlzLnNvcnRPcmdhbmlzYXRpb25zKGZpbHRlcmVkT3JnYW5pc2F0aW9ucywgc29ydEJ5KVxuICAgIH0pXG4gIClcblxuICBvcmdhbmlzYXRpb25zJDogT2JzZXJ2YWJsZTxPcmdhbml6YXRpb25bXT4gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLm9yZ2FuaXNhdGlvbnNGaWx0ZXJlZEFuZFNvcnRlZCQsXG4gICAgdGhpcy5jdXJyZW50UGFnZSQsXG4gIF0pLnBpcGUoXG4gICAgdGFwKChbb3JnYW5pc2F0aW9uc10pID0+IHtcbiAgICAgIHRoaXMub3JnYW5pc2F0aW9uUmVzdWx0cyA9IG9yZ2FuaXNhdGlvbnMubGVuZ3RoXG4gICAgICB0aGlzLnRvdGFsUGFnZXMgPSBNYXRoLmNlaWwob3JnYW5pc2F0aW9ucy5sZW5ndGggLyB0aGlzLml0ZW1zT25QYWdlKVxuICAgIH0pLFxuICAgIG1hcCgoW29yZ2FuaXNhdGlvbnMsIHBhZ2VdKSA9PlxuICAgICAgb3JnYW5pc2F0aW9ucy5zbGljZShcbiAgICAgICAgKHBhZ2UgLSAxKSAqIHRoaXMuaXRlbXNPblBhZ2UsXG4gICAgICAgIHBhZ2UgKiB0aGlzLml0ZW1zT25QYWdlXG4gICAgICApXG4gICAgKVxuICApXG5cbiAgcHJvdGVjdGVkIHNldEN1cnJlbnRQYWdlKHBhZ2U6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuY3VycmVudFBhZ2UkLm5leHQocGFnZSlcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRGaWx0ZXJCeSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5jdXJyZW50UGFnZSQubmV4dCgxKVxuICAgIHRoaXMuZmlsdGVyQnkkLm5leHQodmFsdWUpXG4gIH1cblxuICBwcm90ZWN0ZWQgc2V0U29ydEJ5KHZhbHVlOiBTb3J0QnlGaWVsZCk6IHZvaWQge1xuICAgIHRoaXMuc29ydEJ5JC5uZXh0KHZhbHVlKVxuICB9XG5cbiAgcHJpdmF0ZSBmaWx0ZXJPcmdhbmlzYXRpb25zKG9yZ2FuaXNhdGlvbnM6IE9yZ2FuaXphdGlvbltdLCBmaWx0ZXJCeTogc3RyaW5nKSB7XG4gICAgaWYgKCFmaWx0ZXJCeSkgcmV0dXJuIG9yZ2FuaXNhdGlvbnNcbiAgICBjb25zdCBmaWx0ZXIgPSBjcmVhdGVGdXp6eUZpbHRlcihmaWx0ZXJCeSlcbiAgICByZXR1cm4gb3JnYW5pc2F0aW9ucy5maWx0ZXIoKG9yZykgPT4gZmlsdGVyKG9yZy5uYW1lKSlcbiAgfVxuXG4gIHByaXZhdGUgc29ydE9yZ2FuaXNhdGlvbnMoXG4gICAgb3JnYW5pc2F0aW9uczogT3JnYW5pemF0aW9uW10sXG4gICAgc29ydEJ5OiBTb3J0QnlGaWVsZFxuICApOiBPcmdhbml6YXRpb25bXSB7XG4gICAgbGV0IG9yZGVyOiAnYXNjJyB8ICdkZXNjJ1xuICAgIGxldCBhdHRyaWJ1dGU6IHN0cmluZ1xuICAgIGlmIChBcnJheS5pc0FycmF5KHNvcnRCeVswXSkpIHtcbiAgICAgIG9yZGVyID0gc29ydEJ5WzBdWzBdXG4gICAgICBhdHRyaWJ1dGUgPSBzb3J0QnlbMF1bMV1cbiAgICB9IGVsc2Uge1xuICAgICAgb3JkZXIgPSBzb3J0QnlbMF1cbiAgICAgIGF0dHJpYnV0ZSA9IHNvcnRCeVsxXSBhcyBzdHJpbmdcbiAgICB9XG4gICAgY29uc3QgZGlyZWN0aW9uID0gb3JkZXIgPT09ICdhc2MnID8gMSA6IC0xXG4gICAgcmV0dXJuIFsuLi5vcmdhbmlzYXRpb25zXS5zb3J0KChhLCBiKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZUEgPSBhW2F0dHJpYnV0ZV1cbiAgICAgIGNvbnN0IHZhbHVlQiA9IGJbYXR0cmlidXRlXVxuICAgICAgaWYgKHR5cGVvZiB2YWx1ZUEgPT09ICdzdHJpbmcnICYmIHR5cGVvZiB2YWx1ZUIgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJldHVybiBkaXJlY3Rpb24gKiB2YWx1ZUEubG9jYWxlQ29tcGFyZSh2YWx1ZUIpXG4gICAgICB9XG4gICAgICByZXR1cm4gZGlyZWN0aW9uICogTWF0aC5zaWduKHZhbHVlQSAtIHZhbHVlQilcbiAgICB9KVxuICB9XG5cbiAgdHJhY2tCeUluZGV4KGluZGV4OiBudW1iZXIpIHtcbiAgICByZXR1cm4gaW5kZXhcbiAgfVxuXG4gIGdldE9yZ2FuaXNhdGlvblVybChvcmdhbmlzYXRpb246IE9yZ2FuaXphdGlvbik6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLnVybFRlbXBsYXRlKSByZXR1cm4gbnVsbFxuICAgIHJldHVybiB0aGlzLnVybFRlbXBsYXRlLnJlcGxhY2UoJyR7bmFtZX0nLCBvcmdhbmlzYXRpb24ubmFtZSlcbiAgfVxufVxuIiwiPGduLXVpLW9yZ2FuaXNhdGlvbnMtZmlsdGVyXG4gIChzb3J0QnkpPVwic2V0U29ydEJ5KCRldmVudClcIlxuICAoZmlsdGVyQnkpPVwic2V0RmlsdGVyQnkoJGV2ZW50KVwiXG4+PC9nbi11aS1vcmdhbmlzYXRpb25zLWZpbHRlcj5cbjxkaXYgY2xhc3M9XCJtdC02IHJvdW5kZWQtbGcgdGV4dC1ncmF5LTgwMCBwLTQgYmctc2xhdGUtMTAwXCI+XG4gIDxnbi11aS1vcmdhbmlzYXRpb25zLXJlc3VsdFxuICAgICpuZ0lmPVwib3JnYW5pc2F0aW9uc1RvdGFsJCB8IGFzeW5jXCJcbiAgICBbaGl0c109XCJvcmdhbmlzYXRpb25SZXN1bHRzXCJcbiAgICBbdG90YWxdPVwib3JnYW5pc2F0aW9uc1RvdGFsJCB8IGFzeW5jXCJcbiAgPjwvZ24tdWktb3JnYW5pc2F0aW9ucy1yZXN1bHQ+XG48L2Rpdj5cbjxkaXZcbiAgY2xhc3M9XCJncmlkIGdyaWQtY29scy0xIG10LTYgZ2FwLXgtNiBnYXAteS04IHNtOmdyaWQtY29scy0yIGxnOmdyaWQtY29scy0zXCJcbj5cbiAgPGduLXVpLWNvbnRlbnQtZ2hvc3RcbiAgICBjbGFzcz1cImgtWzMwMHB4XVwiXG4gICAgZ2hvc3RDbGFzcz1cImgtZnVsbCBtYi0zNlwiXG4gICAgKm5nRm9yPVwibGV0IG9yZ2FuaXNhdGlvbiBvZiBvcmdhbmlzYXRpb25zJCB8IGFzeW5jOyB0cmFja0J5OiB0cmFja0J5SW5kZXhcIlxuICAgIFtzaG93Q29udGVudF09XCIhIW9yZ2FuaXNhdGlvbi5uYW1lXCJcbiAgPlxuICAgIDxnbi11aS1vcmdhbmlzYXRpb24tcHJldmlld1xuICAgICAgW29yZ2FuaXphdGlvbl09XCJvcmdhbmlzYXRpb25cIlxuICAgICAgW29yZ2FuaXNhdGlvblVybF09XCJnZXRPcmdhbmlzYXRpb25Vcmwob3JnYW5pc2F0aW9uKVwiXG4gICAgICAoY2xpY2tlZE9yZ2FuaXNhdGlvbik9XCJvcmdTZWxlY3QuZW1pdCgkZXZlbnQpXCJcbiAgICA+PC9nbi11aS1vcmdhbmlzYXRpb24tcHJldmlldz5cbiAgPC9nbi11aS1jb250ZW50LWdob3N0PlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwicHktMjBcIj5cbiAgPGduLXVpLXBhZ2luYXRpb25cbiAgICBbY3VycmVudFBhZ2VdPVwiY3VycmVudFBhZ2UkIHwgYXN5bmNcIlxuICAgIFtuUGFnZXNdPVwidG90YWxQYWdlc1wiXG4gICAgKG5ld0N1cnJlbnRQYWdlRXZlbnQpPVwic2V0Q3VycmVudFBhZ2UoJGV2ZW50KVwiXG4gID48L2duLXVpLXBhZ2luYXRpb24+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,4 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ // expects the replacement key ${name}
3
+ export const ORGANIZATION_PAGE_URL_TOKEN = new InjectionToken('organization-page-url-token');
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnYW5pemF0aW9uLXVybC50b2tlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9jYXRhbG9nL3NyYy9saWIvb3JnYW5pemF0aW9uLXVybC50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRTlDLHNDQUFzQztBQUN0QyxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsNkJBQTZCLENBQzlCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbi8vIGV4cGVjdHMgdGhlIHJlcGxhY2VtZW50IGtleSAke25hbWV9XG5leHBvcnQgY29uc3QgT1JHQU5JWkFUSU9OX1BBR0VfVVJMX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oXG4gICdvcmdhbml6YXRpb24tcGFnZS11cmwtdG9rZW4nXG4pXG4iXX0=
@@ -1,15 +1,13 @@
1
1
  import { Injectable } from '@angular/core';
2
- import { of } from 'rxjs';
3
- import { catchError, shareReplay } from 'rxjs/operators';
2
+ import { of, switchMap } from 'rxjs';
3
+ import { shareReplay } from 'rxjs/operators';
4
4
  import { RecordsRepositoryInterface } from '../../../../../../libs/common/domain/src/lib/repository/records-repository.interface';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "../../../../../../libs/common/domain/src/lib/repository/records-repository.interface";
7
7
  export class RecordsService {
8
8
  constructor(recordsRepository) {
9
9
  this.recordsRepository = recordsRepository;
10
- this.recordsCount$ = this.recordsRepository
11
- .getMatchesCount({})
12
- .pipe(shareReplay(1), catchError(() => of(0)));
10
+ this.recordsCount$ = of(true).pipe(switchMap(() => this.recordsRepository.getMatchesCount({})), shareReplay(1));
13
11
  }
14
12
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RecordsService, deps: [{ token: i1.RecordsRepositoryInterface }], target: i0.ɵɵFactoryTarget.Injectable }); }
15
13
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RecordsService, providedIn: 'root' }); }
@@ -20,4 +18,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
20
18
  providedIn: 'root',
21
19
  }]
22
20
  }], ctorParameters: function () { return [{ type: i1.RecordsRepositoryInterface }]; } });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3Jkcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2NhdGFsb2cvc3JjL2xpYi9yZWNvcmRzL3JlY29yZHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDckMsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxzRkFBc0YsQ0FBQTs7O0FBS2pJLE1BQU0sT0FBTyxjQUFjO0lBUXpCLFlBQW9CLGlCQUE2QztRQUE3QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQTRCO1FBUGpFLGtCQUFhLEdBQXVCLElBQUksQ0FBQyxpQkFBaUI7YUFDdkQsZUFBZSxDQUFDLEVBQUUsQ0FBQzthQUNuQixJQUFJLENBQ0gsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUNkLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDeEIsQ0FBQTtJQUVpRSxDQUFDOytHQVIxRCxjQUFjO21IQUFkLGNBQWMsY0FGYixNQUFNOzs0RkFFUCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcbmltcG9ydCB7IFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvcmVwb3NpdG9yeS9yZWNvcmRzLXJlcG9zaXRvcnkuaW50ZXJmYWNlJ1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgUmVjb3Jkc1NlcnZpY2Uge1xuICByZWNvcmRzQ291bnQkOiBPYnNlcnZhYmxlPG51bWJlcj4gPSB0aGlzLnJlY29yZHNSZXBvc2l0b3J5XG4gICAgLmdldE1hdGNoZXNDb3VudCh7fSlcbiAgICAucGlwZShcbiAgICAgIHNoYXJlUmVwbGF5KDEpLFxuICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZigwKSlcbiAgICApXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWNvcmRzUmVwb3NpdG9yeTogUmVjb3Jkc1JlcG9zaXRvcnlJbnRlcmZhY2UpIHt9XG59XG4iXX0=
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3Jkcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2NhdGFsb2cvc3JjL2xpYi9yZWNvcmRzL3JlY29yZHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ2hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxzRkFBc0YsQ0FBQTs7O0FBS2pJLE1BQU0sT0FBTyxjQUFjO0lBTXpCLFlBQW9CLGlCQUE2QztRQUE3QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQTRCO1FBTGpFLGtCQUFhLEdBQXVCLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQy9DLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQzNELFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFBO0lBRW1FLENBQUM7K0dBTjFELGNBQWM7bUhBQWQsY0FBYyxjQUZiLE1BQU07OzRGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IHNoYXJlUmVwbGF5IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBSZWNvcmRzUmVwb3NpdG9yeUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL3JlcG9zaXRvcnkvcmVjb3Jkcy1yZXBvc2l0b3J5LmludGVyZmFjZSdcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFJlY29yZHNTZXJ2aWNlIHtcbiAgcmVjb3Jkc0NvdW50JDogT2JzZXJ2YWJsZTxudW1iZXI+ID0gb2YodHJ1ZSkucGlwZShcbiAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5yZWNvcmRzUmVwb3NpdG9yeS5nZXRNYXRjaGVzQ291bnQoe30pKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWNvcmRzUmVwb3NpdG9yeTogUmVjb3Jkc1JlcG9zaXRvcnlJbnRlcmZhY2UpIHt9XG59XG4iXX0=
@@ -10,9 +10,9 @@ import * as i1 from "../service/data.service";
10
10
  import * as i2 from "@ngx-translate/core";
11
11
  import * as i3 from "@angular/common";
12
12
  import * as i4 from "../../../../../ui/widgets/src/lib/loading-mask/loading-mask.component";
13
- import * as i5 from "../../../../../ui/widgets/src/lib/popup-alert/popup-alert.component";
14
- import * as i6 from "../../../../../ui/dataviz/src/lib/chart/chart.component";
15
- import * as i7 from "../../../../../ui/inputs/src/lib/dropdown-selector/dropdown-selector.component";
13
+ import * as i5 from "../../../../../ui/dataviz/src/lib/chart/chart.component";
14
+ import * as i6 from "../../../../../ui/inputs/src/lib/dropdown-selector/dropdown-selector.component";
15
+ import * as i7 from "../../../../../ui/widgets/src/lib/popup-alert/popup-alert.component";
16
16
  marker('chart.type.bar');
17
17
  marker('chart.type.barHorizontal');
18
18
  marker('chart.type.line');
@@ -166,7 +166,7 @@ export class ChartViewComponent {
166
166
  this.changeDetector.detectChanges();
167
167
  }
168
168
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChartViewComponent, deps: [{ token: i1.DataService }, { token: i0.ChangeDetectorRef }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
169
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ChartViewComponent, selector: "gn-ui-chart-view", inputs: { link: "link", aggregation: "aggregation", xProperty: "xProperty", yProperty: "yProperty", chartType: "chartType" }, outputs: { chartConfig$: "chartConfig$" }, ngImport: i0, template: "<div class=\"w-full h-full flex flex-col\">\n <div\n class=\"flex flex-col space-y-2 sm:flex-row sm:space-y-0 sm:space-x-2 justify-between text-[13px]\"\n >\n <gn-ui-dropdown-selector\n class=\"basis-1/4\"\n [choices]=\"typeChoices\"\n [extraBtnClass]=\"'secondary min-w-full'\"\n (selectValue)=\"chartType$.next($event)\"\n [selected]=\"chartType$.value\"\n [title]=\"'chart.dropdown.type' | translate\"\n ></gn-ui-dropdown-selector>\n <gn-ui-dropdown-selector\n class=\"basis-1/4\"\n [choices]=\"xChoices$ | async\"\n [extraBtnClass]=\"'secondary min-w-full'\"\n (selectValue)=\"xProperty$.next($event)\"\n [selected]=\"xProperty$.value\"\n [title]=\"'chart.dropdown.xProperty' | translate\"\n ></gn-ui-dropdown-selector>\n <gn-ui-dropdown-selector\n class=\"basis-1/4\"\n *ngIf=\"!isCountAggregation\"\n [choices]=\"yChoices$ | async\"\n (selectValue)=\"yProperty$.next($event)\"\n [selected]=\"yProperty$.value\"\n [title]=\"'chart.dropdown.yProperty' | translate\"\n class=\"select-y-prop\"\n ></gn-ui-dropdown-selector>\n <gn-ui-dropdown-selector\n class=\"basis-1/4\"\n [choices]=\"aggregationChoices\"\n class=\"aggregation-choices\"\n (selectValue)=\"aggregation$.next($event)\"\n [selected]=\"aggregation$.value\"\n [title]=\"'chart.dropdown.aggregation' | translate\"\n ></gn-ui-dropdown-selector>\n </div>\n <div\n class=\"relative h-full mt-2 bg-white border border-gray-300 rounded-lg overflow-hidden\"\n >\n <gn-ui-chart\n [data]=\"chartData$ | async\"\n [type]=\"chartType$.value\"\n [labelProperty]=\"labelProperty\"\n [valueProperty]=\"valueProperty\"\n ></gn-ui-chart>\n <gn-ui-loading-mask\n *ngIf=\"loading\"\n class=\"absolute inset-0\"\n [message]=\"'chart.loading.data' | translate\"\n ></gn-ui-loading-mask>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n type=\"warning\"\n icon=\"error_outline\"\n class=\"absolute m-2 inset-0\"\n >\n <span>{{ error }}</span>\n </gn-ui-popup-alert>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.LoadingMaskComponent, selector: "gn-ui-loading-mask", inputs: ["message"] }, { kind: "component", type: i5.PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }, { kind: "component", type: i6.ChartComponent, selector: "gn-ui-chart", inputs: ["data", "labelProperty", "valueProperty", "secondaryValueProperty", "type"] }, { kind: "component", type: i7.DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth", "disabled"], outputs: ["selectValue"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
169
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ChartViewComponent, selector: "gn-ui-chart-view", inputs: { link: "link", aggregation: "aggregation", xProperty: "xProperty", yProperty: "yProperty", chartType: "chartType" }, outputs: { chartConfig$: "chartConfig$" }, ngImport: i0, template: "<div class=\"w-full h-full flex flex-col\">\n <div\n class=\"flex flex-col space-y-2 sm:flex-row sm:space-y-0 sm:space-x-2 justify-between text-[13px]\"\n >\n <gn-ui-dropdown-selector\n class=\"basis-1/4\"\n [choices]=\"typeChoices\"\n [extraBtnClass]=\"'secondary min-w-full'\"\n (selectValue)=\"chartType$.next($event)\"\n [selected]=\"chartType$.value\"\n [title]=\"'chart.dropdown.type' | translate\"\n ></gn-ui-dropdown-selector>\n <gn-ui-dropdown-selector\n class=\"basis-1/4\"\n [choices]=\"xChoices$ | async\"\n [extraBtnClass]=\"'secondary min-w-full'\"\n (selectValue)=\"xProperty$.next($event)\"\n [selected]=\"xProperty$.value\"\n [title]=\"'chart.dropdown.xProperty' | translate\"\n ></gn-ui-dropdown-selector>\n <gn-ui-dropdown-selector\n class=\"basis-1/4\"\n *ngIf=\"!isCountAggregation\"\n [choices]=\"yChoices$ | async\"\n (selectValue)=\"yProperty$.next($event)\"\n [selected]=\"yProperty$.value\"\n [title]=\"'chart.dropdown.yProperty' | translate\"\n class=\"select-y-prop\"\n ></gn-ui-dropdown-selector>\n <gn-ui-dropdown-selector\n class=\"basis-1/4\"\n [choices]=\"aggregationChoices\"\n class=\"aggregation-choices\"\n (selectValue)=\"aggregation$.next($event)\"\n [selected]=\"aggregation$.value\"\n [title]=\"'chart.dropdown.aggregation' | translate\"\n ></gn-ui-dropdown-selector>\n </div>\n <div\n class=\"relative h-full mt-2 bg-white border border-gray-300 rounded-lg overflow-hidden\"\n >\n <gn-ui-chart\n [data]=\"chartData$ | async\"\n [type]=\"chartType$.value\"\n [labelProperty]=\"labelProperty\"\n [valueProperty]=\"valueProperty\"\n ></gn-ui-chart>\n <gn-ui-loading-mask\n *ngIf=\"loading\"\n class=\"absolute inset-0\"\n [message]=\"'chart.loading.data' | translate\"\n ></gn-ui-loading-mask>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n type=\"warning\"\n icon=\"error_outline\"\n class=\"absolute m-2 inset-0\"\n >\n <span>{{ error }}</span>\n </gn-ui-popup-alert>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.LoadingMaskComponent, selector: "gn-ui-loading-mask", inputs: ["message"] }, { kind: "component", type: i5.ChartComponent, selector: "gn-ui-chart", inputs: ["data", "labelProperty", "valueProperty", "secondaryValueProperty", "type"] }, { kind: "component", type: i6.DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth", "disabled"], outputs: ["selectValue"] }, { kind: "component", type: i7.PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
170
170
  }
171
171
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChartViewComponent, decorators: [{
172
172
  type: Component,
@@ -184,4 +184,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
184
184
  }], chartConfig$: [{
185
185
  type: Output
186
186
  }] } });
187
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL2NoYXJ0LXZpZXcvY2hhcnQtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL2NoYXJ0LXZpZXcvY2hhcnQtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDaEUsT0FBTyxFQUVMLFVBQVUsRUFFVixxQkFBcUIsR0FDdEIsTUFBTSw4Q0FBOEMsQ0FBQTtBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQWMsTUFBTSxNQUFNLENBQUE7QUFDeEUsT0FBTyxFQUNMLFVBQVUsRUFDVixNQUFNLEVBQ04sR0FBRyxFQUNILFdBQVcsRUFDWCxTQUFTLEVBQ1QsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLGdCQUFnQixDQUFBO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUdyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTs7Ozs7Ozs7O0FBRXRELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO0FBQ3hCLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0FBQ2xDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0FBQ3pCLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO0FBQy9CLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO0FBRXhCLE1BQU0s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S08sU0FBUztzQkFBckIsS0FBSztnQkFLTyxTQUFTO3NCQUFyQixLQUFLO2dCQUtPLFNBQVM7c0JBQXJCLEtBQUs7Z0JBS0ksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHtcbiAgQmFzZVJlYWRlcixcbiAgRmV0Y2hFcnJvcixcbiAgRmllbGRBZ2dyZWdhdGlvbixcbiAgZ2V0SnNvbkRhdGFJdGVtc1Byb3h5LFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYydcbmltcG9ydCB7IERyb3Bkb3duQ2hvaWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBFTVBUWSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnXG5pbXBvcnQge1xuICBjYXRjaEVycm9yLFxuICBmaWx0ZXIsXG4gIG1hcCxcbiAgc2hhcmVSZXBsYXksXG4gIHN0YXJ0V2l0aCxcbiAgc3dpdGNoTWFwLFxuICB0YXAsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgRGF0YVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlL2RhdGEuc2VydmljZSdcbmltcG9ydCB7IElucHV0Q2hhcnRUeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvZGF0YXZpei9kYXRhdml6LWNvbmZpZ3VyYXRpb24ubW9kZWwnXG5pbXBvcnQgeyBEYXRhc2V0RGlzdHJpYnV0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5cbm1hcmtlcignY2hhcnQudHlwZS5iYXInKVxubWFya2VyKCdjaGFydC50eXBlLmJhckhvcml6b250YWwnKVxubWFya2VyKCdjaGFydC50eXBlLmxpbmUnKVxubWFya2VyKCdjaGFydC50eXBlLmxpbmVTbW9vdGgnKVxubWFya2VyKCdjaGFydC50eXBlLnBpZScpXG5cbm1hcmtlcignY2hhcnQuYWdncmVnYXRpb24uc3VtJylcbm1hcmtlcignY2hhcnQuYWdncmVnYXRpb24ubWF4Jylcbm1hcmtlcignY2hhcnQuYWdncmVnYXRpb24ubWluJylcbm1hcmtlcignY2hhcnQuYWdncmVnYXRpb24uYXZlcmFnZScpXG5tYXJrZXIoJ2NoYXJ0LmFnZ3JlZ2F0aW9uLmNvdW50JylcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktY2hhcnQtdmlldycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGFydC12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2hhcnQtdmlldy5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydFZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSBzZXQgbGluayh2YWx1ZTogRGF0YXNldERpc3RyaWJ1dGlvbikge1xuICAgIHRoaXMuY3VycmVudExpbmskLm5leHQodmFsdWUpXG4gIH1cbiAgcHJpdmF0ZSBjdXJyZW50TGluayQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PERhdGFzZXREaXN0cmlidXRpb24+KG51bGwpXG5cbiAgQElucHV0KCkgc2V0IGFnZ3JlZ2F0aW9uKHZhbHVlOiBGaWVsZEFnZ3JlZ2F0aW9uWzBdKSB7XG4gICAgdGhpcy5hZ2dyZWdhdGlvbiQubmV4dCh2YWx1ZSlcbiAgfVxuICBhZ2dyZWdhdGlvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEZpZWxkQWdncmVnYXRpb25bMF0+KCdzdW0nKVxuXG4gIEBJbnB1dCgpIHNldCB4UHJvcGVydHkodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMueFByb3BlcnR5JC5uZXh0KHZhbHVlKVxuICB9XG4gIHhQcm9wZXJ0eSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4odW5kZWZpbmVkKVxuXG4gIEBJbnB1dCgpIHNldCB5UHJvcGVydHkodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMueVByb3BlcnR5JC5uZXh0KHZhbHVlKVxuICB9XG4gIHlQcm9wZXJ0eSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4odW5kZWZpbmVkKVxuXG4gIEBJbnB1dCgpIHNldCBjaGFydFR5cGUodmFsdWU6IElucHV0Q2hhcnRUeXBlKSB7XG4gICAgdGhpcy5jaGFydFR5cGUkLm5leHQodmFsdWUpXG4gIH1cbiAgY2hhcnRUeXBlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SW5wdXRDaGFydFR5cGU+KCdiYXInKVxuXG4gIEBPdXRwdXQoKSBjaGFydENvbmZpZyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLnhQcm9wZXJ0eSQucGlwZShmaWx0ZXIoKHZhbHVlKSA9PiB2YWx1ZSAhPT0gdW5kZWZpbmVkKSksXG4gICAgdGhpcy55UHJvcGVydHkkLnBpcGUoZmlsdGVyKCh2YWx1ZSkgPT4gdmFsdWUgIT09IHVuZGVmaW5lZCkpLFxuICAgIHRoaXMuYWdncmVnYXRpb24kLFxuICAgIHRoaXMuY2hhcnRUeXBlJCxcbiAgXSkucGlwZShcbiAgICBtYXAoKFt4UHJvcGVydHksIHlQcm9wZXJ0eSwgYWdncmVnYXRpb24sIGNoYXJ0VHlwZV0pID0+ICh7XG4gICAgICBhZ2dyZWdhdGlvbixcbiAgICAgIHhQcm9wZXJ0eSxcbiAgICAgIHlQcm9wZXJ0eSxcbiAgICAgIGNoYXJ0VHlwZSxcbiAgICB9KSlcbiAgKVxuXG4gIGxvYWRpbmcgPSBmYWxzZVxuICBlcnJvciA9IG51bGxcbiAgZXJyb3JJbmZvID0gbnVsbFxuXG4gIHR5cGVDaG9pY2VzOiBEcm9wZG93bkNob2ljZVtdID0gW1xuICAgIHsgbGFiZWw6ICdjaGFydC50eXBlLmJhcicsIHZhbHVlOiAnYmFyJyB9LFxuICAgIHsgbGFiZWw6ICdjaGFydC50eXBlLmJhckhvcml6b250YWwnLCB2YWx1ZTogJ2Jhci1ob3Jpem9udGFsJyB9LFxuICAgIHsgbGFiZWw6ICdjaGFydC50eXBlLmxpbmUnLCB2YWx1ZTogJ2xpbmUnIH0sXG4gICAgeyBsYWJlbDogJ2NoYXJ0LnR5cGUubGluZVNtb290aCcsIHZhbHVlOiAnbGluZS1pbnRlcnBvbGF0ZWQnIH0sXG4gICAgeyBsYWJlbDogJ2NoYXJ0LnR5cGUucGllJywgdmFsdWU6ICdwaWUnIH0sXG4gIF1cblxuICBnZXQgYWdncmVnYXRpb25DaG9pY2VzKCkge1xuICAgIGlmICghdGhpcy55UHJvcGVydHkkLnZhbHVlKSB7XG4gICAgICByZXR1cm4gW3sgbGFiZWw6ICdjaGFydC5hZ2dyZWdhdGlvbi5jb3VudCcsIHZhbHVlOiAnY291bnQnIH1dXG4gICAgfVxuICAgIHJldHVybiBbXG4gICAgICB7IGxhYmVsOiAnY2hhcnQuYWdncmVnYXRpb24uc3VtJywgdmFsdWU6ICdzdW0nIH0sXG4gICAgICB7IGxhYmVsOiAnY2hhcnQuYWdncmVnYXRpb24ubWF4JywgdmFsdWU6ICdtYXgnIH0sXG4gICAgICB7IGxhYmVsOiAnY2hhcnQuYWdncmVnYXRpb24ubWluJywgdmFsdWU6ICdtaW4nIH0sXG4gICAgICB7IGxhYmVsOiAnY2hhcnQuYWdncmVnYXRpb24uYXZlcmFnZScsIHZhbHVlOiAnYXZlcmFnZScgfSxcbiAgICAgIHsgbGFiZWw6ICdjaGFydC5hZ2dyZWdhdGlvbi5jb3VudCcsIHZhbHVlOiAnY291bnQnIH0sXG4gICAgXSBhcyBEcm9wZG93bkNob2ljZVtdXG4gIH1cblxuICBkYXRhc2V0JDogT2JzZXJ2YWJsZTxCYXNlUmVhZGVyPiA9IHRoaXMuY3VycmVudExpbmskLnBpcGUoXG4gICAgZmlsdGVyKChsaW5rKSA9PiAhIWxpbmspLFxuICAgIHN3aXRjaE1hcCgobGluaykgPT4ge1xuICAgICAgdGhpcy5lcnJvciA9IG51bGxcbiAgICAgIHRoaXMubG9hZGluZyA9IHRydWVcbiAgICAgIHJldHVybiB0aGlzLmRhdGFTZXJ2aWNlLmdldERhdGFzZXQobGluaykucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yKGVycm9yKVxuICAgICAgICAgIHJldHVybiBFTVBUWVxuICAgICAgICB9KVxuICAgICAgKVxuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gIClcbiAgcHJvcGVydGllcyQgPSB0aGlzLmRhdGFzZXQkLnBpcGUoXG4gICAgc3dpdGNoTWFwKChkYXRhc2V0KSA9PlxuICAgICAgZGF0YXNldC5wcm9wZXJ0aWVzLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICB0aGlzLmhhbmRsZUVycm9yKGVycm9yKVxuICAgICAgICByZXR1cm4gW11cbiAgICAgIH0pXG4gICAgKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApXG4gIHlDaG9pY2VzJCA9IHRoaXMucHJvcGVydGllcyQucGlwZShcbiAgICBtYXAoKHByb3BlcnRpZXMpID0+XG4gICAgICBwcm9wZXJ0aWVzXG4gICAgICAgIC5maWx0ZXIoKHByb3ApID0+IHByb3AudHlwZSA9PT0gJ251bWJlcicgfHwgcHJvcC50eXBlID09PSAnZGF0ZScpXG4gICAgICAgIC5tYXAoKHByb3ApID0+ICh7IHZhbHVlOiBwcm9wLm5hbWUsIGxhYmVsOiBwcm9wLmxhYmVsIHx8IHByb3AubmFtZSB9KSlcbiAgICApLFxuICAgIHRhcCgoY2hvaWNlcykgPT4ge1xuICAgICAgaWYgKCFjaG9pY2VzLmZpbmQoKGNob2ljZSkgPT4gY2hvaWNlLnZhbHVlID09PSB0aGlzLnlQcm9wZXJ0eSQudmFsdWUpKSB7XG4gICAgICAgIGNvbnN0IG5ld1Byb3AgPSBjaG9pY2VzWzBdPy52YWx1ZSB8fCAnJ1xuICAgICAgICBpZiAoIW5ld1Byb3AgJiYgdGhpcy5hZ2dyZWdhdGlvbiQudmFsdWUgIT09ICdjb3VudCcpIHtcbiAgICAgICAgICB0aGlzLmFnZ3JlZ2F0aW9uJC5uZXh0KCdjb3VudCcpXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy55UHJvcGVydHkkLm5leHQobmV3UHJvcClcbiAgICAgIH1cbiAgICB9KVxuICApXG4gIHhDaG9pY2VzJCA9IHRoaXMucHJvcGVydGllcyQucGlwZShcbiAgICBtYXAoKHByb3BlcnRpZXMpID0+XG4gICAgICBwcm9wZXJ0aWVzXG4gICAgICAgIC5maWx0ZXIoKHByb3ApID0+IHByb3AudHlwZSA9PT0gJ3N0cmluZycpXG4gICAgICAgIC5tYXAoKHByb3ApID0+ICh7XG4gICAgICAgICAgdmFsdWU6IHByb3AubmFtZSxcbiAgICAgICAgICBsYWJlbDogcHJvcC5sYWJlbCB8fCBwcm9wLm5hbWUsXG4gICAgICAgIH0pKVxuICAgICksXG4gICAgdGFwKChjaG9pY2VzKSA9PiB7XG4gICAgICBpZiAoIWNob2ljZXMuZmluZCgoY2hvaWNlKSA9PiBjaG9pY2UudmFsdWUgPT09IHRoaXMueFByb3BlcnR5JC52YWx1ZSkpIHtcbiAgICAgICAgdGhpcy54UHJvcGVydHkkLm5leHQoY2hvaWNlc1swXT8udmFsdWUgfHwgJycpXG4gICAgICB9XG4gICAgfSlcbiAgKVxuXG4gIGNoYXJ0RGF0YSQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLmRhdGFzZXQkLFxuICAgIHRoaXMueFByb3BlcnR5JC5waXBlKGZpbHRlcigodmFsdWUpID0+IHZhbHVlICE9PSB1bmRlZmluZWQpKSxcbiAgICB0aGlzLnlQcm9wZXJ0eSQucGlwZShmaWx0ZXIoKHZhbHVlKSA9PiB2YWx1ZSAhPT0gdW5kZWZpbmVkKSksXG4gICAgdGhpcy5hZ2dyZWdhdGlvbiQsXG4gIF0pLnBpcGUoXG4gICAgc3dpdGNoTWFwKChbZGF0YXNldCwgeFByb3AsIHlQcm9wLCBhZ2dyZWdhdGlvbl0pID0+IHtcbiAgICAgIGNvbnN0IGZpZWxkQWdnOiBGaWVsZEFnZ3JlZ2F0aW9uID1cbiAgICAgICAgYWdncmVnYXRpb24gPT09ICdjb3VudCcgPyBbJ2NvdW50J10gOiBbYWdncmVnYXRpb24sIHlQcm9wXVxuICAgICAgcmV0dXJuIGRhdGFzZXRcbiAgICAgICAgLmdyb3VwQnkoWydkaXN0aW5jdCcsIHhQcm9wXSlcbiAgICAgICAgLmFnZ3JlZ2F0ZShmaWVsZEFnZylcbiAgICAgICAgLnJlYWQoKVxuICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgdGhpcy5oYW5kbGVFcnJvcihlcnJvcilcbiAgICAgICAgICByZXR1cm4gW11cbiAgICAgICAgfSlcbiAgICAgICAgLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gICAgICAgIH0pXG4gICAgfSksXG4gICAgbWFwKGdldEpzb25EYXRhSXRlbXNQcm94eSksXG4gICAgc3RhcnRXaXRoKFtdKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApXG5cbiAgZ2V0IGxhYmVsUHJvcGVydHkoKSB7XG4gICAgaWYgKCF0aGlzLnhQcm9wZXJ0eSQudmFsdWUpIHJldHVybiAnJ1xuICAgIHJldHVybiBgZGlzdGluY3QoJHt0aGlzLnhQcm9wZXJ0eSQudmFsdWV9KWBcbiAgfVxuICBnZXQgdmFsdWVQcm9wZXJ0eSgpIHtcbiAgICBpZiAodGhpcy5pc0NvdW50QWdncmVnYXRpb24pIHJldHVybiAnY291bnQoKSdcbiAgICByZXR1cm4gYCR7dGhpcy5hZ2dyZWdhdGlvbiQudmFsdWV9KCR7dGhpcy55UHJvcGVydHkkLnZhbHVlfSlgXG4gIH1cbiAgZ2V0IGlzQ291bnRBZ2dyZWdhdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5hZ2dyZWdhdGlvbiQudmFsdWUgPT09ICdjb3VudCdcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZVxuICApIHt9XG5cbiAgaGFuZGxlRXJyb3IoZXJyb3I6IEZldGNoRXJyb3IgfCBFcnJvciB8IHN0cmluZykge1xuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEZldGNoRXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgYGRhdGFzZXQuZXJyb3IuJHtlcnJvci50eXBlfWAsXG4gICAgICAgIHtcbiAgICAgICAgICBpbmZvOiBlcnJvci5pbmZvLFxuICAgICAgICB9XG4gICAgICApXG4gICAgICBjb25zb2xlLndhcm4oZXJyb3IubWVzc2FnZSlcbiAgICB9IGVsc2UgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChlcnJvci5tZXNzYWdlKVxuICAgICAgY29uc29sZS53YXJuKGVycm9yLnN0YWNrIHx8IGVycm9yKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVycm9yID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoZXJyb3IpXG4gICAgICBjb25zb2xlLndhcm4oZXJyb3IpXG4gICAgfVxuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInctZnVsbCBoLWZ1bGwgZmxleCBmbGV4LWNvbFwiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJmbGV4IGZsZXgtY29sIHNwYWNlLXktMiBzbTpmbGV4LXJvdyBzbTpzcGFjZS15LTAgc206c3BhY2UteC0yIGp1c3RpZnktYmV0d2VlbiB0ZXh0LVsxM3B4XVwiXG4gID5cbiAgICA8Z24tdWktZHJvcGRvd24tc2VsZWN0b3JcbiAgICAgIGNsYXNzPVwiYmFzaXMtMS80XCJcbiAgICAgIFtjaG9pY2VzXT1cInR5cGVDaG9pY2VzXCJcbiAgICAgIFtleHRyYUJ0bkNsYXNzXT1cIidzZWNvbmRhcnkgbWluLXctZnVsbCdcIlxuICAgICAgKHNlbGVjdFZhbHVlKT1cImNoYXJ0VHlwZSQubmV4dCgkZXZlbnQpXCJcbiAgICAgIFtzZWxlY3RlZF09XCJjaGFydFR5cGUkLnZhbHVlXCJcbiAgICAgIFt0aXRsZV09XCInY2hhcnQuZHJvcGRvd24udHlwZScgfCB0cmFuc2xhdGVcIlxuICAgID48L2duLXVpLWRyb3Bkb3duLXNlbGVjdG9yPlxuICAgIDxnbi11aS1kcm9wZG93bi1zZWxlY3RvclxuICAgICAgY2xhc3M9XCJiYXNpcy0xLzRcIlxuICAgICAgW2Nob2ljZXNdPVwieENob2ljZXMkIHwgYXN5bmNcIlxuICAgICAgW2V4dHJhQnRuQ2xhc3NdPVwiJ3NlY29uZGFyeSBtaW4tdy1mdWxsJ1wiXG4gICAgICAoc2VsZWN0VmFsdWUpPVwieFByb3BlcnR5JC5uZXh0KCRldmVudClcIlxuICAgICAgW3NlbGVjdGVkXT1cInhQcm9wZXJ0eSQudmFsdWVcIlxuICAgICAgW3RpdGxlXT1cIidjaGFydC5kcm9wZG93bi54UHJvcGVydHknIHwgdHJhbnNsYXRlXCJcbiAgICA+PC9nbi11aS1kcm9wZG93bi1zZWxlY3Rvcj5cbiAgICA8Z24tdWktZHJvcGRvd24tc2VsZWN0b3JcbiAgICAgIGNsYXNzPVwiYmFzaXMtMS80XCJcbiAgICAgICpuZ0lmPVwiIWlzQ291bnRBZ2dyZWdhdGlvblwiXG4gICAgICBbY2hvaWNlc109XCJ5Q2hvaWNlcyQgfCBhc3luY1wiXG4gICAgICAoc2VsZWN0VmFsdWUpPVwieVByb3BlcnR5JC5uZXh0KCRldmVudClcIlxuICAgICAgW3NlbGVjdGVkXT1cInlQcm9wZXJ0eSQudmFsdWVcIlxuICAgICAgW3RpdGxlXT1cIidjaGFydC5kcm9wZG93bi55UHJvcGVydHknIHwgdHJhbnNsYXRlXCJcbiAgICAgIGNsYXNzPVwic2VsZWN0LXktcHJvcFwiXG4gICAgPjwvZ24tdWktZHJvcGRvd24tc2VsZWN0b3I+XG4gICAgPGduLXVpLWRyb3Bkb3duLXNlbGVjdG9yXG4gICAgICBjbGFzcz1cImJhc2lzLTEvNFwiXG4gICAgICBbY2hvaWNlc109XCJhZ2dyZWdhdGlvbkNob2ljZXNcIlxuICAgICAgY2xhc3M9XCJhZ2dyZWdhdGlvbi1jaG9pY2VzXCJcbiAgICAgIChzZWxlY3RWYWx1ZSk9XCJhZ2dyZWdhdGlvbiQubmV4dCgkZXZlbnQpXCJcbiAgICAgIFtzZWxlY3RlZF09XCJhZ2dyZWdhdGlvbiQudmFsdWVcIlxuICAgICAgW3RpdGxlXT1cIidjaGFydC5kcm9wZG93bi5hZ2dyZWdhdGlvbicgfCB0cmFuc2xhdGVcIlxuICAgID48L2duLXVpLWRyb3Bkb3duLXNlbGVjdG9yPlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwicmVsYXRpdmUgaC1mdWxsIG10LTIgYmctd2hpdGUgYm9yZGVyIGJvcmRlci1ncmF5LTMwMCByb3VuZGVkLWxnIG92ZXJmbG93LWhpZGRlblwiXG4gID5cbiAgICA8Z24tdWktY2hhcnRcbiAgICAgIFtkYXRhXT1cImNoYXJ0RGF0YSQgfCBhc3luY1wiXG4gICAgICBbdHlwZV09XCJjaGFydFR5cGUkLnZhbHVlXCJcbiAgICAgIFtsYWJlbFByb3BlcnR5XT1cImxhYmVsUHJvcGVydHlcIlxuICAgICAgW3ZhbHVlUHJvcGVydHldPVwidmFsdWVQcm9wZXJ0eVwiXG4gICAgPjwvZ24tdWktY2hhcnQ+XG4gICAgPGduLXVpLWxvYWRpbmctbWFza1xuICAgICAgKm5nSWY9XCJsb2FkaW5nXCJcbiAgICAgIGNsYXNzPVwiYWJzb2x1dGUgaW5zZXQtMFwiXG4gICAgICBbbWVzc2FnZV09XCInY2hhcnQubG9hZGluZy5kYXRhJyB8IHRyYW5zbGF0ZVwiXG4gICAgPjwvZ24tdWktbG9hZGluZy1tYXNrPlxuICAgIDxnbi11aS1wb3B1cC1hbGVydFxuICAgICAgKm5nSWY9XCJlcnJvclwiXG4gICAgICB0eXBlPVwid2FybmluZ1wiXG4gICAgICBpY29uPVwiZXJyb3Jfb3V0bGluZVwiXG4gICAgICBjbGFzcz1cImFic29sdXRlIG0tMiBpbnNldC0wXCJcbiAgICA+XG4gICAgICA8c3Bhbj57eyBlcnJvciB9fTwvc3Bhbj5cbiAgICA8L2duLXVpLXBvcHVwLWFsZXJ0PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
187
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL2NoYXJ0LXZpZXcvY2hhcnQtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL2NoYXJ0LXZpZXcvY2hhcnQtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDaEUsT0FBTyxFQUVMLFVBQVUsRUFFVixxQkFBcUIsR0FDdEIsTUFBTSw4Q0FBOEMsQ0FBQTtBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQWMsTUFBTSxNQUFNLENBQUE7QUFDeEUsT0FBTyxFQUNMLFVBQVUsRUFDVixNQUFNLEVBQ04sR0FBRyxFQUNILFdBQVcsRUFDWCxTQUFTLEVBQ1QsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLGdCQUFnQixDQUFBO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUdyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTs7Ozs7Ozs7O0FBRXRELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO0FBQ3hCLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0FBQ2xDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0FBQ3pCLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO0FBQy9CLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO0FBRXhCLE1BQU0s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S08sU0FBUztzQkFBckIsS0FBSztnQkFLTyxTQUFTO3NCQUFyQixLQUFLO2dCQUtPLFNBQVM7c0JBQXJCLEtBQUs7Z0JBS0ksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHtcbiAgQmFzZVJlYWRlcixcbiAgRmV0Y2hFcnJvcixcbiAgRmllbGRBZ2dyZWdhdGlvbixcbiAgZ2V0SnNvbkRhdGFJdGVtc1Byb3h5LFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYydcbmltcG9ydCB7IERyb3Bkb3duQ2hvaWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBFTVBUWSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnXG5pbXBvcnQge1xuICBjYXRjaEVycm9yLFxuICBmaWx0ZXIsXG4gIG1hcCxcbiAgc2hhcmVSZXBsYXksXG4gIHN0YXJ0V2l0aCxcbiAgc3dpdGNoTWFwLFxuICB0YXAsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgRGF0YVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlL2RhdGEuc2VydmljZSdcbmltcG9ydCB7IElucHV0Q2hhcnRUeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvZGF0YXZpei9kYXRhdml6LWNvbmZpZ3VyYXRpb24ubW9kZWwnXG5pbXBvcnQgeyBEYXRhc2V0T25saW5lUmVzb3VyY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxubWFya2VyKCdjaGFydC50eXBlLmJhcicpXG5tYXJrZXIoJ2NoYXJ0LnR5cGUuYmFySG9yaXpvbnRhbCcpXG5tYXJrZXIoJ2NoYXJ0LnR5cGUubGluZScpXG5tYXJrZXIoJ2NoYXJ0LnR5cGUubGluZVNtb290aCcpXG5tYXJrZXIoJ2NoYXJ0LnR5cGUucGllJylcblxubWFya2VyKCdjaGFydC5hZ2dyZWdhdGlvbi5zdW0nKVxubWFya2VyKCdjaGFydC5hZ2dyZWdhdGlvbi5tYXgnKVxubWFya2VyKCdjaGFydC5hZ2dyZWdhdGlvbi5taW4nKVxubWFya2VyKCdjaGFydC5hZ2dyZWdhdGlvbi5hdmVyYWdlJylcbm1hcmtlcignY2hhcnQuYWdncmVnYXRpb24uY291bnQnKVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1jaGFydC12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoYXJ0LXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jaGFydC12aWV3LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENoYXJ0Vmlld0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHNldCBsaW5rKHZhbHVlOiBEYXRhc2V0T25saW5lUmVzb3VyY2UpIHtcbiAgICB0aGlzLmN1cnJlbnRMaW5rJC5uZXh0KHZhbHVlKVxuICB9XG4gIHByaXZhdGUgY3VycmVudExpbmskID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEYXRhc2V0T25saW5lUmVzb3VyY2U+KG51bGwpXG5cbiAgQElucHV0KCkgc2V0IGFnZ3JlZ2F0aW9uKHZhbHVlOiBGaWVsZEFnZ3JlZ2F0aW9uWzBdKSB7XG4gICAgdGhpcy5hZ2dyZWdhdGlvbiQubmV4dCh2YWx1ZSlcbiAgfVxuICBhZ2dyZWdhdGlvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEZpZWxkQWdncmVnYXRpb25bMF0+KCdzdW0nKVxuXG4gIEBJbnB1dCgpIHNldCB4UHJvcGVydHkodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMueFByb3BlcnR5JC5uZXh0KHZhbHVlKVxuICB9XG4gIHhQcm9wZXJ0eSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4odW5kZWZpbmVkKVxuXG4gIEBJbnB1dCgpIHNldCB5UHJvcGVydHkodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMueVByb3BlcnR5JC5uZXh0KHZhbHVlKVxuICB9XG4gIHlQcm9wZXJ0eSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4odW5kZWZpbmVkKVxuXG4gIEBJbnB1dCgpIHNldCBjaGFydFR5cGUodmFsdWU6IElucHV0Q2hhcnRUeXBlKSB7XG4gICAgdGhpcy5jaGFydFR5cGUkLm5leHQodmFsdWUpXG4gIH1cbiAgY2hhcnRUeXBlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SW5wdXRDaGFydFR5cGU+KCdiYXInKVxuXG4gIEBPdXRwdXQoKSBjaGFydENvbmZpZyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLnhQcm9wZXJ0eSQucGlwZShmaWx0ZXIoKHZhbHVlKSA9PiB2YWx1ZSAhPT0gdW5kZWZpbmVkKSksXG4gICAgdGhpcy55UHJvcGVydHkkLnBpcGUoZmlsdGVyKCh2YWx1ZSkgPT4gdmFsdWUgIT09IHVuZGVmaW5lZCkpLFxuICAgIHRoaXMuYWdncmVnYXRpb24kLFxuICAgIHRoaXMuY2hhcnRUeXBlJCxcbiAgXSkucGlwZShcbiAgICBtYXAoKFt4UHJvcGVydHksIHlQcm9wZXJ0eSwgYWdncmVnYXRpb24sIGNoYXJ0VHlwZV0pID0+ICh7XG4gICAgICBhZ2dyZWdhdGlvbixcbiAgICAgIHhQcm9wZXJ0eSxcbiAgICAgIHlQcm9wZXJ0eSxcbiAgICAgIGNoYXJ0VHlwZSxcbiAgICB9KSlcbiAgKVxuXG4gIGxvYWRpbmcgPSBmYWxzZVxuICBlcnJvciA9IG51bGxcbiAgZXJyb3JJbmZvID0gbnVsbFxuXG4gIHR5cGVDaG9pY2VzOiBEcm9wZG93bkNob2ljZVtdID0gW1xuICAgIHsgbGFiZWw6ICdjaGFydC50eXBlLmJhcicsIHZhbHVlOiAnYmFyJyB9LFxuICAgIHsgbGFiZWw6ICdjaGFydC50eXBlLmJhckhvcml6b250YWwnLCB2YWx1ZTogJ2Jhci1ob3Jpem9udGFsJyB9LFxuICAgIHsgbGFiZWw6ICdjaGFydC50eXBlLmxpbmUnLCB2YWx1ZTogJ2xpbmUnIH0sXG4gICAgeyBsYWJlbDogJ2NoYXJ0LnR5cGUubGluZVNtb290aCcsIHZhbHVlOiAnbGluZS1pbnRlcnBvbGF0ZWQnIH0sXG4gICAgeyBsYWJlbDogJ2NoYXJ0LnR5cGUucGllJywgdmFsdWU6ICdwaWUnIH0sXG4gIF1cblxuICBnZXQgYWdncmVnYXRpb25DaG9pY2VzKCkge1xuICAgIGlmICghdGhpcy55UHJvcGVydHkkLnZhbHVlKSB7XG4gICAgICByZXR1cm4gW3sgbGFiZWw6ICdjaGFydC5hZ2dyZWdhdGlvbi5jb3VudCcsIHZhbHVlOiAnY291bnQnIH1dXG4gICAgfVxuICAgIHJldHVybiBbXG4gICAgICB7IGxhYmVsOiAnY2hhcnQuYWdncmVnYXRpb24uc3VtJywgdmFsdWU6ICdzdW0nIH0sXG4gICAgICB7IGxhYmVsOiAnY2hhcnQuYWdncmVnYXRpb24ubWF4JywgdmFsdWU6ICdtYXgnIH0sXG4gICAgICB7IGxhYmVsOiAnY2hhcnQuYWdncmVnYXRpb24ubWluJywgdmFsdWU6ICdtaW4nIH0sXG4gICAgICB7IGxhYmVsOiAnY2hhcnQuYWdncmVnYXRpb24uYXZlcmFnZScsIHZhbHVlOiAnYXZlcmFnZScgfSxcbiAgICAgIHsgbGFiZWw6ICdjaGFydC5hZ2dyZWdhdGlvbi5jb3VudCcsIHZhbHVlOiAnY291bnQnIH0sXG4gICAgXSBhcyBEcm9wZG93bkNob2ljZVtdXG4gIH1cblxuICBkYXRhc2V0JDogT2JzZXJ2YWJsZTxCYXNlUmVhZGVyPiA9IHRoaXMuY3VycmVudExpbmskLnBpcGUoXG4gICAgZmlsdGVyKChsaW5rKSA9PiAhIWxpbmspLFxuICAgIHN3aXRjaE1hcCgobGluaykgPT4ge1xuICAgICAgdGhpcy5lcnJvciA9IG51bGxcbiAgICAgIHRoaXMubG9hZGluZyA9IHRydWVcbiAgICAgIHJldHVybiB0aGlzLmRhdGFTZXJ2aWNlLmdldERhdGFzZXQobGluaykucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yKGVycm9yKVxuICAgICAgICAgIHJldHVybiBFTVBUWVxuICAgICAgICB9KVxuICAgICAgKVxuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gIClcbiAgcHJvcGVydGllcyQgPSB0aGlzLmRhdGFzZXQkLnBpcGUoXG4gICAgc3dpdGNoTWFwKChkYXRhc2V0KSA9PlxuICAgICAgZGF0YXNldC5wcm9wZXJ0aWVzLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICB0aGlzLmhhbmRsZUVycm9yKGVycm9yKVxuICAgICAgICByZXR1cm4gW11cbiAgICAgIH0pXG4gICAgKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApXG4gIHlDaG9pY2VzJCA9IHRoaXMucHJvcGVydGllcyQucGlwZShcbiAgICBtYXAoKHByb3BlcnRpZXMpID0+XG4gICAgICBwcm9wZXJ0aWVzXG4gICAgICAgIC5maWx0ZXIoKHByb3ApID0+IHByb3AudHlwZSA9PT0gJ251bWJlcicgfHwgcHJvcC50eXBlID09PSAnZGF0ZScpXG4gICAgICAgIC5tYXAoKHByb3ApID0+ICh7IHZhbHVlOiBwcm9wLm5hbWUsIGxhYmVsOiBwcm9wLmxhYmVsIHx8IHByb3AubmFtZSB9KSlcbiAgICApLFxuICAgIHRhcCgoY2hvaWNlcykgPT4ge1xuICAgICAgaWYgKCFjaG9pY2VzLmZpbmQoKGNob2ljZSkgPT4gY2hvaWNlLnZhbHVlID09PSB0aGlzLnlQcm9wZXJ0eSQudmFsdWUpKSB7XG4gICAgICAgIGNvbnN0IG5ld1Byb3AgPSBjaG9pY2VzWzBdPy52YWx1ZSB8fCAnJ1xuICAgICAgICBpZiAoIW5ld1Byb3AgJiYgdGhpcy5hZ2dyZWdhdGlvbiQudmFsdWUgIT09ICdjb3VudCcpIHtcbiAgICAgICAgICB0aGlzLmFnZ3JlZ2F0aW9uJC5uZXh0KCdjb3VudCcpXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy55UHJvcGVydHkkLm5leHQobmV3UHJvcClcbiAgICAgIH1cbiAgICB9KVxuICApXG4gIHhDaG9pY2VzJCA9IHRoaXMucHJvcGVydGllcyQucGlwZShcbiAgICBtYXAoKHByb3BlcnRpZXMpID0+XG4gICAgICBwcm9wZXJ0aWVzXG4gICAgICAgIC5maWx0ZXIoKHByb3ApID0+IHByb3AudHlwZSA9PT0gJ3N0cmluZycpXG4gICAgICAgIC5tYXAoKHByb3ApID0+ICh7XG4gICAgICAgICAgdmFsdWU6IHByb3AubmFtZSxcbiAgICAgICAgICBsYWJlbDogcHJvcC5sYWJlbCB8fCBwcm9wLm5hbWUsXG4gICAgICAgIH0pKVxuICAgICksXG4gICAgdGFwKChjaG9pY2VzKSA9PiB7XG4gICAgICBpZiAoIWNob2ljZXMuZmluZCgoY2hvaWNlKSA9PiBjaG9pY2UudmFsdWUgPT09IHRoaXMueFByb3BlcnR5JC52YWx1ZSkpIHtcbiAgICAgICAgdGhpcy54UHJvcGVydHkkLm5leHQoY2hvaWNlc1swXT8udmFsdWUgfHwgJycpXG4gICAgICB9XG4gICAgfSlcbiAgKVxuXG4gIGNoYXJ0RGF0YSQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLmRhdGFzZXQkLFxuICAgIHRoaXMueFByb3BlcnR5JC5waXBlKGZpbHRlcigodmFsdWUpID0+IHZhbHVlICE9PSB1bmRlZmluZWQpKSxcbiAgICB0aGlzLnlQcm9wZXJ0eSQucGlwZShmaWx0ZXIoKHZhbHVlKSA9PiB2YWx1ZSAhPT0gdW5kZWZpbmVkKSksXG4gICAgdGhpcy5hZ2dyZWdhdGlvbiQsXG4gIF0pLnBpcGUoXG4gICAgc3dpdGNoTWFwKChbZGF0YXNldCwgeFByb3AsIHlQcm9wLCBhZ2dyZWdhdGlvbl0pID0+IHtcbiAgICAgIGNvbnN0IGZpZWxkQWdnOiBGaWVsZEFnZ3JlZ2F0aW9uID1cbiAgICAgICAgYWdncmVnYXRpb24gPT09ICdjb3VudCcgPyBbJ2NvdW50J10gOiBbYWdncmVnYXRpb24sIHlQcm9wXVxuICAgICAgcmV0dXJuIGRhdGFzZXRcbiAgICAgICAgLmdyb3VwQnkoWydkaXN0aW5jdCcsIHhQcm9wXSlcbiAgICAgICAgLmFnZ3JlZ2F0ZShmaWVsZEFnZylcbiAgICAgICAgLnJlYWQoKVxuICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgdGhpcy5oYW5kbGVFcnJvcihlcnJvcilcbiAgICAgICAgICByZXR1cm4gW11cbiAgICAgICAgfSlcbiAgICAgICAgLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gICAgICAgIH0pXG4gICAgfSksXG4gICAgbWFwKGdldEpzb25EYXRhSXRlbXNQcm94eSksXG4gICAgc3RhcnRXaXRoKFtdKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApXG5cbiAgZ2V0IGxhYmVsUHJvcGVydHkoKSB7XG4gICAgaWYgKCF0aGlzLnhQcm9wZXJ0eSQudmFsdWUpIHJldHVybiAnJ1xuICAgIHJldHVybiBgZGlzdGluY3QoJHt0aGlzLnhQcm9wZXJ0eSQudmFsdWV9KWBcbiAgfVxuICBnZXQgdmFsdWVQcm9wZXJ0eSgpIHtcbiAgICBpZiAodGhpcy5pc0NvdW50QWdncmVnYXRpb24pIHJldHVybiAnY291bnQoKSdcbiAgICByZXR1cm4gYCR7dGhpcy5hZ2dyZWdhdGlvbiQudmFsdWV9KCR7dGhpcy55UHJvcGVydHkkLnZhbHVlfSlgXG4gIH1cbiAgZ2V0IGlzQ291bnRBZ2dyZWdhdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5hZ2dyZWdhdGlvbiQudmFsdWUgPT09ICdjb3VudCdcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZVxuICApIHt9XG5cbiAgaGFuZGxlRXJyb3IoZXJyb3I6IEZldGNoRXJyb3IgfCBFcnJvciB8IHN0cmluZykge1xuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEZldGNoRXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgYGRhdGFzZXQuZXJyb3IuJHtlcnJvci50eXBlfWAsXG4gICAgICAgIHtcbiAgICAgICAgICBpbmZvOiBlcnJvci5pbmZvLFxuICAgICAgICB9XG4gICAgICApXG4gICAgICBjb25zb2xlLndhcm4oZXJyb3IubWVzc2FnZSlcbiAgICB9IGVsc2UgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChlcnJvci5tZXNzYWdlKVxuICAgICAgY29uc29sZS53YXJuKGVycm9yLnN0YWNrIHx8IGVycm9yKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVycm9yID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoZXJyb3IpXG4gICAgICBjb25zb2xlLndhcm4oZXJyb3IpXG4gICAgfVxuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInctZnVsbCBoLWZ1bGwgZmxleCBmbGV4LWNvbFwiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJmbGV4IGZsZXgtY29sIHNwYWNlLXktMiBzbTpmbGV4LXJvdyBzbTpzcGFjZS15LTAgc206c3BhY2UteC0yIGp1c3RpZnktYmV0d2VlbiB0ZXh0LVsxM3B4XVwiXG4gID5cbiAgICA8Z24tdWktZHJvcGRvd24tc2VsZWN0b3JcbiAgICAgIGNsYXNzPVwiYmFzaXMtMS80XCJcbiAgICAgIFtjaG9pY2VzXT1cInR5cGVDaG9pY2VzXCJcbiAgICAgIFtleHRyYUJ0bkNsYXNzXT1cIidzZWNvbmRhcnkgbWluLXctZnVsbCdcIlxuICAgICAgKHNlbGVjdFZhbHVlKT1cImNoYXJ0VHlwZSQubmV4dCgkZXZlbnQpXCJcbiAgICAgIFtzZWxlY3RlZF09XCJjaGFydFR5cGUkLnZhbHVlXCJcbiAgICAgIFt0aXRsZV09XCInY2hhcnQuZHJvcGRvd24udHlwZScgfCB0cmFuc2xhdGVcIlxuICAgID48L2duLXVpLWRyb3Bkb3duLXNlbGVjdG9yPlxuICAgIDxnbi11aS1kcm9wZG93bi1zZWxlY3RvclxuICAgICAgY2xhc3M9XCJiYXNpcy0xLzRcIlxuICAgICAgW2Nob2ljZXNdPVwieENob2ljZXMkIHwgYXN5bmNcIlxuICAgICAgW2V4dHJhQnRuQ2xhc3NdPVwiJ3NlY29uZGFyeSBtaW4tdy1mdWxsJ1wiXG4gICAgICAoc2VsZWN0VmFsdWUpPVwieFByb3BlcnR5JC5uZXh0KCRldmVudClcIlxuICAgICAgW3NlbGVjdGVkXT1cInhQcm9wZXJ0eSQudmFsdWVcIlxuICAgICAgW3RpdGxlXT1cIidjaGFydC5kcm9wZG93bi54UHJvcGVydHknIHwgdHJhbnNsYXRlXCJcbiAgICA+PC9nbi11aS1kcm9wZG93bi1zZWxlY3Rvcj5cbiAgICA8Z24tdWktZHJvcGRvd24tc2VsZWN0b3JcbiAgICAgIGNsYXNzPVwiYmFzaXMtMS80XCJcbiAgICAgICpuZ0lmPVwiIWlzQ291bnRBZ2dyZWdhdGlvblwiXG4gICAgICBbY2hvaWNlc109XCJ5Q2hvaWNlcyQgfCBhc3luY1wiXG4gICAgICAoc2VsZWN0VmFsdWUpPVwieVByb3BlcnR5JC5uZXh0KCRldmVudClcIlxuICAgICAgW3NlbGVjdGVkXT1cInlQcm9wZXJ0eSQudmFsdWVcIlxuICAgICAgW3RpdGxlXT1cIidjaGFydC5kcm9wZG93bi55UHJvcGVydHknIHwgdHJhbnNsYXRlXCJcbiAgICAgIGNsYXNzPVwic2VsZWN0LXktcHJvcFwiXG4gICAgPjwvZ24tdWktZHJvcGRvd24tc2VsZWN0b3I+XG4gICAgPGduLXVpLWRyb3Bkb3duLXNlbGVjdG9yXG4gICAgICBjbGFzcz1cImJhc2lzLTEvNFwiXG4gICAgICBbY2hvaWNlc109XCJhZ2dyZWdhdGlvbkNob2ljZXNcIlxuICAgICAgY2xhc3M9XCJhZ2dyZWdhdGlvbi1jaG9pY2VzXCJcbiAgICAgIChzZWxlY3RWYWx1ZSk9XCJhZ2dyZWdhdGlvbiQubmV4dCgkZXZlbnQpXCJcbiAgICAgIFtzZWxlY3RlZF09XCJhZ2dyZWdhdGlvbiQudmFsdWVcIlxuICAgICAgW3RpdGxlXT1cIidjaGFydC5kcm9wZG93bi5hZ2dyZWdhdGlvbicgfCB0cmFuc2xhdGVcIlxuICAgID48L2duLXVpLWRyb3Bkb3duLXNlbGVjdG9yPlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwicmVsYXRpdmUgaC1mdWxsIG10LTIgYmctd2hpdGUgYm9yZGVyIGJvcmRlci1ncmF5LTMwMCByb3VuZGVkLWxnIG92ZXJmbG93LWhpZGRlblwiXG4gID5cbiAgICA8Z24tdWktY2hhcnRcbiAgICAgIFtkYXRhXT1cImNoYXJ0RGF0YSQgfCBhc3luY1wiXG4gICAgICBbdHlwZV09XCJjaGFydFR5cGUkLnZhbHVlXCJcbiAgICAgIFtsYWJlbFByb3BlcnR5XT1cImxhYmVsUHJvcGVydHlcIlxuICAgICAgW3ZhbHVlUHJvcGVydHldPVwidmFsdWVQcm9wZXJ0eVwiXG4gICAgPjwvZ24tdWktY2hhcnQ+XG4gICAgPGduLXVpLWxvYWRpbmctbWFza1xuICAgICAgKm5nSWY9XCJsb2FkaW5nXCJcbiAgICAgIGNsYXNzPVwiYWJzb2x1dGUgaW5zZXQtMFwiXG4gICAgICBbbWVzc2FnZV09XCInY2hhcnQubG9hZGluZy5kYXRhJyB8IHRyYW5zbGF0ZVwiXG4gICAgPjwvZ24tdWktbG9hZGluZy1tYXNrPlxuICAgIDxnbi11aS1wb3B1cC1hbGVydFxuICAgICAgKm5nSWY9XCJlcnJvclwiXG4gICAgICB0eXBlPVwid2FybmluZ1wiXG4gICAgICBpY29uPVwiZXJyb3Jfb3V0bGluZVwiXG4gICAgICBjbGFzcz1cImFic29sdXRlIG0tMiBpbnNldC0wXCJcbiAgICA+XG4gICAgICA8c3Bhbj57eyBlcnJvciB9fTwvc3Bhbj5cbiAgICA8L2duLXVpLXBvcHVwLWFsZXJ0PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -8,7 +8,7 @@ import { ChartComponent, TableComponent, UiDatavizModule, } from '../../../../..
8
8
  import { TableViewComponent } from './table-view/table-view.component';
9
9
  import { ChartViewComponent } from './chart-view/chart-view.component';
10
10
  import { TranslateModule } from '@ngx-translate/core';
11
- import { UiWidgetsModule } from '../../../../../libs/ui/widgets/src';
11
+ import { PopupAlertComponent, UiWidgetsModule } from '../../../../../libs/ui/widgets/src';
12
12
  import { UiInputsModule } from '../../../../../libs/ui/inputs/src';
13
13
  import * as i0 from "@angular/core";
14
14
  export class FeatureDatavizModule {
@@ -24,7 +24,8 @@ export class FeatureDatavizModule {
24
24
  UiWidgetsModule,
25
25
  TranslateModule,
26
26
  ChartComponent,
27
- UiInputsModule], exports: [GeoTableViewComponent,
27
+ UiInputsModule,
28
+ PopupAlertComponent], exports: [GeoTableViewComponent,
28
29
  FigureContainerComponent,
29
30
  TableViewComponent,
30
31
  ChartViewComponent] }); }
@@ -35,7 +36,8 @@ export class FeatureDatavizModule {
35
36
  TableComponent,
36
37
  UiWidgetsModule,
37
38
  TranslateModule,
38
- UiInputsModule] }); }
39
+ UiInputsModule,
40
+ PopupAlertComponent] }); }
39
41
  }
40
42
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FeatureDatavizModule, decorators: [{
41
43
  type: NgModule,
@@ -50,6 +52,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
50
52
  TranslateModule,
51
53
  ChartComponent,
52
54
  UiInputsModule,
55
+ PopupAlertComponent,
53
56
  ],
54
57
  declarations: [
55
58
  GeoTableViewComponent,
@@ -65,4 +68,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
65
68
  ],
66
69
  }]
67
70
  }] });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1kYXRhdml6Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9kYXRhdml6L3NyYy9saWIvZmVhdHVyZS1kYXRhdml6Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFDNUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFDakYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0RBQXNELENBQUE7QUFDL0YsT0FBTyxFQUNMLGNBQWMsRUFDZCxjQUFjLEVBQ2QsZUFBZSxHQUNoQixNQUFNLG9DQUFvQyxDQUFBO0FBQzNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFDcEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFBOztBQTJCbEUsTUFBTSxPQUFPLG9CQUFvQjsrR0FBcEIsb0JBQW9CO2dIQUFwQixvQkFBb0IsaUJBWjdCLHFCQUFxQjtZQUNyQix3QkFBd0I7WUFDeEIsa0JBQWtCO1lBQ2xCLGtCQUFrQixhQWRsQixZQUFZO1lBQ1osZ0JBQWdCO1lBQ2hCLFdBQVc7WUFDWCxlQUFlO1lBQ2YsY0FBYztZQUNkLGVBQWU7WUFDZixlQUFlO1lBQ2YsY0FBYztZQUNkLGNBQWMsYUFTZCxxQkFBcUI7WUFDckIsd0JBQXdCO1lBQ3hCLGtCQUFrQjtZQUNsQixrQkFBa0I7Z0hBR1Qsb0JBQW9CLFlBdkI3QixZQUFZO1lBQ1osZ0JBQWdCO1lBQ2hCLFdBQVc7WUFDWCxlQUFlO1lBQ2YsY0FBYztZQUNkLGVBQWU7WUFDZixlQUFlO1lBRWYsY0FBYzs7NEZBZUwsb0JBQW9CO2tCQXpCaEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLFdBQVc7d0JBQ1gsZUFBZTt3QkFDZixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixjQUFjO3dCQUNkLGNBQWM7cUJBQ2Y7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHFCQUFxQjt3QkFDckIsd0JBQXdCO3dCQUN4QixrQkFBa0I7d0JBQ2xCLGtCQUFrQjtxQkFDbkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHFCQUFxQjt3QkFDckIsd0JBQXdCO3dCQUN4QixrQkFBa0I7d0JBQ2xCLGtCQUFrQjtxQkFDbkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBGZWF0dXJlTWFwTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL21hcC9zcmMnXG5pbXBvcnQgeyBVaU1hcE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbWFwL3NyYydcbmltcG9ydCB7IEdlb1RhYmxlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vZ2VvLXRhYmxlLXZpZXcvZ2VvLXRhYmxlLXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgRmlndXJlQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9maWd1cmUvZmlndXJlLWNvbnRhaW5lci9maWd1cmUtY29udGFpbmVyLmNvbXBvbmVudCdcbmltcG9ydCB7XG4gIENoYXJ0Q29tcG9uZW50LFxuICBUYWJsZUNvbXBvbmVudCxcbiAgVWlEYXRhdml6TW9kdWxlLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2RhdGF2aXovc3JjJ1xuaW1wb3J0IHsgVGFibGVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi90YWJsZS12aWV3L3RhYmxlLXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgQ2hhcnRWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jaGFydC12aWV3L2NoYXJ0LXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IFVpV2lkZ2V0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvd2lkZ2V0cy9zcmMnXG5pbXBvcnQgeyBVaUlucHV0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGZWF0dXJlTWFwTW9kdWxlLFxuICAgIFVpTWFwTW9kdWxlLFxuICAgIFVpRGF0YXZpek1vZHVsZSxcbiAgICBUYWJsZUNvbXBvbmVudCxcbiAgICBVaVdpZGdldHNNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIENoYXJ0Q29tcG9uZW50LFxuICAgIFVpSW5wdXRzTW9kdWxlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBHZW9UYWJsZVZpZXdDb21wb25lbnQsXG4gICAgRmlndXJlQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIFRhYmxlVmlld0NvbXBvbmVudCxcbiAgICBDaGFydFZpZXdDb21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBHZW9UYWJsZVZpZXdDb21wb25lbnQsXG4gICAgRmlndXJlQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIFRhYmxlVmlld0NvbXBvbmVudCxcbiAgICBDaGFydFZpZXdDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVEYXRhdml6TW9kdWxlIHt9XG4iXX0=
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1kYXRhdml6Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9kYXRhdml6L3NyYy9saWIvZmVhdHVyZS1kYXRhdml6Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFDNUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFDakYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0RBQXNELENBQUE7QUFDL0YsT0FBTyxFQUNMLGNBQWMsRUFDZCxjQUFjLEVBQ2QsZUFBZSxHQUNoQixNQUFNLG9DQUFvQyxDQUFBO0FBQzNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFDekYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFBOztBQTRCbEUsTUFBTSxPQUFPLG9CQUFvQjsrR0FBcEIsb0JBQW9CO2dIQUFwQixvQkFBb0IsaUJBWjdCLHFCQUFxQjtZQUNyQix3QkFBd0I7WUFDeEIsa0JBQWtCO1lBQ2xCLGtCQUFrQixhQWZsQixZQUFZO1lBQ1osZ0JBQWdCO1lBQ2hCLFdBQVc7WUFDWCxlQUFlO1lBQ2YsY0FBYztZQUNkLGVBQWU7WUFDZixlQUFlO1lBQ2YsY0FBYztZQUNkLGNBQWM7WUFDZCxtQkFBbUIsYUFTbkIscUJBQXFCO1lBQ3JCLHdCQUF3QjtZQUN4QixrQkFBa0I7WUFDbEIsa0JBQWtCO2dIQUdULG9CQUFvQixZQXhCN0IsWUFBWTtZQUNaLGdCQUFnQjtZQUNoQixXQUFXO1lBQ1gsZUFBZTtZQUNmLGNBQWM7WUFDZCxlQUFlO1lBQ2YsZUFBZTtZQUVmLGNBQWM7WUFDZCxtQkFBbUI7OzRGQWVWLG9CQUFvQjtrQkExQmhDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixXQUFXO3dCQUNYLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxjQUFjO3dCQUNkLG1CQUFtQjtxQkFDcEI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHFCQUFxQjt3QkFDckIsd0JBQXdCO3dCQUN4QixrQkFBa0I7d0JBQ2xCLGtCQUFrQjtxQkFDbkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHFCQUFxQjt3QkFDckIsd0JBQXdCO3dCQUN4QixrQkFBa0I7d0JBQ2xCLGtCQUFrQjtxQkFDbkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBGZWF0dXJlTWFwTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL21hcC9zcmMnXG5pbXBvcnQgeyBVaU1hcE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbWFwL3NyYydcbmltcG9ydCB7IEdlb1RhYmxlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vZ2VvLXRhYmxlLXZpZXcvZ2VvLXRhYmxlLXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgRmlndXJlQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9maWd1cmUvZmlndXJlLWNvbnRhaW5lci9maWd1cmUtY29udGFpbmVyLmNvbXBvbmVudCdcbmltcG9ydCB7XG4gIENoYXJ0Q29tcG9uZW50LFxuICBUYWJsZUNvbXBvbmVudCxcbiAgVWlEYXRhdml6TW9kdWxlLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2RhdGF2aXovc3JjJ1xuaW1wb3J0IHsgVGFibGVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi90YWJsZS12aWV3L3RhYmxlLXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgQ2hhcnRWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jaGFydC12aWV3L2NoYXJ0LXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IFBvcHVwQWxlcnRDb21wb25lbnQsIFVpV2lkZ2V0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvd2lkZ2V0cy9zcmMnXG5pbXBvcnQgeyBVaUlucHV0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGZWF0dXJlTWFwTW9kdWxlLFxuICAgIFVpTWFwTW9kdWxlLFxuICAgIFVpRGF0YXZpek1vZHVsZSxcbiAgICBUYWJsZUNvbXBvbmVudCxcbiAgICBVaVdpZGdldHNNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIENoYXJ0Q29tcG9uZW50LFxuICAgIFVpSW5wdXRzTW9kdWxlLFxuICAgIFBvcHVwQWxlcnRDb21wb25lbnQsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEdlb1RhYmxlVmlld0NvbXBvbmVudCxcbiAgICBGaWd1cmVDb250YWluZXJDb21wb25lbnQsXG4gICAgVGFibGVWaWV3Q29tcG9uZW50LFxuICAgIENoYXJ0Vmlld0NvbXBvbmVudCxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEdlb1RhYmxlVmlld0NvbXBvbmVudCxcbiAgICBGaWd1cmVDb250YWluZXJDb21wb25lbnQsXG4gICAgVGFibGVWaWV3Q29tcG9uZW50LFxuICAgIENoYXJ0Vmlld0NvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRmVhdHVyZURhdGF2aXpNb2R1bGUge31cbiJdfQ==
@@ -190,4 +190,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
190
190
  providedIn: 'root',
191
191
  }]
192
192
  }], ctorParameters: function () { return [{ type: i1.ProxyService }]; } });
193
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2RhdGF2aXovc3JjL2xpYi9zZXJ2aWNlL2RhdGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRSxPQUFPLEVBRUwsY0FBYyxFQUVkLFdBQVcsR0FFWixNQUFNLHdCQUF3QixDQUFBO0FBQy9CLE9BQU8sRUFHTCxXQUFXLEVBRVgsY0FBYyxHQUNmLE1BQU0sOENBQThDLENBQUE7QUFDckQsT0FBTyxFQUNMLGFBQWEsRUFDYiw4QkFBOEIsRUFDOUIsb0JBQW9CLEVBQ3BCLFlBQVksR0FDYixNQUFNLHdDQUF3QyxDQUFBO0FBRS9DLE9BQU8sRUFBRSxJQUFJLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTs7O0FBTWhFLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO0FBQzlCLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO0FBQzlCLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO0FBQ2pDLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0FBQ2xDLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO0FBQ3JDLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO0FBQ2pDLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO0FBQy9CLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0FBQzVCLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO0FBQzdCLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQyxDQUFBO0FBQ3ZDLE1B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LENBQUMsQ0FBQTtpQkFDL0M7WUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFBO1NBQ0Y7UUFDRCxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO0lBQ25ELENBQUM7K0dBOU5VLFdBQVc7bUhBQVgsV0FBVyxjQUZWLE1BQU07OzRGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBtYXJrZXIgfSBmcm9tICdAYmllc2JqZXJnL25neC10cmFuc2xhdGUtZXh0cmFjdC1tYXJrZXInXG5pbXBvcnQge1xuICBPZ2NBcGlDb2xsZWN0aW9uSW5mbyxcbiAgT2djQXBpRW5kcG9pbnQsXG4gIE9nY0FwaVJlY29yZCxcbiAgV2ZzRW5kcG9pbnQsXG4gIFdmc1ZlcnNpb24sXG59IGZyb20gJ0BjYW1wdG9jYW1wL29nYy1jbGllbnQnXG5pbXBvcnQge1xuICBCYXNlUmVhZGVyLFxuICBGZXRjaEVycm9yLFxuICBvcGVuRGF0YXNldCxcbiAgU3VwcG9ydGVkVHlwZSxcbiAgU3VwcG9ydGVkVHlwZXMsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9kYXRhLWZldGNoZXIvc3JjJ1xuaW1wb3J0IHtcbiAgZ2V0RmlsZUZvcm1hdCxcbiAgZ2V0RmlsZUZvcm1hdEZyb21TZXJ2aWNlT3V0cHV0LFxuICBnZXRNaW1lVHlwZUZvckZvcm1hdCxcbiAgUHJveHlTZXJ2aWNlLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB0eXBlIHsgRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICdnZW9qc29uJ1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQge1xuICBEYXRhc2V0RGlzdHJpYnV0aW9uLFxuICBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvbixcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuXG5tYXJrZXIoJ3dmcy51bnJlYWNoYWJsZS5jb3JzJylcbm1hcmtlcignd2ZzLnVucmVhY2hhYmxlLmh0dHAnKVxubWFya2VyKCd3ZnMudW5yZWFjaGFibGUudW5rbm93bicpXG5tYXJrZXIoJ3dmcy5mZWF0dXJldHlwZS5ub3Rmb3VuZCcpXG5tYXJrZXIoJ3dmcy5nZW9qc29uZ21sLm5vdHN1cHBvcnRlZCcpXG5tYXJrZXIoJ29nYy51bnJlYWNoYWJsZS51bmtub3duJylcbm1hcmtlcignZGF0YXNldC5lcnJvci5uZXR3b3JrJylcbm1hcmtlcignZGF0YXNldC5lcnJvci5odHRwJylcbm1hcmtlcignZGF0YXNldC5lcnJvci5wYXJzZScpXG5tYXJrZXIoJ2RhdGFzZXQuZXJyb3IudW5zdXBwb3J0ZWRUeXBlJylcbm1hcmtlcignZGF0YXNldC5lcnJvci51bmtub3duJylcblxuaW50ZXJmYWNlIFdmc0Rvd25sb2FkVXJscyB7XG4gIGFsbDogeyBbZm9ybWF0OiBzdHJpbmddOiBzdHJpbmcgfVxuICBnZW9qc29uOiBzdHJpbmdcbiAgZ21sOiB7IGZlYXR1cmVVcmw6IHN0cmluZzsgbmFtZXNwYWNlOiBzdHJpbmc7IHdmc1ZlcnNpb246IFdmc1ZlcnNpb24gfVxufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRGF0YVNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHByb3h5OiBQcm94eVNlcnZpY2UpIHt9XG5cbiAgZ2V0RG93bmxvYWRVcmxzRnJvbVdmcyhcbiAgICB3ZnNVcmw6IHN0cmluZyxcbiAgICBmZWF0dXJlVHlwZU5hbWU6IHN0cmluZ1xuICApOiBPYnNlcnZhYmxlPFdmc0Rvd25sb2FkVXJscz4ge1xuICAgIHJldHVybiBmcm9tKFxuICAgICAgbmV3IFdmc0VuZHBvaW50KHRoaXMucHJveHkuZ2V0UHJveGllZFVybCh3ZnNVcmwpKS5pc1JlYWR5KClcbiAgICApLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogRmV0Y2hFcnJvciB8IEVycm9yKSA9PiB7XG4gICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUudW5rbm93bmApXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKGVycm9yLnR5cGUgPT09ICduZXR3b3JrJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUuY29yc2ApXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlcnJvci50eXBlID09PSAnaHR0cCcpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgd2ZzLnVucmVhY2hhYmxlLmh0dHBgKVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZXJyb3IudHlwZSA9PT0gJ3BhcnNlJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUucGFyc2VgKVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZXJyb3IudHlwZSA9PT0gJ3Vuc3VwcG9ydGVkVHlwZScpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgd2ZzLnVucmVhY2hhYmxlLnVuc3VwcG9ydGVkVHlwZWApXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgd2ZzLnVucmVhY2hhYmxlLnVua25vd25gKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgICBtYXAoKGVuZHBvaW50KSA9PiB7XG4gICAgICAgIGNvbnN0IGZlYXR1cmVUeXBlcyA9IGVuZHBvaW50LmdldEZlYXR1cmVUeXBlcygpXG4gICAgICAgIGNvbnN0IGZlYXR1cmVUeXBlID0gZW5kcG9pbnQuZ2V0RmVhdHVyZVR5cGVTdW1tYXJ5KFxuICAgICAgICAgIGZlYXR1cmVUeXBlcy5sZW5ndGggPT09IDEgJiYgIWZlYXR1cmVUeXBlTmFtZVxuICAgICAgICAgICAgPyBmZWF0dXJlVHlwZXNbMF0ubmFtZVxuICAgICAgICAgICAgOiBmZWF0dXJlVHlwZU5hbWVcbiAgICAgICAgKVxuICAgICAgICBpZiAoIWZlYXR1cmVUeXBlKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd3ZnMuZmVhdHVyZXR5cGUubm90Zm91bmQnKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgYWxsOiBmZWF0dXJlVHlwZS5vdXRwdXRGb3JtYXRzLnJlZHVjZShcbiAgICAgICAgICAgIChwcmV2LCBjdXJyKSA9PiAoe1xuICAgICAgICAgICAgICAuLi5wcmV2LFxuICAgICAgICAgICAgICBbY3Vycl06IGVuZHBvaW50LmdldEZlYXR1cmVVcmwoZmVhdHVyZVR5cGUubmFtZSwge1xuICAgICAgICAgICAgICAgIG91dHB1dEZvcm1hdDogY3VycixcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHt9XG4gICAgICAgICAgKSxcbiAgICAgICAgICBnZW9qc29uOiBlbmRwb2ludC5zdXBwb3J0c0pzb24oZmVhdHVyZVR5cGUubmFtZSlcbiAgICAgICAgICAgID8gZW5kcG9pbnQuZ2V0RmVhdHVyZVVybChmZWF0dXJlVHlwZS5uYW1lLCB7XG4gICAgICAgICAgICAgICAgYXNKc29uOiB0cnVlLFxuICAgICAgICAgICAgICAgIG91dHB1dENyczogJ0VQU0c6NDMyNicsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICA6IG51bGwsXG4gICAgICAgICAgZ21sOlxuICAgICAgICAgICAgZmVhdHVyZVR5cGUub3V0cHV0Rm9ybWF0cy5maW5kKChmKSA9PlxuICAgICAgICAgICAgICBmLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ2dtbCcpXG4gICAgICAgICAgICApICYmXG4gICAgICAgICAgICAoZmVhdHVyZVR5cGUuZGVmYXVsdENycyA9PT0gJ0VQU0c6NDMyNicgfHxcbiAgICAgICAgICAgICAgZmVhdHVyZVR5cGUub3RoZXJDcnM/LmluY2x1ZGVzKCdFUFNHOjQzMjYnKSlcbiAgICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgICBmZWF0dXJlVXJsOiBlbmRwb2ludC5nZXRGZWF0dXJlVXJsKGZlYXR1cmVUeXBlLm5hbWUsIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0cHV0Rm9ybWF0OiBmZWF0dXJlVHlwZS5vdXRwdXRGb3JtYXRzLmZpbmQoKGYpID0+XG4gICAgICAgICAgICAgICAgICAgICAgZi50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCdnbWwnKVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBvdXRwdXRDcnM6ICdFUFNHOjQzMjYnLFxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICBuYW1lc3BhY2U6IGZlYXR1cmVUeXBlLm5hbWUsXG4gICAgICAgICAgICAgICAgICB3ZnNWZXJzaW9uOiBlbmRwb2ludC5nZXRWZXJzaW9uKCksXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA6IG51bGwsXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgZ2V0RG93bmxvYWRVcmxGcm9tRXNyaVJlc3QoYXBpVXJsOiBzdHJpbmcsIGZvcm1hdDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5wcm94eS5nZXRQcm94aWVkVXJsKFxuICAgICAgYCR7YXBpVXJsfS9xdWVyeT9mPSR7Zm9ybWF0fSZ3aGVyZT0xPTEmb3V0RmllbGRzPSpgXG4gICAgKVxuICB9XG5cbiAgZ2V0RG93bmxvYWRMaW5rc0Zyb21XZnMoXG4gICAgd2ZzTGluazogRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb25cbiAgKTogT2JzZXJ2YWJsZTxEYXRhc2V0RGlzdHJpYnV0aW9uW10+IHtcbiAgICAvLyBQb3VyIERMIHRvdXRlcyBsZXMgZG9ubsOpZXNcbiAgICByZXR1cm4gdGhpcy5nZXREb3dubG9hZFVybHNGcm9tV2ZzKFxuICAgICAgd2ZzTGluay51cmwudG9TdHJpbmcoKSxcbiAgICAgIHdmc0xpbmsubmFtZVxuICAgICkucGlwZShcbiAgICAgIG1hcCgodXJscykgPT4gdXJscy5hbGwpLFxuICAgICAgbWFwKCh1cmxzKSA9PlxuICAgICAgICBPYmplY3Qua2V5cyh1cmxzKS5tYXAoKGZvcm1hdCkgPT4gKHtcbiAgICAgICAgICAuLi53ZnNMaW5rLFxuICAgICAgICAgIHR5cGU6ICdkb3dubG9hZCcsXG4gICAgICAgICAgdXJsOiBuZXcgVVJMKHVybHNbZm9ybWF0XSksXG4gICAgICAgICAgbWltZVR5cGU6IGdldE1pbWVUeXBlRm9yRm9ybWF0KFxuICAgICAgICAgICAgZ2V0RmlsZUZvcm1hdEZyb21TZXJ2aWNlT3V0cHV0KGZvcm1hdClcbiAgICAgICAgICApLFxuICAgICAgICB9KSlcbiAgICAgIClcbiAgICApXG4gIH1cblxuICBhc3luYyBnZXREb3dubG9hZExpbmtzRnJvbU9nY0FwaUZlYXR1cmVzKFxuICAgIG9nY0FwaUxpbms6IERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uXG4gICk6IFByb21pc2U8RGF0YXNldERpc3RyaWJ1dGlvbltdPiB7XG4gICAgY29uc3QgY29sbGVjdGlvbkluZm8gPSBhd2FpdCB0aGlzLmdldERvd25sb2FkVXJsc0Zyb21PZ2NBcGkoXG4gICAgICBvZ2NBcGlMaW5rLnVybC5ocmVmXG4gICAgKVxuICAgIHJldHVybiBPYmplY3Qua2V5cyhjb2xsZWN0aW9uSW5mby5idWxrRG93bmxvYWRMaW5rcykubWFwKChkb3dubG9hZExpbmspID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLm9nY0FwaUxpbmssXG4gICAgICAgIHR5cGU6ICdkb3dubG9hZCcsXG4gICAgICAgIHVybDogbmV3IFVSTChjb2xsZWN0aW9uSW5mby5idWxrRG93bmxvYWRMaW5rc1tkb3dubG9hZExpbmtdKSxcbiAgICAgICAgbWltZVR5cGU6IGdldE1pbWVUeXBlRm9yRm9ybWF0KFxuICAgICAgICAgIGdldEZpbGVGb3JtYXRGcm9tU2VydmljZU91dHB1dChkb3dubG9hZExpbmspXG4gICAgICAgICksXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIGFzeW5jIGdldERvd25sb2FkVXJsc0Zyb21PZ2NBcGkodXJsOiBzdHJpbmcpOiBQcm9taXNlPE9nY0FwaUNvbGxlY3Rpb25JbmZvPiB7XG4gICAgY29uc3QgZW5kcG9pbnQgPSBuZXcgT2djQXBpRW5kcG9pbnQodGhpcy5wcm94eS5nZXRQcm94aWVkVXJsKHVybCkpXG4gICAgcmV0dXJuIGF3YWl0IGVuZHBvaW50LmFsbENvbGxlY3Rpb25zXG4gICAgICAudGhlbigoY29sbGVjdGlvbnMpID0+IHtcbiAgICAgICAgcmV0dXJuIGVuZHBvaW50LmdldENvbGxlY3Rpb25JbmZvKGNvbGxlY3Rpb25zWzBdLm5hbWUpXG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYG9nYy51bnJlYWNoYWJsZS51bmtub3duYClcbiAgICAgIH0pXG4gIH1cblxuICBhc3luYyBnZXRJdGVtc0Zyb21PZ2NBcGkodXJsOiBzdHJpbmcpOiBQcm9taXNlPE9nY0FwaVJlY29yZD4ge1xuICAgIGNvbnN0IGVuZHBvaW50ID0gbmV3IE9nY0FwaUVuZHBvaW50KHRoaXMucHJveHkuZ2V0UHJveGllZFVybCh1cmwpKVxuICAgIHJldHVybiBhd2FpdCBlbmRwb2ludC5mZWF0dXJlQ29sbGVjdGlvbnNcbiAgICAgIC50aGVuKChjb2xsZWN0aW9ucykgPT4ge1xuICAgICAgICByZXR1cm4gY29sbGVjdGlvbnMubGVuZ3RoXG4gICAgICAgICAgPyBlbmRwb2ludC5nZXRDb2xsZWN0aW9uSXRlbShjb2xsZWN0aW9uc1swXSwgJzEnKVxuICAgICAgICAgIDogbnVsbFxuICAgICAgfSlcbiAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBvZ2MudW5yZWFjaGFibGUudW5rbm93bmApXG4gICAgICB9KVxuICB9XG5cbiAgZ2V0RG93bmxvYWRMaW5rc0Zyb21Fc3JpUmVzdChcbiAgICBlc3JpUmVzdExpbms6IERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uXG4gICk6IERhdGFzZXREaXN0cmlidXRpb25bXSB7XG4gICAgcmV0dXJuIFsnanNvbicsICdnZW9qc29uJ10ubWFwKChmb3JtYXQpID0+ICh7XG4gICAgICAuLi5lc3JpUmVzdExpbmssXG4gICAgICB1cmw6IG5ldyBVUkwoXG4gICAgICAgIHRoaXMuZ2V0RG93bmxvYWRVcmxGcm9tRXNyaVJlc3QoZXNyaVJlc3RMaW5rLnVybC50b1N0cmluZygpLCBmb3JtYXQpXG4gICAgICApLFxuICAgICAgbWltZVR5cGU6IGdldE1pbWVUeXBlRm9yRm9ybWF0KGdldEZpbGVGb3JtYXRGcm9tU2VydmljZU91dHB1dChmb3JtYXQpKSxcbiAgICB9KSlcbiAgfVxuXG4gIHJlYWRBc0dlb0pzb24obGluazogRGF0YXNldERpc3RyaWJ1dGlvbik6IE9ic2VydmFibGU8RmVhdHVyZUNvbGxlY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5nZXREYXRhc2V0KGxpbmspLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKGRhdGFzZXQpID0+IGRhdGFzZXQuc2VsZWN0QWxsKCkucmVhZCgpKSxcbiAgICAgIG1hcCgoZmVhdHVyZXMpID0+ICh7XG4gICAgICAgIHR5cGU6ICdGZWF0dXJlQ29sbGVjdGlvbicsXG4gICAgICAgIGZlYXR1cmVzLFxuICAgICAgfSkpXG4gICAgKVxuICB9XG5cbiAgZ2V0RGF0YXNldChsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uKTogT2JzZXJ2YWJsZTxCYXNlUmVhZGVyPiB7XG4gICAgaWYgKGxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnICYmIGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnd2ZzJykge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0RG93bmxvYWRVcmxzRnJvbVdmcyhsaW5rLnVybC50b1N0cmluZygpLCBsaW5rLm5hbWUpLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgodXJscykgPT4ge1xuICAgICAgICAgIGlmICh1cmxzLmdlb2pzb24pIHJldHVybiBvcGVuRGF0YXNldCh1cmxzLmdlb2pzb24sICdnZW9qc29uJylcbiAgICAgICAgICBpZiAodXJscy5nbWwpXG4gICAgICAgICAgICByZXR1cm4gb3BlbkRhdGFzZXQodXJscy5nbWwuZmVhdHVyZVVybCwgJ2dtbCcsIHtcbiAgICAgICAgICAgICAgbmFtZXNwYWNlOiB1cmxzLmdtbC5uYW1lc3BhY2UsXG4gICAgICAgICAgICAgIHdmc1ZlcnNpb246IHVybHMuZ21sLndmc1ZlcnNpb24sXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgIH0pLFxuICAgICAgICB0YXAoKHVybCkgPT4ge1xuICAgICAgICAgIGlmICh1cmwgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignd2ZzLmdlb2pzb25nbWwubm90c3VwcG9ydGVkJylcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgfSBlbHNlIGlmIChsaW5rLnR5cGUgPT09ICdkb3dubG9hZCcpIHtcbiAgICAgIGNvbnN0IGxpbmtQcm94aWZpZWRVcmwgPSB0aGlzLnByb3h5LmdldFByb3hpZWRVcmwobGluay51cmwudG9TdHJpbmcoKSlcbiAgICAgIGNvbnN0IGZvcm1hdCA9IGdldEZpbGVGb3JtYXQobGluaylcbiAgICAgIGNvbnN0IHN1cHBvcnRlZFR5cGUgPVxuICAgICAgICBTdXBwb3J0ZWRUeXBlcy5pbmRleE9mKGZvcm1hdCBhcyBhbnkpID4gLTFcbiAgICAgICAgICA/IChmb3JtYXQgYXMgU3VwcG9ydGVkVHlwZSlcbiAgICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgcmV0dXJuIGZyb20ob3BlbkRhdGFzZXQobGlua1Byb3hpZmllZFVybCwgc3VwcG9ydGVkVHlwZSkpLnBpcGUoKVxuICAgIH0gZWxzZSBpZiAoXG4gICAgICBsaW5rLnR5cGUgPT09ICdzZXJ2aWNlJyAmJlxuICAgICAgbGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPT09ICdlc3JpUmVzdCdcbiAgICApIHtcbiAgICAgIGNvbnN0IHVybCA9IHRoaXMuZ2V0RG93bmxvYWRVcmxGcm9tRXNyaVJlc3QoXG4gICAgICAgIGxpbmsudXJsLnRvU3RyaW5nKCksXG4gICAgICAgICdnZW9qc29uJ1xuICAgICAgKVxuICAgICAgcmV0dXJuIGZyb20ob3BlbkRhdGFzZXQodXJsLCAnZ2VvanNvbicpKS5waXBlKClcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgbGluay50eXBlID09PSAnc2VydmljZScgJiZcbiAgICAgIGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnb2djRmVhdHVyZXMnXG4gICAgKSB7XG4gICAgICByZXR1cm4gZnJvbSh0aGlzLmdldERvd25sb2FkVXJsc0Zyb21PZ2NBcGkobGluay51cmwuaHJlZikpLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoY29sbGVjdGlvbkluZm8pID0+IHtcbiAgICAgICAgICBjb25zdCBnZW9qc29uVXJsID0gY29sbGVjdGlvbkluZm8uanNvbkRvd25sb2FkTGlua1xuICAgICAgICAgIHJldHVybiBvcGVuRGF0YXNldChnZW9qc29uVXJsLCAnZ2VvanNvbicpXG4gICAgICAgIH0pLFxuICAgICAgICB0YXAoKHVybCkgPT4ge1xuICAgICAgICAgIGlmICh1cmwgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignd2ZzLmdlb2pzb25nbWwubm90c3VwcG9ydGVkJylcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgfVxuICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+ICdwcm90b2NvbCBub3Qgc3VwcG9ydGVkJylcbiAgfVxufVxuIl19
193
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2RhdGF2aXovc3JjL2xpYi9zZXJ2aWNlL2RhdGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRSxPQUFPLEVBRUwsY0FBYyxFQUVkLFdBQVcsR0FFWixNQUFNLHdCQUF3QixDQUFBO0FBQy9CLE9BQU8sRUFHTCxXQUFXLEVBRVgsY0FBYyxHQUNmLE1BQU0sOENBQThDLENBQUE7QUFDckQsT0FBTyxFQUNMLGFBQWEsRUFDYiw4QkFBOEIsRUFDOUIsb0JBQW9CLEVBQ3BCLFlBQVksR0FDYixNQUFNLHdDQUF3QyxDQUFBO0FBRS9DLE9BQU8sRUFBRSxJQUFJLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTs7O0FBTWhFLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO0FBQzlCLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO0FBQzlCLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO0FBQ2pDLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0FBQ2xDLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO0FBQ3JDLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO0FBQ2pDLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO0FBQy9CLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0FBQzVCLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO0FBQzdCLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQyxDQUFBO0FBQ3ZDLE1B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LENBQUMsQ0FBQTtpQkFDL0M7WUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFBO1NBQ0Y7UUFDRCxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO0lBQ25ELENBQUM7K0dBOU5VLFdBQVc7bUhBQVgsV0FBVyxjQUZWLE1BQU07OzRGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBtYXJrZXIgfSBmcm9tICdAYmllc2JqZXJnL25neC10cmFuc2xhdGUtZXh0cmFjdC1tYXJrZXInXG5pbXBvcnQge1xuICBPZ2NBcGlDb2xsZWN0aW9uSW5mbyxcbiAgT2djQXBpRW5kcG9pbnQsXG4gIE9nY0FwaVJlY29yZCxcbiAgV2ZzRW5kcG9pbnQsXG4gIFdmc1ZlcnNpb24sXG59IGZyb20gJ0BjYW1wdG9jYW1wL29nYy1jbGllbnQnXG5pbXBvcnQge1xuICBCYXNlUmVhZGVyLFxuICBGZXRjaEVycm9yLFxuICBvcGVuRGF0YXNldCxcbiAgU3VwcG9ydGVkVHlwZSxcbiAgU3VwcG9ydGVkVHlwZXMsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9kYXRhLWZldGNoZXIvc3JjJ1xuaW1wb3J0IHtcbiAgZ2V0RmlsZUZvcm1hdCxcbiAgZ2V0RmlsZUZvcm1hdEZyb21TZXJ2aWNlT3V0cHV0LFxuICBnZXRNaW1lVHlwZUZvckZvcm1hdCxcbiAgUHJveHlTZXJ2aWNlLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB0eXBlIHsgRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICdnZW9qc29uJ1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQge1xuICBEYXRhc2V0T25saW5lUmVzb3VyY2UsXG4gIERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5cbm1hcmtlcignd2ZzLnVucmVhY2hhYmxlLmNvcnMnKVxubWFya2VyKCd3ZnMudW5yZWFjaGFibGUuaHR0cCcpXG5tYXJrZXIoJ3dmcy51bnJlYWNoYWJsZS51bmtub3duJylcbm1hcmtlcignd2ZzLmZlYXR1cmV0eXBlLm5vdGZvdW5kJylcbm1hcmtlcignd2ZzLmdlb2pzb25nbWwubm90c3VwcG9ydGVkJylcbm1hcmtlcignb2djLnVucmVhY2hhYmxlLnVua25vd24nKVxubWFya2VyKCdkYXRhc2V0LmVycm9yLm5ldHdvcmsnKVxubWFya2VyKCdkYXRhc2V0LmVycm9yLmh0dHAnKVxubWFya2VyKCdkYXRhc2V0LmVycm9yLnBhcnNlJylcbm1hcmtlcignZGF0YXNldC5lcnJvci51bnN1cHBvcnRlZFR5cGUnKVxubWFya2VyKCdkYXRhc2V0LmVycm9yLnVua25vd24nKVxuXG5pbnRlcmZhY2UgV2ZzRG93bmxvYWRVcmxzIHtcbiAgYWxsOiB7IFtmb3JtYXQ6IHN0cmluZ106IHN0cmluZyB9XG4gIGdlb2pzb246IHN0cmluZ1xuICBnbWw6IHsgZmVhdHVyZVVybDogc3RyaW5nOyBuYW1lc3BhY2U6IHN0cmluZzsgd2ZzVmVyc2lvbjogV2ZzVmVyc2lvbiB9XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBEYXRhU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcHJveHk6IFByb3h5U2VydmljZSkge31cblxuICBnZXREb3dubG9hZFVybHNGcm9tV2ZzKFxuICAgIHdmc1VybDogc3RyaW5nLFxuICAgIGZlYXR1cmVUeXBlTmFtZTogc3RyaW5nXG4gICk6IE9ic2VydmFibGU8V2ZzRG93bmxvYWRVcmxzPiB7XG4gICAgcmV0dXJuIGZyb20oXG4gICAgICBuZXcgV2ZzRW5kcG9pbnQodGhpcy5wcm94eS5nZXRQcm94aWVkVXJsKHdmc1VybCkpLmlzUmVhZHkoKVxuICAgICkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBGZXRjaEVycm9yIHwgRXJyb3IpID0+IHtcbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHdmcy51bnJlYWNoYWJsZS51bmtub3duYClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAoZXJyb3IudHlwZSA9PT0gJ25ldHdvcmsnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHdmcy51bnJlYWNoYWJsZS5jb3JzYClcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGVycm9yLnR5cGUgPT09ICdodHRwJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUuaHR0cGApXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlcnJvci50eXBlID09PSAncGFyc2UnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHdmcy51bnJlYWNoYWJsZS5wYXJzZWApXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlcnJvci50eXBlID09PSAndW5zdXBwb3J0ZWRUeXBlJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUudW5zdXBwb3J0ZWRUeXBlYClcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUudW5rbm93bmApXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIG1hcCgoZW5kcG9pbnQpID0+IHtcbiAgICAgICAgY29uc3QgZmVhdHVyZVR5cGVzID0gZW5kcG9pbnQuZ2V0RmVhdHVyZVR5cGVzKClcbiAgICAgICAgY29uc3QgZmVhdHVyZVR5cGUgPSBlbmRwb2ludC5nZXRGZWF0dXJlVHlwZVN1bW1hcnkoXG4gICAgICAgICAgZmVhdHVyZVR5cGVzLmxlbmd0aCA9PT0gMSAmJiAhZmVhdHVyZVR5cGVOYW1lXG4gICAgICAgICAgICA/IGZlYXR1cmVUeXBlc1swXS5uYW1lXG4gICAgICAgICAgICA6IGZlYXR1cmVUeXBlTmFtZVxuICAgICAgICApXG4gICAgICAgIGlmICghZmVhdHVyZVR5cGUpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3dmcy5mZWF0dXJldHlwZS5ub3Rmb3VuZCcpXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBhbGw6IGZlYXR1cmVUeXBlLm91dHB1dEZvcm1hdHMucmVkdWNlKFxuICAgICAgICAgICAgKHByZXYsIGN1cnIpID0+ICh7XG4gICAgICAgICAgICAgIC4uLnByZXYsXG4gICAgICAgICAgICAgIFtjdXJyXTogZW5kcG9pbnQuZ2V0RmVhdHVyZVVybChmZWF0dXJlVHlwZS5uYW1lLCB7XG4gICAgICAgICAgICAgICAgb3V0cHV0Rm9ybWF0OiBjdXJyLFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAge31cbiAgICAgICAgICApLFxuICAgICAgICAgIGdlb2pzb246IGVuZHBvaW50LnN1cHBvcnRzSnNvbihmZWF0dXJlVHlwZS5uYW1lKVxuICAgICAgICAgICAgPyBlbmRwb2ludC5nZXRGZWF0dXJlVXJsKGZlYXR1cmVUeXBlLm5hbWUsIHtcbiAgICAgICAgICAgICAgICBhc0pzb246IHRydWUsXG4gICAgICAgICAgICAgICAgb3V0cHV0Q3JzOiAnRVBTRzo0MzI2JyxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgICBnbWw6XG4gICAgICAgICAgICBmZWF0dXJlVHlwZS5vdXRwdXRGb3JtYXRzLmZpbmQoKGYpID0+XG4gICAgICAgICAgICAgIGYudG9Mb3dlckNhc2UoKS5pbmNsdWRlcygnZ21sJylcbiAgICAgICAgICAgICkgJiZcbiAgICAgICAgICAgIChmZWF0dXJlVHlwZS5kZWZhdWx0Q3JzID09PSAnRVBTRzo0MzI2JyB8fFxuICAgICAgICAgICAgICBmZWF0dXJlVHlwZS5vdGhlckNycz8uaW5jbHVkZXMoJ0VQU0c6NDMyNicpKVxuICAgICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAgIGZlYXR1cmVVcmw6IGVuZHBvaW50LmdldEZlYXR1cmVVcmwoZmVhdHVyZVR5cGUubmFtZSwge1xuICAgICAgICAgICAgICAgICAgICBvdXRwdXRGb3JtYXQ6IGZlYXR1cmVUeXBlLm91dHB1dEZvcm1hdHMuZmluZCgoZikgPT5cbiAgICAgICAgICAgICAgICAgICAgICBmLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ2dtbCcpXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIG91dHB1dENyczogJ0VQU0c6NDMyNicsXG4gICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgIG5hbWVzcGFjZTogZmVhdHVyZVR5cGUubmFtZSxcbiAgICAgICAgICAgICAgICAgIHdmc1ZlcnNpb246IGVuZHBvaW50LmdldFZlcnNpb24oKSxcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApXG4gIH1cblxuICBnZXREb3dubG9hZFVybEZyb21Fc3JpUmVzdChhcGlVcmw6IHN0cmluZywgZm9ybWF0OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnByb3h5LmdldFByb3hpZWRVcmwoXG4gICAgICBgJHthcGlVcmx9L3F1ZXJ5P2Y9JHtmb3JtYXR9JndoZXJlPTE9MSZvdXRGaWVsZHM9KmBcbiAgICApXG4gIH1cblxuICBnZXREb3dubG9hZExpbmtzRnJvbVdmcyhcbiAgICB3ZnNMaW5rOiBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvblxuICApOiBPYnNlcnZhYmxlPERhdGFzZXRPbmxpbmVSZXNvdXJjZVtdPiB7XG4gICAgLy8gUG91ciBETCB0b3V0ZXMgbGVzIGRvbm7DqWVzXG4gICAgcmV0dXJuIHRoaXMuZ2V0RG93bmxvYWRVcmxzRnJvbVdmcyhcbiAgICAgIHdmc0xpbmsudXJsLnRvU3RyaW5nKCksXG4gICAgICB3ZnNMaW5rLm5hbWVcbiAgICApLnBpcGUoXG4gICAgICBtYXAoKHVybHMpID0+IHVybHMuYWxsKSxcbiAgICAgIG1hcCgodXJscykgPT5cbiAgICAgICAgT2JqZWN0LmtleXModXJscykubWFwKChmb3JtYXQpID0+ICh7XG4gICAgICAgICAgLi4ud2ZzTGluayxcbiAgICAgICAgICB0eXBlOiAnZG93bmxvYWQnLFxuICAgICAgICAgIHVybDogbmV3IFVSTCh1cmxzW2Zvcm1hdF0pLFxuICAgICAgICAgIG1pbWVUeXBlOiBnZXRNaW1lVHlwZUZvckZvcm1hdChcbiAgICAgICAgICAgIGdldEZpbGVGb3JtYXRGcm9tU2VydmljZU91dHB1dChmb3JtYXQpXG4gICAgICAgICAgKSxcbiAgICAgICAgfSkpXG4gICAgICApXG4gICAgKVxuICB9XG5cbiAgYXN5bmMgZ2V0RG93bmxvYWRMaW5rc0Zyb21PZ2NBcGlGZWF0dXJlcyhcbiAgICBvZ2NBcGlMaW5rOiBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvblxuICApOiBQcm9taXNlPERhdGFzZXRPbmxpbmVSZXNvdXJjZVtdPiB7XG4gICAgY29uc3QgY29sbGVjdGlvbkluZm8gPSBhd2FpdCB0aGlzLmdldERvd25sb2FkVXJsc0Zyb21PZ2NBcGkoXG4gICAgICBvZ2NBcGlMaW5rLnVybC5ocmVmXG4gICAgKVxuICAgIHJldHVybiBPYmplY3Qua2V5cyhjb2xsZWN0aW9uSW5mby5idWxrRG93bmxvYWRMaW5rcykubWFwKChkb3dubG9hZExpbmspID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLm9nY0FwaUxpbmssXG4gICAgICAgIHR5cGU6ICdkb3dubG9hZCcsXG4gICAgICAgIHVybDogbmV3IFVSTChjb2xsZWN0aW9uSW5mby5idWxrRG93bmxvYWRMaW5rc1tkb3dubG9hZExpbmtdKSxcbiAgICAgICAgbWltZVR5cGU6IGdldE1pbWVUeXBlRm9yRm9ybWF0KFxuICAgICAgICAgIGdldEZpbGVGb3JtYXRGcm9tU2VydmljZU91dHB1dChkb3dubG9hZExpbmspXG4gICAgICAgICksXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIGFzeW5jIGdldERvd25sb2FkVXJsc0Zyb21PZ2NBcGkodXJsOiBzdHJpbmcpOiBQcm9taXNlPE9nY0FwaUNvbGxlY3Rpb25JbmZvPiB7XG4gICAgY29uc3QgZW5kcG9pbnQgPSBuZXcgT2djQXBpRW5kcG9pbnQodGhpcy5wcm94eS5nZXRQcm94aWVkVXJsKHVybCkpXG4gICAgcmV0dXJuIGF3YWl0IGVuZHBvaW50LmFsbENvbGxlY3Rpb25zXG4gICAgICAudGhlbigoY29sbGVjdGlvbnMpID0+IHtcbiAgICAgICAgcmV0dXJuIGVuZHBvaW50LmdldENvbGxlY3Rpb25JbmZvKGNvbGxlY3Rpb25zWzBdLm5hbWUpXG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYG9nYy51bnJlYWNoYWJsZS51bmtub3duYClcbiAgICAgIH0pXG4gIH1cblxuICBhc3luYyBnZXRJdGVtc0Zyb21PZ2NBcGkodXJsOiBzdHJpbmcpOiBQcm9taXNlPE9nY0FwaVJlY29yZD4ge1xuICAgIGNvbnN0IGVuZHBvaW50ID0gbmV3IE9nY0FwaUVuZHBvaW50KHRoaXMucHJveHkuZ2V0UHJveGllZFVybCh1cmwpKVxuICAgIHJldHVybiBhd2FpdCBlbmRwb2ludC5mZWF0dXJlQ29sbGVjdGlvbnNcbiAgICAgIC50aGVuKChjb2xsZWN0aW9ucykgPT4ge1xuICAgICAgICByZXR1cm4gY29sbGVjdGlvbnMubGVuZ3RoXG4gICAgICAgICAgPyBlbmRwb2ludC5nZXRDb2xsZWN0aW9uSXRlbShjb2xsZWN0aW9uc1swXSwgJzEnKVxuICAgICAgICAgIDogbnVsbFxuICAgICAgfSlcbiAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBvZ2MudW5yZWFjaGFibGUudW5rbm93bmApXG4gICAgICB9KVxuICB9XG5cbiAgZ2V0RG93bmxvYWRMaW5rc0Zyb21Fc3JpUmVzdChcbiAgICBlc3JpUmVzdExpbms6IERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uXG4gICk6IERhdGFzZXRPbmxpbmVSZXNvdXJjZVtdIHtcbiAgICByZXR1cm4gWydqc29uJywgJ2dlb2pzb24nXS5tYXAoKGZvcm1hdCkgPT4gKHtcbiAgICAgIC4uLmVzcmlSZXN0TGluayxcbiAgICAgIHVybDogbmV3IFVSTChcbiAgICAgICAgdGhpcy5nZXREb3dubG9hZFVybEZyb21Fc3JpUmVzdChlc3JpUmVzdExpbmsudXJsLnRvU3RyaW5nKCksIGZvcm1hdClcbiAgICAgICksXG4gICAgICBtaW1lVHlwZTogZ2V0TWltZVR5cGVGb3JGb3JtYXQoZ2V0RmlsZUZvcm1hdEZyb21TZXJ2aWNlT3V0cHV0KGZvcm1hdCkpLFxuICAgIH0pKVxuICB9XG5cbiAgcmVhZEFzR2VvSnNvbihsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UpOiBPYnNlcnZhYmxlPEZlYXR1cmVDb2xsZWN0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0RGF0YXNldChsaW5rKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKChkYXRhc2V0KSA9PiBkYXRhc2V0LnNlbGVjdEFsbCgpLnJlYWQoKSksXG4gICAgICBtYXAoKGZlYXR1cmVzKSA9PiAoe1xuICAgICAgICB0eXBlOiAnRmVhdHVyZUNvbGxlY3Rpb24nLFxuICAgICAgICBmZWF0dXJlcyxcbiAgICAgIH0pKVxuICAgIClcbiAgfVxuXG4gIGdldERhdGFzZXQobGluazogRGF0YXNldE9ubGluZVJlc291cmNlKTogT2JzZXJ2YWJsZTxCYXNlUmVhZGVyPiB7XG4gICAgaWYgKGxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnICYmIGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnd2ZzJykge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0RG93bmxvYWRVcmxzRnJvbVdmcyhsaW5rLnVybC50b1N0cmluZygpLCBsaW5rLm5hbWUpLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgodXJscykgPT4ge1xuICAgICAgICAgIGlmICh1cmxzLmdlb2pzb24pIHJldHVybiBvcGVuRGF0YXNldCh1cmxzLmdlb2pzb24sICdnZW9qc29uJylcbiAgICAgICAgICBpZiAodXJscy5nbWwpXG4gICAgICAgICAgICByZXR1cm4gb3BlbkRhdGFzZXQodXJscy5nbWwuZmVhdHVyZVVybCwgJ2dtbCcsIHtcbiAgICAgICAgICAgICAgbmFtZXNwYWNlOiB1cmxzLmdtbC5uYW1lc3BhY2UsXG4gICAgICAgICAgICAgIHdmc1ZlcnNpb246IHVybHMuZ21sLndmc1ZlcnNpb24sXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgIH0pLFxuICAgICAgICB0YXAoKHVybCkgPT4ge1xuICAgICAgICAgIGlmICh1cmwgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignd2ZzLmdlb2pzb25nbWwubm90c3VwcG9ydGVkJylcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgfSBlbHNlIGlmIChsaW5rLnR5cGUgPT09ICdkb3dubG9hZCcpIHtcbiAgICAgIGNvbnN0IGxpbmtQcm94aWZpZWRVcmwgPSB0aGlzLnByb3h5LmdldFByb3hpZWRVcmwobGluay51cmwudG9TdHJpbmcoKSlcbiAgICAgIGNvbnN0IGZvcm1hdCA9IGdldEZpbGVGb3JtYXQobGluaylcbiAgICAgIGNvbnN0IHN1cHBvcnRlZFR5cGUgPVxuICAgICAgICBTdXBwb3J0ZWRUeXBlcy5pbmRleE9mKGZvcm1hdCBhcyBhbnkpID4gLTFcbiAgICAgICAgICA/IChmb3JtYXQgYXMgU3VwcG9ydGVkVHlwZSlcbiAgICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgcmV0dXJuIGZyb20ob3BlbkRhdGFzZXQobGlua1Byb3hpZmllZFVybCwgc3VwcG9ydGVkVHlwZSkpLnBpcGUoKVxuICAgIH0gZWxzZSBpZiAoXG4gICAgICBsaW5rLnR5cGUgPT09ICdzZXJ2aWNlJyAmJlxuICAgICAgbGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPT09ICdlc3JpUmVzdCdcbiAgICApIHtcbiAgICAgIGNvbnN0IHVybCA9IHRoaXMuZ2V0RG93bmxvYWRVcmxGcm9tRXNyaVJlc3QoXG4gICAgICAgIGxpbmsudXJsLnRvU3RyaW5nKCksXG4gICAgICAgICdnZW9qc29uJ1xuICAgICAgKVxuICAgICAgcmV0dXJuIGZyb20ob3BlbkRhdGFzZXQodXJsLCAnZ2VvanNvbicpKS5waXBlKClcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgbGluay50eXBlID09PSAnc2VydmljZScgJiZcbiAgICAgIGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnb2djRmVhdHVyZXMnXG4gICAgKSB7XG4gICAgICByZXR1cm4gZnJvbSh0aGlzLmdldERvd25sb2FkVXJsc0Zyb21PZ2NBcGkobGluay51cmwuaHJlZikpLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoY29sbGVjdGlvbkluZm8pID0+IHtcbiAgICAgICAgICBjb25zdCBnZW9qc29uVXJsID0gY29sbGVjdGlvbkluZm8uanNvbkRvd25sb2FkTGlua1xuICAgICAgICAgIHJldHVybiBvcGVuRGF0YXNldChnZW9qc29uVXJsLCAnZ2VvanNvbicpXG4gICAgICAgIH0pLFxuICAgICAgICB0YXAoKHVybCkgPT4ge1xuICAgICAgICAgIGlmICh1cmwgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignd2ZzLmdlb2pzb25nbWwubm90c3VwcG9ydGVkJylcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgfVxuICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+ICdwcm90b2NvbCBub3Qgc3VwcG9ydGVkJylcbiAgfVxufVxuIl19