geonetwork-ui 2.4.2 → 2.5.0-dev.0a41b52e9

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 (326) hide show
  1. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +11 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
  3. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +50 -32
  4. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +26 -10
  5. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  6. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  7. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +7 -4
  8. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +18 -16
  9. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +24 -14
  10. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +16 -18
  11. package/esm2022/libs/feature/editor/src/index.mjs +2 -1
  12. package/esm2022/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.mjs +3 -3
  13. package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +2 -2
  14. package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +4 -4
  15. package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +2 -2
  16. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.mjs +2 -2
  17. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.mjs +3 -2
  18. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.mjs +2 -2
  19. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +2 -1
  20. package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +7 -23
  21. package/esm2022/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.mjs +11 -11
  22. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +2 -2
  23. package/esm2022/libs/feature/editor/src/lib/models/wizard-field.type.mjs +3 -4
  24. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +1 -1
  25. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +25 -5
  26. package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +6 -7
  27. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +10 -7
  28. package/esm2022/libs/feature/record/src/lib/state/mdview.actions.mjs +4 -1
  29. package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +7 -2
  30. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +9 -1
  31. package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +19 -1
  32. package/esm2022/libs/feature/record/src/lib/state/mdview.selectors.mjs +6 -1
  33. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +6 -3
  34. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +1 -1
  35. package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +46 -1
  36. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +3 -2
  37. package/esm2022/libs/ui/dataviz/src/index.mjs +3 -3
  38. package/esm2022/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.mjs +51 -0
  39. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.component.mjs +133 -0
  40. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.data.source.mjs +24 -0
  41. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.mjs +82 -0
  42. package/esm2022/libs/ui/elements/src/index.mjs +2 -1
  43. package/esm2022/libs/ui/elements/src/lib/application-banner/application-banner.component.mjs +78 -0
  44. package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +3 -3
  45. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +18 -10
  46. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +2 -1
  47. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +10 -4
  48. package/esm2022/libs/ui/inputs/src/index.mjs +1 -2
  49. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +43 -3
  50. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +1 -6
  51. package/esm2022/libs/ui/inputs/src/lib/url-input/url-input.component.mjs +2 -7
  52. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +14 -4
  53. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +22 -13
  54. package/esm2022/libs/ui/widgets/src/index.mjs +1 -2
  55. package/esm2022/libs/ui/widgets/src/lib/ui-widgets.module.mjs +5 -6
  56. package/esm2022/libs/util/data-fetcher/src/index.mjs +3 -1
  57. package/esm2022/libs/util/data-fetcher/src/lib/data-fetcher.mjs +5 -4
  58. package/esm2022/libs/util/data-fetcher/src/lib/model.mjs +7 -3
  59. package/esm2022/libs/util/data-fetcher/src/lib/readers/base-cache.mjs +12 -0
  60. package/esm2022/libs/util/data-fetcher/src/lib/readers/base-file.mjs +3 -3
  61. package/esm2022/libs/util/data-fetcher/src/lib/readers/base.mjs +1 -1
  62. package/esm2022/libs/util/data-fetcher/src/lib/readers/csv.mjs +2 -2
  63. package/esm2022/libs/util/data-fetcher/src/lib/readers/excel.mjs +2 -2
  64. package/esm2022/libs/util/data-fetcher/src/lib/readers/geojson.mjs +2 -2
  65. package/esm2022/libs/util/data-fetcher/src/lib/readers/gml.mjs +5 -3
  66. package/esm2022/libs/util/data-fetcher/src/lib/readers/json.mjs +2 -2
  67. package/esm2022/libs/util/data-fetcher/src/lib/readers/wfs.mjs +35 -9
  68. package/esm2022/libs/util/data-fetcher/src/lib/utils.mjs +14 -10
  69. package/esm2022/libs/util/shared/src/lib/services/date.service.mjs +41 -0
  70. package/esm2022/libs/util/shared/src/lib/services/index.mjs +2 -1
  71. package/esm2022/libs/util/shared/src/lib/utils/temporal-extent-union.mjs +4 -4
  72. package/esm2022/translations/de.json +10 -75
  73. package/esm2022/translations/en.json +10 -75
  74. package/esm2022/translations/es.json +9 -74
  75. package/esm2022/translations/fr.json +22 -87
  76. package/esm2022/translations/it.json +27 -91
  77. package/esm2022/translations/nl.json +9 -74
  78. package/esm2022/translations/pt.json +9 -74
  79. package/fesm2022/geonetwork-ui.mjs +1194 -1223
  80. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  81. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  82. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +3 -0
  83. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  84. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +3 -1
  85. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
  86. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +2 -1
  87. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  88. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +6 -0
  89. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  90. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +2 -1
  91. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  92. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +2 -1
  93. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  94. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts +7 -9
  95. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts.map +1 -1
  96. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +2 -2
  97. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  98. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +5 -7
  99. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  100. package/libs/feature/editor/src/index.d.ts +1 -0
  101. package/libs/feature/editor/src/index.d.ts.map +1 -1
  102. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts.map +1 -1
  103. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts.map +1 -1
  104. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts +1 -0
  105. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts.map +1 -1
  106. package/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.d.ts +1 -3
  107. package/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.d.ts.map +1 -1
  108. package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts +3 -3
  109. package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts.map +1 -1
  110. package/libs/feature/editor/src/lib/models/wizard-field.type.d.ts +2 -3
  111. package/libs/feature/editor/src/lib/models/wizard-field.type.d.ts.map +1 -1
  112. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +5 -1
  113. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  114. package/libs/feature/record/src/lib/feature-record.module.d.ts +2 -2
  115. package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
  116. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +3 -2
  117. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  118. package/libs/feature/record/src/lib/state/mdview.actions.d.ts +16 -1
  119. package/libs/feature/record/src/lib/state/mdview.actions.d.ts.map +1 -1
  120. package/libs/feature/record/src/lib/state/mdview.effects.d.ts +5 -0
  121. package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
  122. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +2 -0
  123. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  124. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts +4 -1
  125. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts.map +1 -1
  126. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts +2 -0
  127. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts.map +1 -1
  128. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts +2 -1
  129. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
  130. package/libs/feature/search/src/lib/utils/service/fields.d.ts +10 -0
  131. package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
  132. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  133. package/libs/ui/dataviz/src/index.d.ts +2 -2
  134. package/libs/ui/dataviz/src/index.d.ts.map +1 -1
  135. package/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.d.ts +14 -0
  136. package/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.d.ts.map +1 -0
  137. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts +45 -0
  138. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts.map +1 -0
  139. package/libs/ui/dataviz/src/lib/data-table/data-table.data.source.d.ts +12 -0
  140. package/libs/ui/dataviz/src/lib/data-table/data-table.data.source.d.ts.map +1 -0
  141. package/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.d.ts +10 -0
  142. package/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.d.ts.map +1 -0
  143. package/libs/ui/elements/src/index.d.ts +1 -0
  144. package/libs/ui/elements/src/index.d.ts.map +1 -1
  145. package/libs/ui/elements/src/lib/application-banner/application-banner.component.d.ts +16 -0
  146. package/libs/ui/elements/src/lib/application-banner/application-banner.component.d.ts.map +1 -0
  147. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +5 -0
  148. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
  149. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
  150. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +2 -1
  151. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  152. package/libs/ui/inputs/src/index.d.ts +0 -1
  153. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  154. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts +16 -1
  155. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
  156. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +27 -28
  157. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  158. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts +2 -3
  159. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts.map +1 -1
  160. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +4 -2
  161. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -1
  162. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +6 -3
  163. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  164. package/libs/ui/widgets/src/index.d.ts +0 -1
  165. package/libs/ui/widgets/src/index.d.ts.map +1 -1
  166. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts +8 -9
  167. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts.map +1 -1
  168. package/libs/util/data-fetcher/src/index.d.ts +3 -1
  169. package/libs/util/data-fetcher/src/index.d.ts.map +1 -1
  170. package/libs/util/data-fetcher/src/lib/data-fetcher.d.ts +2 -2
  171. package/libs/util/data-fetcher/src/lib/data-fetcher.d.ts.map +1 -1
  172. package/libs/util/data-fetcher/src/lib/model.d.ts +1 -1
  173. package/libs/util/data-fetcher/src/lib/model.d.ts.map +1 -1
  174. package/libs/util/data-fetcher/src/lib/readers/base-cache.d.ts +8 -0
  175. package/libs/util/data-fetcher/src/lib/readers/base-cache.d.ts.map +1 -0
  176. package/libs/util/data-fetcher/src/lib/readers/base-file.d.ts +2 -2
  177. package/libs/util/data-fetcher/src/lib/readers/base-file.d.ts.map +1 -1
  178. package/libs/util/data-fetcher/src/lib/readers/base.d.ts +2 -2
  179. package/libs/util/data-fetcher/src/lib/readers/base.d.ts.map +1 -1
  180. package/libs/util/data-fetcher/src/lib/readers/gml.d.ts +5 -3
  181. package/libs/util/data-fetcher/src/lib/readers/gml.d.ts.map +1 -1
  182. package/libs/util/data-fetcher/src/lib/readers/wfs.d.ts +7 -4
  183. package/libs/util/data-fetcher/src/lib/readers/wfs.d.ts.map +1 -1
  184. package/libs/util/data-fetcher/src/lib/utils.d.ts +2 -2
  185. package/libs/util/data-fetcher/src/lib/utils.d.ts.map +1 -1
  186. package/libs/util/shared/src/lib/services/date.service.d.ts +13 -0
  187. package/libs/util/shared/src/lib/services/date.service.d.ts.map +1 -0
  188. package/libs/util/shared/src/lib/services/index.d.ts +1 -0
  189. package/libs/util/shared/src/lib/services/index.d.ts.map +1 -1
  190. package/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts +2 -1
  191. package/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts.map +1 -1
  192. package/package.json +1 -1
  193. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +25 -0
  194. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +4 -0
  195. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +55 -32
  196. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +45 -18
  197. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +3 -1
  198. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +4 -1
  199. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +165 -0
  200. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +4 -1
  201. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.html +3 -3
  202. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.ts +17 -15
  203. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +43 -20
  204. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.html +4 -3
  205. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +10 -18
  206. package/src/libs/feature/editor/src/index.ts +1 -0
  207. package/src/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.html +1 -1
  208. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +3 -3
  209. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +1 -0
  210. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.ts +1 -1
  211. package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +1 -0
  212. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +0 -13
  213. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.ts +0 -20
  214. package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.ts +3 -4
  215. package/src/libs/feature/editor/src/lib/fields.config.ts +1 -1
  216. package/src/libs/feature/editor/src/lib/models/wizard-field.type.ts +0 -1
  217. package/src/libs/feature/record/src/lib/data-view/data-view.component.html +24 -11
  218. package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +26 -4
  219. package/src/libs/feature/record/src/lib/feature-record.module.ts +6 -4
  220. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +71 -60
  221. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +6 -3
  222. package/src/libs/feature/record/src/lib/state/mdview.actions.ts +16 -0
  223. package/src/libs/feature/record/src/lib/state/mdview.effects.ts +21 -2
  224. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +15 -0
  225. package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +30 -1
  226. package/src/libs/feature/record/src/lib/state/mdview.selectors.ts +12 -0
  227. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +1 -0
  228. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +1 -0
  229. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +2 -0
  230. package/src/libs/feature/search/src/lib/utils/service/fields.ts +55 -0
  231. package/src/libs/ui/dataviz/src/index.ts +2 -2
  232. package/src/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.ts +52 -0
  233. package/src/libs/ui/dataviz/src/lib/{table/table.component.css → data-table/data-table.component.css} +4 -0
  234. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.html +67 -0
  235. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.ts +173 -0
  236. package/src/libs/ui/dataviz/src/lib/data-table/data-table.data.source.ts +33 -0
  237. package/src/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.ts +84 -0
  238. package/src/libs/ui/elements/src/index.ts +1 -0
  239. package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.css +0 -0
  240. package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.html +25 -0
  241. package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.ts +70 -0
  242. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.ts +2 -2
  243. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +3 -3
  244. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +12 -2
  245. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +2 -0
  246. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +3 -0
  247. package/src/libs/ui/inputs/src/index.ts +0 -1
  248. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +48 -0
  249. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +0 -3
  250. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.ts +1 -7
  251. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +37 -1
  252. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +8 -2
  253. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +2 -0
  254. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +10 -2
  255. package/src/libs/ui/widgets/src/index.ts +0 -1
  256. package/src/libs/ui/widgets/src/lib/ui-widgets.module.ts +2 -3
  257. package/src/libs/util/data-fetcher/src/index.ts +3 -0
  258. package/src/libs/util/data-fetcher/src/lib/data-fetcher.ts +13 -4
  259. package/src/libs/util/data-fetcher/src/lib/model.ts +6 -2
  260. package/src/libs/util/data-fetcher/src/lib/readers/base-cache.ts +14 -0
  261. package/src/libs/util/data-fetcher/src/lib/readers/base-file.ts +2 -1
  262. package/src/libs/util/data-fetcher/src/lib/readers/base.ts +2 -2
  263. package/src/libs/util/data-fetcher/src/lib/readers/csv.ts +1 -1
  264. package/src/libs/util/data-fetcher/src/lib/readers/excel.ts +1 -1
  265. package/src/libs/util/data-fetcher/src/lib/readers/geojson.ts +1 -1
  266. package/src/libs/util/data-fetcher/src/lib/readers/gml.ts +7 -7
  267. package/src/libs/util/data-fetcher/src/lib/readers/json.ts +1 -1
  268. package/src/libs/util/data-fetcher/src/lib/readers/wfs.ts +53 -8
  269. package/src/libs/util/data-fetcher/src/lib/utils.ts +38 -32
  270. package/src/libs/util/shared/src/lib/services/date.service.ts +45 -0
  271. package/src/libs/util/shared/src/lib/services/index.ts +1 -0
  272. package/src/libs/util/shared/src/lib/utils/temporal-extent-union.ts +6 -3
  273. package/translations/de.json +10 -75
  274. package/translations/en.json +10 -75
  275. package/translations/es.json +9 -74
  276. package/translations/fr.json +22 -87
  277. package/translations/it.json +27 -91
  278. package/translations/nl.json +9 -74
  279. package/translations/pt.json +9 -74
  280. package/translations/sk.json +9 -74
  281. package/esm2022/libs/ui/dataviz/src/lib/table/table.component.mjs +0 -61
  282. package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +0 -40
  283. package/esm2022/libs/ui/inputs/src/lib/chips-input/chips-input.component.mjs +0 -78
  284. package/esm2022/libs/ui/widgets/src/lib/step-bar/step-bar.component.mjs +0 -55
  285. package/libs/ui/dataviz/src/lib/table/table.component.d.ts +0 -29
  286. package/libs/ui/dataviz/src/lib/table/table.component.d.ts.map +0 -1
  287. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts +0 -11
  288. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts.map +0 -1
  289. package/libs/ui/inputs/src/lib/chips-input/chips-input.component.d.ts +0 -33
  290. package/libs/ui/inputs/src/lib/chips-input/chips-input.component.d.ts.map +0 -1
  291. package/libs/ui/widgets/src/lib/step-bar/step-bar.component.d.ts +0 -21
  292. package/libs/ui/widgets/src/lib/step-bar/step-bar.component.d.ts.map +0 -1
  293. package/src/libs/data-access/datafeeder/src/index.ts +0 -1
  294. package/src/libs/data-access/datafeeder/src/openapi/api/api.ts +0 -11
  295. package/src/libs/data-access/datafeeder/src/openapi/api/config.api.service.ts +0 -168
  296. package/src/libs/data-access/datafeeder/src/openapi/api/dataPublishing.api.service.ts +0 -270
  297. package/src/libs/data-access/datafeeder/src/openapi/api/fileUpload.api.service.ts +0 -734
  298. package/src/libs/data-access/datafeeder/src/openapi/api.module.ts +0 -46
  299. package/src/libs/data-access/datafeeder/src/openapi/configuration.ts +0 -125
  300. package/src/libs/data-access/datafeeder/src/openapi/encoder.ts +0 -20
  301. package/src/libs/data-access/datafeeder/src/openapi/index.ts +0 -5
  302. package/src/libs/data-access/datafeeder/src/openapi/model/analysisStatusEnum.api.model.ts +0 -24
  303. package/src/libs/data-access/datafeeder/src/openapi/model/boundingBox.api.model.ts +0 -20
  304. package/src/libs/data-access/datafeeder/src/openapi/model/cRS.api.model.ts +0 -25
  305. package/src/libs/data-access/datafeeder/src/openapi/model/datasetMetadata.api.model.ts +0 -45
  306. package/src/libs/data-access/datafeeder/src/openapi/model/datasetPublishRequest.api.model.ts +0 -39
  307. package/src/libs/data-access/datafeeder/src/openapi/model/datasetPublishingStatus.api.model.ts +0 -50
  308. package/src/libs/data-access/datafeeder/src/openapi/model/datasetUploadStatus.api.model.ts +0 -39
  309. package/src/libs/data-access/datafeeder/src/openapi/model/models.ts +0 -13
  310. package/src/libs/data-access/datafeeder/src/openapi/model/property.api.model.ts +0 -17
  311. package/src/libs/data-access/datafeeder/src/openapi/model/publishJobStatus.api.model.ts +0 -33
  312. package/src/libs/data-access/datafeeder/src/openapi/model/publishRequest.api.model.ts +0 -16
  313. package/src/libs/data-access/datafeeder/src/openapi/model/publishStatusEnum.api.model.ts +0 -20
  314. package/src/libs/data-access/datafeeder/src/openapi/model/publishStepEnum.api.model.ts +0 -42
  315. package/src/libs/data-access/datafeeder/src/openapi/model/uploadJobStatus.api.model.ts +0 -33
  316. package/src/libs/data-access/datafeeder/src/openapi/variables.ts +0 -9
  317. package/src/libs/data-access/datafeeder/src/spec.yaml +0 -537
  318. package/src/libs/ui/dataviz/src/lib/table/table.component.html +0 -40
  319. package/src/libs/ui/dataviz/src/lib/table/table.component.ts +0 -80
  320. package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +0 -40
  321. package/src/libs/ui/inputs/src/lib/chips-input/chips-input.component.css +0 -36
  322. package/src/libs/ui/inputs/src/lib/chips-input/chips-input.component.html +0 -23
  323. package/src/libs/ui/inputs/src/lib/chips-input/chips-input.component.ts +0 -81
  324. package/src/libs/ui/widgets/src/lib/step-bar/step-bar.component.css +0 -3
  325. package/src/libs/ui/widgets/src/lib/step-bar/step-bar.component.html +0 -13
  326. package/src/libs/ui/widgets/src/lib/step-bar/step-bar.component.ts +0 -55
@@ -1,25 +1,21 @@
1
1
  import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, ViewChild, } from '@angular/core';
2
- import { TableComponent, } from '../../../../../../libs/ui/dataviz/src';
2
+ import { DataTableComponent, } from '../../../../../../libs/ui/dataviz/src';
3
3
  import { Subscription } from 'rxjs';
4
4
  import { FeatureDetailComponent, MapContainerComponent, } from '../../../../../../libs/ui/map/src';
5
+ import { BaseReader } from '../../../../../../libs/util/data-fetcher/src';
5
6
  import * as i0 from "@angular/core";
6
7
  export class GeoTableViewComponent {
7
- get features() {
8
- return this.data.features;
9
- }
10
8
  constructor(changeRef) {
11
9
  this.changeRef = changeRef;
12
- this.data = { type: 'FeatureCollection', features: [] };
13
10
  this.subscription = new Subscription();
14
11
  }
15
- ngOnInit() {
16
- this.tableData = this.geojsonToTableData(this.data);
17
- this.mapContext = this.initMapContext();
12
+ async ngOnInit() {
13
+ this.mapContext = await this.initMapContext();
18
14
  }
19
15
  onTableSelect(tableEntry) {
20
16
  const { id } = tableEntry;
21
17
  this.selectionId = id;
22
- this.selection = this.getFeatureFromId(id);
18
+ // this.selection = this.getFeatureFromId(id)
23
19
  if (this.selection) {
24
20
  this.animateToFeature(this.selection);
25
21
  }
@@ -40,7 +36,8 @@ export class GeoTableViewComponent {
40
36
  ...f.properties,
41
37
  }));
42
38
  }
43
- initMapContext() {
39
+ async initMapContext() {
40
+ this.dataset.selectAll();
44
41
  return {
45
42
  layers: [
46
43
  {
@@ -49,7 +46,11 @@ export class GeoTableViewComponent {
49
46
  },
50
47
  {
51
48
  type: 'geojson',
52
- data: this.data,
49
+ data: {
50
+ type: 'FeatureCollection',
51
+ // FIXME: we're not getting geojson here
52
+ features: await this.dataset.read(),
53
+ },
53
54
  },
54
55
  ],
55
56
  view: {
@@ -73,18 +74,19 @@ export class GeoTableViewComponent {
73
74
  // })
74
75
  }
75
76
  getFeatureFromId(id) {
76
- return this.features.find((feature) => feature.id === id);
77
+ // FIXME: restore this once we need it?
78
+ // return this.features.find((feature) => feature.id === id)
77
79
  }
78
80
  ngOnDestroy() {
79
81
  this.subscription.unsubscribe();
80
82
  }
81
83
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GeoTableViewComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
82
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GeoTableViewComponent, isStandalone: true, selector: "gn-ui-geo-table-view", inputs: { data: "data" }, viewQueries: [{ propertyName: "uiTable", first: true, predicate: ["table"], descendants: true }, { propertyName: "mapContainer", first: true, predicate: ["mapContainer"], descendants: true }], ngImport: i0, template: "<div class=\"flex flex-row h-full overflow-auto\">\n <gn-ui-table\n #table\n class=\"w-1/2 overflow-auto\"\n [data]=\"tableData\"\n [activeId]=\"selectionId\"\n (selected)=\"onTableSelect($event)\"\n ></gn-ui-table>\n <gn-ui-map-container\n #mapContainer\n class=\"w-1/2 h-full\"\n [context]=\"mapContext\"\n (featuresClick)=\"onMapFeatureSelect($event)\"\n ></gn-ui-map-container>\n <gn-ui-feature-detail\n style=\"width: 300px\"\n class=\"p-3 shrink-0 overflow-auto\"\n [feature]=\"selection\"\n ></gn-ui-feature-detail>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: TableComponent, selector: "gn-ui-table", inputs: ["data", "activeId"], outputs: ["selected"] }, { kind: "component", type: MapContainerComponent, selector: "gn-ui-map-container", inputs: ["context"], outputs: ["featuresClick", "featuresHover", "mapClick"] }, { kind: "component", type: FeatureDetailComponent, selector: "gn-ui-feature-detail", inputs: ["feature"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
84
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GeoTableViewComponent, isStandalone: true, selector: "gn-ui-geo-table-view", inputs: { dataset: "dataset" }, viewQueries: [{ propertyName: "uiTable", first: true, predicate: ["table"], descendants: true }, { propertyName: "mapContainer", first: true, predicate: ["mapContainer"], descendants: true }], ngImport: i0, template: "<div class=\"flex flex-row h-full overflow-auto\">\n <gn-ui-data-table\n #table\n class=\"w-1/2 overflow-auto\"\n [dataset]=\"dataset\"\n [activeId]=\"selectionId\"\n (selected)=\"onTableSelect($event)\"\n ></gn-ui-data-table>\n <gn-ui-map-container\n #mapContainer\n class=\"w-1/2 h-full\"\n [context]=\"mapContext\"\n (featuresClick)=\"onMapFeatureSelect($event)\"\n ></gn-ui-map-container>\n <gn-ui-feature-detail\n style=\"width: 300px\"\n class=\"p-3 shrink-0 overflow-auto\"\n [feature]=\"selection\"\n ></gn-ui-feature-detail>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: MapContainerComponent, selector: "gn-ui-map-container", inputs: ["context"], outputs: ["featuresClick", "featuresHover", "mapClick"] }, { kind: "component", type: FeatureDetailComponent, selector: "gn-ui-feature-detail", inputs: ["feature"] }, { kind: "component", type: DataTableComponent, selector: "gn-ui-data-table", inputs: ["dataset", "activeId"], outputs: ["selected"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
83
85
  }
84
86
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GeoTableViewComponent, decorators: [{
85
87
  type: Component,
86
- args: [{ selector: 'gn-ui-geo-table-view', changeDetection: ChangeDetectionStrategy.OnPush, imports: [TableComponent, MapContainerComponent, FeatureDetailComponent], standalone: true, template: "<div class=\"flex flex-row h-full overflow-auto\">\n <gn-ui-table\n #table\n class=\"w-1/2 overflow-auto\"\n [data]=\"tableData\"\n [activeId]=\"selectionId\"\n (selected)=\"onTableSelect($event)\"\n ></gn-ui-table>\n <gn-ui-map-container\n #mapContainer\n class=\"w-1/2 h-full\"\n [context]=\"mapContext\"\n (featuresClick)=\"onMapFeatureSelect($event)\"\n ></gn-ui-map-container>\n <gn-ui-feature-detail\n style=\"width: 300px\"\n class=\"p-3 shrink-0 overflow-auto\"\n [feature]=\"selection\"\n ></gn-ui-feature-detail>\n</div>\n" }]
87
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { data: [{
88
+ args: [{ selector: 'gn-ui-geo-table-view', changeDetection: ChangeDetectionStrategy.OnPush, imports: [MapContainerComponent, FeatureDetailComponent, DataTableComponent], standalone: true, template: "<div class=\"flex flex-row h-full overflow-auto\">\n <gn-ui-data-table\n #table\n class=\"w-1/2 overflow-auto\"\n [dataset]=\"dataset\"\n [activeId]=\"selectionId\"\n (selected)=\"onTableSelect($event)\"\n ></gn-ui-data-table>\n <gn-ui-map-container\n #mapContainer\n class=\"w-1/2 h-full\"\n [context]=\"mapContext\"\n (featuresClick)=\"onMapFeatureSelect($event)\"\n ></gn-ui-map-container>\n <gn-ui-feature-detail\n style=\"width: 300px\"\n class=\"p-3 shrink-0 overflow-auto\"\n [feature]=\"selection\"\n ></gn-ui-feature-detail>\n</div>\n" }]
89
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { dataset: [{
88
90
  type: Input
89
91
  }], uiTable: [{
90
92
  type: ViewChild,
@@ -93,4 +95,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
93
95
  type: ViewChild,
94
96
  args: ['mapContainer']
95
97
  }] } });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvLXRhYmxlLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2RhdGF2aXovc3JjL2xpYi9nZW8tdGFibGUtdmlldy9nZW8tdGFibGUtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL2dlby10YWJsZS12aWV3L2dlby10YWJsZS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEVBR0wsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFDTCxjQUFjLEdBR2YsTUFBTSx1Q0FBdUMsQ0FBQTtBQUU5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBRW5DLE9BQU8sRUFDTCxzQkFBc0IsRUFDdEIscUJBQXFCLEdBQ3RCLE1BQU0sbUNBQW1DLENBQUE7O0FBVTFDLE1BQU0sT0FBTyxxQkFBcUI7SUFXaEMsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQTtJQUMzQixDQUFDO0lBRUQsWUFBb0IsU0FBNEI7UUFBNUIsY0FBUyxHQUFULFNBQVMsQ0FBbUI7UUFkdkMsU0FBSSxHQUFzQixFQUFFLElBQUksRUFBRSxtQkFBbUIsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUE7UUFRdEUsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFBO0lBTVUsQ0FBQztJQUVwRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ25ELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGNB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YyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7XG4gIFRhYmxlQ29tcG9uZW50LFxuICBUYWJsZUl0ZW1JZCxcbiAgVGFibGVJdGVtTW9kZWwsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZGF0YXZpei9zcmMnXG5pbXBvcnQgdHlwZSB7IEZlYXR1cmUsIEZlYXR1cmVDb2xsZWN0aW9uIH0gZnJvbSAnZ2VvanNvbidcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBNYXBDb250ZXh0IH0gZnJvbSAnQGdlb3NwYXRpYWwtc2RrL2NvcmUnXG5pbXBvcnQge1xuICBGZWF0dXJlRGV0YWlsQ29tcG9uZW50LFxuICBNYXBDb250YWluZXJDb21wb25lbnQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbWFwL3NyYydcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktZ2VvLXRhYmxlLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2VvLXRhYmxlLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9nZW8tdGFibGUtdmlldy5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbVGFibGVDb21wb25lbnQsIE1hcENvbnRhaW5lckNvbXBvbmVudCwgRmVhdHVyZURldGFpbENvbXBvbmVudF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEdlb1RhYmxlVmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgZGF0YTogRmVhdHVyZUNvbGxlY3Rpb24gPSB7IHR5cGU6ICdGZWF0dXJlQ29sbGVjdGlvbicsIGZlYXR1cmVzOiBbXSB9XG4gIEBWaWV3Q2hpbGQoJ3RhYmxlJykgdWlUYWJsZTogVGFibGVDb21wb25lbnRcbiAgQFZpZXdDaGlsZCgnbWFwQ29udGFpbmVyJykgbWFwQ29udGFpbmVyOiBNYXBDb250YWluZXJDb21wb25lbnRcblxuICB0YWJsZURhdGE6IFRhYmxlSXRlbU1vZGVsW11cbiAgbWFwQ29udGV4dDogTWFwQ29udGV4dFxuICBzZWxlY3Rpb25JZDogVGFibGVJdGVtSWRcbiAgc2VsZWN0aW9uOiBGZWF0dXJlXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpXG5cbiAgZ2V0IGZlYXR1cmVzKCkge1xuICAgIHJldHVybiB0aGlzLmRhdGEuZmVhdHVyZXNcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnRhYmxlRGF0YSA9IHRoaXMuZ2VvanNvblRvVGFibGVEYXRhKHRoaXMuZGF0YSlcbiAgICB0aGlzLm1hcENvbnRleHQgPSB0aGlzLmluaXRNYXBDb250ZXh0KClcbiAgfVxuXG4gIG9uVGFibGVTZWxlY3QodGFibGVFbnRyeTogVGFibGVJdGVtTW9kZWwpIHtcbiAgICBjb25zdCB7IGlkIH0gPSB0YWJsZUVudHJ5XG4gICAgdGhpcy5zZWxlY3Rpb25JZCA9IGlkXG4gICAgdGhpcy5zZWxlY3Rpb24gPSB0aGlzLmdldEZlYXR1cmVGcm9tSWQoaWQpXG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uKSB7XG4gICAgICB0aGlzLmFuaW1hdGVUb0ZlYXR1cmUodGhpcy5zZWxlY3Rpb24pXG4gICAgfVxuICB9XG5cbiAgb25NYXBGZWF0dXJlU2VsZWN0KGZlYXR1cmVzOiBGZWF0dXJlW10pOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGlvbiA9IGZlYXR1cmVzPy5sZW5ndGggPiAwICYmIGZlYXR1cmVzWzBdXG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uKSB7XG4gICAgICAvLyBGSVhNRTogc2hvdyBzdHlsaW5nIGZvciBzZWxlY3Rpb25cbiAgICAgIHRoaXMuc2VsZWN0aW9uSWQgPSB0aGlzLnNlbGVjdGlvbi5pZFxuICAgICAgdGhpcy5jaGFuZ2VSZWYuZGV0ZWN0Q2hhbmdlcygpXG4gICAgICAvLyB0aGlzLnZlY3RvckxheWVyLmNoYW5nZWQoKVxuICAgICAgdGhpcy51aVRhYmxlLnNjcm9sbFRvSXRlbSh0aGlzLnNlbGVjdGlvbklkKVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2VvanNvblRvVGFibGVEYXRhKGdlb2pzb246IEZlYXR1cmVDb2xsZWN0aW9uKSB7XG4gICAgcmV0dXJuIGdlb2pzb24uZmVhdHVyZXMubWFwKChmKSA9PiAoe1xuICAgICAgaWQ6IGYuaWQsXG4gICAgICAuLi5mLnByb3BlcnRpZXMsXG4gICAgfSkpXG4gIH1cblxuICBwcml2YXRlIGluaXRNYXBDb250ZXh0KCk6IE1hcENvbnRleHQge1xuICAgIHJldHVybiB7XG4gICAgICBsYXllcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICd4eXonLFxuICAgICAgICAgIHVybDogJ2h0dHBzOi8ve2EtY30udGlsZS5vcGVuc3RyZWV0bWFwLm9yZy97en0ve3h9L3t5fS5wbmcnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ2dlb2pzb24nLFxuICAgICAgICAgIGRhdGE6IHRoaXMuZGF0YSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICB2aWV3OiB7XG4gICAgICAgIGNlbnRlcjogWzAsIDBdLFxuICAgICAgICB6b29tOiAyLFxuICAgICAgfSxcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFuaW1hdGVUb0ZlYXR1cmUoZmVhdHVyZTogRmVhdHVyZSk6IHZvaWQge1xuICAgIHRoaXMubWFwQ29udGV4dCA9IHtcbiAgICAgIC4uLnRoaXMubWFwQ29udGV4dCxcbiAgICAgIHZpZXc6IHtcbiAgICAgICAgZ2VvbWV0cnk6IGZlYXR1cmUuZ2VvbWV0cnksXG4gICAgICAgIG1heFpvb206IDEzLFxuICAgICAgfSxcbiAgICB9XG4gICAgLy8gRklYTUU6IGFuaW1hdGUgdGhlIHZpZXdcbiAgICAvLyB0aGlzLnZpZXcuZml0KGZlYXR1cmUuZ2V0R2VvbWV0cnkoKS5nZXRFeHRlbnQoKSwge1xuICAgIC8vICAgZHVyYXRpb246IDEwMDAsXG4gICAgLy8gICBtYXhab29tOiAxMSxcbiAgICAvLyB9KVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRGZWF0dXJlRnJvbUlkKGlkOiBUYWJsZUl0ZW1JZCkge1xuICAgIHJldHVybiB0aGlzLmZlYXR1cmVzLmZpbmQoKGZlYXR1cmUpID0+IGZlYXR1cmUuaWQgPT09IGlkKVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBoLWZ1bGwgb3ZlcmZsb3ctYXV0b1wiPlxuICA8Z24tdWktdGFibGVcbiAgICAjdGFibGVcbiAgICBjbGFzcz1cInctMS8yIG92ZXJmbG93LWF1dG9cIlxuICAgIFtkYXRhXT1cInRhYmxlRGF0YVwiXG4gICAgW2FjdGl2ZUlkXT1cInNlbGVjdGlvbklkXCJcbiAgICAoc2VsZWN0ZWQpPVwib25UYWJsZVNlbGVjdCgkZXZlbnQpXCJcbiAgPjwvZ24tdWktdGFibGU+XG4gIDxnbi11aS1tYXAtY29udGFpbmVyXG4gICAgI21hcENvbnRhaW5lclxuICAgIGNsYXNzPVwidy0xLzIgaC1mdWxsXCJcbiAgICBbY29udGV4dF09XCJtYXBDb250ZXh0XCJcbiAgICAoZmVhdHVyZXNDbGljayk9XCJvbk1hcEZlYXR1cmVTZWxlY3QoJGV2ZW50KVwiXG4gID48L2duLXVpLW1hcC1jb250YWluZXI+XG4gIDxnbi11aS1mZWF0dXJlLWRldGFpbFxuICAgIHN0eWxlPVwid2lkdGg6IDMwMHB4XCJcbiAgICBjbGFzcz1cInAtMyBzaHJpbmstMCBvdmVyZmxvdy1hdXRvXCJcbiAgICBbZmVhdHVyZV09XCJzZWxlY3Rpb25cIlxuICA+PC9nbi11aS1mZWF0dXJlLWRldGFpbD5cbjwvZGl2PlxuIl19
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvLXRhYmxlLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2RhdGF2aXovc3JjL2xpYi9nZW8tdGFibGUtdmlldy9nZW8tdGFibGUtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL2dlby10YWJsZS12aWV3L2dlby10YWJsZS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEVBR0wsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFDTCxrQkFBa0IsR0FHbkIsTUFBTSx1Q0FBdUMsQ0FBQTtBQUU5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBRW5DLE9BQU8sRUFDTCxzQkFBc0IsRUFDdEIscUJBQXFCLEdBQ3RCLE1BQU0sbUNBQW1DLENBQUE7QUFDMUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDhDQUE4QyxDQUFBOztBQVV6RSxNQUFNLE9BQU8scUJBQXFCO0lBV2hDLFlBQW9CLFNBQTRCO1FBQTVCLGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBRnhDLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQTtJQUVVLENBQUM7SUFFcEQsS0FBSyxDQUFDLFFBQVE7UUFDWixJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFBO0lBQy9DLENBQUM7SUFFRCxhQUFhLENBQUMsVUFBMEI7UUFDdEMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFVBQVUsQ0FBQTtRQUN6QixJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQTtRQUNyQiw2Q0FBNkM7UUFDN0MsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUN2QyxDQUFDO0lBQ0gsQ0FBQztJQUVELGtCQUFrQixDQUFDLFFBQW1CO1FBQ3BDLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxFQUFFLE1BQU0sR0FBRyxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ3BELElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ25CLG9DQUFvQztZQUNwQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFBO1lBQ3BDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLENBQUE7WUFDOUIsNkJBQTZCO1lBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUM3QyxDQUFDO0lBQ0gsQ0FBQztJQUVPLGtCQUFrQixDQUFDLE9BQTBCO1FBQ25ELE9BQU8sT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbEMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQ1IsR0FBRyxDQUFDLENBQUMsVUFBVTtTQUNoQixDQUFDLENBQUMsQ0FBQTtJQUNMLENBQUM7SUFFTyxLQUFLLENBQUMsY0FBYztRQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFBO1FBQ3hCLE9BQU87WUFDTCxNQUFNLEVBQUU7Z0JBQ047b0JBQ0UsSUFBSSxFQUFFLEtBQUs7b0JBQ1gsR0FBRyxFQUFFLHNEQUFzRDtpQkFDNUQ7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsSUFBSSxFQUFFO3dCQUNKLElBQUksRUFBRSxtQkFBbUI7d0JBQ3pCLHdDQUF3Qzt3QkFDeEMsUUFBUSxFQUFFLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUU7cUJBQ3BDO2lCQUNGO2FBQ0Y7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDZCxJQUFJLEVBQUUsQ0FBQzthQUNSO1NBQ0YsQ0FBQTtJQUNILENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxPQUFnQjtRQUN2QyxJQUFJLENBQUMsVUFBVSxHQUFHO1lBQ2hCLEdBQUcsSUFBSSxDQUFDLFVBQVU7WUFDbEIsSUFBSSxFQUFFO2dCQUNKLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUTtnQkFDMUIsT0FBTyxFQUFFLEVBQUU7YUFDWjtTQUNGLENBQUE7UUFDRCwwQkFBMEI7UUFDMUIscURBQXFEO1FBQ3JELG9CQUFvQjtRQUNwQixpQkFBaUI7UUFDakIsS0FBSztJQUNQLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxFQUFlO1FBQ3RDLHVDQUF1QztRQUN2Qyw0REFBNEQ7SUFDOUQsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFBO0lBQ2pDLENBQUM7K0dBMUZVLHFCQUFxQjttR0FBckIscUJBQXFCLGlUQy9CbEMsMmtCQW9CQSwwRERRWSxxQkFBcUIsOElBQUUsc0JBQXNCLHNGQUFFLGtCQUFrQjs7NEZBR2hFLHFCQUFxQjtrQkFSakMsU0FBUzsrQkFDRSxzQkFBc0IsbUJBR2YsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLHFCQUFxQixFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixDQUFDLGNBQ2hFLElBQUk7c0ZBR1AsT0FBTztzQkFBZixLQUFLO2dCQUNjLE9BQU87c0JBQTFCLFNBQVM7dUJBQUMsT0FBTztnQkFDUyxZQUFZO3NCQUF0QyxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBEYXRhVGFibGVDb21wb25lbnQsXG4gIFRhYmxlSXRlbUlkLFxuICBUYWJsZUl0ZW1Nb2RlbCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9kYXRhdml6L3NyYydcbmltcG9ydCB0eXBlIHsgRmVhdHVyZSwgRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICdnZW9qc29uJ1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IE1hcENvbnRleHQgfSBmcm9tICdAZ2Vvc3BhdGlhbC1zZGsvY29yZSdcbmltcG9ydCB7XG4gIEZlYXR1cmVEZXRhaWxDb21wb25lbnQsXG4gIE1hcENvbnRhaW5lckNvbXBvbmVudCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9tYXAvc3JjJ1xuaW1wb3J0IHsgQmFzZVJlYWRlciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9kYXRhLWZldGNoZXIvc3JjJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1nZW8tdGFibGUtdmlldycsXG4gIHRlbXBsYXRlVXJsOiAnLi9nZW8tdGFibGUtdmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dlby10YWJsZS12aWV3LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtNYXBDb250YWluZXJDb21wb25lbnQsIEZlYXR1cmVEZXRhaWxDb21wb25lbnQsIERhdGFUYWJsZUNvbXBvbmVudF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEdlb1RhYmxlVmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgZGF0YXNldDogQmFzZVJlYWRlclxuICBAVmlld0NoaWxkKCd0YWJsZScpIHVpVGFibGU6IERhdGFUYWJsZUNvbXBvbmVudFxuICBAVmlld0NoaWxkKCdtYXBDb250YWluZXInKSBtYXBDb250YWluZXI6IE1hcENvbnRhaW5lckNvbXBvbmVudFxuXG4gIHRhYmxlRGF0YTogVGFibGVJdGVtTW9kZWxbXVxuICBtYXBDb250ZXh0OiBNYXBDb250ZXh0XG4gIHNlbGVjdGlvbklkOiBUYWJsZUl0ZW1JZFxuICBzZWxlY3Rpb246IEZlYXR1cmVcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKClcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZVJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5tYXBDb250ZXh0ID0gYXdhaXQgdGhpcy5pbml0TWFwQ29udGV4dCgpXG4gIH1cblxuICBvblRhYmxlU2VsZWN0KHRhYmxlRW50cnk6IFRhYmxlSXRlbU1vZGVsKSB7XG4gICAgY29uc3QgeyBpZCB9ID0gdGFibGVFbnRyeVxuICAgIHRoaXMuc2VsZWN0aW9uSWQgPSBpZFxuICAgIC8vIHRoaXMuc2VsZWN0aW9uID0gdGhpcy5nZXRGZWF0dXJlRnJvbUlkKGlkKVxuICAgIGlmICh0aGlzLnNlbGVjdGlvbikge1xuICAgICAgdGhpcy5hbmltYXRlVG9GZWF0dXJlKHRoaXMuc2VsZWN0aW9uKVxuICAgIH1cbiAgfVxuXG4gIG9uTWFwRmVhdHVyZVNlbGVjdChmZWF0dXJlczogRmVhdHVyZVtdKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3Rpb24gPSBmZWF0dXJlcz8ubGVuZ3RoID4gMCAmJiBmZWF0dXJlc1swXVxuICAgIGlmICh0aGlzLnNlbGVjdGlvbikge1xuICAgICAgLy8gRklYTUU6IHNob3cgc3R5bGluZyBmb3Igc2VsZWN0aW9uXG4gICAgICB0aGlzLnNlbGVjdGlvbklkID0gdGhpcy5zZWxlY3Rpb24uaWRcbiAgICAgIHRoaXMuY2hhbmdlUmVmLmRldGVjdENoYW5nZXMoKVxuICAgICAgLy8gdGhpcy52ZWN0b3JMYXllci5jaGFuZ2VkKClcbiAgICAgIHRoaXMudWlUYWJsZS5zY3JvbGxUb0l0ZW0odGhpcy5zZWxlY3Rpb25JZClcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdlb2pzb25Ub1RhYmxlRGF0YShnZW9qc29uOiBGZWF0dXJlQ29sbGVjdGlvbikge1xuICAgIHJldHVybiBnZW9qc29uLmZlYXR1cmVzLm1hcCgoZikgPT4gKHtcbiAgICAgIGlkOiBmLmlkLFxuICAgICAgLi4uZi5wcm9wZXJ0aWVzLFxuICAgIH0pKVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBpbml0TWFwQ29udGV4dCgpOiBQcm9taXNlPE1hcENvbnRleHQ+IHtcbiAgICB0aGlzLmRhdGFzZXQuc2VsZWN0QWxsKClcbiAgICByZXR1cm4ge1xuICAgICAgbGF5ZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAneHl6JyxcbiAgICAgICAgICB1cmw6ICdodHRwczovL3thLWN9LnRpbGUub3BlbnN0cmVldG1hcC5vcmcve3p9L3t4fS97eX0ucG5nJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdnZW9qc29uJyxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICB0eXBlOiAnRmVhdHVyZUNvbGxlY3Rpb24nLFxuICAgICAgICAgICAgLy8gRklYTUU6IHdlJ3JlIG5vdCBnZXR0aW5nIGdlb2pzb24gaGVyZVxuICAgICAgICAgICAgZmVhdHVyZXM6IGF3YWl0IHRoaXMuZGF0YXNldC5yZWFkKCksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICB2aWV3OiB7XG4gICAgICAgIGNlbnRlcjogWzAsIDBdLFxuICAgICAgICB6b29tOiAyLFxuICAgICAgfSxcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFuaW1hdGVUb0ZlYXR1cmUoZmVhdHVyZTogRmVhdHVyZSk6IHZvaWQge1xuICAgIHRoaXMubWFwQ29udGV4dCA9IHtcbiAgICAgIC4uLnRoaXMubWFwQ29udGV4dCxcbiAgICAgIHZpZXc6IHtcbiAgICAgICAgZ2VvbWV0cnk6IGZlYXR1cmUuZ2VvbWV0cnksXG4gICAgICAgIG1heFpvb206IDEzLFxuICAgICAgfSxcbiAgICB9XG4gICAgLy8gRklYTUU6IGFuaW1hdGUgdGhlIHZpZXdcbiAgICAvLyB0aGlzLnZpZXcuZml0KGZlYXR1cmUuZ2V0R2VvbWV0cnkoKS5nZXRFeHRlbnQoKSwge1xuICAgIC8vICAgZHVyYXRpb246IDEwMDAsXG4gICAgLy8gICBtYXhab29tOiAxMSxcbiAgICAvLyB9KVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRGZWF0dXJlRnJvbUlkKGlkOiBUYWJsZUl0ZW1JZCkge1xuICAgIC8vIEZJWE1FOiByZXN0b3JlIHRoaXMgb25jZSB3ZSBuZWVkIGl0P1xuICAgIC8vIHJldHVybiB0aGlzLmZlYXR1cmVzLmZpbmQoKGZlYXR1cmUpID0+IGZlYXR1cmUuaWQgPT09IGlkKVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBoLWZ1bGwgb3ZlcmZsb3ctYXV0b1wiPlxuICA8Z24tdWktZGF0YS10YWJsZVxuICAgICN0YWJsZVxuICAgIGNsYXNzPVwidy0xLzIgb3ZlcmZsb3ctYXV0b1wiXG4gICAgW2RhdGFzZXRdPVwiZGF0YXNldFwiXG4gICAgW2FjdGl2ZUlkXT1cInNlbGVjdGlvbklkXCJcbiAgICAoc2VsZWN0ZWQpPVwib25UYWJsZVNlbGVjdCgkZXZlbnQpXCJcbiAgPjwvZ24tdWktZGF0YS10YWJsZT5cbiAgPGduLXVpLW1hcC1jb250YWluZXJcbiAgICAjbWFwQ29udGFpbmVyXG4gICAgY2xhc3M9XCJ3LTEvMiBoLWZ1bGxcIlxuICAgIFtjb250ZXh0XT1cIm1hcENvbnRleHRcIlxuICAgIChmZWF0dXJlc0NsaWNrKT1cIm9uTWFwRmVhdHVyZVNlbGVjdCgkZXZlbnQpXCJcbiAgPjwvZ24tdWktbWFwLWNvbnRhaW5lcj5cbiAgPGduLXVpLWZlYXR1cmUtZGV0YWlsXG4gICAgc3R5bGU9XCJ3aWR0aDogMzAwcHhcIlxuICAgIGNsYXNzPVwicC0zIHNocmluay0wIG92ZXJmbG93LWF1dG9cIlxuICAgIFtmZWF0dXJlXT1cInNlbGVjdGlvblwiXG4gID48L2duLXVpLWZlYXR1cmUtZGV0YWlsPlxuPC9kaXY+XG4iXX0=
@@ -96,18 +96,28 @@ export class DataService {
96
96
  }
97
97
  getDownloadLinksFromWfs(wfsLink) {
98
98
  // Pour DL toutes les données
99
- return this.getDownloadUrlsFromWfs(wfsLink.url.toString(), wfsLink.name).pipe(map((urls) => urls.all), map((urls) => Object.keys(urls).map((format) => ({
100
- ...wfsLink,
101
- type: 'download',
102
- url: new URL(urls[format]),
103
- mimeType: getMimeTypeForFormat(getFileFormatFromServiceOutput(format)),
104
- }))));
99
+ return this.getDownloadUrlsFromWfs(wfsLink.url.toString(), wfsLink.name).pipe(map((urls) => {
100
+ if (urls.geojson) {
101
+ urls.all['application/json'] = urls.geojson;
102
+ }
103
+ return urls;
104
+ }), map((urls) => {
105
+ const resources = Object.keys(urls.all).map((format) => ({
106
+ ...wfsLink,
107
+ name: wfsLink.name,
108
+ type: 'download',
109
+ url: new URL(urls.all[format]),
110
+ mimeType: getMimeTypeForFormat(getFileFormatFromServiceOutput(format)),
111
+ }));
112
+ return resources;
113
+ }));
105
114
  }
106
115
  async getDownloadLinksFromOgcApiFeatures(ogcApiLink) {
107
116
  const collectionInfo = await this.getDownloadUrlsFromOgcApi(ogcApiLink.url.href);
108
117
  return Object.keys(collectionInfo.bulkDownloadLinks).map((downloadLink) => {
109
118
  return {
110
119
  ...ogcApiLink,
120
+ name: collectionInfo.id,
111
121
  type: 'download',
112
122
  url: new URL(collectionInfo.bulkDownloadLinks[downloadLink]),
113
123
  mimeType: getMimeTypeForFormat(getFileFormatFromServiceOutput(downloadLink)),
@@ -143,18 +153,18 @@ export class DataService {
143
153
  mimeType: getMimeTypeForFormat(getFileFormatFromServiceOutput(format)),
144
154
  }));
145
155
  }
146
- readAsGeoJson(link) {
147
- return this.getDataset(link).pipe(switchMap((dataset) => dataset.selectAll().read()), map((features) => ({
156
+ readAsGeoJson(link, cacheActive) {
157
+ return this.getDataset(link, cacheActive).pipe(switchMap((dataset) => dataset.selectAll().read()), map((features) => ({
148
158
  type: 'FeatureCollection',
149
159
  features,
150
160
  })));
151
161
  }
152
- getDataset(link) {
162
+ getDataset(link, cacheActive) {
153
163
  if (link.type === 'service' && link.accessServiceProtocol === 'wfs') {
154
164
  const wfsUrlEndpoint = this.proxy.getProxiedUrl(link.url.toString());
155
165
  return from(openDataset(wfsUrlEndpoint, 'wfs', {
156
166
  wfsFeatureType: link.name,
157
- }));
167
+ }, cacheActive));
158
168
  }
159
169
  else if (link.type === 'download') {
160
170
  const linkProxifiedUrl = this.proxy.getProxiedUrl(link.url.toString());
@@ -162,18 +172,18 @@ export class DataService {
162
172
  const supportedType = SupportedTypes.indexOf(format) > -1
163
173
  ? format
164
174
  : undefined;
165
- return from(openDataset(linkProxifiedUrl, supportedType)).pipe();
175
+ return from(openDataset(linkProxifiedUrl, supportedType, undefined, cacheActive)).pipe();
166
176
  }
167
177
  else if (link.type === 'service' &&
168
178
  link.accessServiceProtocol === 'esriRest') {
169
179
  const url = this.getDownloadUrlFromEsriRest(link.url.toString(), 'geojson');
170
- return from(openDataset(url, 'geojson')).pipe();
180
+ return from(openDataset(url, 'geojson', undefined, cacheActive)).pipe();
171
181
  }
172
182
  else if (link.type === 'service' &&
173
183
  link.accessServiceProtocol === 'ogcFeatures') {
174
184
  return from(this.getDownloadUrlsFromOgcApi(link.url.href)).pipe(switchMap((collectionInfo) => {
175
185
  const geojsonUrl = collectionInfo.jsonDownloadLink;
176
- return openDataset(geojsonUrl, 'geojson');
186
+ return openDataset(geojsonUrl, 'geojson', undefined, cacheActive);
177
187
  }), tap((url) => {
178
188
  if (url === null) {
179
189
  throw new Error('wfs.geojsongml.notsupported');
@@ -191,4 +201,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
191
201
  providedIn: 'root',
192
202
  }]
193
203
  }], ctorParameters: () => [{ type: i1.ProxyService }] });
194
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2RhdGF2aXovc3JjL2xpYi9zZXJ2aWNlL2RhdGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRSxPQUFPLEVBRUwsY0FBYyxFQUVkLFdBQVcsR0FFWixNQUFNLHdCQUF3QixDQUFBO0FBQy9CLE9BQU8sRUFHTCxXQUFXLEVBRVgsY0FBYyxHQUNmLE1BQU0sOENBQThDLENBQUE7QUFDckQsT0FBTyxFQUNMLGFBQWEsRUFDYiw4QkFBOEIsRUFDOUIsb0JBQW9CLEVBQ3BCLFlBQVksR0FDYixNQUFNLHdDQUF3QyxDQUFBO0FBRS9DLE9BQU8sRUFBRSxJQUFJLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTs7O0FBTWhFLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO0FBQzlCLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO0FBQzlCLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO0FBQ2pDLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0FBQ2xDLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO0FBQ3JDLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO0FBQ2pDLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO0FBQy9CLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0FBQzVCLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO0FBQzdCLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQyxDQUFBO0FBQ3ZDLE1B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U0FBUyxDQUFDLENBQUE7WUFDM0MsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ1YsSUFBSSxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUM7b0JBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtnQkFDaEQsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUNILENBQUE7UUFDSCxDQUFDO1FBQ0QsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUMsQ0FBQTtJQUNuRCxDQUFDOytHQTNPVSxXQUFXO21IQUFYLFdBQVcsY0FGVixNQUFNOzs0RkFFUCxXQUFXO2tCQUh2QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHtcbiAgT2djQXBpQ29sbGVjdGlvbkluZm8sXG4gIE9nY0FwaUVuZHBvaW50LFxuICBPZ2NBcGlSZWNvcmQsXG4gIFdmc0VuZHBvaW50LFxuICBXZnNWZXJzaW9uLFxufSBmcm9tICdAY2FtcHRvY2FtcC9vZ2MtY2xpZW50J1xuaW1wb3J0IHtcbiAgQmFzZVJlYWRlcixcbiAgRmV0Y2hFcnJvcixcbiAgb3BlbkRhdGFzZXQsXG4gIFN1cHBvcnRlZFR5cGUsXG4gIFN1cHBvcnRlZFR5cGVzLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYydcbmltcG9ydCB7XG4gIGdldEZpbGVGb3JtYXQsXG4gIGdldEZpbGVGb3JtYXRGcm9tU2VydmljZU91dHB1dCxcbiAgZ2V0TWltZVR5cGVGb3JGb3JtYXQsXG4gIFByb3h5U2VydmljZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5pbXBvcnQgdHlwZSB7IEZlYXR1cmVDb2xsZWN0aW9uIH0gZnJvbSAnZ2VvanNvbidcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHtcbiAgRGF0YXNldE9ubGluZVJlc291cmNlLFxuICBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvbixcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuXG5tYXJrZXIoJ3dmcy51bnJlYWNoYWJsZS5jb3JzJylcbm1hcmtlcignd2ZzLnVucmVhY2hhYmxlLmh0dHAnKVxubWFya2VyKCd3ZnMudW5yZWFjaGFibGUudW5rbm93bicpXG5tYXJrZXIoJ3dmcy5mZWF0dXJldHlwZS5ub3Rmb3VuZCcpXG5tYXJrZXIoJ3dmcy5nZW9qc29uZ21sLm5vdHN1cHBvcnRlZCcpXG5tYXJrZXIoJ29nYy51bnJlYWNoYWJsZS51bmtub3duJylcbm1hcmtlcignZGF0YXNldC5lcnJvci5uZXR3b3JrJylcbm1hcmtlcignZGF0YXNldC5lcnJvci5odHRwJylcbm1hcmtlcignZGF0YXNldC5lcnJvci5wYXJzZScpXG5tYXJrZXIoJ2RhdGFzZXQuZXJyb3IudW5zdXBwb3J0ZWRUeXBlJylcbm1hcmtlcignZGF0YXNldC5lcnJvci51bmtub3duJylcblxuaW50ZXJmYWNlIFdmc0Rvd25sb2FkVXJscyB7XG4gIGFsbDogeyBbZm9ybWF0OiBzdHJpbmddOiBzdHJpbmcgfVxuICBnZW9qc29uOiBzdHJpbmdcbiAgZ21sOiB7IGZlYXR1cmVVcmw6IHN0cmluZzsgbmFtZXNwYWNlOiBzdHJpbmc7IHdmc1ZlcnNpb246IFdmc1ZlcnNpb24gfVxufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRGF0YVNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHByb3h5OiBQcm94eVNlcnZpY2UpIHt9XG5cbiAgZ2V0V2ZzRW5kcG9pbnQod2ZzVXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFdmc0VuZHBvaW50PiB7XG4gICAgcmV0dXJuIGZyb20oXG4gICAgICBuZXcgV2ZzRW5kcG9pbnQodGhpcy5wcm94eS5nZXRQcm94aWVkVXJsKHdmc1VybCkpLmlzUmVhZHkoKVxuICAgICkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBGZXRjaEVycm9yIHwgRXJyb3IpID0+IHtcbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHdmcy51bnJlYWNoYWJsZS51bmtub3duYClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAoZXJyb3IudHlwZSA9PT0gJ25ldHdvcmsnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHdmcy51bnJlYWNoYWJsZS5jb3JzYClcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGVycm9yLnR5cGUgPT09ICdodHRwJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUuaHR0cGApXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlcnJvci50eXBlID09PSAncGFyc2UnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHdmcy51bnJlYWNoYWJsZS5wYXJzZWApXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlcnJvci50eXBlID09PSAndW5zdXBwb3J0ZWRUeXBlJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUudW5zdXBwb3J0ZWRUeXBlYClcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUudW5rbm93bmApXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIClcbiAgfVxuXG4gIGdldERvd25sb2FkVXJsc0Zyb21XZnMoXG4gICAgd2ZzVXJsOiBzdHJpbmcsXG4gICAgZmVhdHVyZVR5cGVOYW1lOiBzdHJpbmdcbiAgKTogT2JzZXJ2YWJsZTxXZnNEb3dubG9hZFVybHM+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRXZnNFbmRwb2ludCh3ZnNVcmwpLnBpcGUoXG4gICAgICBtYXAoKGVuZHBvaW50KSA9PiB7XG4gICAgICAgIGNvbnN0IGZlYXR1cmVUeXBlcyA9IGVuZHBvaW50LmdldEZlYXR1cmVUeXBlcygpXG4gICAgICAgIGNvbnN0IGZlYXR1cmVUeXBlID0gZW5kcG9pbnQuZ2V0RmVhdHVyZVR5cGVTdW1tYXJ5KFxuICAgICAgICAgIGZlYXR1cmVUeXBlcy5sZW5ndGggPT09IDEgJiYgIWZlYXR1cmVUeXBlTmFtZVxuICAgICAgICAgICAgPyBmZWF0dXJlVHlwZXNbMF0ubmFtZVxuICAgICAgICAgICAgOiBmZWF0dXJlVHlwZU5hbWVcbiAgICAgICAgKVxuICAgICAgICBpZiAoIWZlYXR1cmVUeXBlKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd3ZnMuZmVhdHVyZXR5cGUubm90Zm91bmQnKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgYWxsOiBmZWF0dXJlVHlwZS5vdXRwdXRGb3JtYXRzLnJlZHVjZShcbiAgICAgICAgICAgIChwcmV2LCBjdXJyKSA9PiAoe1xuICAgICAgICAgICAgICAuLi5wcmV2LFxuICAgICAgICAgICAgICBbY3Vycl06IGVuZHBvaW50LmdldEZlYXR1cmVVcmwoZmVhdHVyZVR5cGUubmFtZSwge1xuICAgICAgICAgICAgICAgIG91dHB1dEZvcm1hdDogY3VycixcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHt9XG4gICAgICAgICAgKSxcbiAgICAgICAgICBnZW9qc29uOiBlbmRwb2ludC5zdXBwb3J0c0pzb24oZmVhdHVyZVR5cGUubmFtZSlcbiAgICAgICAgICAgID8gZW5kcG9pbnQuZ2V0RmVhdHVyZVVybChmZWF0dXJlVHlwZS5uYW1lLCB7XG4gICAgICAgICAgICAgICAgYXNKc29uOiB0cnVlLFxuICAgICAgICAgICAgICAgIG91dHB1dENyczogJ0VQU0c6NDMyNicsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICA6IG51bGwsXG4gICAgICAgICAgZ21sOlxuICAgICAgICAgICAgZmVhdHVyZVR5cGUub3V0cHV0Rm9ybWF0cy5maW5kKChmKSA9PlxuICAgICAgICAgICAgICBmLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ2dtbCcpXG4gICAgICAgICAgICApICYmXG4gICAgICAgICAgICAoZmVhdHVyZVR5cGUuZGVmYXVsdENycyA9PT0gJ0VQU0c6NDMyNicgfHxcbiAgICAgICAgICAgICAgZmVhdHVyZVR5cGUub3RoZXJDcnM/LmluY2x1ZGVzKCdFUFNHOjQzMjYnKSlcbiAgICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgICBmZWF0dXJlVXJsOiBlbmRwb2ludC5nZXRGZWF0dXJlVXJsKGZlYXR1cmVUeXBlLm5hbWUsIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0cHV0Rm9ybWF0OiBmZWF0dXJlVHlwZS5vdXRwdXRGb3JtYXRzLmZpbmQoKGYpID0+XG4gICAgICAgICAgICAgICAgICAgICAgZi50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCdnbWwnKVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBvdXRwdXRDcnM6ICdFUFNHOjQzMjYnLFxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICBuYW1lc3BhY2U6IGZlYXR1cmVUeXBlLm5hbWUsXG4gICAgICAgICAgICAgICAgICB3ZnNWZXJzaW9uOiBlbmRwb2ludC5nZXRWZXJzaW9uKCksXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA6IG51bGwsXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgZ2V0V2ZzRmVhdHVyZUNvdW50KFxuICAgIHdmc1VybDogc3RyaW5nLFxuICAgIGZlYXR1cmVUeXBlTmFtZTogc3RyaW5nXG4gICk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0V2ZzRW5kcG9pbnQod2ZzVXJsKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKChlbmRwb2ludCkgPT5cbiAgICAgICAgZnJvbShlbmRwb2ludC5nZXRGZWF0dXJlVHlwZUZ1bGwoZmVhdHVyZVR5cGVOYW1lKSkucGlwZShcbiAgICAgICAgICBtYXAoKGZlYXR1cmVUeXBlKSA9PiB7XG4gICAgICAgICAgICBpZiAoIWZlYXR1cmVUeXBlKSB7XG4gICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignd2ZzLmZlYXR1cmV0eXBlLm5vdGZvdW5kJylcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBmZWF0dXJlVHlwZS5vYmplY3RDb3VudFxuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gIH1cblxuICBnZXREb3dubG9hZFVybEZyb21Fc3JpUmVzdChhcGlVcmw6IHN0cmluZywgZm9ybWF0OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnByb3h5LmdldFByb3hpZWRVcmwoXG4gICAgICBgJHthcGlVcmx9L3F1ZXJ5P2Y9JHtmb3JtYXR9JndoZXJlPTE9MSZvdXRGaWVsZHM9KmBcbiAgICApXG4gIH1cblxuICBnZXREb3dubG9hZExpbmtzRnJvbVdmcyhcbiAgICB3ZnNMaW5rOiBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvblxuICApOiBPYnNlcnZhYmxlPERhdGFzZXRPbmxpbmVSZXNvdXJjZVtdPiB7XG4gICAgLy8gUG91ciBETCB0b3V0ZXMgbGVzIGRvbm7DqWVzXG4gICAgcmV0dXJuIHRoaXMuZ2V0RG93bmxvYWRVcmxzRnJvbVdmcyhcbiAgICAgIHdmc0xpbmsudXJsLnRvU3RyaW5nKCksXG4gICAgICB3ZnNMaW5rLm5hbWVcbiAgICApLnBpcGUoXG4gICAgICBtYXAoKHVybHMpID0+IHVybHMuYWxsKSxcbiAgICAgIG1hcCgodXJscykgPT5cbiAgICAgICAgT2JqZWN0LmtleXModXJscykubWFwKChmb3JtYXQpID0+ICh7XG4gICAgICAgICAgLi4ud2ZzTGluayxcbiAgICAgICAgICB0eXBlOiAnZG93bmxvYWQnLFxuICAgICAgICAgIHVybDogbmV3IFVSTCh1cmxzW2Zvcm1hdF0pLFxuICAgICAgICAgIG1pbWVUeXBlOiBnZXRNaW1lVHlwZUZvckZvcm1hdChcbiAgICAgICAgICAgIGdldEZpbGVGb3JtYXRGcm9tU2VydmljZU91dHB1dChmb3JtYXQpXG4gICAgICAgICAgKSxcbiAgICAgICAgfSkpXG4gICAgICApXG4gICAgKVxuICB9XG5cbiAgYXN5bmMgZ2V0RG93bmxvYWRMaW5rc0Zyb21PZ2NBcGlGZWF0dXJlcyhcbiAgICBvZ2NBcGlMaW5rOiBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvblxuICApOiBQcm9taXNlPERhdGFzZXRPbmxpbmVSZXNvdXJjZVtdPiB7XG4gICAgY29uc3QgY29sbGVjdGlvbkluZm8gPSBhd2FpdCB0aGlzLmdldERvd25sb2FkVXJsc0Zyb21PZ2NBcGkoXG4gICAgICBvZ2NBcGlMaW5rLnVybC5ocmVmXG4gICAgKVxuICAgIHJldHVybiBPYmplY3Qua2V5cyhjb2xsZWN0aW9uSW5mby5idWxrRG93bmxvYWRMaW5rcykubWFwKChkb3dubG9hZExpbmspID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLm9nY0FwaUxpbmssXG4gICAgICAgIHR5cGU6ICdkb3dubG9hZCcsXG4gICAgICAgIHVybDogbmV3IFVSTChjb2xsZWN0aW9uSW5mby5idWxrRG93bmxvYWRMaW5rc1tkb3dubG9hZExpbmtdKSxcbiAgICAgICAgbWltZVR5cGU6IGdldE1pbWVUeXBlRm9yRm9ybWF0KFxuICAgICAgICAgIGdldEZpbGVGb3JtYXRGcm9tU2VydmljZU91dHB1dChkb3dubG9hZExpbmspXG4gICAgICAgICksXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIGFzeW5jIGdldERvd25sb2FkVXJsc0Zyb21PZ2NBcGkodXJsOiBzdHJpbmcpOiBQcm9taXNlPE9nY0FwaUNvbGxlY3Rpb25JbmZvPiB7XG4gICAgY29uc3QgZW5kcG9pbnQgPSBuZXcgT2djQXBpRW5kcG9pbnQodXJsKVxuICAgIHJldHVybiBhd2FpdCBlbmRwb2ludC5hbGxDb2xsZWN0aW9uc1xuICAgICAgLnRoZW4oKGNvbGxlY3Rpb25zKSA9PiB7XG4gICAgICAgIHJldHVybiBlbmRwb2ludC5nZXRDb2xsZWN0aW9uSW5mbyhjb2xsZWN0aW9uc1swXS5uYW1lKVxuICAgICAgfSlcbiAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBvZ2MudW5yZWFjaGFibGUudW5rbm93bmApXG4gICAgICB9KVxuICB9XG5cbiAgYXN5bmMgZ2V0SXRlbXNGcm9tT2djQXBpKHVybDogc3RyaW5nKTogUHJvbWlzZTxPZ2NBcGlSZWNvcmQ+IHtcbiAgICBjb25zdCBlbmRwb2ludCA9IG5ldyBPZ2NBcGlFbmRwb2ludCh1cmwpXG4gICAgcmV0dXJuIGF3YWl0IGVuZHBvaW50LmZlYXR1cmVDb2xsZWN0aW9uc1xuICAgICAgLnRoZW4oKGNvbGxlY3Rpb25zKSA9PiB7XG4gICAgICAgIHJldHVybiBjb2xsZWN0aW9ucy5sZW5ndGhcbiAgICAgICAgICA/IGVuZHBvaW50LmdldENvbGxlY3Rpb25JdGVtKGNvbGxlY3Rpb25zWzBdLCAnMScpXG4gICAgICAgICAgOiBudWxsXG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYG9nYy51bnJlYWNoYWJsZS51bmtub3duYClcbiAgICAgIH0pXG4gIH1cblxuICBnZXREb3dubG9hZExpbmtzRnJvbUVzcmlSZXN0KFxuICAgIGVzcmlSZXN0TGluazogRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb25cbiAgKTogRGF0YXNldE9ubGluZVJlc291cmNlW10ge1xuICAgIHJldHVybiBbJ2pzb24nLCAnZ2VvanNvbiddLm1hcCgoZm9ybWF0KSA9PiAoe1xuICAgICAgLi4uZXNyaVJlc3RMaW5rLFxuICAgICAgdXJsOiBuZXcgVVJMKFxuICAgICAgICB0aGlzLmdldERvd25sb2FkVXJsRnJvbUVzcmlSZXN0KGVzcmlSZXN0TGluay51cmwudG9TdHJpbmcoKSwgZm9ybWF0KVxuICAgICAgKSxcbiAgICAgIG1pbWVUeXBlOiBnZXRNaW1lVHlwZUZvckZvcm1hdChnZXRGaWxlRm9ybWF0RnJvbVNlcnZpY2VPdXRwdXQoZm9ybWF0KSksXG4gICAgfSkpXG4gIH1cblxuICByZWFkQXNHZW9Kc29uKGxpbms6IERhdGFzZXRPbmxpbmVSZXNvdXJjZSk6IE9ic2VydmFibGU8RmVhdHVyZUNvbGxlY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5nZXREYXRhc2V0KGxpbmspLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKGRhdGFzZXQpID0+IGRhdGFzZXQuc2VsZWN0QWxsKCkucmVhZCgpKSxcbiAgICAgIG1hcCgoZmVhdHVyZXMpID0+ICh7XG4gICAgICAgIHR5cGU6ICdGZWF0dXJlQ29sbGVjdGlvbicsXG4gICAgICAgIGZlYXR1cmVzLFxuICAgICAgfSkpXG4gICAgKVxuICB9XG5cbiAgZ2V0RGF0YXNldChsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UpOiBPYnNlcnZhYmxlPEJhc2VSZWFkZXI+IHtcbiAgICBpZiAobGluay50eXBlID09PSAnc2VydmljZScgJiYgbGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPT09ICd3ZnMnKSB7XG4gICAgICBjb25zdCB3ZnNVcmxFbmRwb2ludCA9IHRoaXMucHJveHkuZ2V0UHJveGllZFVybChsaW5rLnVybC50b1N0cmluZygpKVxuICAgICAgcmV0dXJuIGZyb20oXG4gICAgICAgIG9wZW5EYXRhc2V0KHdmc1VybEVuZHBvaW50LCAnd2ZzJywge1xuICAgICAgICAgIHdmc0ZlYXR1cmVUeXBlOiBsaW5rLm5hbWUsXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgfSBlbHNlIGlmIChsaW5rLnR5cGUgPT09ICdkb3dubG9hZCcpIHtcbiAgICAgIGNvbnN0IGxpbmtQcm94aWZpZWRVcmwgPSB0aGlzLnByb3h5LmdldFByb3hpZWRVcmwobGluay51cmwudG9TdHJpbmcoKSlcbiAgICAgIGNvbnN0IGZvcm1hdCA9IGdldEZpbGVGb3JtYXQobGluaylcbiAgICAgIGNvbnN0IHN1cHBvcnRlZFR5cGUgPVxuICAgICAgICBTdXBwb3J0ZWRUeXBlcy5pbmRleE9mKGZvcm1hdCBhcyBhbnkpID4gLTFcbiAgICAgICAgICA/IChmb3JtYXQgYXMgU3VwcG9ydGVkVHlwZSlcbiAgICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgcmV0dXJuIGZyb20ob3BlbkRhdGFzZXQobGlua1Byb3hpZmllZFVybCwgc3VwcG9ydGVkVHlwZSkpLnBpcGUoKVxuICAgIH0gZWxzZSBpZiAoXG4gICAgICBsaW5rLnR5cGUgPT09ICdzZXJ2aWNlJyAmJlxuICAgICAgbGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPT09ICdlc3JpUmVzdCdcbiAgICApIHtcbiAgICAgIGNvbnN0IHVybCA9IHRoaXMuZ2V0RG93bmxvYWRVcmxGcm9tRXNyaVJlc3QoXG4gICAgICAgIGxpbmsudXJsLnRvU3RyaW5nKCksXG4gICAgICAgICdnZW9qc29uJ1xuICAgICAgKVxuICAgICAgcmV0dXJuIGZyb20ob3BlbkRhdGFzZXQodXJsLCAnZ2VvanNvbicpKS5waXBlKClcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgbGluay50eXBlID09PSAnc2VydmljZScgJiZcbiAgICAgIGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnb2djRmVhdHVyZXMnXG4gICAgKSB7XG4gICAgICByZXR1cm4gZnJvbSh0aGlzLmdldERvd25sb2FkVXJsc0Zyb21PZ2NBcGkobGluay51cmwuaHJlZikpLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoY29sbGVjdGlvbkluZm8pID0+IHtcbiAgICAgICAgICBjb25zdCBnZW9qc29uVXJsID0gY29sbGVjdGlvbkluZm8uanNvbkRvd25sb2FkTGlua1xuICAgICAgICAgIHJldHVybiBvcGVuRGF0YXNldChnZW9qc29uVXJsLCAnZ2VvanNvbicpXG4gICAgICAgIH0pLFxuICAgICAgICB0YXAoKHVybCkgPT4ge1xuICAgICAgICAgIGlmICh1cmwgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignd2ZzLmdlb2pzb25nbWwubm90c3VwcG9ydGVkJylcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgfVxuICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+ICdwcm90b2NvbCBub3Qgc3VwcG9ydGVkJylcbiAgfVxufVxuIl19
204
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2RhdGF2aXovc3JjL2xpYi9zZXJ2aWNlL2RhdGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRSxPQUFPLEVBRUwsY0FBYyxFQUVkLFdBQVcsR0FFWixNQUFNLHdCQUF3QixDQUFBO0FBQy9CLE9BQU8sRUFHTCxXQUFXLEVBRVgsY0FBYyxHQUNmLE1BQU0sOENBQThDLENBQUE7QUFDckQsT0FBTyxFQUNMLGFBQWEsRUFDYiw4QkFBOEIsRUFDOUIsb0JBQW9CLEVBQ3BCLFlBQVksR0FDYixNQUFNLHdDQUF3QyxDQUFBO0FBRS9DLE9BQU8sRUFBRSxJQUFJLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTs7O0FBTWhFLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO0FBQzlCLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO0FBQzlCLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO0FBQ2pDLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0FBQ2xDLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO0FBQ3JDLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO0FBQ2pDLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO0FBQy9CLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0FBQzVCLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO0FBQzdCLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQyxDQUFBO0FBQ3ZDLE1B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QUFTLEVBQUUsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUE7UUFDekUsQ0FBQzthQUFNLElBQ0wsSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTO1lBQ3ZCLElBQUksQ0FBQyxxQkFBcUIsS0FBSyxhQUFhLEVBQzVDLENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDN0QsU0FBUyxDQUFDLENBQUMsY0FBYyxFQUFFLEVBQUU7Z0JBQzNCLE1BQU0sVUFBVSxHQUFHLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQTtnQkFDbEQsT0FBTyxXQUFXLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUE7WUFDbkUsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ1YsSUFBSSxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUM7b0JBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtnQkFDaEQsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUNILENBQUE7UUFDSCxDQUFDO1FBQ0QsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUMsQ0FBQTtJQUNuRCxDQUFDOytHQWxRVSxXQUFXO21IQUFYLFdBQVcsY0FGVixNQUFNOzs0RkFFUCxXQUFXO2tCQUh2QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHtcbiAgT2djQXBpQ29sbGVjdGlvbkluZm8sXG4gIE9nY0FwaUVuZHBvaW50LFxuICBPZ2NBcGlSZWNvcmQsXG4gIFdmc0VuZHBvaW50LFxuICBXZnNWZXJzaW9uLFxufSBmcm9tICdAY2FtcHRvY2FtcC9vZ2MtY2xpZW50J1xuaW1wb3J0IHtcbiAgQmFzZVJlYWRlcixcbiAgRmV0Y2hFcnJvcixcbiAgb3BlbkRhdGFzZXQsXG4gIFN1cHBvcnRlZFR5cGUsXG4gIFN1cHBvcnRlZFR5cGVzLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYydcbmltcG9ydCB7XG4gIGdldEZpbGVGb3JtYXQsXG4gIGdldEZpbGVGb3JtYXRGcm9tU2VydmljZU91dHB1dCxcbiAgZ2V0TWltZVR5cGVGb3JGb3JtYXQsXG4gIFByb3h5U2VydmljZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5pbXBvcnQgdHlwZSB7IEZlYXR1cmVDb2xsZWN0aW9uIH0gZnJvbSAnZ2VvanNvbidcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHtcbiAgRGF0YXNldE9ubGluZVJlc291cmNlLFxuICBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvbixcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuXG5tYXJrZXIoJ3dmcy51bnJlYWNoYWJsZS5jb3JzJylcbm1hcmtlcignd2ZzLnVucmVhY2hhYmxlLmh0dHAnKVxubWFya2VyKCd3ZnMudW5yZWFjaGFibGUudW5rbm93bicpXG5tYXJrZXIoJ3dmcy5mZWF0dXJldHlwZS5ub3Rmb3VuZCcpXG5tYXJrZXIoJ3dmcy5nZW9qc29uZ21sLm5vdHN1cHBvcnRlZCcpXG5tYXJrZXIoJ29nYy51bnJlYWNoYWJsZS51bmtub3duJylcbm1hcmtlcignZGF0YXNldC5lcnJvci5uZXR3b3JrJylcbm1hcmtlcignZGF0YXNldC5lcnJvci5odHRwJylcbm1hcmtlcignZGF0YXNldC5lcnJvci5wYXJzZScpXG5tYXJrZXIoJ2RhdGFzZXQuZXJyb3IudW5zdXBwb3J0ZWRUeXBlJylcbm1hcmtlcignZGF0YXNldC5lcnJvci51bmtub3duJylcblxuaW50ZXJmYWNlIFdmc0Rvd25sb2FkVXJscyB7XG4gIGFsbDogeyBbZm9ybWF0OiBzdHJpbmddOiBzdHJpbmcgfVxuICBnZW9qc29uOiBzdHJpbmdcbiAgZ21sOiB7IGZlYXR1cmVVcmw6IHN0cmluZzsgbmFtZXNwYWNlOiBzdHJpbmc7IHdmc1ZlcnNpb246IFdmc1ZlcnNpb24gfVxufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRGF0YVNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHByb3h5OiBQcm94eVNlcnZpY2UpIHt9XG5cbiAgZ2V0V2ZzRW5kcG9pbnQod2ZzVXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFdmc0VuZHBvaW50PiB7XG4gICAgcmV0dXJuIGZyb20oXG4gICAgICBuZXcgV2ZzRW5kcG9pbnQodGhpcy5wcm94eS5nZXRQcm94aWVkVXJsKHdmc1VybCkpLmlzUmVhZHkoKVxuICAgICkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBGZXRjaEVycm9yIHwgRXJyb3IpID0+IHtcbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHdmcy51bnJlYWNoYWJsZS51bmtub3duYClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAoZXJyb3IudHlwZSA9PT0gJ25ldHdvcmsnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHdmcy51bnJlYWNoYWJsZS5jb3JzYClcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGVycm9yLnR5cGUgPT09ICdodHRwJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUuaHR0cGApXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlcnJvci50eXBlID09PSAncGFyc2UnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHdmcy51bnJlYWNoYWJsZS5wYXJzZWApXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlcnJvci50eXBlID09PSAndW5zdXBwb3J0ZWRUeXBlJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUudW5zdXBwb3J0ZWRUeXBlYClcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUudW5rbm93bmApXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIClcbiAgfVxuXG4gIGdldERvd25sb2FkVXJsc0Zyb21XZnMoXG4gICAgd2ZzVXJsOiBzdHJpbmcsXG4gICAgZmVhdHVyZVR5cGVOYW1lOiBzdHJpbmdcbiAgKTogT2JzZXJ2YWJsZTxXZnNEb3dubG9hZFVybHM+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRXZnNFbmRwb2ludCh3ZnNVcmwpLnBpcGUoXG4gICAgICBtYXAoKGVuZHBvaW50KSA9PiB7XG4gICAgICAgIGNvbnN0IGZlYXR1cmVUeXBlcyA9IGVuZHBvaW50LmdldEZlYXR1cmVUeXBlcygpXG4gICAgICAgIGNvbnN0IGZlYXR1cmVUeXBlID0gZW5kcG9pbnQuZ2V0RmVhdHVyZVR5cGVTdW1tYXJ5KFxuICAgICAgICAgIGZlYXR1cmVUeXBlcy5sZW5ndGggPT09IDEgJiYgIWZlYXR1cmVUeXBlTmFtZVxuICAgICAgICAgICAgPyBmZWF0dXJlVHlwZXNbMF0ubmFtZVxuICAgICAgICAgICAgOiBmZWF0dXJlVHlwZU5hbWVcbiAgICAgICAgKVxuICAgICAgICBpZiAoIWZlYXR1cmVUeXBlKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd3ZnMuZmVhdHVyZXR5cGUubm90Zm91bmQnKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgYWxsOiBmZWF0dXJlVHlwZS5vdXRwdXRGb3JtYXRzLnJlZHVjZShcbiAgICAgICAgICAgIChwcmV2LCBjdXJyKSA9PiAoe1xuICAgICAgICAgICAgICAuLi5wcmV2LFxuICAgICAgICAgICAgICBbY3Vycl06IGVuZHBvaW50LmdldEZlYXR1cmVVcmwoZmVhdHVyZVR5cGUubmFtZSwge1xuICAgICAgICAgICAgICAgIG91dHB1dEZvcm1hdDogY3VycixcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHt9XG4gICAgICAgICAgKSxcbiAgICAgICAgICBnZW9qc29uOiBlbmRwb2ludC5zdXBwb3J0c0pzb24oZmVhdHVyZVR5cGUubmFtZSlcbiAgICAgICAgICAgID8gZW5kcG9pbnQuZ2V0RmVhdHVyZVVybChmZWF0dXJlVHlwZS5uYW1lLCB7XG4gICAgICAgICAgICAgICAgYXNKc29uOiB0cnVlLFxuICAgICAgICAgICAgICAgIG91dHB1dENyczogJ0VQU0c6NDMyNicsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICA6IG51bGwsXG4gICAgICAgICAgZ21sOlxuICAgICAgICAgICAgZmVhdHVyZVR5cGUub3V0cHV0Rm9ybWF0cy5maW5kKChmKSA9PlxuICAgICAgICAgICAgICBmLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ2dtbCcpXG4gICAgICAgICAgICApICYmXG4gICAgICAgICAgICAoZmVhdHVyZVR5cGUuZGVmYXVsdENycyA9PT0gJ0VQU0c6NDMyNicgfHxcbiAgICAgICAgICAgICAgZmVhdHVyZVR5cGUub3RoZXJDcnM/LmluY2x1ZGVzKCdFUFNHOjQzMjYnKSlcbiAgICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgICBmZWF0dXJlVXJsOiBlbmRwb2ludC5nZXRGZWF0dXJlVXJsKGZlYXR1cmVUeXBlLm5hbWUsIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0cHV0Rm9ybWF0OiBmZWF0dXJlVHlwZS5vdXRwdXRGb3JtYXRzLmZpbmQoKGYpID0+XG4gICAgICAgICAgICAgICAgICAgICAgZi50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCdnbWwnKVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBvdXRwdXRDcnM6ICdFUFNHOjQzMjYnLFxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICBuYW1lc3BhY2U6IGZlYXR1cmVUeXBlLm5hbWUsXG4gICAgICAgICAgICAgICAgICB3ZnNWZXJzaW9uOiBlbmRwb2ludC5nZXRWZXJzaW9uKCksXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA6IG51bGwsXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgZ2V0V2ZzRmVhdHVyZUNvdW50KFxuICAgIHdmc1VybDogc3RyaW5nLFxuICAgIGZlYXR1cmVUeXBlTmFtZTogc3RyaW5nXG4gICk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0V2ZzRW5kcG9pbnQod2ZzVXJsKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKChlbmRwb2ludCkgPT5cbiAgICAgICAgZnJvbShlbmRwb2ludC5nZXRGZWF0dXJlVHlwZUZ1bGwoZmVhdHVyZVR5cGVOYW1lKSkucGlwZShcbiAgICAgICAgICBtYXAoKGZlYXR1cmVUeXBlKSA9PiB7XG4gICAgICAgICAgICBpZiAoIWZlYXR1cmVUeXBlKSB7XG4gICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignd2ZzLmZlYXR1cmV0eXBlLm5vdGZvdW5kJylcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBmZWF0dXJlVHlwZS5vYmplY3RDb3VudFxuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gIH1cblxuICBnZXREb3dubG9hZFVybEZyb21Fc3JpUmVzdChhcGlVcmw6IHN0cmluZywgZm9ybWF0OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnByb3h5LmdldFByb3hpZWRVcmwoXG4gICAgICBgJHthcGlVcmx9L3F1ZXJ5P2Y9JHtmb3JtYXR9JndoZXJlPTE9MSZvdXRGaWVsZHM9KmBcbiAgICApXG4gIH1cblxuICBnZXREb3dubG9hZExpbmtzRnJvbVdmcyhcbiAgICB3ZnNMaW5rOiBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvblxuICApOiBPYnNlcnZhYmxlPERhdGFzZXRPbmxpbmVSZXNvdXJjZVtdPiB7XG4gICAgLy8gUG91ciBETCB0b3V0ZXMgbGVzIGRvbm7DqWVzXG4gICAgcmV0dXJuIHRoaXMuZ2V0RG93bmxvYWRVcmxzRnJvbVdmcyhcbiAgICAgIHdmc0xpbmsudXJsLnRvU3RyaW5nKCksXG4gICAgICB3ZnNMaW5rLm5hbWVcbiAgICApLnBpcGUoXG4gICAgICBtYXAoKHVybHMpID0+IHtcbiAgICAgICAgaWYgKHVybHMuZ2VvanNvbikge1xuICAgICAgICAgIHVybHMuYWxsWydhcHBsaWNhdGlvbi9qc29uJ10gPSB1cmxzLmdlb2pzb25cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdXJsc1xuICAgICAgfSksXG4gICAgICBtYXAoKHVybHMpID0+IHtcbiAgICAgICAgY29uc3QgcmVzb3VyY2VzOiBEYXRhc2V0T25saW5lUmVzb3VyY2VbXSA9IE9iamVjdC5rZXlzKHVybHMuYWxsKS5tYXAoXG4gICAgICAgICAgKGZvcm1hdCkgPT4gKHtcbiAgICAgICAgICAgIC4uLndmc0xpbmssXG4gICAgICAgICAgICBuYW1lOiB3ZnNMaW5rLm5hbWUsXG4gICAgICAgICAgICB0eXBlOiAnZG93bmxvYWQnIGFzIGNvbnN0LFxuICAgICAgICAgICAgdXJsOiBuZXcgVVJMKHVybHMuYWxsW2Zvcm1hdF0pLFxuICAgICAgICAgICAgbWltZVR5cGU6IGdldE1pbWVUeXBlRm9yRm9ybWF0KFxuICAgICAgICAgICAgICBnZXRGaWxlRm9ybWF0RnJvbVNlcnZpY2VPdXRwdXQoZm9ybWF0KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICAgIHJldHVybiByZXNvdXJjZXNcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgYXN5bmMgZ2V0RG93bmxvYWRMaW5rc0Zyb21PZ2NBcGlGZWF0dXJlcyhcbiAgICBvZ2NBcGlMaW5rOiBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvblxuICApOiBQcm9taXNlPERhdGFzZXRPbmxpbmVSZXNvdXJjZVtdPiB7XG4gICAgY29uc3QgY29sbGVjdGlvbkluZm8gPSBhd2FpdCB0aGlzLmdldERvd25sb2FkVXJsc0Zyb21PZ2NBcGkoXG4gICAgICBvZ2NBcGlMaW5rLnVybC5ocmVmXG4gICAgKVxuICAgIHJldHVybiBPYmplY3Qua2V5cyhjb2xsZWN0aW9uSW5mby5idWxrRG93bmxvYWRMaW5rcykubWFwKChkb3dubG9hZExpbmspID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLm9nY0FwaUxpbmssXG4gICAgICAgIG5hbWU6IGNvbGxlY3Rpb25JbmZvLmlkLFxuICAgICAgICB0eXBlOiAnZG93bmxvYWQnLFxuICAgICAgICB1cmw6IG5ldyBVUkwoY29sbGVjdGlvbkluZm8uYnVsa0Rvd25sb2FkTGlua3NbZG93bmxvYWRMaW5rXSksXG4gICAgICAgIG1pbWVUeXBlOiBnZXRNaW1lVHlwZUZvckZvcm1hdChcbiAgICAgICAgICBnZXRGaWxlRm9ybWF0RnJvbVNlcnZpY2VPdXRwdXQoZG93bmxvYWRMaW5rKVxuICAgICAgICApLFxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBhc3luYyBnZXREb3dubG9hZFVybHNGcm9tT2djQXBpKHVybDogc3RyaW5nKTogUHJvbWlzZTxPZ2NBcGlDb2xsZWN0aW9uSW5mbz4ge1xuICAgIGNvbnN0IGVuZHBvaW50ID0gbmV3IE9nY0FwaUVuZHBvaW50KHVybClcbiAgICByZXR1cm4gYXdhaXQgZW5kcG9pbnQuYWxsQ29sbGVjdGlvbnNcbiAgICAgIC50aGVuKChjb2xsZWN0aW9ucykgPT4ge1xuICAgICAgICByZXR1cm4gZW5kcG9pbnQuZ2V0Q29sbGVjdGlvbkluZm8oY29sbGVjdGlvbnNbMF0ubmFtZSlcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgb2djLnVucmVhY2hhYmxlLnVua25vd25gKVxuICAgICAgfSlcbiAgfVxuXG4gIGFzeW5jIGdldEl0ZW1zRnJvbU9nY0FwaSh1cmw6IHN0cmluZyk6IFByb21pc2U8T2djQXBpUmVjb3JkPiB7XG4gICAgY29uc3QgZW5kcG9pbnQgPSBuZXcgT2djQXBpRW5kcG9pbnQodXJsKVxuICAgIHJldHVybiBhd2FpdCBlbmRwb2ludC5mZWF0dXJlQ29sbGVjdGlvbnNcbiAgICAgIC50aGVuKChjb2xsZWN0aW9ucykgPT4ge1xuICAgICAgICByZXR1cm4gY29sbGVjdGlvbnMubGVuZ3RoXG4gICAgICAgICAgPyBlbmRwb2ludC5nZXRDb2xsZWN0aW9uSXRlbShjb2xsZWN0aW9uc1swXSwgJzEnKVxuICAgICAgICAgIDogbnVsbFxuICAgICAgfSlcbiAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBvZ2MudW5yZWFjaGFibGUudW5rbm93bmApXG4gICAgICB9KVxuICB9XG5cbiAgZ2V0RG93bmxvYWRMaW5rc0Zyb21Fc3JpUmVzdChcbiAgICBlc3JpUmVzdExpbms6IERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uXG4gICk6IERhdGFzZXRPbmxpbmVSZXNvdXJjZVtdIHtcbiAgICByZXR1cm4gWydqc29uJywgJ2dlb2pzb24nXS5tYXAoKGZvcm1hdCkgPT4gKHtcbiAgICAgIC4uLmVzcmlSZXN0TGluayxcbiAgICAgIHVybDogbmV3IFVSTChcbiAgICAgICAgdGhpcy5nZXREb3dubG9hZFVybEZyb21Fc3JpUmVzdChlc3JpUmVzdExpbmsudXJsLnRvU3RyaW5nKCksIGZvcm1hdClcbiAgICAgICksXG4gICAgICBtaW1lVHlwZTogZ2V0TWltZVR5cGVGb3JGb3JtYXQoZ2V0RmlsZUZvcm1hdEZyb21TZXJ2aWNlT3V0cHV0KGZvcm1hdCkpLFxuICAgIH0pKVxuICB9XG5cbiAgcmVhZEFzR2VvSnNvbihcbiAgICBsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UsXG4gICAgY2FjaGVBY3RpdmU6IGJvb2xlYW5cbiAgKTogT2JzZXJ2YWJsZTxGZWF0dXJlQ29sbGVjdGlvbj4ge1xuICAgIHJldHVybiB0aGlzLmdldERhdGFzZXQobGluaywgY2FjaGVBY3RpdmUpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKGRhdGFzZXQpID0+IGRhdGFzZXQuc2VsZWN0QWxsKCkucmVhZCgpKSxcbiAgICAgIG1hcCgoZmVhdHVyZXMpID0+ICh7XG4gICAgICAgIHR5cGU6ICdGZWF0dXJlQ29sbGVjdGlvbicsXG4gICAgICAgIGZlYXR1cmVzLFxuICAgICAgfSkpXG4gICAgKVxuICB9XG5cbiAgZ2V0RGF0YXNldChcbiAgICBsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UsXG4gICAgY2FjaGVBY3RpdmU6IGJvb2xlYW5cbiAgKTogT2JzZXJ2YWJsZTxCYXNlUmVhZGVyPiB7XG4gICAgaWYgKGxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnICYmIGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnd2ZzJykge1xuICAgICAgY29uc3Qgd2ZzVXJsRW5kcG9pbnQgPSB0aGlzLnByb3h5LmdldFByb3hpZWRVcmwobGluay51cmwudG9TdHJpbmcoKSlcbiAgICAgIHJldHVybiBmcm9tKFxuICAgICAgICBvcGVuRGF0YXNldChcbiAgICAgICAgICB3ZnNVcmxFbmRwb2ludCxcbiAgICAgICAgICAnd2ZzJyxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB3ZnNGZWF0dXJlVHlwZTogbGluay5uYW1lLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgY2FjaGVBY3RpdmVcbiAgICAgICAgKVxuICAgICAgKVxuICAgIH0gZWxzZSBpZiAobGluay50eXBlID09PSAnZG93bmxvYWQnKSB7XG4gICAgICBjb25zdCBsaW5rUHJveGlmaWVkVXJsID0gdGhpcy5wcm94eS5nZXRQcm94aWVkVXJsKGxpbmsudXJsLnRvU3RyaW5nKCkpXG4gICAgICBjb25zdCBmb3JtYXQgPSBnZXRGaWxlRm9ybWF0KGxpbmspXG4gICAgICBjb25zdCBzdXBwb3J0ZWRUeXBlID1cbiAgICAgICAgU3VwcG9ydGVkVHlwZXMuaW5kZXhPZihmb3JtYXQgYXMgYW55KSA+IC0xXG4gICAgICAgICAgPyAoZm9ybWF0IGFzIFN1cHBvcnRlZFR5cGUpXG4gICAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgIHJldHVybiBmcm9tKFxuICAgICAgICBvcGVuRGF0YXNldChsaW5rUHJveGlmaWVkVXJsLCBzdXBwb3J0ZWRUeXBlLCB1bmRlZmluZWQsIGNhY2hlQWN0aXZlKVxuICAgICAgKS5waXBlKClcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgbGluay50eXBlID09PSAnc2VydmljZScgJiZcbiAgICAgIGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnZXNyaVJlc3QnXG4gICAgKSB7XG4gICAgICBjb25zdCB1cmwgPSB0aGlzLmdldERvd25sb2FkVXJsRnJvbUVzcmlSZXN0KFxuICAgICAgICBsaW5rLnVybC50b1N0cmluZygpLFxuICAgICAgICAnZ2VvanNvbidcbiAgICAgIClcbiAgICAgIHJldHVybiBmcm9tKG9wZW5EYXRhc2V0KHVybCwgJ2dlb2pzb24nLCB1bmRlZmluZWQsIGNhY2hlQWN0aXZlKSkucGlwZSgpXG4gICAgfSBlbHNlIGlmIChcbiAgICAgIGxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnICYmXG4gICAgICBsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ29nY0ZlYXR1cmVzJ1xuICAgICkge1xuICAgICAgcmV0dXJuIGZyb20odGhpcy5nZXREb3dubG9hZFVybHNGcm9tT2djQXBpKGxpbmsudXJsLmhyZWYpKS5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKGNvbGxlY3Rpb25JbmZvKSA9PiB7XG4gICAgICAgICAgY29uc3QgZ2VvanNvblVybCA9IGNvbGxlY3Rpb25JbmZvLmpzb25Eb3dubG9hZExpbmtcbiAgICAgICAgICByZXR1cm4gb3BlbkRhdGFzZXQoZ2VvanNvblVybCwgJ2dlb2pzb24nLCB1bmRlZmluZWQsIGNhY2hlQWN0aXZlKVxuICAgICAgICB9KSxcbiAgICAgICAgdGFwKCh1cmwpID0+IHtcbiAgICAgICAgICBpZiAodXJsID09PSBudWxsKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3dmcy5nZW9qc29uZ21sLm5vdHN1cHBvcnRlZCcpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgKVxuICAgIH1cbiAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiAncHJvdG9jb2wgbm90IHN1cHBvcnRlZCcpXG4gIH1cbn1cbiJdfQ==
@@ -1,9 +1,9 @@
1
1
  import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
2
  import { BehaviorSubject, of } from 'rxjs';
3
- import { catchError, finalize, map, shareReplay, startWith, switchMap, } from 'rxjs/operators';
3
+ import { catchError, finalize, shareReplay, startWith, switchMap, } from 'rxjs/operators';
4
4
  import { FetchError } from '../../../../../../libs/util/data-fetcher/src';
5
5
  import { DataService } from '../service/data.service';
6
- import { TableComponent } from '../../../../../../libs/ui/dataviz/src';
6
+ import { DataTableComponent } from '../../../../../../libs/ui/dataviz/src';
7
7
  import { TranslateModule, TranslateService } from '@ngx-translate/core';
8
8
  import { LoadingMaskComponent, PopupAlertComponent, } from '../../../../../../libs/ui/widgets/src';
9
9
  import { CommonModule } from '@angular/common';
@@ -18,29 +18,25 @@ export class TableViewComponent {
18
18
  constructor(dataService, translateService) {
19
19
  this.dataService = dataService;
20
20
  this.translateService = translateService;
21
+ this.cacheActive = true;
21
22
  this.currentLink$ = new BehaviorSubject(null);
22
23
  this.loading = false;
23
24
  this.error = null;
24
25
  this.tableData$ = this.currentLink$.pipe(switchMap((link) => {
25
26
  this.error = null;
26
27
  if (!link)
27
- return of([]);
28
+ return of(undefined);
28
29
  this.loading = true;
29
- return this.fetchData(link).pipe(map((items) => items.map((item) => ({
30
- id: item.id,
31
- ...item.properties,
32
- }))), catchError((error) => {
30
+ return this.getDatasetReader(link).pipe(catchError((error) => {
33
31
  this.handleError(error);
34
- return of([]);
32
+ return of(undefined);
35
33
  }), finalize(() => {
36
34
  this.loading = false;
37
35
  }));
38
- }), startWith([]), shareReplay(1));
36
+ }), startWith(undefined), shareReplay(1));
39
37
  }
40
- fetchData(link) {
41
- return this.dataService
42
- .getDataset(link)
43
- .pipe(switchMap((dataset) => dataset.read()));
38
+ getDatasetReader(link) {
39
+ return this.dataService.getDataset(link, this.cacheActive);
44
40
  }
45
41
  onTableSelect(event) {
46
42
  console.log(event);
@@ -63,18 +59,20 @@ export class TableViewComponent {
63
59
  this.loading = false;
64
60
  }
65
61
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TableViewComponent, deps: [{ token: i1.DataService }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
66
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TableViewComponent, isStandalone: true, selector: "gn-ui-table-view", inputs: { link: "link" }, ngImport: i0, template: "<div class=\"w-full h-full flex flex-col\">\n <div class=\"relative h-full\">\n <gn-ui-table\n class=\"overflow-auto grow\"\n [data]=\"tableData$ | async\"\n (selected)=\"onTableSelect($event)\"\n ></gn-ui-table>\n <gn-ui-loading-mask\n *ngIf=\"loading\"\n class=\"absolute inset-0\"\n [message]=\"'table.loading.data' | translate\"\n ></gn-ui-loading-mask>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"absolute m-2 inset-0\"\n >\n <span translate>{{ error }}</span>\n </gn-ui-popup-alert>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "component", type: TableComponent, selector: "gn-ui-table", inputs: ["data", "activeId"], outputs: ["selected"] }, { kind: "component", type: LoadingMaskComponent, selector: "gn-ui-loading-mask", inputs: ["message"] }, { kind: "component", type: PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
62
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TableViewComponent, isStandalone: true, selector: "gn-ui-table-view", inputs: { cacheActive: "cacheActive", link: "link" }, ngImport: i0, template: "<div class=\"w-full h-full flex flex-col\">\n <div class=\"relative h-full\">\n <gn-ui-data-table\n *ngIf=\"tableData$ | async as dataset\"\n class=\"overflow-auto grow\"\n [dataset]=\"dataset\"\n (selected)=\"onTableSelect($event)\"\n ></gn-ui-data-table>\n <gn-ui-loading-mask\n *ngIf=\"loading\"\n class=\"absolute inset-0\"\n [message]=\"'table.loading.data' | translate\"\n ></gn-ui-loading-mask>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"absolute m-2 inset-0\"\n >\n <span translate>{{ error }}</span>\n </gn-ui-popup-alert>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "component", type: DataTableComponent, selector: "gn-ui-data-table", inputs: ["dataset", "activeId"], outputs: ["selected"] }, { kind: "component", type: LoadingMaskComponent, selector: "gn-ui-loading-mask", inputs: ["message"] }, { kind: "component", type: PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
67
63
  }
68
64
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TableViewComponent, decorators: [{
69
65
  type: Component,
70
66
  args: [{ selector: 'gn-ui-table-view', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
71
67
  CommonModule,
72
- TableComponent,
68
+ DataTableComponent,
73
69
  LoadingMaskComponent,
74
70
  PopupAlertComponent,
75
71
  TranslateModule,
76
- ], standalone: true, template: "<div class=\"w-full h-full flex flex-col\">\n <div class=\"relative h-full\">\n <gn-ui-table\n class=\"overflow-auto grow\"\n [data]=\"tableData$ | async\"\n (selected)=\"onTableSelect($event)\"\n ></gn-ui-table>\n <gn-ui-loading-mask\n *ngIf=\"loading\"\n class=\"absolute inset-0\"\n [message]=\"'table.loading.data' | translate\"\n ></gn-ui-loading-mask>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"absolute m-2 inset-0\"\n >\n <span translate>{{ error }}</span>\n </gn-ui-popup-alert>\n </div>\n</div>\n" }]
77
- }], ctorParameters: () => [{ type: i1.DataService }, { type: i2.TranslateService }], propDecorators: { link: [{
72
+ ], standalone: true, template: "<div class=\"w-full h-full flex flex-col\">\n <div class=\"relative h-full\">\n <gn-ui-data-table\n *ngIf=\"tableData$ | async as dataset\"\n class=\"overflow-auto grow\"\n [dataset]=\"dataset\"\n (selected)=\"onTableSelect($event)\"\n ></gn-ui-data-table>\n <gn-ui-loading-mask\n *ngIf=\"loading\"\n class=\"absolute inset-0\"\n [message]=\"'table.loading.data' | translate\"\n ></gn-ui-loading-mask>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"absolute m-2 inset-0\"\n >\n <span translate>{{ error }}</span>\n </gn-ui-popup-alert>\n </div>\n</div>\n" }]
73
+ }], ctorParameters: () => [{ type: i1.DataService }, { type: i2.TranslateService }], propDecorators: { cacheActive: [{
74
+ type: Input
75
+ }], link: [{
78
76
  type: Input
79
77
  }] } });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL3RhYmxlLXZpZXcvdGFibGUtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL3RhYmxlLXZpZXcvdGFibGUtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUN0RCxPQUFPLEVBQ0wsVUFBVSxFQUNWLFFBQVEsRUFDUixHQUFHLEVBQ0gsV0FBVyxFQUNYLFNBQVMsRUFDVCxTQUFTLEdBQ1YsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN2QixPQUFPLEVBQVksVUFBVSxFQUFFLE1BQU0sOENBQThDLENBQUE7QUFDbkYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3JELE9BQU8sRUFBRSxjQUFjLEVBQWtCLE1BQU0sdUNBQXVDLENBQUE7QUFFdEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3ZFLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsbUJBQW1CLEdBQ3BCLE1BQU0sdUNBQXVDLENBQUE7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBOzs7OztBQWdCOUMsTUFBTSxPQUFPLGtCQUFrQjtJQUM3QixJQUFhLElBQUksQ0FBQyxLQUE0QjtRQUM1QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUMvQixDQUFDO0lBK0JELFlBQ1Us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a0JBQWtCLHNHQ25DL0IscW9CQXNCQSx5RERLSSxZQUFZLHdMQUNaLGNBQWMsNkdBQ2Qsb0JBQW9CLG9GQUNwQixtQkFBbUIsbUdBQ25CLGVBQWU7OzRGQUlOLGtCQUFrQjtrQkFkOUIsU0FBUzsrQkFDRSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxZQUFZO3dCQUNaLGNBQWM7d0JBQ2Qsb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLGVBQWU7cUJBQ2hCLGNBQ1csSUFBSTsrR0FHSCxJQUFJO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnXG5pbXBvcnQge1xuICBjYXRjaEVycm9yLFxuICBmaW5hbGl6ZSxcbiAgbWFwLFxuICBzaGFyZVJlcGxheSxcbiAgc3RhcnRXaXRoLFxuICBzd2l0Y2hNYXAsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgRGF0YUl0ZW0sIEZldGNoRXJyb3IgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYydcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZS9kYXRhLnNlcnZpY2UnXG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCwgVGFibGVJdGVtTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2RhdGF2aXovc3JjJ1xuaW1wb3J0IHsgRGF0YXNldE9ubGluZVJlc291cmNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7XG4gIExvYWRpbmdNYXNrQ29tcG9uZW50LFxuICBQb3B1cEFsZXJ0Q29tcG9uZW50LFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL3dpZGdldHMvc3JjJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS10YWJsZS12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YWJsZS12aWV3LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgVGFibGVDb21wb25lbnQsXG4gICAgTG9hZGluZ01hc2tDb21wb25lbnQsXG4gICAgUG9wdXBBbGVydENvbXBvbmVudCxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlVmlld0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHNldCBsaW5rKHZhbHVlOiBEYXRhc2V0T25saW5lUmVzb3VyY2UpIHtcbiAgICB0aGlzLmN1cnJlbnRMaW5rJC5uZXh0KHZhbHVlKVxuICB9XG4gIHByaXZhdGUgY3VycmVudExpbmskID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEYXRhc2V0T25saW5lUmVzb3VyY2U+KG51bGwpXG5cbiAgbG9hZGluZyA9IGZhbHNlXG4gIGVycm9yID0gbnVsbFxuXG4gIHRhYmxlRGF0YSQgPSB0aGlzLmN1cnJlbnRMaW5rJC5waXBlKFxuICAgIHN3aXRjaE1hcCgobGluaykgPT4ge1xuICAgICAgdGhpcy5lcnJvciA9IG51bGxcbiAgICAgIGlmICghbGluaykgcmV0dXJuIG9mKFtdIGFzIFRhYmxlSXRlbU1vZGVsW10pXG4gICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlXG4gICAgICByZXR1cm4gdGhpcy5mZXRjaERhdGEobGluaykucGlwZShcbiAgICAgICAgbWFwKChpdGVtcykgPT5cbiAgICAgICAgICBpdGVtcy5tYXAoKGl0ZW0pID0+ICh7XG4gICAgICAgICAgICBpZDogaXRlbS5pZCxcbiAgICAgICAgICAgIC4uLml0ZW0ucHJvcGVydGllcyxcbiAgICAgICAgICB9KSlcbiAgICAgICAgKSxcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yKGVycm9yKVxuICAgICAgICAgIHJldHVybiBvZihbXSBhcyBUYWJsZUl0ZW1Nb2RlbFtdKVxuICAgICAgICB9KSxcbiAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgfSksXG4gICAgc3RhcnRXaXRoKFtdIGFzIFRhYmxlSXRlbU1vZGVsW10pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gIClcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2VcbiAgKSB7fVxuXG4gIGZldGNoRGF0YShsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UpOiBPYnNlcnZhYmxlPERhdGFJdGVtW10+IHtcbiAgICByZXR1cm4gdGhpcy5kYXRhU2VydmljZVxuICAgICAgLmdldERhdGFzZXQobGluaylcbiAgICAgIC5waXBlKHN3aXRjaE1hcCgoZGF0YXNldCkgPT4gZGF0YXNldC5yZWFkKCkpKVxuICB9XG5cbiAgb25UYWJsZVNlbGVjdChldmVudCkge1xuICAgIGNvbnNvbGUubG9nKGV2ZW50KVxuICB9XG5cbiAgaGFuZGxlRXJyb3IoZXJyb3I6IEZldGNoRXJyb3IgfCBFcnJvciB8IHN0cmluZykge1xuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEZldGNoRXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgYGRhdGFzZXQuZXJyb3IuJHtlcnJvci50eXBlfWAsXG4gICAgICAgIHtcbiAgICAgICAgICBpbmZvOiBlcnJvci5pbmZvLFxuICAgICAgICB9XG4gICAgICApXG4gICAgICBjb25zb2xlLndhcm4oZXJyb3IubWVzc2FnZSlcbiAgICB9IGVsc2UgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChlcnJvci5tZXNzYWdlKVxuICAgICAgY29uc29sZS53YXJuKGVycm9yLnN0YWNrIHx8IGVycm9yKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVycm9yID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoZXJyb3IpXG4gICAgICBjb25zb2xlLndhcm4oZXJyb3IpXG4gICAgfVxuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ3LWZ1bGwgaC1mdWxsIGZsZXggZmxleC1jb2xcIj5cbiAgPGRpdiBjbGFzcz1cInJlbGF0aXZlIGgtZnVsbFwiPlxuICAgIDxnbi11aS10YWJsZVxuICAgICAgY2xhc3M9XCJvdmVyZmxvdy1hdXRvIGdyb3dcIlxuICAgICAgW2RhdGFdPVwidGFibGVEYXRhJCB8IGFzeW5jXCJcbiAgICAgIChzZWxlY3RlZCk9XCJvblRhYmxlU2VsZWN0KCRldmVudClcIlxuICAgID48L2duLXVpLXRhYmxlPlxuICAgIDxnbi11aS1sb2FkaW5nLW1hc2tcbiAgICAgICpuZ0lmPVwibG9hZGluZ1wiXG4gICAgICBjbGFzcz1cImFic29sdXRlIGluc2V0LTBcIlxuICAgICAgW21lc3NhZ2VdPVwiJ3RhYmxlLmxvYWRpbmcuZGF0YScgfCB0cmFuc2xhdGVcIlxuICAgID48L2duLXVpLWxvYWRpbmctbWFzaz5cbiAgICA8Z24tdWktcG9wdXAtYWxlcnRcbiAgICAgICpuZ0lmPVwiZXJyb3JcIlxuICAgICAgdHlwZT1cIndhcm5pbmdcIlxuICAgICAgaWNvbj1cIm1hdEVycm9yT3V0bGluZU91dGxpbmVcIlxuICAgICAgY2xhc3M9XCJhYnNvbHV0ZSBtLTIgaW5zZXQtMFwiXG4gICAgPlxuICAgICAgPHNwYW4gdHJhbnNsYXRlPnt7IGVycm9yIH19PC9zcGFuPlxuICAgIDwvZ24tdWktcG9wdXAtYWxlcnQ+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL3RhYmxlLXZpZXcvdGFibGUtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL3RhYmxlLXZpZXcvdGFibGUtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUN0RCxPQUFPLEVBQ0wsVUFBVSxFQUNWLFFBQVEsRUFDUixXQUFXLEVBQ1gsU0FBUyxFQUNULFNBQVMsR0FDVixNQUFNLGdCQUFnQixDQUFBO0FBQ3ZCLE9BQU8sRUFBYyxVQUFVLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQTtBQUNyRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDckQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUNBQXVDLENBQUE7QUFFMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3ZFLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsbUJBQW1CLEdBQ3BCLE1BQU0sdUNBQXVDLENBQUE7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBOzs7OztBQWdCOUMsTUFBTSxPQUFPLGtCQUFrQjtJQUU3QixJQUFhLElBQUksQ0FBQyxLQUE0QjtRQUM1QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUMvQixDQUFDO0lBeUJELFlBQ1UsV0FBd0IsRUFD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QixlQUFlO3FCQUNoQixjQUNXLElBQUk7K0dBR1AsV0FBVztzQkFBbkIsS0FBSztnQkFDTyxJQUFJO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnXG5pbXBvcnQge1xuICBjYXRjaEVycm9yLFxuICBmaW5hbGl6ZSxcbiAgc2hhcmVSZXBsYXksXG4gIHN0YXJ0V2l0aCxcbiAgc3dpdGNoTWFwLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycydcbmltcG9ydCB7IEJhc2VSZWFkZXIsIEZldGNoRXJyb3IgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYydcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZS9kYXRhLnNlcnZpY2UnXG5pbXBvcnQgeyBEYXRhVGFibGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2RhdGF2aXovc3JjJ1xuaW1wb3J0IHsgRGF0YXNldE9ubGluZVJlc291cmNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7XG4gIExvYWRpbmdNYXNrQ29tcG9uZW50LFxuICBQb3B1cEFsZXJ0Q29tcG9uZW50LFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL3dpZGdldHMvc3JjJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS10YWJsZS12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YWJsZS12aWV3LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRGF0YVRhYmxlQ29tcG9uZW50LFxuICAgIExvYWRpbmdNYXNrQ29tcG9uZW50LFxuICAgIFBvcHVwQWxlcnRDb21wb25lbnQsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZVZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSBjYWNoZUFjdGl2ZSA9IHRydWVcbiAgQElucHV0KCkgc2V0IGxpbmsodmFsdWU6IERhdGFzZXRPbmxpbmVSZXNvdXJjZSkge1xuICAgIHRoaXMuY3VycmVudExpbmskLm5leHQodmFsdWUpXG4gIH1cbiAgcHJpdmF0ZSBjdXJyZW50TGluayQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PERhdGFzZXRPbmxpbmVSZXNvdXJjZT4obnVsbClcblxuICBsb2FkaW5nID0gZmFsc2VcbiAgZXJyb3IgPSBudWxsXG5cbiAgdGFibGVEYXRhJCA9IHRoaXMuY3VycmVudExpbmskLnBpcGUoXG4gICAgc3dpdGNoTWFwKChsaW5rKSA9PiB7XG4gICAgICB0aGlzLmVycm9yID0gbnVsbFxuICAgICAgaWYgKCFsaW5rKSByZXR1cm4gb2YodW5kZWZpbmVkKVxuICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZVxuICAgICAgcmV0dXJuIHRoaXMuZ2V0RGF0YXNldFJlYWRlcihsaW5rKS5waXBlKFxuICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xuICAgICAgICAgIHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpXG4gICAgICAgICAgcmV0dXJuIG9mKHVuZGVmaW5lZClcbiAgICAgICAgfSksXG4gICAgICAgIGZpbmFsaXplKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZVxuICAgICAgICB9KVxuICAgICAgKVxuICAgIH0pLFxuICAgIHN0YXJ0V2l0aCh1bmRlZmluZWQpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gIClcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2VcbiAgKSB7fVxuXG4gIGdldERhdGFzZXRSZWFkZXIobGluazogRGF0YXNldE9ubGluZVJlc291cmNlKTogT2JzZXJ2YWJsZTxCYXNlUmVhZGVyPiB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YVNlcnZpY2UuZ2V0RGF0YXNldChsaW5rLCB0aGlzLmNhY2hlQWN0aXZlKVxuICB9XG5cbiAgb25UYWJsZVNlbGVjdChldmVudCkge1xuICAgIGNvbnNvbGUubG9nKGV2ZW50KVxuICB9XG5cbiAgaGFuZGxlRXJyb3IoZXJyb3I6IEZldGNoRXJyb3IgfCBFcnJvciB8IHN0cmluZykge1xuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEZldGNoRXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgYGRhdGFzZXQuZXJyb3IuJHtlcnJvci50eXBlfWAsXG4gICAgICAgIHtcbiAgICAgICAgICBpbmZvOiBlcnJvci5pbmZvLFxuICAgICAgICB9XG4gICAgICApXG4gICAgICBjb25zb2xlLndhcm4oZXJyb3IubWVzc2FnZSlcbiAgICB9IGVsc2UgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChlcnJvci5tZXNzYWdlKVxuICAgICAgY29uc29sZS53YXJuKGVycm9yLnN0YWNrIHx8IGVycm9yKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVycm9yID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoZXJyb3IpXG4gICAgICBjb25zb2xlLndhcm4oZXJyb3IpXG4gICAgfVxuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ3LWZ1bGwgaC1mdWxsIGZsZXggZmxleC1jb2xcIj5cbiAgPGRpdiBjbGFzcz1cInJlbGF0aXZlIGgtZnVsbFwiPlxuICAgIDxnbi11aS1kYXRhLXRhYmxlXG4gICAgICAqbmdJZj1cInRhYmxlRGF0YSQgfCBhc3luYyBhcyBkYXRhc2V0XCJcbiAgICAgIGNsYXNzPVwib3ZlcmZsb3ctYXV0byBncm93XCJcbiAgICAgIFtkYXRhc2V0XT1cImRhdGFzZXRcIlxuICAgICAgKHNlbGVjdGVkKT1cIm9uVGFibGVTZWxlY3QoJGV2ZW50KVwiXG4gICAgPjwvZ24tdWktZGF0YS10YWJsZT5cbiAgICA8Z24tdWktbG9hZGluZy1tYXNrXG4gICAgICAqbmdJZj1cImxvYWRpbmdcIlxuICAgICAgY2xhc3M9XCJhYnNvbHV0ZSBpbnNldC0wXCJcbiAgICAgIFttZXNzYWdlXT1cIid0YWJsZS5sb2FkaW5nLmRhdGEnIHwgdHJhbnNsYXRlXCJcbiAgICA+PC9nbi11aS1sb2FkaW5nLW1hc2s+XG4gICAgPGduLXVpLXBvcHVwLWFsZXJ0XG4gICAgICAqbmdJZj1cImVycm9yXCJcbiAgICAgIHR5cGU9XCJ3YXJuaW5nXCJcbiAgICAgIGljb249XCJtYXRFcnJvck91dGxpbmVPdXRsaW5lXCJcbiAgICAgIGNsYXNzPVwiYWJzb2x1dGUgbS0yIGluc2V0LTBcIlxuICAgID5cbiAgICAgIDxzcGFuIHRyYW5zbGF0ZT57eyBlcnJvciB9fTwvc3Bhbj5cbiAgICA8L2duLXVpLXBvcHVwLWFsZXJ0PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -10,4 +10,5 @@ export * from './lib/components/record-form/record-form.component';
10
10
  export * from './lib/components/wizard/wizard.component';
11
11
  export * from './lib/components/wizard-field/wizard-field.component';
12
12
  export * from './lib/components/wizard-summarize/wizard-summarize.component';
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFBO0FBQzFDLGNBQWMsNEJBQTRCLENBQUE7QUFDMUMsY0FBYywrQkFBK0IsQ0FBQTtBQUM3QyxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsNkJBQTZCLENBQUE7QUFDM0MsY0FBYyw2QkFBNkIsQ0FBQTtBQUMzQyxjQUFjLCtCQUErQixDQUFBO0FBQzdDLGNBQWMsd0RBQXdELENBQUE7QUFDdEUsY0FBYyxvREFBb0QsQ0FBQTtBQUNsRSxjQUFjLDBDQUEwQyxDQUFBO0FBQ3hELGNBQWMsc0RBQXNELENBQUE7QUFDcEUsY0FBYyw4REFBOEQsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliLytzdGF0ZS9lZGl0b3IuZmFjYWRlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvK3N0YXRlL2VkaXRvci5tb2RlbHMnXG5leHBvcnQgKiBmcm9tICcuL2xpYi8rc3RhdGUvZWRpdG9yLnNlbGVjdG9ycydcbmV4cG9ydCAqIGZyb20gJy4vbGliLytzdGF0ZS9lZGl0b3IucmVkdWNlcidcbmV4cG9ydCAqIGZyb20gJy4vbGliLytzdGF0ZS9lZGl0b3IuYWN0aW9ucydcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZlYXR1cmUtZWRpdG9yLm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2VkaXRvci5zZXJ2aWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbXBvcnQtcmVjb3JkL2ltcG9ydC1yZWNvcmQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9yZWNvcmQtZm9ybS9yZWNvcmQtZm9ybS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3dpemFyZC93aXphcmQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy93aXphcmQtZmllbGQvd2l6YXJkLWZpZWxkLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvd2l6YXJkLXN1bW1hcml6ZS93aXphcmQtc3VtbWFyaXplLmNvbXBvbmVudCdcbiJdfQ==
13
+ export * from './lib/components/record-form/form-field';
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFBO0FBQzFDLGNBQWMsNEJBQTRCLENBQUE7QUFDMUMsY0FBYywrQkFBK0IsQ0FBQTtBQUM3QyxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsNkJBQTZCLENBQUE7QUFDM0MsY0FBYyw2QkFBNkIsQ0FBQTtBQUMzQyxjQUFjLCtCQUErQixDQUFBO0FBQzdDLGNBQWMsd0RBQXdELENBQUE7QUFDdEUsY0FBYyxvREFBb0QsQ0FBQTtBQUNsRSxjQUFjLDBDQUEwQyxDQUFBO0FBQ3hELGNBQWMsc0RBQXNELENBQUE7QUFDcEUsY0FBYyw4REFBOEQsQ0FBQTtBQUM1RSxjQUFjLHlDQUF5QyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvK3N0YXRlL2VkaXRvci5mYWNhZGUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi8rc3RhdGUvZWRpdG9yLm1vZGVscydcbmV4cG9ydCAqIGZyb20gJy4vbGliLytzdGF0ZS9lZGl0b3Iuc2VsZWN0b3JzJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvK3N0YXRlL2VkaXRvci5yZWR1Y2VyJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvK3N0YXRlL2VkaXRvci5hY3Rpb25zJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZmVhdHVyZS1lZGl0b3IubW9kdWxlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZWRpdG9yLnNlcnZpY2UnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2ltcG9ydC1yZWNvcmQvaW1wb3J0LXJlY29yZC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3JlY29yZC1mb3JtL3JlY29yZC1mb3JtLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvd2l6YXJkL3dpemFyZC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3dpemFyZC1maWVsZC93aXphcmQtZmllbGQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy93aXphcmQtc3VtbWFyaXplL3dpemFyZC1zdW1tYXJpemUuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9yZWNvcmQtZm9ybS9mb3JtLWZpZWxkJ1xuIl19
@@ -39,7 +39,7 @@ export class ConstraintCardComponent {
39
39
  provideNgIconsConfig({
40
40
  size: '1.5rem',
41
41
  }),
42
- ], ngImport: i0, template: "<div class=\"flex flex-col gap-1 border rounded-lg p-4\">\n <gn-ui-form-field-rich\n class=\"mt-[-8px]\"\n [label]=\"label\"\n [hint]=\"hint | translate\"\n [value]=\"constraint_.text ?? ''\"\n (valueChange)=\"handleConstraintTextChange($event)\"\n ></gn-ui-form-field-rich>\n\n <div *ngIf=\"!showUrl\" class=\"flex-none mt-1\">\n <gn-ui-button\n (buttonClick)=\"showUrl = true\"\n type=\"gray\"\n data-cy=\"add-url-btn\"\n >\n <ng-icon name=\"iconoirPlus\" class=\"text-primary\"></ng-icon>&nbsp;\n <span translate>input.image.displayUrlInput</span>\n </gn-ui-button>\n </div>\n <gn-ui-url-input\n *ngIf=\"showUrl\"\n class=\"mt-3.5\"\n [value]=\"constraint_.url?.toString()\"\n (valueChange)=\"handleURLChange($event)\"\n [showValidateButton]=\"false\"\n >\n </gn-ui-url-input>\n</div>\n", styles: [":host{--gn-ui-button-padding: 8px 8px;--gn-ui-button-rounded: 8px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FormFieldRichComponent, selector: "gn-ui-form-field-rich", inputs: ["label", "hint", "placeholder", "value"], outputs: ["valueChange"] }, { kind: "component", type: UrlInputComponent, selector: "gn-ui-url-input", inputs: ["value", "extraClass", "placeholder", "disabled", "showValidateButton"], outputs: ["valueChange", "uploadClick"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
42
+ ], ngImport: i0, template: "<div class=\"flex flex-col gap-1 border rounded-lg p-4\">\n <gn-ui-form-field-rich\n class=\"mt-[-8px]\"\n [label]=\"label\"\n [placeholder]=\"hint | translate\"\n [value]=\"constraint_.text ?? ''\"\n (valueChange)=\"handleConstraintTextChange($event)\"\n ></gn-ui-form-field-rich>\n\n <div *ngIf=\"!showUrl\" class=\"flex-none mt-1\">\n <gn-ui-button\n (buttonClick)=\"showUrl = true\"\n type=\"gray\"\n data-cy=\"add-url-btn\"\n >\n <ng-icon name=\"iconoirPlus\" class=\"text-primary\"></ng-icon>&nbsp;\n <span translate>input.image.displayUrlInput</span>\n </gn-ui-button>\n </div>\n <gn-ui-url-input\n *ngIf=\"showUrl\"\n class=\"mt-3.5\"\n [value]=\"constraint_.url?.toString()\"\n (valueChange)=\"handleURLChange($event)\"\n [showValidateButton]=\"false\"\n >\n </gn-ui-url-input>\n</div>\n", styles: [":host{--gn-ui-button-padding: 8px 8px;--gn-ui-button-rounded: 8px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FormFieldRichComponent, selector: "gn-ui-form-field-rich", inputs: ["label", "hint", "placeholder", "value"], outputs: ["valueChange"] }, { kind: "component", type: UrlInputComponent, selector: "gn-ui-url-input", inputs: ["value", "extraClass", "placeholder", "disabled", "showValidateButton"], outputs: ["valueChange", "uploadClick"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
43
43
  }
44
44
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ConstraintCardComponent, decorators: [{
45
45
  type: Component,
@@ -57,7 +57,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
57
57
  provideNgIconsConfig({
58
58
  size: '1.5rem',
59
59
  }),
60
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col gap-1 border rounded-lg p-4\">\n <gn-ui-form-field-rich\n class=\"mt-[-8px]\"\n [label]=\"label\"\n [hint]=\"hint | translate\"\n [value]=\"constraint_.text ?? ''\"\n (valueChange)=\"handleConstraintTextChange($event)\"\n ></gn-ui-form-field-rich>\n\n <div *ngIf=\"!showUrl\" class=\"flex-none mt-1\">\n <gn-ui-button\n (buttonClick)=\"showUrl = true\"\n type=\"gray\"\n data-cy=\"add-url-btn\"\n >\n <ng-icon name=\"iconoirPlus\" class=\"text-primary\"></ng-icon>&nbsp;\n <span translate>input.image.displayUrlInput</span>\n </gn-ui-button>\n </div>\n <gn-ui-url-input\n *ngIf=\"showUrl\"\n class=\"mt-3.5\"\n [value]=\"constraint_.url?.toString()\"\n (valueChange)=\"handleURLChange($event)\"\n [showValidateButton]=\"false\"\n >\n </gn-ui-url-input>\n</div>\n", styles: [":host{--gn-ui-button-padding: 8px 8px;--gn-ui-button-rounded: 8px}\n"] }]
60
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col gap-1 border rounded-lg p-4\">\n <gn-ui-form-field-rich\n class=\"mt-[-8px]\"\n [label]=\"label\"\n [placeholder]=\"hint | translate\"\n [value]=\"constraint_.text ?? ''\"\n (valueChange)=\"handleConstraintTextChange($event)\"\n ></gn-ui-form-field-rich>\n\n <div *ngIf=\"!showUrl\" class=\"flex-none mt-1\">\n <gn-ui-button\n (buttonClick)=\"showUrl = true\"\n type=\"gray\"\n data-cy=\"add-url-btn\"\n >\n <ng-icon name=\"iconoirPlus\" class=\"text-primary\"></ng-icon>&nbsp;\n <span translate>input.image.displayUrlInput</span>\n </gn-ui-button>\n </div>\n <gn-ui-url-input\n *ngIf=\"showUrl\"\n class=\"mt-3.5\"\n [value]=\"constraint_.url?.toString()\"\n (valueChange)=\"handleURLChange($event)\"\n [showValidateButton]=\"false\"\n >\n </gn-ui-url-input>\n</div>\n", styles: [":host{--gn-ui-button-padding: 8px 8px;--gn-ui-button-rounded: 8px}\n"] }]
61
61
  }], propDecorators: { label: [{
62
62
  type: Input
63
63
  }], constraint: [{
@@ -65,4 +65,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
65
65
  }], constraintChange: [{
66
66
  type: Output
67
67
  }] } });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RyYWludC1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi9jb21wb25lbnRzL2NvbnN0cmFpbnQtY2FyZC9jb25zdHJhaW50LWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvY29uc3RyYWludC1jYXJkL2NvbnN0cmFpbnQtY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFDbkYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUVBQXFFLENBQUE7QUFDNUcsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQzVGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFFckQsT0FBTyxFQUNMLGVBQWUsRUFDZixZQUFZLEVBQ1osb0JBQW9CLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUE7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQy9DLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTs7OztBQXlCaEUsTUFBTSxPQUFPLHVCQUF1QjtJQXZCcEM7UUE4QlkscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQTtRQUUzRCxTQUFJLEdBQUcsTUFBTSxDQUFDLG9EQUFvRCxDQUFDLENBQUE7UUFDbkUsWUFBTyxHQUFHLEtBQUssQ0FBQTtLQWVoQjtJQXRCQyxJQUFhLFVBQVUsQ0FBQyxDQUFhO1FBQ25DLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFBO1FBQ3BCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQTtJQUN4QyxDQUFDO0lBTUQsMEJBQTBCLENBQUMsSUFBWTtRQUNyQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO1lBQ3pCLEdBQUcsSUFBSSxDQUFDLFdBQVc7WUFDbkIsSUFBSTtTQUNMLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxlQUFlLENBQUMsR0FBa0I7UUFDaEMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQztZQUN6QixJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJO1lBQzNCLEdBQUcsQ0FBQyxHQUFHLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztTQUNsQyxDQUFDLENBQUE7SUFDSixDQUFDOytHQXhCVSx1QkFBdUI7bUdBQXZCLHVCQUF1Qiw2S0FWdkI7WUFDVCxZQUFZLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQztZQUM3QixvQkFBb0IsQ0FBQztnQkFDbkIsSUFBSSxFQUFFLFFBQVE7YUFDZixDQUFDO1NBQ0gsMEJDeENILDgxQkE0QkEsNkhERkksWUFBWSxtSUFFWixzQkFBc0IsK0lBQ3RCLGlCQUFpQix1TEFDakIsZUFBZSw4SEFDZixhQUFhLDhCQUNiLGVBQWUsbU9BQ2YsZUFBZTs7NEZBWU4sdUJBQXVCO2tCQXZCbkMsU0FBUzsrQkFDRSx1QkFBdUIsY0FDckIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osdUJBQXVCO3dCQUN2QixzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsZUFBZTtxQkFDaEIsYUFDVTt3QkFDVCxZQUFZLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQzt3QkFDN0Isb0JBQW9CLENBQUM7NEJBQ25CLElBQUksRUFBRSxRQUFRO3lCQUNmLENBQUM7cUJBQ0gsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLEtBQUs7c0JBQWIsS0FBSztnQkFFTyxVQUFVO3NCQUF0QixLQUFLO2dCQUlJLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IE1hcmtkb3duRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMnXG5pbXBvcnQgeyBGb3JtRmllbGRSaWNoQ29tcG9uZW50IH0gZnJvbSAnLi4vcmVjb3JkLWZvcm0vZm9ybS1maWVsZC9mb3JtLWZpZWxkLXJpY2gvZm9ybS1maWVsZC1yaWNoLmNvbXBvbmVudCdcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCwgVXJsSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBDb25zdHJhaW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHtcbiAgTmdJY29uQ29tcG9uZW50LFxuICBwcm92aWRlSWNvbnMsXG4gIHByb3ZpZGVOZ0ljb25zQ29uZmlnLFxufSBmcm9tICdAbmctaWNvbnMvY29yZSdcbmltcG9ydCB7IGljb25vaXJQbHVzIH0gZnJvbSAnQG5nLWljb25zL2ljb25vaXInXG5pbXBvcnQgeyBtYXJrZXIgfSBmcm9tICdAYmllc2JqZXJnL25neC10cmFuc2xhdGUtZXh0cmFjdC1tYXJrZXInXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWNvbnN0cmFpbnQtY2FyZCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWFya2Rvd25FZGl0b3JDb21wb25lbnQsXG4gICAgRm9ybUZpZWxkUmljaENvbXBvbmVudCxcbiAgICBVcmxJbnB1dENvbXBvbmVudCxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgTmdJY29uQ29tcG9uZW50LFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICBwcm92aWRlSWNvbnMoeyBpY29ub2lyUGx1cyB9KSxcbiAgICBwcm92aWRlTmdJY29uc0NvbmZpZyh7XG4gICAgICBzaXplOiAnMS41cmVtJyxcbiAgICB9KSxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbnN0cmFpbnQtY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbnN0cmFpbnQtY2FyZC5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDb25zdHJhaW50Q2FyZENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmdcbiAgY29uc3RyYWludF86IENvbnN0cmFpbnRcbiAgQElucHV0KCkgc2V0IGNvbnN0cmFpbnQodjogQ29uc3RyYWludCkge1xuICAgIHRoaXMuY29uc3RyYWludF8gPSB2XG4gICAgdGhpcy5zaG93VXJsID0gdGhpcy5zaG93VXJsIHx8ICEhdi51cmxcbiAgfVxuICBAT3V0cHV0KCkgY29uc3RyYWludENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Q29uc3RyYWludD4oKVxuXG4gIGhpbnQgPSBtYXJrZXIoJ2VkaXRvci5yZWNvcmQuZm9ybS5jb25zdHJhaW50Lm1hcmtkb3duLnBsYWNlaG9sZGVyJylcbiAgc2hvd1VybCA9IGZhbHNlXG5cbiAgaGFuZGxlQ29uc3RyYWludFRleHRDaGFuZ2UodGV4dDogc3RyaW5nKSB7XG4gICAgdGhpcy5jb25zdHJhaW50Q2hhbmdlLmVtaXQoe1xuICAgICAgLi4udGhpcy5jb25zdHJhaW50XyxcbiAgICAgIHRleHQsXG4gICAgfSlcbiAgfVxuXG4gIGhhbmRsZVVSTENoYW5nZSh1cmw6IHN0cmluZyB8IG51bGwpIHtcbiAgICB0aGlzLmNvbnN0cmFpbnRDaGFuZ2UuZW1pdCh7XG4gICAgICB0ZXh0OiB0aGlzLmNvbnN0cmFpbnRfLnRleHQsXG4gICAgICAuLi4odXJsICYmIHsgdXJsOiBuZXcgVVJMKHVybCkgfSksXG4gICAgfSlcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTEgYm9yZGVyIHJvdW5kZWQtbGcgcC00XCI+XG4gIDxnbi11aS1mb3JtLWZpZWxkLXJpY2hcbiAgICBjbGFzcz1cIm10LVstOHB4XVwiXG4gICAgW2xhYmVsXT1cImxhYmVsXCJcbiAgICBbaGludF09XCJoaW50IHwgdHJhbnNsYXRlXCJcbiAgICBbdmFsdWVdPVwiY29uc3RyYWludF8udGV4dCA/PyAnJ1wiXG4gICAgKHZhbHVlQ2hhbmdlKT1cImhhbmRsZUNvbnN0cmFpbnRUZXh0Q2hhbmdlKCRldmVudClcIlxuICA+PC9nbi11aS1mb3JtLWZpZWxkLXJpY2g+XG5cbiAgPGRpdiAqbmdJZj1cIiFzaG93VXJsXCIgY2xhc3M9XCJmbGV4LW5vbmUgbXQtMVwiPlxuICAgIDxnbi11aS1idXR0b25cbiAgICAgIChidXR0b25DbGljayk9XCJzaG93VXJsID0gdHJ1ZVwiXG4gICAgICB0eXBlPVwiZ3JheVwiXG4gICAgICBkYXRhLWN5PVwiYWRkLXVybC1idG5cIlxuICAgID5cbiAgICAgIDxuZy1pY29uIG5hbWU9XCJpY29ub2lyUGx1c1wiIGNsYXNzPVwidGV4dC1wcmltYXJ5XCI+PC9uZy1pY29uPiZuYnNwO1xuICAgICAgPHNwYW4gdHJhbnNsYXRlPmlucHV0LmltYWdlLmRpc3BsYXlVcmxJbnB1dDwvc3Bhbj5cbiAgICA8L2duLXVpLWJ1dHRvbj5cbiAgPC9kaXY+XG4gIDxnbi11aS11cmwtaW5wdXRcbiAgICAqbmdJZj1cInNob3dVcmxcIlxuICAgIGNsYXNzPVwibXQtMy41XCJcbiAgICBbdmFsdWVdPVwiY29uc3RyYWludF8udXJsPy50b1N0cmluZygpXCJcbiAgICAodmFsdWVDaGFuZ2UpPVwiaGFuZGxlVVJMQ2hhbmdlKCRldmVudClcIlxuICAgIFtzaG93VmFsaWRhdGVCdXR0b25dPVwiZmFsc2VcIlxuICA+XG4gIDwvZ24tdWktdXJsLWlucHV0PlxuPC9kaXY+XG4iXX0=
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RyYWludC1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi9jb21wb25lbnRzL2NvbnN0cmFpbnQtY2FyZC9jb25zdHJhaW50LWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvY29uc3RyYWludC1jYXJkL2NvbnN0cmFpbnQtY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFDbkYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUVBQXFFLENBQUE7QUFDNUcsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQzVGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFFckQsT0FBTyxFQUNMLGVBQWUsRUFDZixZQUFZLEVBQ1osb0JBQW9CLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUE7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQy9DLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTs7OztBQXlCaEUsTUFBTSxPQUFPLHVCQUF1QjtJQXZCcEM7UUE4QlkscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQTtRQUUzRCxTQUFJLEdBQUcsTUFBTSxDQUFDLG9EQUFvRCxDQUFDLENBQUE7UUFDbkUsWUFBTyxHQUFHLEtBQUssQ0FBQTtLQWVoQjtJQXRCQyxJQUFhLFVBQVUsQ0FBQyxDQUFhO1FBQ25DLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFBO1FBQ3BCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQTtJQUN4QyxDQUFDO0lBTUQsMEJBQTBCLENBQUMsSUFBWTtRQUNyQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO1lBQ3pCLEdBQUcsSUFBSSxDQUFDLFdBQVc7WUFDbkIsSUFBSTtTQUNMLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxlQUFlLENBQUMsR0FBa0I7UUFDaEMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQztZQUN6QixJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJO1lBQzNCLEdBQUcsQ0FBQyxHQUFHLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztTQUNsQyxDQUFDLENBQUE7SUFDSixDQUFDOytHQXhCVSx1QkFBdUI7bUdBQXZCLHVCQUF1Qiw2S0FWdkI7WUFDVCxZQUFZLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQztZQUM3QixvQkFBb0IsQ0FBQztnQkFDbkIsSUFBSSxFQUFFLFFBQVE7YUFDZixDQUFDO1NBQ0gsMEJDeENILHEyQkE0QkEsNkhERkksWUFBWSxtSUFFWixzQkFBc0IsK0lBQ3RCLGlCQUFpQix1TEFDakIsZUFBZSw4SEFDZixhQUFhLDhCQUNiLGVBQWUsbU9BQ2YsZUFBZTs7NEZBWU4sdUJBQXVCO2tCQXZCbkMsU0FBUzsrQkFDRSx1QkFBdUIsY0FDckIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osdUJBQXVCO3dCQUN2QixzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsZUFBZTtxQkFDaEIsYUFDVTt3QkFDVCxZQUFZLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQzt3QkFDN0Isb0JBQW9CLENBQUM7NEJBQ25CLElBQUksRUFBRSxRQUFRO3lCQUNmLENBQUM7cUJBQ0gsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLEtBQUs7c0JBQWIsS0FBSztnQkFFTyxVQUFVO3NCQUF0QixLQUFLO2dCQUlJLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IE1hcmtkb3duRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMnXG5pbXBvcnQgeyBGb3JtRmllbGRSaWNoQ29tcG9uZW50IH0gZnJvbSAnLi4vcmVjb3JkLWZvcm0vZm9ybS1maWVsZC9mb3JtLWZpZWxkLXJpY2gvZm9ybS1maWVsZC1yaWNoLmNvbXBvbmVudCdcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCwgVXJsSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBDb25zdHJhaW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHtcbiAgTmdJY29uQ29tcG9uZW50LFxuICBwcm92aWRlSWNvbnMsXG4gIHByb3ZpZGVOZ0ljb25zQ29uZmlnLFxufSBmcm9tICdAbmctaWNvbnMvY29yZSdcbmltcG9ydCB7IGljb25vaXJQbHVzIH0gZnJvbSAnQG5nLWljb25zL2ljb25vaXInXG5pbXBvcnQgeyBtYXJrZXIgfSBmcm9tICdAYmllc2JqZXJnL25neC10cmFuc2xhdGUtZXh0cmFjdC1tYXJrZXInXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWNvbnN0cmFpbnQtY2FyZCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWFya2Rvd25FZGl0b3JDb21wb25lbnQsXG4gICAgRm9ybUZpZWxkUmljaENvbXBvbmVudCxcbiAgICBVcmxJbnB1dENvbXBvbmVudCxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgTmdJY29uQ29tcG9uZW50LFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICBwcm92aWRlSWNvbnMoeyBpY29ub2lyUGx1cyB9KSxcbiAgICBwcm92aWRlTmdJY29uc0NvbmZpZyh7XG4gICAgICBzaXplOiAnMS41cmVtJyxcbiAgICB9KSxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbnN0cmFpbnQtY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbnN0cmFpbnQtY2FyZC5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDb25zdHJhaW50Q2FyZENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmdcbiAgY29uc3RyYWludF86IENvbnN0cmFpbnRcbiAgQElucHV0KCkgc2V0IGNvbnN0cmFpbnQodjogQ29uc3RyYWludCkge1xuICAgIHRoaXMuY29uc3RyYWludF8gPSB2XG4gICAgdGhpcy5zaG93VXJsID0gdGhpcy5zaG93VXJsIHx8ICEhdi51cmxcbiAgfVxuICBAT3V0cHV0KCkgY29uc3RyYWludENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Q29uc3RyYWludD4oKVxuXG4gIGhpbnQgPSBtYXJrZXIoJ2VkaXRvci5yZWNvcmQuZm9ybS5jb25zdHJhaW50Lm1hcmtkb3duLnBsYWNlaG9sZGVyJylcbiAgc2hvd1VybCA9IGZhbHNlXG5cbiAgaGFuZGxlQ29uc3RyYWludFRleHRDaGFuZ2UodGV4dDogc3RyaW5nKSB7XG4gICAgdGhpcy5jb25zdHJhaW50Q2hhbmdlLmVtaXQoe1xuICAgICAgLi4udGhpcy5jb25zdHJhaW50XyxcbiAgICAgIHRleHQsXG4gICAgfSlcbiAgfVxuXG4gIGhhbmRsZVVSTENoYW5nZSh1cmw6IHN0cmluZyB8IG51bGwpIHtcbiAgICB0aGlzLmNvbnN0cmFpbnRDaGFuZ2UuZW1pdCh7XG4gICAgICB0ZXh0OiB0aGlzLmNvbnN0cmFpbnRfLnRleHQsXG4gICAgICAuLi4odXJsICYmIHsgdXJsOiBuZXcgVVJMKHVybCkgfSksXG4gICAgfSlcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTEgYm9yZGVyIHJvdW5kZWQtbGcgcC00XCI+XG4gIDxnbi11aS1mb3JtLWZpZWxkLXJpY2hcbiAgICBjbGFzcz1cIm10LVstOHB4XVwiXG4gICAgW2xhYmVsXT1cImxhYmVsXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwiaGludCB8IHRyYW5zbGF0ZVwiXG4gICAgW3ZhbHVlXT1cImNvbnN0cmFpbnRfLnRleHQgPz8gJydcIlxuICAgICh2YWx1ZUNoYW5nZSk9XCJoYW5kbGVDb25zdHJhaW50VGV4dENoYW5nZSgkZXZlbnQpXCJcbiAgPjwvZ24tdWktZm9ybS1maWVsZC1yaWNoPlxuXG4gIDxkaXYgKm5nSWY9XCIhc2hvd1VybFwiIGNsYXNzPVwiZmxleC1ub25lIG10LTFcIj5cbiAgICA8Z24tdWktYnV0dG9uXG4gICAgICAoYnV0dG9uQ2xpY2spPVwic2hvd1VybCA9IHRydWVcIlxuICAgICAgdHlwZT1cImdyYXlcIlxuICAgICAgZGF0YS1jeT1cImFkZC11cmwtYnRuXCJcbiAgICA+XG4gICAgICA8bmctaWNvbiBuYW1lPVwiaWNvbm9pclBsdXNcIiBjbGFzcz1cInRleHQtcHJpbWFyeVwiPjwvbmctaWNvbj4mbmJzcDtcbiAgICAgIDxzcGFuIHRyYW5zbGF0ZT5pbnB1dC5pbWFnZS5kaXNwbGF5VXJsSW5wdXQ8L3NwYW4+XG4gICAgPC9nbi11aS1idXR0b24+XG4gIDwvZGl2PlxuICA8Z24tdWktdXJsLWlucHV0XG4gICAgKm5nSWY9XCJzaG93VXJsXCJcbiAgICBjbGFzcz1cIm10LTMuNVwiXG4gICAgW3ZhbHVlXT1cImNvbnN0cmFpbnRfLnVybD8udG9TdHJpbmcoKVwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cImhhbmRsZVVSTENoYW5nZSgkZXZlbnQpXCJcbiAgICBbc2hvd1ZhbGlkYXRlQnV0dG9uXT1cImZhbHNlXCJcbiAgPlxuICA8L2duLXVpLXVybC1pbnB1dD5cbjwvZGl2PlxuIl19
@@ -53,7 +53,7 @@ export class GenericKeywordsComponent {
53
53
  provideIcons({
54
54
  matWarningAmberOutline,
55
55
  }),
56
- ], ngImport: i0, template: "<div class=\"flex flex-col gap-4\">\n <gn-ui-autocomplete\n [placeholder]=\"placeholder\"\n [displayWithFn]=\"displayWithFn\"\n [action]=\"autoCompleteAction\"\n (itemSelected)=\"handleItemSelection($event)\"\n [preventCompleteOnSelection]=\"false\"\n [minCharacterCount]=\"1\"\n [allowSubmit]=\"false\"\n [clearOnSelection]=\"true\"\n ></gn-ui-autocomplete>\n <div class=\"flex gap-2 flex-wrap\">\n <gn-ui-badge\n *ngFor=\"let keyword of keywords\"\n [removable]=\"true\"\n (badgeRemoveClicked)=\"removeKeyword(keyword)\"\n >{{ keyword.label }}\n\n <ng-icon\n *ngIf=\"isPlaceWithoutExtent(keyword)\"\n [title]=\"'editor.record.form.keywords.place.withoutExtent' | translate\"\n class=\"badge-warning\"\n name=\"matWarningAmberOutline\"\n ></ng-icon>\n </gn-ui-badge>\n </div>\n</div>\n", styles: [".badge-warning{font-size:1.4em}\n"], dependencies: [{ kind: "ngmodule", type: UiInputsModule }, { kind: "component", type: i2.BadgeComponent, selector: "gn-ui-badge", inputs: ["clickable", "removable"], outputs: ["badgeRemoveClicked"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: UiWidgetsModule }, { kind: "component", type: AutocompleteComponent, selector: "gn-ui-autocomplete", inputs: ["placeholder", "action", "value", "clearOnSelection", "preventCompleteOnSelection", "autoFocus", "minCharacterCount", "allowSubmit", "displayWithFn"], outputs: ["itemSelected", "inputSubmitted", "inputCleared"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
56
+ ], ngImport: i0, template: "<div class=\"flex flex-col gap-4\">\n <gn-ui-autocomplete\n [placeholder]=\"placeholder\"\n [displayWithFn]=\"displayWithFn\"\n [action]=\"autoCompleteAction\"\n (itemSelected)=\"handleItemSelection($event)\"\n [preventCompleteOnSelection]=\"false\"\n [minCharacterCount]=\"1\"\n [allowSubmit]=\"false\"\n [clearOnSelection]=\"true\"\n ></gn-ui-autocomplete>\n <div class=\"flex gap-2 flex-wrap\">\n <gn-ui-badge\n *ngFor=\"let keyword of keywords\"\n [removable]=\"true\"\n (badgeRemoveClicked)=\"removeKeyword(keyword)\"\n >{{ keyword.label }}\n\n <ng-icon\n *ngIf=\"isPlaceWithoutExtent(keyword)\"\n [title]=\"'editor.record.form.keywords.place.withoutExtent' | translate\"\n class=\"badge-warning\"\n name=\"matWarningAmberOutline\"\n ></ng-icon>\n </gn-ui-badge>\n </div>\n</div>\n", styles: [".badge-warning{font-size:1.4em}\n"], dependencies: [{ kind: "ngmodule", type: UiInputsModule }, { kind: "component", type: i2.BadgeComponent, selector: "gn-ui-badge", inputs: ["clickable", "removable"], outputs: ["badgeRemoveClicked"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: UiWidgetsModule }, { kind: "component", type: AutocompleteComponent, selector: "gn-ui-autocomplete", inputs: ["placeholder", "action", "value", "clearOnSelection", "preventCompleteOnSelection", "autoFocus", "minCharacterCount", "allowSubmit", "forceTrackPosition", "displayWithFn"], outputs: ["itemSelected", "inputSubmitted", "inputCleared"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
57
57
  }
58
58
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GenericKeywordsComponent, decorators: [{
59
59
  type: Component,
@@ -85,4 +85,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
85
85
  }], deletedKeyword: [{
86
86
  type: Output
87
87
  }] } });
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1rZXl3b3Jkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvY29tcG9uZW50cy9nZW5lcmljLWtleXdvcmRzL2dlbmVyaWMta2V5d29yZHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvZ2VuZXJpYy1rZXl3b3Jkcy9nZW5lcmljLWtleXdvcmRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQTtBQUNySCxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLHlCQUF5QixFQUN6QixjQUFjLEdBQ2YsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMENBQTBDLENBQUE7QUFDMUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUcxQixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUNMLGVBQWUsRUFDZixZQUFZLEdBRWIsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN2QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQTs7Ozs7O0FBeUJ6RSxNQUFNLE9BQU8sd0JBQXdCO0lBdUJuQyxZQUFvQixlQUF5QztRQUF6QyxvQkFBZSxHQUFmLGVBQWUsQ0FBMEI7UUFsQm5ELG9CQUFlLEdBQTRCLElBQUks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Q0g7NkZBR1EsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDSSxlQUFlO3NCQUF4QixNQUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFBsYXRmb3JtU2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL3BsYXRmb3JtLnNlcnZpY2UuaW50ZXJmYWNlJ1xuaW1wb3J0IHtcbiAgQXV0b2NvbXBsZXRlQ29tcG9uZW50LFxuICBEcm9wZG93blNlbGVjdG9yQ29tcG9uZW50LFxuICBVaUlucHV0c01vZHVsZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgVWlXaWRnZXRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS93aWRnZXRzL3NyYydcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBLZXl3b3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgS2V5d29yZFR5cGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC90aGVzYXVydXMnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHtcbiAgTmdJY29uQ29tcG9uZW50LFxuICBwcm92aWRlSWNvbnMsXG4gIHByb3ZpZGVOZ0ljb25zQ29uZmlnLFxufSBmcm9tICdAbmctaWNvbnMvY29yZSdcbmltcG9ydCB7IG1hdFdhcm5pbmdBbWJlck91dGxpbmUgfSBmcm9tICdAbmctaWNvbnMvbWF0ZXJpYWwtaWNvbnMvb3V0bGluZSdcblxudHlwZSBBdXRvY29tcGxldGVJdGVtID0geyB0aXRsZTogc3RyaW5nOyB2YWx1ZTogS2V5d29yZCB9XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWdlbmVyaWMta2V5d29yZHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2VuZXJpYy1rZXl3b3Jkcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dlbmVyaWMta2V5d29yZHMuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIERyb3Bkb3duU2VsZWN0b3JDb21wb25lbnQsXG4gICAgVWlJbnB1dHNNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFVpV2lkZ2V0c01vZHVsZSxcbiAgICBBdXRvY29tcGxldGVDb21wb25lbnQsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIE5nSWNvbkNvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgcHJvdmlkZUljb25zKHtcbiAgICAgIG1hdFdhcm5pbmdBbWJlck91dGxpbmUsXG4gICAgfSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEdlbmVyaWNLZXl3b3Jkc0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGtleXdvcmRzOiBLZXl3b3JkW11cbiAgQElucHV0KCkga2V5d29yZFR5cGVzOiBLZXl3b3JkVHlwZVtdXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmdcbiAgQElucHV0KCkgYWxsb3dTdWJtaXQ6IGJvb2xlYW5cbiAgQE91dHB1dCgpIGNoYW5nZWRLZXl3b3JkczogRXZlbnRFbWl0dGVyPEtleXdvcmRbXT4gPSBuZXcgRXZlbnRFbWl0dGVyKClcbiAgQE91dHB1dCgpIGFkZGVkS2V5d29yZDogRXZlbnRFbWl0dGVyPEtleXdvcmQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG4gIEBPdXRwdXQoKSBkZWxldGVkS2V5d29yZDogRXZlbnRFbWl0dGVyPEtleXdvcmQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG5cbiAgZGlzcGxheVdpdGhGbiA9IChpdGVtOiBBdXRvY29tcGxldGVJdGVtKSA9PiB7XG4gICAgcmV0dXJuIGAke2l0ZW0udGl0bGV9ICgke2l0ZW0udmFsdWUudGhlc2F1cnVzPy5uYW1lfSlgXG4gIH1cblxuICBhdXRvQ29tcGxldGVBY3Rpb24gPSAocXVlcnk6IHN0cmluZykgPT4ge1xuICAgIHJldHVybiB0aGlzLnBsYXRmb3JtU2VydmljZS5zZWFyY2hLZXl3b3JkcyhxdWVyeSwgdGhpcy5rZXl3b3JkVHlwZXMpLnBpcGUoXG4gICAgICBtYXAoKGtleXdvcmRzKSA9PlxuICAgICAgICBrZXl3b3Jkcy5tYXAoKGtleXdvcmQpID0+IHtcbiAgICAgICAgICByZXR1cm4geyB0aXRsZToga2V5d29yZC5sYWJlbCwgdmFsdWU6IGtleXdvcmQgfVxuICAgICAgICB9KVxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcGxhdGZvcm1TZXJ2aWNlOiBQbGF0Zm9ybVNlcnZpY2VJbnRlcmZhY2UpIHt9XG5cbiAgaGFuZGxlSXRlbVNlbGVjdGlvbihpdGVtOiBBdXRvY29tcGxldGVJdGVtKSB7XG4gICAgdGhpcy5hZGRLZXl3b3JkKGl0ZW0udmFsdWUpXG4gIH1cblxuICBhZGRLZXl3b3JkKGtleXdvcmQ6IEtleXdvcmQpIHtcbiAgICBjb25zdCBkdXBsaWNhdGVkS2V5d29yZCA9IHRoaXMua2V5d29yZHMuZmluZChcbiAgICAgIChrKSA9PiBrLmxhYmVsID09PSBrZXl3b3JkLmxhYmVsXG4gICAgKVxuICAgIGlmICghZHVwbGljYXRlZEtleXdvcmQpIHtcbiAgICAgIHRoaXMua2V5d29yZHMgPSBbLi4udGhpcy5rZXl3b3Jkcywga2V5d29yZF1cbiAgICAgIHRoaXMuY2hhbmdlZEtleXdvcmRzLmVtaXQodGhpcy5rZXl3b3JkcylcbiAgICAgIHRoaXMuYWRkZWRLZXl3b3JkLmVtaXQoa2V5d29yZClcbiAgICB9XG4gIH1cblxuICByZW1vdmVLZXl3b3JkKGtleXdvcmQ6IEtleXdvcmQpIHtcbiAgICB0aGlzLmtleXdvcmRzID0gdGhpcy5rZXl3b3Jkcy5maWx0ZXIoKGspID0+IGsubGFiZWwgIT09IGtleXdvcmQubGFiZWwpXG4gICAgdGhpcy5jaGFuZ2VkS2V5d29yZHMuZW1pdCh0aGlzLmtleXdvcmRzKVxuICAgIHRoaXMuZGVsZXRlZEtleXdvcmQuZW1pdChrZXl3b3JkKVxuICB9XG5cbiAgaXNQbGFjZVdpdGhvdXRFeHRlbnQoa2V5d29yZDogS2V5d29yZCk6IGJvb2xlYW4ge1xuICAgIGlmIChrZXl3b3JkLnR5cGUgIT09ICdwbGFjZScpIHJldHVybiBmYWxzZVxuICAgIHJldHVybiAha2V5d29yZC5iYm94XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC00XCI+XG4gIDxnbi11aS1hdXRvY29tcGxldGVcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFtkaXNwbGF5V2l0aEZuXT1cImRpc3BsYXlXaXRoRm5cIlxuICAgIFthY3Rpb25dPVwiYXV0b0NvbXBsZXRlQWN0aW9uXCJcbiAgICAoaXRlbVNlbGVjdGVkKT1cImhhbmRsZUl0ZW1TZWxlY3Rpb24oJGV2ZW50KVwiXG4gICAgW3ByZXZlbnRDb21wbGV0ZU9uU2VsZWN0aW9uXT1cImZhbHNlXCJcbiAgICBbbWluQ2hhcmFjdGVyQ291bnRdPVwiMVwiXG4gICAgW2FsbG93U3VibWl0XT1cImZhbHNlXCJcbiAgICBbY2xlYXJPblNlbGVjdGlvbl09XCJ0cnVlXCJcbiAgPjwvZ24tdWktYXV0b2NvbXBsZXRlPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBnYXAtMiBmbGV4LXdyYXBcIj5cbiAgICA8Z24tdWktYmFkZ2VcbiAgICAgICpuZ0Zvcj1cImxldCBrZXl3b3JkIG9mIGtleXdvcmRzXCJcbiAgICAgIFtyZW1vdmFibGVdPVwidHJ1ZVwiXG4gICAgICAoYmFkZ2VSZW1vdmVDbGlja2VkKT1cInJlbW92ZUtleXdvcmQoa2V5d29yZClcIlxuICAgICAgPnt7IGtleXdvcmQubGFiZWwgfX1cblxuICAgICAgPG5nLWljb25cbiAgICAgICAgKm5nSWY9XCJpc1BsYWNlV2l0aG91dEV4dGVudChrZXl3b3JkKVwiXG4gICAgICAgIFt0aXRsZV09XCInZWRpdG9yLnJlY29yZC5mb3JtLmtleXdvcmRzLnBsYWNlLndpdGhvdXRFeHRlbnQnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgY2xhc3M9XCJiYWRnZS13YXJuaW5nXCJcbiAgICAgICAgbmFtZT1cIm1hdFdhcm5pbmdBbWJlck91dGxpbmVcIlxuICAgICAgPjwvbmctaWNvbj5cbiAgICA8L2duLXVpLWJhZGdlPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1rZXl3b3Jkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvY29tcG9uZW50cy9nZW5lcmljLWtleXdvcmRzL2dlbmVyaWMta2V5d29yZHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvZ2VuZXJpYy1rZXl3b3Jkcy9nZW5lcmljLWtleXdvcmRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQTtBQUNySCxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLHlCQUF5QixFQUN6QixjQUFjLEdBQ2YsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMENBQTBDLENBQUE7QUFDMUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUcxQixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUNMLGVBQWUsRUFDZixZQUFZLEdBRWIsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN2QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQTs7Ozs7O0FBeUJ6RSxNQUFNLE9BQU8sd0JBQXdCO0lBdUJuQyxZQUFvQixlQUF5QztRQUF6QyxvQkFBZSxHQUFmLGVBQWUsQ0FBMEI7UUFsQm5ELG9CQUFlLEdBQTRCLElBQUks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Q0g7NkZBR1EsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDSSxlQUFlO3NCQUF4QixNQUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFBsYXRmb3JtU2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL3BsYXRmb3JtLnNlcnZpY2UuaW50ZXJmYWNlJ1xuaW1wb3J0IHtcbiAgQXV0b2NvbXBsZXRlQ29tcG9uZW50LFxuICBEcm9wZG93blNlbGVjdG9yQ29tcG9uZW50LFxuICBVaUlucHV0c01vZHVsZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgVWlXaWRnZXRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS93aWRnZXRzL3NyYydcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBLZXl3b3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgS2V5d29yZFR5cGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC90aGVzYXVydXMnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHtcbiAgTmdJY29uQ29tcG9uZW50LFxuICBwcm92aWRlSWNvbnMsXG4gIHByb3ZpZGVOZ0ljb25zQ29uZmlnLFxufSBmcm9tICdAbmctaWNvbnMvY29yZSdcbmltcG9ydCB7IG1hdFdhcm5pbmdBbWJlck91dGxpbmUgfSBmcm9tICdAbmctaWNvbnMvbWF0ZXJpYWwtaWNvbnMvb3V0bGluZSdcblxudHlwZSBBdXRvY29tcGxldGVJdGVtID0geyB0aXRsZTogc3RyaW5nOyB2YWx1ZTogS2V5d29yZCB9XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWdlbmVyaWMta2V5d29yZHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2VuZXJpYy1rZXl3b3Jkcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dlbmVyaWMta2V5d29yZHMuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIERyb3Bkb3duU2VsZWN0b3JDb21wb25lbnQsXG4gICAgVWlJbnB1dHNNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFVpV2lkZ2V0c01vZHVsZSxcbiAgICBBdXRvY29tcGxldGVDb21wb25lbnQsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIE5nSWNvbkNvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgcHJvdmlkZUljb25zKHtcbiAgICAgIG1hdFdhcm5pbmdBbWJlck91dGxpbmUsXG4gICAgfSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEdlbmVyaWNLZXl3b3Jkc0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGtleXdvcmRzOiBLZXl3b3JkW11cbiAgQElucHV0KCkga2V5d29yZFR5cGVzOiBLZXl3b3JkVHlwZVtdXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmdcbiAgQElucHV0KCkgYWxsb3dTdWJtaXQ6IGJvb2xlYW5cbiAgQE91dHB1dCgpIGNoYW5nZWRLZXl3b3JkczogRXZlbnRFbWl0dGVyPEtleXdvcmRbXT4gPSBuZXcgRXZlbnRFbWl0dGVyKClcbiAgQE91dHB1dCgpIGFkZGVkS2V5d29yZDogRXZlbnRFbWl0dGVyPEtleXdvcmQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG4gIEBPdXRwdXQoKSBkZWxldGVkS2V5d29yZDogRXZlbnRFbWl0dGVyPEtleXdvcmQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG5cbiAgZGlzcGxheVdpdGhGbiA9IChpdGVtOiBBdXRvY29tcGxldGVJdGVtKSA9PiB7XG4gICAgcmV0dXJuIGAke2l0ZW0udGl0bGV9ICgke2l0ZW0udmFsdWUudGhlc2F1cnVzPy5uYW1lfSlgXG4gIH1cblxuICBhdXRvQ29tcGxldGVBY3Rpb24gPSAocXVlcnk6IHN0cmluZykgPT4ge1xuICAgIHJldHVybiB0aGlzLnBsYXRmb3JtU2VydmljZS5zZWFyY2hLZXl3b3JkcyhxdWVyeSwgdGhpcy5rZXl3b3JkVHlwZXMpLnBpcGUoXG4gICAgICBtYXAoKGtleXdvcmRzKSA9PlxuICAgICAgICBrZXl3b3Jkcy5tYXAoKGtleXdvcmQpID0+IHtcbiAgICAgICAgICByZXR1cm4geyB0aXRsZToga2V5d29yZC5sYWJlbCwgdmFsdWU6IGtleXdvcmQgfVxuICAgICAgICB9KVxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcGxhdGZvcm1TZXJ2aWNlOiBQbGF0Zm9ybVNlcnZpY2VJbnRlcmZhY2UpIHt9XG5cbiAgaGFuZGxlSXRlbVNlbGVjdGlvbihpdGVtOiBBdXRvY29tcGxldGVJdGVtKSB7XG4gICAgdGhpcy5hZGRLZXl3b3JkKGl0ZW0udmFsdWUpXG4gIH1cblxuICBhZGRLZXl3b3JkKGtleXdvcmQ6IEtleXdvcmQpIHtcbiAgICBjb25zdCBkdXBsaWNhdGVkS2V5d29yZCA9IHRoaXMua2V5d29yZHMuZmluZChcbiAgICAgIChrKSA9PiBrLmxhYmVsID09PSBrZXl3b3JkLmxhYmVsXG4gICAgKVxuICAgIGlmICghZHVwbGljYXRlZEtleXdvcmQpIHtcbiAgICAgIHRoaXMua2V5d29yZHMgPSBbLi4udGhpcy5rZXl3b3Jkcywga2V5d29yZF1cbiAgICAgIHRoaXMuY2hhbmdlZEtleXdvcmRzLmVtaXQodGhpcy5rZXl3b3JkcylcbiAgICAgIHRoaXMuYWRkZWRLZXl3b3JkLmVtaXQoa2V5d29yZClcbiAgICB9XG4gIH1cblxuICByZW1vdmVLZXl3b3JkKGtleXdvcmQ6IEtleXdvcmQpIHtcbiAgICB0aGlzLmtleXdvcmRzID0gdGhpcy5rZXl3b3Jkcy5maWx0ZXIoKGspID0+IGsubGFiZWwgIT09IGtleXdvcmQubGFiZWwpXG4gICAgdGhpcy5jaGFuZ2VkS2V5d29yZHMuZW1pdCh0aGlzLmtleXdvcmRzKVxuICAgIHRoaXMuZGVsZXRlZEtleXdvcmQuZW1pdChrZXl3b3JkKVxuICB9XG5cbiAgaXNQbGFjZVdpdGhvdXRFeHRlbnQoa2V5d29yZDogS2V5d29yZCk6IGJvb2xlYW4ge1xuICAgIGlmIChrZXl3b3JkLnR5cGUgIT09ICdwbGFjZScpIHJldHVybiBmYWxzZVxuICAgIHJldHVybiAha2V5d29yZC5iYm94XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC00XCI+XG4gIDxnbi11aS1hdXRvY29tcGxldGVcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFtkaXNwbGF5V2l0aEZuXT1cImRpc3BsYXlXaXRoRm5cIlxuICAgIFthY3Rpb25dPVwiYXV0b0NvbXBsZXRlQWN0aW9uXCJcbiAgICAoaXRlbVNlbGVjdGVkKT1cImhhbmRsZUl0ZW1TZWxlY3Rpb24oJGV2ZW50KVwiXG4gICAgW3ByZXZlbnRDb21wbGV0ZU9uU2VsZWN0aW9uXT1cImZhbHNlXCJcbiAgICBbbWluQ2hhcmFjdGVyQ291bnRdPVwiMVwiXG4gICAgW2FsbG93U3VibWl0XT1cImZhbHNlXCJcbiAgICBbY2xlYXJPblNlbGVjdGlvbl09XCJ0cnVlXCJcbiAgPjwvZ24tdWktYXV0b2NvbXBsZXRlPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBnYXAtMiBmbGV4LXdyYXBcIj5cbiAgICA8Z24tdWktYmFkZ2VcbiAgICAgICpuZ0Zvcj1cImxldCBrZXl3b3JkIG9mIGtleXdvcmRzXCJcbiAgICAgIFtyZW1vdmFibGVdPVwidHJ1ZVwiXG4gICAgICAoYmFkZ2VSZW1vdmVDbGlja2VkKT1cInJlbW92ZUtleXdvcmQoa2V5d29yZClcIlxuICAgICAgPnt7IGtleXdvcmQubGFiZWwgfX1cblxuICAgICAgPG5nLWljb25cbiAgICAgICAgKm5nSWY9XCJpc1BsYWNlV2l0aG91dEV4dGVudChrZXl3b3JkKVwiXG4gICAgICAgIFt0aXRsZV09XCInZWRpdG9yLnJlY29yZC5mb3JtLmtleXdvcmRzLnBsYWNlLndpdGhvdXRFeHRlbnQnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgY2xhc3M9XCJiYWRnZS13YXJuaW5nXCJcbiAgICAgICAgbmFtZT1cIm1hdFdhcm5pbmdBbWJlck91dGxpbmVcIlxuICAgICAgPjwvbmctaWNvbj5cbiAgICA8L2duLXVpLWJhZGdlPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19