geonetwork-ui 2.4.0-dev.b0bcda82 → 2.4.0-dev.c2a3cdd1

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 (520) hide show
  1. package/esm2022/libs/api/metadata-converter/src/index.mjs +2 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +10 -3
  3. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.mjs +1 -1
  4. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.mjs +5 -5
  5. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +7 -4
  6. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +10 -7
  7. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +11 -16
  8. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +6 -6
  9. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +28 -33
  10. package/esm2022/libs/api/metadata-converter/src/lib/xml-utils.mjs +18 -2
  11. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +78 -39
  12. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.mjs +11 -1
  13. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +51 -7
  14. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  15. package/esm2022/libs/common/domain/src/lib/model/user/user.model.mjs +1 -1
  16. package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
  17. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  18. package/esm2022/libs/data-access/gn4/src/fixtures/site.fixtures.mjs +5 -5
  19. package/esm2022/libs/data-access/gn4/src/fixtures/ui.fixtures.mjs +3 -3
  20. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +1 -1
  21. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +1 -1
  22. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +1 -1
  23. package/esm2022/libs/feature/editor/src/index.mjs +2 -1
  24. package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +2 -1
  25. package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +6 -1
  26. package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +4 -1
  27. package/esm2022/libs/feature/editor/src/lib/components/contact-card/contact-card.component.mjs +4 -16
  28. package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +80 -0
  29. package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +93 -0
  30. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +71 -0
  31. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.mjs +42 -67
  32. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.mjs +19 -0
  33. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +31 -40
  34. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.mjs +11 -9
  35. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +101 -0
  36. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.mjs +148 -0
  37. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.mjs +22 -25
  38. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.mjs +93 -11
  39. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.mjs +12 -16
  40. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.mjs +9 -8
  41. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +140 -5
  42. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +41 -69
  43. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +17 -15
  44. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +42 -65
  45. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +2 -2
  46. package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +5 -3
  47. package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +8 -8
  48. package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +6 -4
  49. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +41 -7
  50. package/esm2022/libs/feature/editor/src/lib/models/editor-config.model.mjs +1 -1
  51. package/esm2022/libs/feature/editor/src/lib/services/editor.service.mjs +5 -1
  52. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +6 -6
  53. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.mjs +7 -6
  54. package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +8 -5
  55. package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +6 -7
  56. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +8 -7
  57. package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +7 -6
  58. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +7 -26
  59. package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +29 -13
  60. package/esm2022/libs/feature/map/src/lib/style/map-style.fixtures.mjs +3 -3
  61. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +1 -1
  62. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +1 -1
  63. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +1 -1
  64. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +4 -2
  65. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +3 -3
  66. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +5 -4
  67. package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +3 -3
  68. package/esm2022/libs/ui/elements/src/index.mjs +2 -2
  69. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +2 -2
  70. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +1 -1
  71. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +2 -2
  72. package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +6 -6
  73. package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +2 -2
  74. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +5 -5
  75. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +7 -4
  76. package/esm2022/libs/ui/inputs/src/index.mjs +6 -1
  77. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +7 -4
  78. package/esm2022/libs/ui/inputs/src/lib/badge/badge.component.mjs +5 -3
  79. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +8 -1
  80. package/esm2022/libs/ui/inputs/src/lib/date-picker/date-picker.component.mjs +11 -4
  81. package/esm2022/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.mjs +9 -3
  82. package/esm2022/libs/ui/inputs/src/lib/editable-label/editable-label.directive.mjs +26 -24
  83. package/esm2022/libs/ui/inputs/src/lib/file-input/file-input.component.mjs +87 -0
  84. package/esm2022/libs/ui/inputs/src/lib/image-input/image-input.component.mjs +19 -15
  85. package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +32 -0
  86. package/esm2022/libs/ui/inputs/src/lib/text-area/text-area.component.mjs +7 -21
  87. package/esm2022/libs/ui/inputs/src/lib/text-input/text-input.component.mjs +6 -17
  88. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +3 -7
  89. package/esm2022/libs/ui/inputs/src/lib/url-input/url-input.component.mjs +43 -0
  90. package/esm2022/libs/ui/layout/src/index.mjs +3 -1
  91. package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +5 -3
  92. package/esm2022/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.mjs +29 -0
  93. package/esm2022/libs/ui/layout/src/lib/sortable-list/sortable-list.component.mjs +43 -0
  94. package/esm2022/libs/ui/map/src/lib/ui-map.module.mjs +3 -3
  95. package/esm2022/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.mjs +7 -7
  96. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +8 -8
  97. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +10 -10
  98. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +1 -1
  99. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +1 -1
  100. package/esm2022/libs/util/shared/src/lib/services/theme.service.mjs +2 -1
  101. package/esm2022/libs/util/shared/src/lib/utils/bytes-convert.mjs +4 -1
  102. package/esm2022/translations/de.json +42 -3
  103. package/esm2022/translations/en.json +41 -2
  104. package/esm2022/translations/es.json +39 -0
  105. package/esm2022/translations/fr.json +45 -6
  106. package/esm2022/translations/it.json +41 -2
  107. package/esm2022/translations/nl.json +39 -0
  108. package/esm2022/translations/pt.json +39 -0
  109. package/fesm2022/geonetwork-ui.mjs +2915 -1938
  110. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  111. package/libs/api/metadata-converter/src/index.d.ts +1 -0
  112. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  113. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +3 -3
  114. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  115. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts +2 -6
  116. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts.map +1 -1
  117. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +2 -2
  118. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  119. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts +1 -1
  120. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
  121. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -1
  122. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts +4 -5
  123. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  124. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +7 -7
  125. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  126. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts +6 -0
  127. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts.map +1 -1
  128. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +12 -7
  129. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  130. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts.map +1 -1
  131. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +22 -2
  132. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  133. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +7 -6
  134. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  135. package/libs/common/domain/src/lib/model/user/user.model.d.ts +1 -1
  136. package/libs/common/domain/src/lib/model/user/user.model.d.ts.map +1 -1
  137. package/libs/common/domain/src/lib/platform.service.interface.d.ts +16 -0
  138. package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
  139. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +7 -0
  140. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  141. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts +2 -2
  142. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts.map +1 -1
  143. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts +1 -1
  144. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts.map +1 -1
  145. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +2 -2
  146. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  147. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +6 -6
  148. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  149. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +3 -3
  150. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  151. package/libs/feature/editor/src/index.d.ts +1 -0
  152. package/libs/feature/editor/src/index.d.ts.map +1 -1
  153. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +1 -0
  154. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -1
  155. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts +5 -0
  156. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -1
  157. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +1 -0
  158. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -1
  159. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts +1 -5
  160. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts.map +1 -1
  161. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts +33 -0
  162. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts.map +1 -0
  163. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts +33 -0
  164. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts.map +1 -0
  165. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts +15 -0
  166. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -0
  167. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts +11 -17
  168. 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
  169. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.d.ts +9 -0
  170. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.d.ts.map +1 -0
  171. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts +11 -19
  172. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -1
  173. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts +6 -4
  174. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts.map +1 -1
  175. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +22 -0
  176. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts.map +1 -0
  177. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.d.ts +35 -0
  178. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.d.ts.map +1 -0
  179. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts +10 -12
  180. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts.map +1 -1
  181. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts +24 -4
  182. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts.map +1 -1
  183. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts +4 -6
  184. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts.map +1 -1
  185. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts +4 -3
  186. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts.map +1 -1
  187. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts +28 -0
  188. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts.map +1 -1
  189. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts +10 -18
  190. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts.map +1 -1
  191. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts +5 -5
  192. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts.map +1 -1
  193. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +18 -28
  194. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  195. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts +1 -1
  196. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts.map +1 -1
  197. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts +5 -3
  198. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts.map +1 -1
  199. package/libs/feature/editor/src/lib/feature-editor.module.d.ts +2 -1
  200. package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
  201. package/libs/feature/editor/src/lib/fields.config.d.ts +10 -1
  202. package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
  203. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts +6 -0
  204. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts.map +1 -1
  205. package/libs/feature/editor/src/lib/services/editor.service.d.ts +1 -0
  206. package/libs/feature/editor/src/lib/services/editor.service.d.ts.map +1 -1
  207. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts +1 -1
  208. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts.map +1 -1
  209. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts +6 -6
  210. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts.map +1 -1
  211. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts +1 -1
  212. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -1
  213. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts +1 -1
  214. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
  215. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts +1 -1
  216. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -1
  217. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts +1 -1
  218. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts.map +1 -1
  219. package/libs/feature/map/src/lib/feature-map.module.d.ts +16 -21
  220. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  221. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts +1 -1
  222. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
  223. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts +2 -2
  224. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts.map +1 -1
  225. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +3 -3
  226. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  227. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +2 -2
  228. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  229. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +2 -2
  230. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  231. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +7 -7
  232. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  233. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +1 -0
  234. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -1
  235. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts +2 -2
  236. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts.map +1 -1
  237. package/libs/ui/elements/src/index.d.ts +1 -1
  238. package/libs/ui/elements/src/index.d.ts.map +1 -1
  239. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +2 -2
  240. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  241. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -7
  242. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  243. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +2 -2
  244. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  245. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts +2 -2
  246. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts.map +1 -1
  247. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +1 -1
  248. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +2 -1
  249. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  250. package/libs/ui/inputs/src/index.d.ts +5 -0
  251. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  252. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
  253. package/libs/ui/inputs/src/lib/badge/badge.component.d.ts.map +1 -1
  254. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  255. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  256. package/libs/ui/inputs/src/lib/date-picker/date-picker.component.d.ts.map +1 -1
  257. package/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.d.ts.map +1 -1
  258. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts +5 -3
  259. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts.map +1 -1
  260. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts +24 -0
  261. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts.map +1 -0
  262. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts +4 -5
  263. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts.map +1 -1
  264. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts +16 -0
  265. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts.map +1 -0
  266. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts +0 -4
  267. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts.map +1 -1
  268. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts +2 -4
  269. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts.map +1 -1
  270. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +34 -35
  271. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  272. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts +18 -0
  273. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts.map +1 -0
  274. package/libs/ui/layout/src/index.d.ts +2 -0
  275. package/libs/ui/layout/src/index.d.ts.map +1 -1
  276. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts +2 -2
  277. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts.map +1 -1
  278. package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts +1 -1
  279. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts +20 -0
  280. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts.map +1 -0
  281. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts +14 -0
  282. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts.map +1 -0
  283. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts +3 -3
  284. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts.map +1 -1
  285. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +3 -3
  286. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  287. package/libs/util/app-config/src/lib/fixtures.d.ts +8 -8
  288. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  289. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  290. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  291. package/libs/util/shared/src/lib/links/link-utils.d.ts +6 -6
  292. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  293. package/libs/util/shared/src/lib/services/theme.service.d.ts.map +1 -1
  294. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts +2 -1
  295. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts.map +1 -1
  296. package/package.json +1 -1
  297. package/src/libs/api/metadata-converter/src/index.ts +1 -0
  298. package/src/libs/api/metadata-converter/src/lib/fixtures/generic.records.ts +7 -2
  299. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +1 -1
  300. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +1 -1
  301. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +1 -1
  302. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +18 -16
  303. package/src/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.ts +2 -6
  304. package/src/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.ts +4 -4
  305. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +12 -4
  306. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +14 -8
  307. package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +8 -15
  308. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +13 -15
  309. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +48 -63
  310. package/src/libs/api/metadata-converter/src/lib/xml-utils.ts +20 -1
  311. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +132 -68
  312. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.ts +12 -1
  313. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +90 -15
  314. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +8 -7
  315. package/src/libs/common/domain/src/lib/model/user/user.model.ts +1 -1
  316. package/src/libs/common/domain/src/lib/platform.service.interface.ts +30 -0
  317. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +10 -0
  318. package/src/libs/common/fixtures/src/index.ts +1 -1
  319. package/src/libs/common/fixtures/src/lib/editor/editor.fixtures.ts +37 -37
  320. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-request.ts → aggregations-request.fixtures.ts} +1 -3
  321. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-response.ts → aggregations-response.fixtures.ts} +6 -8
  322. package/src/libs/common/fixtures/src/lib/elasticsearch/{full-response.ts → full-response.fixtures.ts} +1 -3
  323. package/src/libs/common/fixtures/src/lib/elasticsearch/index.ts +5 -5
  324. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +1 -3
  325. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata.fixtures.ts +1739 -1742
  326. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-requests.ts → search-requests.fixtures.ts} +1 -3
  327. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-responses.ts → search-responses.fixtures.ts} +4 -6
  328. package/src/libs/common/fixtures/src/lib/geojson.fixtures.ts +57178 -57195
  329. package/src/libs/common/fixtures/src/lib/gn4/groups.fixtures.ts +2 -4
  330. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +233 -164
  331. package/src/libs/common/fixtures/src/lib/ol-feature.fixtures.ts +10 -0
  332. package/src/libs/common/fixtures/src/lib/organisations.fixture.ts +37 -3
  333. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +9 -7
  334. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +9 -9
  335. package/src/libs/common/fixtures/src/lib/repository.fixtures.ts +4 -4
  336. package/src/libs/common/fixtures/src/lib/search/aggregations.ts +2 -3
  337. package/src/libs/common/fixtures/src/lib/user-feedbacks.fixtures.ts +14 -15
  338. package/src/libs/common/fixtures/src/lib/user.fixtures.ts +32 -15
  339. package/src/libs/data-access/gn4/src/fixtures/site.fixtures.ts +4 -4
  340. package/src/libs/data-access/gn4/src/fixtures/ui.fixtures.ts +2 -2
  341. package/src/libs/feature/catalog/src/lib/sources/sources.fixture.ts +1 -1
  342. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +3 -3
  343. package/src/libs/feature/dataviz/src/lib/figure/figure.fixtures.ts +2 -2
  344. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +6 -6
  345. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +4 -4
  346. package/src/libs/feature/editor/src/index.ts +1 -0
  347. package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +2 -0
  348. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +15 -0
  349. package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +4 -0
  350. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.html +12 -22
  351. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.ts +1 -13
  352. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.html +26 -0
  353. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +90 -0
  354. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.html +43 -0
  355. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +129 -0
  356. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.html +35 -0
  357. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +79 -0
  358. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.css +4 -0
  359. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.html +13 -23
  360. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +47 -107
  361. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.html +4 -0
  362. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.ts +21 -0
  363. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.html +7 -16
  364. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +44 -45
  365. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.css +8 -0
  366. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.ts +13 -5
  367. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.css +0 -0
  368. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +4 -0
  369. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.ts +128 -0
  370. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.css +0 -0
  371. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.html +34 -0
  372. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.ts +182 -0
  373. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.html +1 -1
  374. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.ts +18 -29
  375. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.html +11 -5
  376. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +107 -7
  377. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.html +15 -8
  378. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.ts +11 -14
  379. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.html +5 -3
  380. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.ts +11 -4
  381. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +20 -1
  382. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +212 -1
  383. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.css +4 -0
  384. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.html +31 -4
  385. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +43 -87
  386. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.css +4 -0
  387. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.html +16 -14
  388. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +17 -15
  389. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +106 -81
  390. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +45 -67
  391. package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +1 -1
  392. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.html +32 -29
  393. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +9 -3
  394. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +1 -1
  395. package/src/libs/feature/editor/src/lib/feature-editor.module.ts +2 -1
  396. package/src/libs/feature/editor/src/lib/fields.config.ts +45 -6
  397. package/src/libs/feature/editor/src/lib/models/editor-config.model.ts +12 -0
  398. package/src/libs/feature/editor/src/lib/services/editor.service.ts +7 -0
  399. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.ts +3 -0
  400. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.ts +12 -8
  401. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +5 -0
  402. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.html +1 -1
  403. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +10 -7
  404. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.html +1 -1
  405. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +5 -0
  406. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.html +1 -1
  407. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.ts +6 -1
  408. package/src/libs/feature/map/src/lib/feature-map.module.ts +2 -15
  409. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +24 -1
  410. package/src/libs/feature/map/src/lib/map-context/map-context.fixtures.ts +26 -22
  411. package/src/libs/feature/map/src/lib/style/map-style.fixtures.ts +29 -27
  412. package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +3 -3
  413. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +2 -2
  414. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +2 -2
  415. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +5 -1
  416. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +1 -0
  417. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +1 -0
  418. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +10 -1
  419. package/src/libs/feature/search/src/lib/state/fixtures/search-state.fixtures.ts +2 -2
  420. package/src/libs/ui/dataviz/src/lib/chart/chart.fixtures.ts +2 -2
  421. package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +2 -2
  422. package/src/libs/ui/elements/src/index.ts +1 -1
  423. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +4 -4
  424. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +7 -7
  425. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +3 -3
  426. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.html +13 -20
  427. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +1 -1
  428. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.css +5 -0
  429. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +2 -2
  430. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +6 -1
  431. package/src/libs/ui/inputs/src/index.ts +5 -0
  432. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.css +25 -18
  433. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +38 -24
  434. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +4 -1
  435. package/src/libs/ui/inputs/src/lib/badge/badge.component.html +12 -3
  436. package/src/libs/ui/inputs/src/lib/badge/badge.component.ts +2 -1
  437. package/src/libs/ui/inputs/src/lib/button/button.component.ts +15 -1
  438. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.css +7 -2
  439. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.html +14 -6
  440. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.ts +7 -1
  441. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.css +7 -2
  442. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.html +28 -23
  443. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.ts +7 -1
  444. package/src/libs/ui/inputs/src/lib/editable-label/editable-label.directive.ts +40 -26
  445. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.css +4 -0
  446. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.html +89 -0
  447. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +92 -0
  448. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.css +4 -0
  449. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.html +76 -68
  450. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.ts +17 -14
  451. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.css +4 -3
  452. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.html +0 -1
  453. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +1 -2
  454. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.html +3 -2
  455. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.ts +3 -28
  456. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.html +4 -3
  457. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.ts +4 -16
  458. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +0 -3
  459. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.css +9 -0
  460. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.html +37 -0
  461. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.ts +33 -0
  462. package/src/libs/ui/layout/src/index.ts +2 -0
  463. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.html +8 -3
  464. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +4 -3
  465. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.css +0 -0
  466. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.html +15 -0
  467. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.ts +44 -0
  468. package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.html +37 -0
  469. package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.ts +11 -18
  470. package/src/libs/ui/map/src/lib/ui-map.module.ts +1 -1
  471. package/src/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.ts +7 -6
  472. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +9 -2
  473. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +5 -6
  474. package/src/libs/util/app-config/src/lib/fixtures.ts +9 -9
  475. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +4 -3
  476. package/src/libs/util/shared/src/lib/links/link-utils.ts +6 -6
  477. package/src/libs/util/shared/src/lib/services/theme.service.ts +1 -0
  478. package/src/libs/util/shared/src/lib/utils/bytes-convert.ts +4 -1
  479. package/tailwind.base.config.js +1 -0
  480. package/tailwind.base.css +49 -6
  481. package/translations/de.json +42 -3
  482. package/translations/en.json +41 -2
  483. package/translations/es.json +39 -0
  484. package/translations/fr.json +45 -6
  485. package/translations/it.json +41 -2
  486. package/translations/nl.json +39 -0
  487. package/translations/pt.json +39 -0
  488. package/translations/sk.json +39 -0
  489. package/esm2022/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.mjs +0 -131
  490. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.mjs +0 -15
  491. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.mjs +0 -17
  492. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.mjs +0 -17
  493. package/esm2022/libs/ui/elements/src/lib/sortable-list/sortable-list.component.mjs +0 -47
  494. package/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.d.ts +0 -27
  495. package/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.d.ts.map +0 -1
  496. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts +0 -8
  497. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts.map +0 -1
  498. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts +0 -8
  499. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts.map +0 -1
  500. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.d.ts +0 -8
  501. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.d.ts.map +0 -1
  502. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts +0 -22
  503. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts.map +0 -1
  504. package/src/libs/common/fixtures/src/lib/ol-feature.fixture.ts +0 -7
  505. package/src/libs/common/fixtures/src/lib/utils/freeze.ts +0 -10
  506. package/src/libs/common/fixtures/src/lib/utils/index.ts +0 -1
  507. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.html +0 -9
  508. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.ts +0 -161
  509. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.html +0 -4
  510. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.ts +0 -15
  511. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.html +0 -7
  512. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.ts +0 -16
  513. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.html +0 -13
  514. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.ts +0 -16
  515. package/src/libs/ui/elements/src/lib/sortable-list/sortable-list.component.html +0 -38
  516. /package/src/libs/feature/editor/src/lib/components/{overview-upload/overview-upload.component.css → generic-keywords/generic-keywords.component.css} +0 -0
  517. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.css → import-record/import-record.component.css} +0 -0
  518. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.css → online-resource-card/online-resource-card.component.css} +0 -0
  519. /package/src/libs/feature/editor/src/lib/components/record-form/form-field/{form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.css → form-field-date-updated/form-field-date-updated.component.css} +0 -0
  520. /package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.css +0 -0
@@ -1,16 +1,15 @@
1
- import { Component, Output, EventEmitter, Input, ChangeDetectorRef, } from '@angular/core';
1
+ import { ChangeDetectorRef, Component, EventEmitter, Input, Output, } from '@angular/core';
2
2
  import { OgcApiEndpoint } from '@camptocamp/ogc-client';
3
- import { Subject, debounceTime } from 'rxjs';
3
+ import { debounceTime, Subject } from 'rxjs';
4
4
  import { MapContextLayerTypeEnum, } from '../map-context/map-context.model';
5
5
  import { TranslateModule } from '@ngx-translate/core';
6
- import { UiInputsModule } from '../../../../../../libs/ui/inputs/src';
6
+ import { TextInputComponent, UiInputsModule, } from '../../../../../../libs/ui/inputs/src';
7
7
  import { CommonModule } from '@angular/common';
8
8
  import * as i0 from "@angular/core";
9
9
  import * as i1 from "@angular/common";
10
10
  import * as i2 from "@ngx-translate/core";
11
11
  import * as i3 from "../../../../../ui/inputs/src/lib/dropdown-selector/dropdown-selector.component";
12
12
  import * as i4 from "../../../../../ui/inputs/src/lib/button/button.component";
13
- import * as i5 from "../../../../../ui/inputs/src/lib/text-input/text-input.component";
14
13
  export class AddLayerFromOgcApiComponent {
15
14
  constructor(changeDetectorRef) {
16
15
  this.changeDetectorRef = changeDetectorRef;
@@ -112,14 +111,14 @@ export class AddLayerFromOgcApiComponent {
112
111
  }
113
112
  }
114
113
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddLayerFromOgcApiComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
115
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddLayerFromOgcApiComponent, isStandalone: true, selector: "gn-ui-add-layer-from-ogc-api", inputs: { ogcUrl: "ogcUrl" }, outputs: { layerAdded: "layerAdded" }, ngImport: i0, template: "<div class=\"flex items-center mb-5\">\n <gn-ui-text-input\n [(value)]=\"ogcUrl\"\n (valueChange)=\"urlChange.next($event)\"\n [hint]=\"'map.ogc.urlInput.hint' | translate\"\n class=\"w-96\"\n ></gn-ui-text-input>\n</div>\n\n<div *ngIf=\"errorMessage\" class=\"text-red-500 mt-2\">\n {{ errorMessage }}\n</div>\n\n<div *ngIf=\"loading\">\n <p class=\"loading-message\" translate>map.loading.service</p>\n</div>\n\n<ng-container *ngFor=\"let layer of layers\">\n <div\n *ngIf=\"shouldDisplayLayer(layer)\"\n class=\"flex items-center justify-between my-2 layer-item-tree\"\n >\n <div class=\"flex flex-col items-start w-full\">\n <p\n class=\"max-w-xs overflow-hidden overflow-ellipsis whitespace-nowrap\"\n [title]=\"layer.name\"\n >\n {{ layer.name }}\n </p>\n <div class=\"flex justify-between items-center w-full\">\n <gn-ui-dropdown-selector\n [title]=\"'Add Layer As' | translate\"\n [choices]=\"getLayerChoices(layer)\"\n (selectValue)=\"onLayerTypeSelect(layer.name, $event)\"\n [selected]=\"selectedLayerTypes[layer.name]\"\n extraBtnClass=\"w-6 h-5 !text-sm !px-2 !py-1\"\n ></gn-ui-dropdown-selector>\n <gn-ui-button\n class=\"layer-add-btn\"\n type=\"primary\"\n (buttonClick)=\"addLayer(layer.name, selectedLayerTypes[layer.name])\"\n extraClass=\"text-sm !px-2 !py-1\"\n translate\n >\n <span translate>map.layer.add</span>\n </gn-ui-button>\n </div>\n </div>\n </div>\n</ng-container>\n", styles: [".dropdown-content{display:none}.relative:hover .dropdown-content{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "ngmodule", type: UiInputsModule }, { kind: "component", type: i3.DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth", "disabled"], outputs: ["selectValue"] }, { kind: "component", type: i4.ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: i5.TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "extraClass", "hint", "required", "disabled"], outputs: ["valueChange"] }] }); }
114
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddLayerFromOgcApiComponent, isStandalone: true, selector: "gn-ui-add-layer-from-ogc-api", inputs: { ogcUrl: "ogcUrl" }, outputs: { layerAdded: "layerAdded" }, ngImport: i0, template: "<div class=\"flex items-center mb-5\">\n <gn-ui-text-input\n [(value)]=\"ogcUrl\"\n (valueChange)=\"urlChange.next($event)\"\n [placeholder]=\"'map.ogc.urlInput.hint' | translate\"\n class=\"w-96\"\n ></gn-ui-text-input>\n</div>\n\n<div *ngIf=\"errorMessage\" class=\"text-red-500 mt-2\">\n {{ errorMessage }}\n</div>\n\n<div *ngIf=\"loading\">\n <p class=\"loading-message\" translate>map.loading.service</p>\n</div>\n\n<ng-container *ngFor=\"let layer of layers\">\n <div\n *ngIf=\"shouldDisplayLayer(layer)\"\n class=\"flex items-center justify-between my-2 layer-item-tree\"\n >\n <div class=\"flex flex-col items-start w-full\">\n <p\n class=\"max-w-xs overflow-hidden overflow-ellipsis whitespace-nowrap\"\n [title]=\"layer.name\"\n >\n {{ layer.name }}\n </p>\n <div class=\"flex justify-between items-center w-full\">\n <gn-ui-dropdown-selector\n [title]=\"'Add Layer As' | translate\"\n [choices]=\"getLayerChoices(layer)\"\n (selectValue)=\"onLayerTypeSelect(layer.name, $event)\"\n [selected]=\"selectedLayerTypes[layer.name]\"\n extraBtnClass=\"w-6 h-5 !text-sm !px-2 !py-1\"\n ></gn-ui-dropdown-selector>\n <gn-ui-button\n class=\"layer-add-btn\"\n type=\"primary\"\n (buttonClick)=\"addLayer(layer.name, selectedLayerTypes[layer.name])\"\n extraClass=\"text-sm !px-2 !py-1\"\n translate\n >\n <span translate>map.layer.add</span>\n </gn-ui-button>\n </div>\n </div>\n </div>\n</ng-container>\n", styles: [".dropdown-content{display:none}.relative:hover .dropdown-content{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "ngmodule", type: UiInputsModule }, { kind: "component", type: i3.DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth", "disabled"], outputs: ["selectValue"] }, { kind: "component", type: i4.ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "extraClass", "placeholder", "required", "disabled"], outputs: ["valueChange"] }] }); }
116
115
  }
117
116
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddLayerFromOgcApiComponent, decorators: [{
118
117
  type: Component,
119
- args: [{ selector: 'gn-ui-add-layer-from-ogc-api', standalone: true, imports: [CommonModule, TranslateModule, UiInputsModule], template: "<div class=\"flex items-center mb-5\">\n <gn-ui-text-input\n [(value)]=\"ogcUrl\"\n (valueChange)=\"urlChange.next($event)\"\n [hint]=\"'map.ogc.urlInput.hint' | translate\"\n class=\"w-96\"\n ></gn-ui-text-input>\n</div>\n\n<div *ngIf=\"errorMessage\" class=\"text-red-500 mt-2\">\n {{ errorMessage }}\n</div>\n\n<div *ngIf=\"loading\">\n <p class=\"loading-message\" translate>map.loading.service</p>\n</div>\n\n<ng-container *ngFor=\"let layer of layers\">\n <div\n *ngIf=\"shouldDisplayLayer(layer)\"\n class=\"flex items-center justify-between my-2 layer-item-tree\"\n >\n <div class=\"flex flex-col items-start w-full\">\n <p\n class=\"max-w-xs overflow-hidden overflow-ellipsis whitespace-nowrap\"\n [title]=\"layer.name\"\n >\n {{ layer.name }}\n </p>\n <div class=\"flex justify-between items-center w-full\">\n <gn-ui-dropdown-selector\n [title]=\"'Add Layer As' | translate\"\n [choices]=\"getLayerChoices(layer)\"\n (selectValue)=\"onLayerTypeSelect(layer.name, $event)\"\n [selected]=\"selectedLayerTypes[layer.name]\"\n extraBtnClass=\"w-6 h-5 !text-sm !px-2 !py-1\"\n ></gn-ui-dropdown-selector>\n <gn-ui-button\n class=\"layer-add-btn\"\n type=\"primary\"\n (buttonClick)=\"addLayer(layer.name, selectedLayerTypes[layer.name])\"\n extraClass=\"text-sm !px-2 !py-1\"\n translate\n >\n <span translate>map.layer.add</span>\n </gn-ui-button>\n </div>\n </div>\n </div>\n</ng-container>\n", styles: [".dropdown-content{display:none}.relative:hover .dropdown-content{display:block}\n"] }]
118
+ args: [{ selector: 'gn-ui-add-layer-from-ogc-api', standalone: true, imports: [CommonModule, TranslateModule, UiInputsModule, TextInputComponent], template: "<div class=\"flex items-center mb-5\">\n <gn-ui-text-input\n [(value)]=\"ogcUrl\"\n (valueChange)=\"urlChange.next($event)\"\n [placeholder]=\"'map.ogc.urlInput.hint' | translate\"\n class=\"w-96\"\n ></gn-ui-text-input>\n</div>\n\n<div *ngIf=\"errorMessage\" class=\"text-red-500 mt-2\">\n {{ errorMessage }}\n</div>\n\n<div *ngIf=\"loading\">\n <p class=\"loading-message\" translate>map.loading.service</p>\n</div>\n\n<ng-container *ngFor=\"let layer of layers\">\n <div\n *ngIf=\"shouldDisplayLayer(layer)\"\n class=\"flex items-center justify-between my-2 layer-item-tree\"\n >\n <div class=\"flex flex-col items-start w-full\">\n <p\n class=\"max-w-xs overflow-hidden overflow-ellipsis whitespace-nowrap\"\n [title]=\"layer.name\"\n >\n {{ layer.name }}\n </p>\n <div class=\"flex justify-between items-center w-full\">\n <gn-ui-dropdown-selector\n [title]=\"'Add Layer As' | translate\"\n [choices]=\"getLayerChoices(layer)\"\n (selectValue)=\"onLayerTypeSelect(layer.name, $event)\"\n [selected]=\"selectedLayerTypes[layer.name]\"\n extraBtnClass=\"w-6 h-5 !text-sm !px-2 !py-1\"\n ></gn-ui-dropdown-selector>\n <gn-ui-button\n class=\"layer-add-btn\"\n type=\"primary\"\n (buttonClick)=\"addLayer(layer.name, selectedLayerTypes[layer.name])\"\n extraClass=\"text-sm !px-2 !py-1\"\n translate\n >\n <span translate>map.layer.add</span>\n </gn-ui-button>\n </div>\n </div>\n </div>\n</ng-container>\n", styles: [".dropdown-content{display:none}.relative:hover .dropdown-content{display:block}\n"] }]
120
119
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { ogcUrl: [{
121
120
  type: Input
122
121
  }], layerAdded: [{
123
122
  type: Output
124
123
  }] } });
125
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWxheWVyLWZyb20tb2djLWFwaS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvbWFwL3NyYy9saWIvYWRkLWxheWVyLWZyb20tb2djLWFwaS9hZGQtbGF5ZXItZnJvbS1vZ2MtYXBpLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9hZGQtbGF5ZXItZnJvbS1vZ2MtYXBpL2FkZC1sYXllci1mcm9tLW9nYy1hcGkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxNQUFNLEVBQ04sWUFBWSxFQUVaLEtBQUssRUFDTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzVDLE9BQU8sRUFFTCx1QkFBdUIsR0FDeEIsTUFBTSxrQ0FBa0MsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUFrQixjQUFjLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUNyRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7Ozs7Ozs7QUFVOUMsTUFBTSxPQUFPLDJCQUEyQjtJQVV0QyxZQUFvQixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQVI5QyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVksQ0FBQTtRQUVuRCxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVUsQ0FBQTtRQUNqQyxZQUFPLEdBQUcsS0FBSyxDQUFBO1FBQ2YsV0FBTSxHQUFVLEVBQUUsQ0FBQTtRQUNsQixpQkFBWSxH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T0FBTyxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUE7U0FDbEQ7SUFDSCxDQUFDOytHQTFHVSwyQkFBMkI7bUdBQTNCLDJCQUEyQiw2SkMzQnhDLDZrREFrREEsMElEekJZLFlBQVksK1BBQUUsZUFBZSxrT0FBRSxjQUFjOzs0RkFFNUMsMkJBQTJCO2tCQVB2QyxTQUFTOytCQUNFLDhCQUE4QixjQUc1QixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGNBQWMsQ0FBQzt3R0FHL0MsTUFBTTtzQkFBZCxLQUFLO2dCQUNJLFVBQVU7c0JBQW5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBJbnB1dCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBPZ2NBcGlFbmRwb2ludCB9IGZyb20gJ0BjYW1wdG9jYW1wL29nYy1jbGllbnQnXG5pbXBvcnQgeyBTdWJqZWN0LCBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHtcbiAgTWFwQ29udGV4dExheWVyTW9kZWwsXG4gIE1hcENvbnRleHRMYXllclR5cGVFbnVtLFxufSBmcm9tICcuLi9tYXAtY29udGV4dC9tYXAtY29udGV4dC5tb2RlbCdcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBEcm9wZG93bkNob2ljZSwgVWlJbnB1dHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBNYXBMYXllciB9IGZyb20gJy4uLytzdGF0ZS9tYXAubW9kZWxzJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1hZGQtbGF5ZXItZnJvbS1vZ2MtYXBpJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkZC1sYXllci1mcm9tLW9nYy1hcGkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hZGQtbGF5ZXItZnJvbS1vZ2MtYXBpLmNvbXBvbmVudC5jc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlLCBVaUlucHV0c01vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEFkZExheWVyRnJvbU9nY0FwaUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIG9nY1VybDogc3RyaW5nXG4gIEBPdXRwdXQoKSBsYXllckFkZGVkID0gbmV3IEV2ZW50RW1pdHRlcjxNYXBMYXllcj4oKVxuXG4gIHVybENoYW5nZSA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKVxuICBsb2FkaW5nID0gZmFsc2VcbiAgbGF5ZXJzOiBhbnlbXSA9IFtdXG4gIGVycm9yTWVzc2FnZTogc3RyaW5nIHwgbnVsbCA9IG51bGxcbiAgc2VsZWN0ZWRMYXllclR5cGVzOiB7IFtrZXk6IHN0cmluZ106IERyb3Bkb3duQ2hvaWNlWyd2YWx1ZSddIH0gPSB7fVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudXJsQ2hhbmdlLnBpcGUoZGVib3VuY2VUaW1lKDcwMCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmxvYWRMYXllcnMoKVxuICAgIH0pXG4gIH1cblxuICBhc3luYyBsb2FkTGF5ZXJzKCkge1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gbnVsbFxuICAgIHRyeSB7XG4gICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlXG4gICAgICBpZiAoIXRoaXMub2djVXJsLnRyaW0oKSkge1xuICAgICAgICB0aGlzLmxheWVycyA9IFtdXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgY29uc3Qgb2djRW5kcG9pbnQgPSBhd2FpdCBuZXcgT2djQXBpRW5kcG9pbnQodGhpcy5vZ2NVcmwpXG4gICAgICB0aGlzLmxheWVycyA9IGF3YWl0IG9nY0VuZHBvaW50LmFsbENvbGxlY3Rpb25zXG4gICAgICB0aGlzLnNldERlZmF1bHRMYXllclR5cGVzKClcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc3QgZXJyID0gZXJyb3IgYXMgRXJyb3JcbiAgICAgIHRoaXMubGF5ZXJzID0gW11cbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0Vycm9yIGxvYWRpbmcgbGF5ZXJzOiAnICsgZXJyLm1lc3NhZ2VcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2VcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKClcbiAgICB9XG4gIH1cblxuICBzZXREZWZhdWx0TGF5ZXJUeXBlcygpIHtcbiAgICB0aGlzLmxheWVycy5mb3JFYWNoKChsYXllcikgPT4ge1xuICAgICAgY29uc3QgY2hvaWNlcyA9IHRoaXMuZ2V0TGF5ZXJDaG9pY2VzKGxheWVyKVxuICAgICAgaWYgKGNob2ljZXMubGVuZ3RoID4gMCkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkTGF5ZXJUeXBlc1tsYXllci5uYW1lXSA9IGNob2ljZXNbMF0udmFsdWVcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgZ2V0TGF5ZXJDaG9pY2VzKGxheWVyOiBhbnkpIHtcbiAgICBjb25zdCBjaG9pY2VzID0gW11cbiAgICBpZiAobGF5ZXIuaGFzUmVjb3Jkcykge1xuICAgICAgY2hvaWNlcy5wdXNoKHsgbGFiZWw6ICdSZWNvcmRzJywgdmFsdWU6ICdyZWNvcmQnIH0pXG4gICAgfVxuICAgIGlmIChsYXllci5oYXNGZWF0dXJlcykge1xuICAgICAgY2hvaWNlcy5wdXNoKHsgbGFiZWw6ICdGZWF0dXJlcycsIHZhbHVlOiAnZmVhdHVyZXMnIH0pXG4gICAgfVxuICAgIGlmIChsYXllci5oYXNWZWN0b3JUaWxlcykge1xuICAgICAgY2hvaWNlcy5wdXNoKHsgbGFiZWw6ICdWZWN0b3IgVGlsZXMnLCB2YWx1ZTogJ3ZlY3RvclRpbGVzJyB9KVxuICAgIH1cbiAgICBpZiAobGF5ZXIuaGFzTWFwVGlsZXMpIHtcbiAgICAgIGNob2ljZXMucHVzaCh7IGxhYmVsOiAnTWFwIFRpbGVzJywgdmFsdWU6ICdtYXBUaWxlcycgfSlcbiAgICB9XG4gICAgcmV0dXJuIGNob2ljZXNcbiAgfVxuXG4gIHNob3VsZERpc3BsYXlMYXllcihsYXllcjogYW55KSB7XG4gICAgcmV0dXJuIChcbiAgICAgIGxheWVyLmhhc1JlY29yZHMgfHxcbiAgICAgIGxheWVyLmhhc0ZlYXR1cmVzIHx8XG4gICAgICBsYXllci5oYXNWZWN0b3JUaWxlcyB8fFxuICAgICAgbGF5ZXIuaGFzTWFwVGlsZXNcbiAgICApXG4gIH1cblxuICBvbkxheWVyVHlwZVNlbGVjdChsYXllck5hbWU6IHN0cmluZywgc2VsZWN0ZWRUeXBlOiBhbnkpIHtcbiAgICB0aGlzLnNlbGVjdGVkTGF5ZXJUeXBlc1tsYXllck5hbWVdID0gc2VsZWN0ZWRUeXBlXG4gICAgICA/IHNlbGVjdGVkVHlwZVxuICAgICAgOiB0aGlzLmdldExheWVyQ2hvaWNlcyhsYXllck5hbWUpWzBdPy52YWx1ZVxuICB9XG5cbiAgYXN5bmMgYWRkTGF5ZXIobGF5ZXI6IHN0cmluZywgbGF5ZXJUeXBlOiBhbnkpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3Qgb2djRW5kcG9pbnQgPSBhd2FpdCBuZXcgT2djQXBpRW5kcG9pbnQodGhpcy5vZ2NVcmwpXG4gICAgICBsZXQgbGF5ZXJVcmw6IHN0cmluZ1xuXG4gICAgICBpZiAobGF5ZXJUeXBlID09PSAndmVjdG9yVGlsZXMnKSB7XG4gICAgICAgIGxheWVyVXJsID0gYXdhaXQgb2djRW5kcG9pbnQuZ2V0VmVjdG9yVGlsZXNldFVybChsYXllcilcbiAgICAgIH0gZWxzZSBpZiAobGF5ZXJUeXBlID09PSAnbWFwVGlsZXMnKSB7XG4gICAgICAgIGxheWVyVXJsID0gYXdhaXQgb2djRW5kcG9pbnQuZ2V0TWFwVGlsZXNldFVybChsYXllcilcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxheWVyVXJsID0gYXdhaXQgb2djRW5kcG9pbnQuZ2V0Q29sbGVjdGlvbkl0ZW1zVXJsKGxheWVyLCB7XG4gICAgICAgICAgb3V0cHV0Rm9ybWF0OiAnanNvbicsXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGxheWVyVG9BZGQ6IE1hcENvbnRleHRMYXllck1vZGVsID0ge1xuICAgICAgICBuYW1lOiBsYXllcixcbiAgICAgICAgdXJsOiBsYXllclVybCxcbiAgICAgICAgdHlwZTogTWFwQ29udGV4dExheWVyVHlwZUVudW0uT0dDQVBJLFxuICAgICAgICBsYXllclR5cGU6IGxheWVyVHlwZSxcbiAgICAgIH1cbiAgICAgIHRoaXMubGF5ZXJBZGRlZC5lbWl0KHsgLi4ubGF5ZXJUb0FkZCwgdGl0bGU6IGxheWVyIH0pXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnN0IGVyciA9IGVycm9yIGFzIEVycm9yXG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBhZGRpbmcgbGF5ZXI6JywgZXJyLm1lc3NhZ2UpXG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgbWItNVwiPlxuICA8Z24tdWktdGV4dC1pbnB1dFxuICAgIFsodmFsdWUpXT1cIm9nY1VybFwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cInVybENoYW5nZS5uZXh0KCRldmVudClcIlxuICAgIFtoaW50XT1cIidtYXAub2djLnVybElucHV0LmhpbnQnIHwgdHJhbnNsYXRlXCJcbiAgICBjbGFzcz1cInctOTZcIlxuICA+PC9nbi11aS10ZXh0LWlucHV0PlxuPC9kaXY+XG5cbjxkaXYgKm5nSWY9XCJlcnJvck1lc3NhZ2VcIiBjbGFzcz1cInRleHQtcmVkLTUwMCBtdC0yXCI+XG4gIHt7IGVycm9yTWVzc2FnZSB9fVxuPC9kaXY+XG5cbjxkaXYgKm5nSWY9XCJsb2FkaW5nXCI+XG4gIDxwIGNsYXNzPVwibG9hZGluZy1tZXNzYWdlXCIgdHJhbnNsYXRlPm1hcC5sb2FkaW5nLnNlcnZpY2U8L3A+XG48L2Rpdj5cblxuPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbGF5ZXIgb2YgbGF5ZXJzXCI+XG4gIDxkaXZcbiAgICAqbmdJZj1cInNob3VsZERpc3BsYXlMYXllcihsYXllcilcIlxuICAgIGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIG15LTIgbGF5ZXItaXRlbS10cmVlXCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGl0ZW1zLXN0YXJ0IHctZnVsbFwiPlxuICAgICAgPHBcbiAgICAgICAgY2xhc3M9XCJtYXgtdy14cyBvdmVyZmxvdy1oaWRkZW4gb3ZlcmZsb3ctZWxsaXBzaXMgd2hpdGVzcGFjZS1ub3dyYXBcIlxuICAgICAgICBbdGl0bGVdPVwibGF5ZXIubmFtZVwiXG4gICAgICA+XG4gICAgICAgIHt7IGxheWVyLm5hbWUgfX1cbiAgICAgIDwvcD5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktYmV0d2VlbiBpdGVtcy1jZW50ZXIgdy1mdWxsXCI+XG4gICAgICAgIDxnbi11aS1kcm9wZG93bi1zZWxlY3RvclxuICAgICAgICAgIFt0aXRsZV09XCInQWRkIExheWVyIEFzJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgW2Nob2ljZXNdPVwiZ2V0TGF5ZXJDaG9pY2VzKGxheWVyKVwiXG4gICAgICAgICAgKHNlbGVjdFZhbHVlKT1cIm9uTGF5ZXJUeXBlU2VsZWN0KGxheWVyLm5hbWUsICRldmVudClcIlxuICAgICAgICAgIFtzZWxlY3RlZF09XCJzZWxlY3RlZExheWVyVHlwZXNbbGF5ZXIubmFtZV1cIlxuICAgICAgICAgIGV4dHJhQnRuQ2xhc3M9XCJ3LTYgaC01ICF0ZXh0LXNtICFweC0yICFweS0xXCJcbiAgICAgICAgPjwvZ24tdWktZHJvcGRvd24tc2VsZWN0b3I+XG4gICAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgICBjbGFzcz1cImxheWVyLWFkZC1idG5cIlxuICAgICAgICAgIHR5cGU9XCJwcmltYXJ5XCJcbiAgICAgICAgICAoYnV0dG9uQ2xpY2spPVwiYWRkTGF5ZXIobGF5ZXIubmFtZSwgc2VsZWN0ZWRMYXllclR5cGVzW2xheWVyLm5hbWVdKVwiXG4gICAgICAgICAgZXh0cmFDbGFzcz1cInRleHQtc20gIXB4LTIgIXB5LTFcIlxuICAgICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICA+XG4gICAgICAgICAgPHNwYW4gdHJhbnNsYXRlPm1hcC5sYXllci5hZGQ8L3NwYW4+XG4gICAgICAgIDwvZ24tdWktYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWxheWVyLWZyb20tb2djLWFwaS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvbWFwL3NyYy9saWIvYWRkLWxheWVyLWZyb20tb2djLWFwaS9hZGQtbGF5ZXItZnJvbS1vZ2MtYXBpLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9hZGQtbGF5ZXItZnJvbS1vZ2MtYXBpL2FkZC1sYXllci1mcm9tLW9nYy1hcGkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzVDLE9BQU8sRUFFTCx1QkFBdUIsR0FDeEIsTUFBTSxrQ0FBa0MsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUVMLGtCQUFrQixFQUNsQixjQUFjLEdBQ2YsTUFBTSxzQ0FBc0MsQ0FBQTtBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7Ozs7OztBQVU5QyxNQUFNLE9BQU8sMkJBQTJCO0lBVXRDLFlBQW9CLGlCQUFvQztRQUFwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBUjlDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFBO1FBRW5ELGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFBO1FBQ2pDLFlBQU8sR0FBRyxLQUFLLENBQUE7UUFDZixXQUFNLEdBQVUsRUFBRSxDQUFBO1FB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Q0FBQTtZQUMxQixPQUFPLENBQUMsS0FBSyxDQUFDLHFCQUFxQixFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQTtTQUNsRDtJQUNILENBQUM7K0dBMUdVLDJCQUEyQjttR0FBM0IsMkJBQTJCLDZKQzlCeEMsb2xEQWtEQSwwSUR0QlksWUFBWSwrUEFBRSxlQUFlLGtPQUFFLGNBQWMsaWFBQUUsa0JBQWtCOzs0RkFFaEUsMkJBQTJCO2tCQVB2QyxTQUFTOytCQUNFLDhCQUE4QixjQUc1QixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxrQkFBa0IsQ0FBQzt3R0FHbkUsTUFBTTtzQkFBZCxLQUFLO2dCQUNJLFVBQVU7c0JBQW5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE9nY0FwaUVuZHBvaW50IH0gZnJvbSAnQGNhbXB0b2NhbXAvb2djLWNsaWVudCdcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQge1xuICBNYXBDb250ZXh0TGF5ZXJNb2RlbCxcbiAgTWFwQ29udGV4dExheWVyVHlwZUVudW0sXG59IGZyb20gJy4uL21hcC1jb250ZXh0L21hcC1jb250ZXh0Lm1vZGVsJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7XG4gIERyb3Bkb3duQ2hvaWNlLFxuICBUZXh0SW5wdXRDb21wb25lbnQsXG4gIFVpSW5wdXRzTW9kdWxlLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBNYXBMYXllciB9IGZyb20gJy4uLytzdGF0ZS9tYXAubW9kZWxzJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1hZGQtbGF5ZXItZnJvbS1vZ2MtYXBpJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkZC1sYXllci1mcm9tLW9nYy1hcGkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hZGQtbGF5ZXItZnJvbS1vZ2MtYXBpLmNvbXBvbmVudC5jc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlLCBVaUlucHV0c01vZHVsZSwgVGV4dElucHV0Q29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgQWRkTGF5ZXJGcm9tT2djQXBpQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgb2djVXJsOiBzdHJpbmdcbiAgQE91dHB1dCgpIGxheWVyQWRkZWQgPSBuZXcgRXZlbnRFbWl0dGVyPE1hcExheWVyPigpXG5cbiAgdXJsQ2hhbmdlID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpXG4gIGxvYWRpbmcgPSBmYWxzZVxuICBsYXllcnM6IGFueVtdID0gW11cbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmcgfCBudWxsID0gbnVsbFxuICBzZWxlY3RlZExheWVyVHlwZXM6IHsgW2tleTogc3RyaW5nXTogRHJvcGRvd25DaG9pY2VbJ3ZhbHVlJ10gfSA9IHt9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy51cmxDaGFuZ2UucGlwZShkZWJvdW5jZVRpbWUoNzAwKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMubG9hZExheWVycygpXG4gICAgfSlcbiAgfVxuXG4gIGFzeW5jIGxvYWRMYXllcnMoKSB7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBudWxsXG4gICAgdHJ5IHtcbiAgICAgIHRoaXMubG9hZGluZyA9IHRydWVcbiAgICAgIGlmICghdGhpcy5vZ2NVcmwudHJpbSgpKSB7XG4gICAgICAgIHRoaXMubGF5ZXJzID0gW11cbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICBjb25zdCBvZ2NFbmRwb2ludCA9IGF3YWl0IG5ldyBPZ2NBcGlFbmRwb2ludCh0aGlzLm9nY1VybClcbiAgICAgIHRoaXMubGF5ZXJzID0gYXdhaXQgb2djRW5kcG9pbnQuYWxsQ29sbGVjdGlvbnNcbiAgICAgIHRoaXMuc2V0RGVmYXVsdExheWVyVHlwZXMoKVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zdCBlcnIgPSBlcnJvciBhcyBFcnJvclxuICAgICAgdGhpcy5sYXllcnMgPSBbXVxuICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnRXJyb3IgbG9hZGluZyBsYXllcnM6ICcgKyBlcnIubWVzc2FnZVxuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZVxuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKVxuICAgIH1cbiAgfVxuXG4gIHNldERlZmF1bHRMYXllclR5cGVzKCkge1xuICAgIHRoaXMubGF5ZXJzLmZvckVhY2goKGxheWVyKSA9PiB7XG4gICAgICBjb25zdCBjaG9pY2VzID0gdGhpcy5nZXRMYXllckNob2ljZXMobGF5ZXIpXG4gICAgICBpZiAoY2hvaWNlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRMYXllclR5cGVzW2xheWVyLm5hbWVdID0gY2hvaWNlc1swXS52YWx1ZVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBnZXRMYXllckNob2ljZXMobGF5ZXI6IGFueSkge1xuICAgIGNvbnN0IGNob2ljZXMgPSBbXVxuICAgIGlmIChsYXllci5oYXNSZWNvcmRzKSB7XG4gICAgICBjaG9pY2VzLnB1c2goeyBsYWJlbDogJ1JlY29yZHMnLCB2YWx1ZTogJ3JlY29yZCcgfSlcbiAgICB9XG4gICAgaWYgKGxheWVyLmhhc0ZlYXR1cmVzKSB7XG4gICAgICBjaG9pY2VzLnB1c2goeyBsYWJlbDogJ0ZlYXR1cmVzJywgdmFsdWU6ICdmZWF0dXJlcycgfSlcbiAgICB9XG4gICAgaWYgKGxheWVyLmhhc1ZlY3RvclRpbGVzKSB7XG4gICAgICBjaG9pY2VzLnB1c2goeyBsYWJlbDogJ1ZlY3RvciBUaWxlcycsIHZhbHVlOiAndmVjdG9yVGlsZXMnIH0pXG4gICAgfVxuICAgIGlmIChsYXllci5oYXNNYXBUaWxlcykge1xuICAgICAgY2hvaWNlcy5wdXNoKHsgbGFiZWw6ICdNYXAgVGlsZXMnLCB2YWx1ZTogJ21hcFRpbGVzJyB9KVxuICAgIH1cbiAgICByZXR1cm4gY2hvaWNlc1xuICB9XG5cbiAgc2hvdWxkRGlzcGxheUxheWVyKGxheWVyOiBhbnkpIHtcbiAgICByZXR1cm4gKFxuICAgICAgbGF5ZXIuaGFzUmVjb3JkcyB8fFxuICAgICAgbGF5ZXIuaGFzRmVhdHVyZXMgfHxcbiAgICAgIGxheWVyLmhhc1ZlY3RvclRpbGVzIHx8XG4gICAgICBsYXllci5oYXNNYXBUaWxlc1xuICAgIClcbiAgfVxuXG4gIG9uTGF5ZXJUeXBlU2VsZWN0KGxheWVyTmFtZTogc3RyaW5nLCBzZWxlY3RlZFR5cGU6IGFueSkge1xuICAgIHRoaXMuc2VsZWN0ZWRMYXllclR5cGVzW2xheWVyTmFtZV0gPSBzZWxlY3RlZFR5cGVcbiAgICAgID8gc2VsZWN0ZWRUeXBlXG4gICAgICA6IHRoaXMuZ2V0TGF5ZXJDaG9pY2VzKGxheWVyTmFtZSlbMF0/LnZhbHVlXG4gIH1cblxuICBhc3luYyBhZGRMYXllcihsYXllcjogc3RyaW5nLCBsYXllclR5cGU6IGFueSkge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBvZ2NFbmRwb2ludCA9IGF3YWl0IG5ldyBPZ2NBcGlFbmRwb2ludCh0aGlzLm9nY1VybClcbiAgICAgIGxldCBsYXllclVybDogc3RyaW5nXG5cbiAgICAgIGlmIChsYXllclR5cGUgPT09ICd2ZWN0b3JUaWxlcycpIHtcbiAgICAgICAgbGF5ZXJVcmwgPSBhd2FpdCBvZ2NFbmRwb2ludC5nZXRWZWN0b3JUaWxlc2V0VXJsKGxheWVyKVxuICAgICAgfSBlbHNlIGlmIChsYXllclR5cGUgPT09ICdtYXBUaWxlcycpIHtcbiAgICAgICAgbGF5ZXJVcmwgPSBhd2FpdCBvZ2NFbmRwb2ludC5nZXRNYXBUaWxlc2V0VXJsKGxheWVyKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbGF5ZXJVcmwgPSBhd2FpdCBvZ2NFbmRwb2ludC5nZXRDb2xsZWN0aW9uSXRlbXNVcmwobGF5ZXIsIHtcbiAgICAgICAgICBvdXRwdXRGb3JtYXQ6ICdqc29uJyxcbiAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgY29uc3QgbGF5ZXJUb0FkZDogTWFwQ29udGV4dExheWVyTW9kZWwgPSB7XG4gICAgICAgIG5hbWU6IGxheWVyLFxuICAgICAgICB1cmw6IGxheWVyVXJsLFxuICAgICAgICB0eXBlOiBNYXBDb250ZXh0TGF5ZXJUeXBlRW51bS5PR0NBUEksXG4gICAgICAgIGxheWVyVHlwZTogbGF5ZXJUeXBlLFxuICAgICAgfVxuICAgICAgdGhpcy5sYXllckFkZGVkLmVtaXQoeyAuLi5sYXllclRvQWRkLCB0aXRsZTogbGF5ZXIgfSlcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc3QgZXJyID0gZXJyb3IgYXMgRXJyb3JcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGFkZGluZyBsYXllcjonLCBlcnIubWVzc2FnZSlcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBtYi01XCI+XG4gIDxnbi11aS10ZXh0LWlucHV0XG4gICAgWyh2YWx1ZSldPVwib2djVXJsXCJcbiAgICAodmFsdWVDaGFuZ2UpPVwidXJsQ2hhbmdlLm5leHQoJGV2ZW50KVwiXG4gICAgW3BsYWNlaG9sZGVyXT1cIidtYXAub2djLnVybElucHV0LmhpbnQnIHwgdHJhbnNsYXRlXCJcbiAgICBjbGFzcz1cInctOTZcIlxuICA+PC9nbi11aS10ZXh0LWlucHV0PlxuPC9kaXY+XG5cbjxkaXYgKm5nSWY9XCJlcnJvck1lc3NhZ2VcIiBjbGFzcz1cInRleHQtcmVkLTUwMCBtdC0yXCI+XG4gIHt7IGVycm9yTWVzc2FnZSB9fVxuPC9kaXY+XG5cbjxkaXYgKm5nSWY9XCJsb2FkaW5nXCI+XG4gIDxwIGNsYXNzPVwibG9hZGluZy1tZXNzYWdlXCIgdHJhbnNsYXRlPm1hcC5sb2FkaW5nLnNlcnZpY2U8L3A+XG48L2Rpdj5cblxuPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbGF5ZXIgb2YgbGF5ZXJzXCI+XG4gIDxkaXZcbiAgICAqbmdJZj1cInNob3VsZERpc3BsYXlMYXllcihsYXllcilcIlxuICAgIGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIG15LTIgbGF5ZXItaXRlbS10cmVlXCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGl0ZW1zLXN0YXJ0IHctZnVsbFwiPlxuICAgICAgPHBcbiAgICAgICAgY2xhc3M9XCJtYXgtdy14cyBvdmVyZmxvdy1oaWRkZW4gb3ZlcmZsb3ctZWxsaXBzaXMgd2hpdGVzcGFjZS1ub3dyYXBcIlxuICAgICAgICBbdGl0bGVdPVwibGF5ZXIubmFtZVwiXG4gICAgICA+XG4gICAgICAgIHt7IGxheWVyLm5hbWUgfX1cbiAgICAgIDwvcD5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktYmV0d2VlbiBpdGVtcy1jZW50ZXIgdy1mdWxsXCI+XG4gICAgICAgIDxnbi11aS1kcm9wZG93bi1zZWxlY3RvclxuICAgICAgICAgIFt0aXRsZV09XCInQWRkIExheWVyIEFzJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgW2Nob2ljZXNdPVwiZ2V0TGF5ZXJDaG9pY2VzKGxheWVyKVwiXG4gICAgICAgICAgKHNlbGVjdFZhbHVlKT1cIm9uTGF5ZXJUeXBlU2VsZWN0KGxheWVyLm5hbWUsICRldmVudClcIlxuICAgICAgICAgIFtzZWxlY3RlZF09XCJzZWxlY3RlZExheWVyVHlwZXNbbGF5ZXIubmFtZV1cIlxuICAgICAgICAgIGV4dHJhQnRuQ2xhc3M9XCJ3LTYgaC01ICF0ZXh0LXNtICFweC0yICFweS0xXCJcbiAgICAgICAgPjwvZ24tdWktZHJvcGRvd24tc2VsZWN0b3I+XG4gICAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgICBjbGFzcz1cImxheWVyLWFkZC1idG5cIlxuICAgICAgICAgIHR5cGU9XCJwcmltYXJ5XCJcbiAgICAgICAgICAoYnV0dG9uQ2xpY2spPVwiYWRkTGF5ZXIobGF5ZXIubmFtZSwgc2VsZWN0ZWRMYXllclR5cGVzW2xheWVyLm5hbWVdKVwiXG4gICAgICAgICAgZXh0cmFDbGFzcz1cInRleHQtc20gIXB4LTIgIXB5LTFcIlxuICAgICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICA+XG4gICAgICAgICAgPHNwYW4gdHJhbnNsYXRlPm1hcC5sYXllci5hZGQ8L3NwYW4+XG4gICAgICAgIDwvZ24tdWktYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
@@ -4,12 +4,13 @@ import { Subject } from 'rxjs';
4
4
  import { MapContextLayerTypeEnum, } from '../map-context/map-context.model';
5
5
  import { MapFacade } from '../+state/map.facade';
6
6
  import { debounceTime } from 'rxjs/operators';
7
+ import { ButtonComponent, TextInputComponent } from '../../../../../../libs/ui/inputs/src';
8
+ import { TranslateModule } from '@ngx-translate/core';
9
+ import { CommonModule } from '@angular/common';
7
10
  import * as i0 from "@angular/core";
8
11
  import * as i1 from "../+state/map.facade";
9
- import * as i2 from "@angular/common";
10
- import * as i3 from "@ngx-translate/core";
11
- import * as i4 from "../../../../../ui/inputs/src/lib/button/button.component";
12
- import * as i5 from "../../../../../ui/inputs/src/lib/text-input/text-input.component";
12
+ import * as i2 from "@ngx-translate/core";
13
+ import * as i3 from "@angular/common";
13
14
  export class AddLayerFromWfsComponent {
14
15
  constructor(mapFacade, changeDetectorRef) {
15
16
  this.mapFacade = mapFacade;
@@ -55,10 +56,10 @@ export class AddLayerFromWfsComponent {
55
56
  this.mapFacade.addLayer({ ...layerToAdd, title: layer.title });
56
57
  }
57
58
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddLayerFromWfsComponent, deps: [{ token: i1.MapFacade }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
58
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddLayerFromWfsComponent, selector: "gn-ui-add-layer-from-wfs", ngImport: i0, template: "<div class=\"flex items-center mb-5\">\n <gn-ui-text-input\n [(value)]=\"wfsUrl\"\n (valueChange)=\"urlChange.next($event)\"\n [hint]=\"'map.wfs.urlInput.hint' | translate\"\n class=\"w-96\"\n >\n </gn-ui-text-input>\n</div>\n\n<div *ngIf=\"errorMessage\" class=\"text-red-500 mt-2\">\n {{ errorMessage }}\n</div>\n\n<div *ngIf=\"loading\">\n <p class=\"loading-message\" translate>map.loading.service</p>\n</div>\n\n<div *ngIf=\"!loading && layers.length > 0\">\n <h2 class=\"font-bold\" translate>map.layers.available</h2>\n <ng-container *ngFor=\"let layer of layers\">\n <div class=\"flex items-center justify-between my-2 layer-item-tree\">\n <p class=\"max-w-xs overflow-hidden overflow-ellipsis whitespace-nowrap\">\n {{ layer.title }}\n </p>\n <gn-ui-button\n *ngIf=\"layer.name\"\n class=\"layer-add-btn\"\n type=\"primary\"\n (buttonClick)=\"addLayer(layer)\"\n extraClass=\"text-sm !px-2 !py-1\"\n translate\n ><span translate> map.layer.add </span></gn-ui-button\n >\n </div>\n </ng-container>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i4.ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: i5.TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "extraClass", "hint", "required", "disabled"], outputs: ["valueChange"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
59
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddLayerFromWfsComponent, isStandalone: true, selector: "gn-ui-add-layer-from-wfs", ngImport: i0, template: "<div class=\"flex items-center mb-5\">\n <gn-ui-text-input\n [(value)]=\"wfsUrl\"\n (valueChange)=\"urlChange.next($event)\"\n [placeholder]=\"'map.wfs.urlInput.hint' | translate\"\n class=\"w-96\"\n >\n </gn-ui-text-input>\n</div>\n\n<div *ngIf=\"errorMessage\" class=\"text-red-500 mt-2\">\n {{ errorMessage }}\n</div>\n\n<div *ngIf=\"loading\">\n <p class=\"loading-message\" translate>map.loading.service</p>\n</div>\n\n<div *ngIf=\"!loading && layers.length > 0\">\n <h2 class=\"font-bold\" translate>map.layers.available</h2>\n <ng-container *ngFor=\"let layer of layers\">\n <div class=\"flex items-center justify-between my-2 layer-item-tree\">\n <p class=\"max-w-xs overflow-hidden overflow-ellipsis whitespace-nowrap\">\n {{ layer.title }}\n </p>\n <gn-ui-button\n *ngIf=\"layer.name\"\n class=\"layer-add-btn\"\n type=\"primary\"\n (buttonClick)=\"addLayer(layer)\"\n extraClass=\"text-sm !px-2 !py-1\"\n translate\n ><span translate> map.layer.add </span></gn-ui-button\n >\n </div>\n </ng-container>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "extraClass", "placeholder", "required", "disabled"], outputs: ["valueChange"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { 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"] }] }); }
59
60
  }
60
61
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddLayerFromWfsComponent, decorators: [{
61
62
  type: Component,
62
- args: [{ selector: 'gn-ui-add-layer-from-wfs', template: "<div class=\"flex items-center mb-5\">\n <gn-ui-text-input\n [(value)]=\"wfsUrl\"\n (valueChange)=\"urlChange.next($event)\"\n [hint]=\"'map.wfs.urlInput.hint' | translate\"\n class=\"w-96\"\n >\n </gn-ui-text-input>\n</div>\n\n<div *ngIf=\"errorMessage\" class=\"text-red-500 mt-2\">\n {{ errorMessage }}\n</div>\n\n<div *ngIf=\"loading\">\n <p class=\"loading-message\" translate>map.loading.service</p>\n</div>\n\n<div *ngIf=\"!loading && layers.length > 0\">\n <h2 class=\"font-bold\" translate>map.layers.available</h2>\n <ng-container *ngFor=\"let layer of layers\">\n <div class=\"flex items-center justify-between my-2 layer-item-tree\">\n <p class=\"max-w-xs overflow-hidden overflow-ellipsis whitespace-nowrap\">\n {{ layer.title }}\n </p>\n <gn-ui-button\n *ngIf=\"layer.name\"\n class=\"layer-add-btn\"\n type=\"primary\"\n (buttonClick)=\"addLayer(layer)\"\n extraClass=\"text-sm !px-2 !py-1\"\n translate\n ><span translate> map.layer.add </span></gn-ui-button\n >\n </div>\n </ng-container>\n</div>\n" }]
63
+ args: [{ selector: 'gn-ui-add-layer-from-wfs', standalone: true, imports: [TextInputComponent, ButtonComponent, TranslateModule, CommonModule], template: "<div class=\"flex items-center mb-5\">\n <gn-ui-text-input\n [(value)]=\"wfsUrl\"\n (valueChange)=\"urlChange.next($event)\"\n [placeholder]=\"'map.wfs.urlInput.hint' | translate\"\n class=\"w-96\"\n >\n </gn-ui-text-input>\n</div>\n\n<div *ngIf=\"errorMessage\" class=\"text-red-500 mt-2\">\n {{ errorMessage }}\n</div>\n\n<div *ngIf=\"loading\">\n <p class=\"loading-message\" translate>map.loading.service</p>\n</div>\n\n<div *ngIf=\"!loading && layers.length > 0\">\n <h2 class=\"font-bold\" translate>map.layers.available</h2>\n <ng-container *ngFor=\"let layer of layers\">\n <div class=\"flex items-center justify-between my-2 layer-item-tree\">\n <p class=\"max-w-xs overflow-hidden overflow-ellipsis whitespace-nowrap\">\n {{ layer.title }}\n </p>\n <gn-ui-button\n *ngIf=\"layer.name\"\n class=\"layer-add-btn\"\n type=\"primary\"\n (buttonClick)=\"addLayer(layer)\"\n extraClass=\"text-sm !px-2 !py-1\"\n translate\n ><span translate> map.layer.add </span></gn-ui-button\n >\n </div>\n </ng-container>\n</div>\n" }]
63
64
  }], ctorParameters: function () { return [{ type: i1.MapFacade }, { type: i0.ChangeDetectorRef }]; } });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWxheWVyLWZyb20td2ZzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9hZGQtbGF5ZXItZnJvbS13ZnMvYWRkLWxheWVyLWZyb20td2ZzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9hZGQtbGF5ZXItZnJvbS13ZnMvYWRkLWxheWVyLWZyb20td2ZzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUE7QUFDcEUsT0FBTyxFQUFFLFdBQVcsRUFBdUIsTUFBTSx3QkFBd0IsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlCLE9BQU8sRUFFTCx1QkFBdUIsR0FDeEIsTUFBTSxrQ0FBa0MsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDaEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBOzs7Ozs7O0FBTzdDLE1BQU0sT0FBTyx3QkFBd0I7SUFRbkMsWUFDVSxTQUFvQixFQUNwQixpQkFBb0M7UUFEcEMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBVDlDLFdBQU0sR0FBRyxFQUFFLENBQUE7UUFDWCxZQUFPLEdBQUcsS0FBSyxDQUFBO1FBQ2YsV0FBTSxHQUEwQixFQUFFLENBQUE7UUFDbEMsZ0JBQVcsR0FBdUIsSUFBSSxDQUFBO1FBQ3RDLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFBO1FBQ2pDLGlCQUFZLEdBQWtCLElBQUksQ0FBQTtJQUsvQixDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQTtJQUMzRSxDQUFDO0lBRUQsS0FBSyxDQUFDLFVBQVU7UUFDZCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQTtRQUN4QixJQUFJO1lBQ0YsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUE7WUFFbkIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUE7Z0JBQ2hCLE9BQU07YUFDUDtZQUVELElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUE7WUFDL0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFBO1lBQ2hELE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1NBQ3pCO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxNQUFNLEdBQUcsR0FBRyxLQUFjLENBQUE7WUFDMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUE7WUFDaEIsSUFBSSxDQUFDLFlBQVksR0FBRyx3QkFBd0IsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFBO1NBQzNEO2dCQUFTO1lBQ1IsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUE7WUFDcEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFBO1NBQ3RDO0lBQ0gsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUEwQjtRQUNqQyxNQUFNLFVBQVUsR0FBeUI7WUFDdkMsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1lBQ2hCLEdBQUcsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRTtZQUMzQixJQUFJLEVBQUUsdUJBQXVCLENBQUMsR0FBRztTQUNsQyxDQUFBO1FBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxHQUFHLFVBQVUsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUE7SUFDaEUsQ0FBQzsrR0EvQ1Usd0JBQXdCO21HQUF4Qix3QkFBd0IsZ0VDZnJDLCtsQ0FxQ0E7OzRGRHRCYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0UsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFdmc0VuZHBvaW50LCBXZnNGZWF0dXJlVHlwZUJyaWVmIH0gZnJvbSAnQGNhbXB0b2NhbXAvb2djLWNsaWVudCdcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHtcbiAgTWFwQ29udGV4dExheWVyTW9kZWwsXG4gIE1hcENvbnRleHRMYXllclR5cGVFbnVtLFxufSBmcm9tICcuLi9tYXAtY29udGV4dC9tYXAtY29udGV4dC5tb2RlbCdcbmltcG9ydCB7IE1hcEZhY2FkZSB9IGZyb20gJy4uLytzdGF0ZS9tYXAuZmFjYWRlJ1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWFkZC1sYXllci1mcm9tLXdmcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hZGQtbGF5ZXItZnJvbS13ZnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hZGQtbGF5ZXItZnJvbS13ZnMuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBBZGRMYXllckZyb21XZnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICB3ZnNVcmwgPSAnJ1xuICBsb2FkaW5nID0gZmFsc2VcbiAgbGF5ZXJzOiBXZnNGZWF0dXJlVHlwZUJyaWVmW10gPSBbXVxuICB3ZnNFbmRwb2ludDogV2ZzRW5kcG9pbnQgfCBudWxsID0gbnVsbFxuICB1cmxDaGFuZ2UgPSBuZXcgU3ViamVjdDxzdHJpbmc+KClcbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmcgfCBudWxsID0gbnVsbFxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbWFwRmFjYWRlOiBNYXBGYWNhZGUsXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudXJsQ2hhbmdlLnBpcGUoZGVib3VuY2VUaW1lKDcwMCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmxvYWRMYXllcnMoKSlcbiAgfVxuXG4gIGFzeW5jIGxvYWRMYXllcnMoKSB7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBudWxsXG4gICAgdHJ5IHtcbiAgICAgIHRoaXMubG9hZGluZyA9IHRydWVcblxuICAgICAgaWYgKHRoaXMud2ZzVXJsLnRyaW0oKSA9PT0gJycpIHtcbiAgICAgICAgdGhpcy5sYXllcnMgPSBbXVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgdGhpcy53ZnNFbmRwb2ludCA9IGF3YWl0IG5ldyBXZnNFbmRwb2ludCh0aGlzLndmc1VybCkuaXNSZWFkeSgpXG4gICAgICB0aGlzLmxheWVycyA9IHRoaXMud2ZzRW5kcG9pbnQuZ2V0RmVhdHVyZVR5cGVzKClcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMubGF5ZXJzKVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zdCBlcnIgPSBlcnJvciBhcyBFcnJvclxuICAgICAgdGhpcy5sYXllcnMgPSBbXVxuICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnRXJyb3IgbG9hZGluZyBsYXllcnM6ICcgKyBlcnIubWVzc2FnZVxuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZVxuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKVxuICAgIH1cbiAgfVxuXG4gIGFkZExheWVyKGxheWVyOiBXZnNGZWF0dXJlVHlwZUJyaWVmKSB7XG4gICAgY29uc3QgbGF5ZXJUb0FkZDogTWFwQ29udGV4dExheWVyTW9kZWwgPSB7XG4gICAgICBuYW1lOiBsYXllci5uYW1lLFxuICAgICAgdXJsOiB0aGlzLndmc1VybC50b1N0cmluZygpLFxuICAgICAgdHlwZTogTWFwQ29udGV4dExheWVyVHlwZUVudW0uV0ZTLFxuICAgIH1cbiAgICB0aGlzLm1hcEZhY2FkZS5hZGRMYXllcih7IC4uLmxheWVyVG9BZGQsIHRpdGxlOiBsYXllci50aXRsZSB9KVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgbWItNVwiPlxuICA8Z24tdWktdGV4dC1pbnB1dFxuICAgIFsodmFsdWUpXT1cIndmc1VybFwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cInVybENoYW5nZS5uZXh0KCRldmVudClcIlxuICAgIFtoaW50XT1cIidtYXAud2ZzLnVybElucHV0LmhpbnQnIHwgdHJhbnNsYXRlXCJcbiAgICBjbGFzcz1cInctOTZcIlxuICA+XG4gIDwvZ24tdWktdGV4dC1pbnB1dD5cbjwvZGl2PlxuXG48ZGl2ICpuZ0lmPVwiZXJyb3JNZXNzYWdlXCIgY2xhc3M9XCJ0ZXh0LXJlZC01MDAgbXQtMlwiPlxuICB7eyBlcnJvck1lc3NhZ2UgfX1cbjwvZGl2PlxuXG48ZGl2ICpuZ0lmPVwibG9hZGluZ1wiPlxuICA8cCBjbGFzcz1cImxvYWRpbmctbWVzc2FnZVwiIHRyYW5zbGF0ZT5tYXAubG9hZGluZy5zZXJ2aWNlPC9wPlxuPC9kaXY+XG5cbjxkaXYgKm5nSWY9XCIhbG9hZGluZyAmJiBsYXllcnMubGVuZ3RoID4gMFwiPlxuICA8aDIgY2xhc3M9XCJmb250LWJvbGRcIiB0cmFuc2xhdGU+bWFwLmxheWVycy5hdmFpbGFibGU8L2gyPlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBsYXllciBvZiBsYXllcnNcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIG15LTIgbGF5ZXItaXRlbS10cmVlXCI+XG4gICAgICA8cCBjbGFzcz1cIm1heC13LXhzIG92ZXJmbG93LWhpZGRlbiBvdmVyZmxvdy1lbGxpcHNpcyB3aGl0ZXNwYWNlLW5vd3JhcFwiPlxuICAgICAgICB7eyBsYXllci50aXRsZSB9fVxuICAgICAgPC9wPlxuICAgICAgPGduLXVpLWJ1dHRvblxuICAgICAgICAqbmdJZj1cImxheWVyLm5hbWVcIlxuICAgICAgICBjbGFzcz1cImxheWVyLWFkZC1idG5cIlxuICAgICAgICB0eXBlPVwicHJpbWFyeVwiXG4gICAgICAgIChidXR0b25DbGljayk9XCJhZGRMYXllcihsYXllcilcIlxuICAgICAgICBleHRyYUNsYXNzPVwidGV4dC1zbSAhcHgtMiAhcHktMVwiXG4gICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICA+PHNwYW4gdHJhbnNsYXRlPiBtYXAubGF5ZXIuYWRkIDwvc3Bhbj48L2duLXVpLWJ1dHRvblxuICAgICAgPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWxheWVyLWZyb20td2ZzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9hZGQtbGF5ZXItZnJvbS13ZnMvYWRkLWxheWVyLWZyb20td2ZzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9hZGQtbGF5ZXItZnJvbS13ZnMvYWRkLWxheWVyLWZyb20td2ZzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUE7QUFDcEUsT0FBTyxFQUFFLFdBQVcsRUFBdUIsTUFBTSx3QkFBd0IsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlCLE9BQU8sRUFFTCx1QkFBdUIsR0FDeEIsTUFBTSxrQ0FBa0MsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDaEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUMxRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBOzs7OztBQVM5QyxNQUFNLE9BQU8sd0JBQXdCO0lBUW5DLFlBQ1UsU0FBb0IsRUFDcEIsaUJBQW9DO1FBRHBDLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQVQ5QyxXQUFNLEdBQUcsRUFBRSxDQUFBO1FBQ1gsWUFBTyxHQUFHLEtBQUssQ0FBQTtRQUNmLFdBQU0sR0FBMEIsRUFBRSxDQUFBO1FBQ2xDLGdCQUFXLEdBQXVCLElBQUksQ0FBQTtRQUN0QyxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVUsQ0FBQTtRQUNqQyxpQkFBWSxHQUFrQixJQUFJLENBQUE7SUFLL0IsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUE7SUFDM0UsQ0FBQztJQUVELEtBQUssQ0FBQyxVQUFVO1FBQ2QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUE7UUFDeEIsSUFBSTtZQUNGLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFBO1lBRW5CLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0JBQzdCLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFBO2dCQUNoQixPQUFNO2FBQ1A7WUFFRCxJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFBO1lBQy9ELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQUUsQ0FBQTtZQUNoRCxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtTQUN6QjtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsTUFBTSxHQUFHLEdBQUcsS0FBYyxDQUFBO1lBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFBO1lBQ2hCLElBQUksQ0FBQyxZQUFZLEdBQUcsd0JBQXdCLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQTtTQUMzRDtnQkFBUztZQUNSLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFBO1lBQ3BCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQTtTQUN0QztJQUNILENBQUM7SUFFRCxRQUFRLENBQUMsS0FBMEI7UUFDakMsTUFBTSxVQUFVLEdBQXlCO1lBQ3ZDLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUU7WUFDM0IsSUFBSSxFQUFFLHVCQUF1QixDQUFDLEdBQUc7U0FDbEMsQ0FBQTtRQUNELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsR0FBRyxVQUFVLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFBO0lBQ2hFLENBQUM7K0dBL0NVLHdCQUF3QjttR0FBeEIsd0JBQXdCLG9GQ3BCckMsc21DQXFDQSwwRERuQlksa0JBQWtCLCtKQUFFLGVBQWUsOEhBQUUsZUFBZSxrT0FBRSxZQUFZOzs0RkFFakUsd0JBQXdCO2tCQVBwQyxTQUFTOytCQUNFLDBCQUEwQixjQUd4QixJQUFJLFdBQ1AsQ0FBQyxrQkFBa0IsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBXZnNFbmRwb2ludCwgV2ZzRmVhdHVyZVR5cGVCcmllZiB9IGZyb20gJ0BjYW1wdG9jYW1wL29nYy1jbGllbnQnXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7XG4gIE1hcENvbnRleHRMYXllck1vZGVsLFxuICBNYXBDb250ZXh0TGF5ZXJUeXBlRW51bSxcbn0gZnJvbSAnLi4vbWFwLWNvbnRleHQvbWFwLWNvbnRleHQubW9kZWwnXG5pbXBvcnQgeyBNYXBGYWNhZGUgfSBmcm9tICcuLi8rc3RhdGUvbWFwLmZhY2FkZSdcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50LCBUZXh0SW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1hZGQtbGF5ZXItZnJvbS13ZnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWRkLWxheWVyLWZyb20td2ZzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWRkLWxheWVyLWZyb20td2ZzLmNvbXBvbmVudC5jc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1RleHRJbnB1dENvbXBvbmVudCwgQnV0dG9uQ29tcG9uZW50LCBUcmFuc2xhdGVNb2R1bGUsIENvbW1vbk1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEFkZExheWVyRnJvbVdmc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHdmc1VybCA9ICcnXG4gIGxvYWRpbmcgPSBmYWxzZVxuICBsYXllcnM6IFdmc0ZlYXR1cmVUeXBlQnJpZWZbXSA9IFtdXG4gIHdmc0VuZHBvaW50OiBXZnNFbmRwb2ludCB8IG51bGwgPSBudWxsXG4gIHVybENoYW5nZSA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKVxuICBlcnJvck1lc3NhZ2U6IHN0cmluZyB8IG51bGwgPSBudWxsXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBtYXBGYWNhZGU6IE1hcEZhY2FkZSxcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy51cmxDaGFuZ2UucGlwZShkZWJvdW5jZVRpbWUoNzAwKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMubG9hZExheWVycygpKVxuICB9XG5cbiAgYXN5bmMgbG9hZExheWVycygpIHtcbiAgICB0aGlzLmVycm9yTWVzc2FnZSA9IG51bGxcbiAgICB0cnkge1xuICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZVxuXG4gICAgICBpZiAodGhpcy53ZnNVcmwudHJpbSgpID09PSAnJykge1xuICAgICAgICB0aGlzLmxheWVycyA9IFtdXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICB0aGlzLndmc0VuZHBvaW50ID0gYXdhaXQgbmV3IFdmc0VuZHBvaW50KHRoaXMud2ZzVXJsKS5pc1JlYWR5KClcbiAgICAgIHRoaXMubGF5ZXJzID0gdGhpcy53ZnNFbmRwb2ludC5nZXRGZWF0dXJlVHlwZXMoKVxuICAgICAgY29uc29sZS5sb2codGhpcy5sYXllcnMpXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnN0IGVyciA9IGVycm9yIGFzIEVycm9yXG4gICAgICB0aGlzLmxheWVycyA9IFtdXG4gICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICdFcnJvciBsb2FkaW5nIGxheWVyczogJyArIGVyci5tZXNzYWdlXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpXG4gICAgfVxuICB9XG5cbiAgYWRkTGF5ZXIobGF5ZXI6IFdmc0ZlYXR1cmVUeXBlQnJpZWYpIHtcbiAgICBjb25zdCBsYXllclRvQWRkOiBNYXBDb250ZXh0TGF5ZXJNb2RlbCA9IHtcbiAgICAgIG5hbWU6IGxheWVyLm5hbWUsXG4gICAgICB1cmw6IHRoaXMud2ZzVXJsLnRvU3RyaW5nKCksXG4gICAgICB0eXBlOiBNYXBDb250ZXh0TGF5ZXJUeXBlRW51bS5XRlMsXG4gICAgfVxuICAgIHRoaXMubWFwRmFjYWRlLmFkZExheWVyKHsgLi4ubGF5ZXJUb0FkZCwgdGl0bGU6IGxheWVyLnRpdGxlIH0pXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBtYi01XCI+XG4gIDxnbi11aS10ZXh0LWlucHV0XG4gICAgWyh2YWx1ZSldPVwid2ZzVXJsXCJcbiAgICAodmFsdWVDaGFuZ2UpPVwidXJsQ2hhbmdlLm5leHQoJGV2ZW50KVwiXG4gICAgW3BsYWNlaG9sZGVyXT1cIidtYXAud2ZzLnVybElucHV0LmhpbnQnIHwgdHJhbnNsYXRlXCJcbiAgICBjbGFzcz1cInctOTZcIlxuICA+XG4gIDwvZ24tdWktdGV4dC1pbnB1dD5cbjwvZGl2PlxuXG48ZGl2ICpuZ0lmPVwiZXJyb3JNZXNzYWdlXCIgY2xhc3M9XCJ0ZXh0LXJlZC01MDAgbXQtMlwiPlxuICB7eyBlcnJvck1lc3NhZ2UgfX1cbjwvZGl2PlxuXG48ZGl2ICpuZ0lmPVwibG9hZGluZ1wiPlxuICA8cCBjbGFzcz1cImxvYWRpbmctbWVzc2FnZVwiIHRyYW5zbGF0ZT5tYXAubG9hZGluZy5zZXJ2aWNlPC9wPlxuPC9kaXY+XG5cbjxkaXYgKm5nSWY9XCIhbG9hZGluZyAmJiBsYXllcnMubGVuZ3RoID4gMFwiPlxuICA8aDIgY2xhc3M9XCJmb250LWJvbGRcIiB0cmFuc2xhdGU+bWFwLmxheWVycy5hdmFpbGFibGU8L2gyPlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBsYXllciBvZiBsYXllcnNcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIG15LTIgbGF5ZXItaXRlbS10cmVlXCI+XG4gICAgICA8cCBjbGFzcz1cIm1heC13LXhzIG92ZXJmbG93LWhpZGRlbiBvdmVyZmxvdy1lbGxpcHNpcyB3aGl0ZXNwYWNlLW5vd3JhcFwiPlxuICAgICAgICB7eyBsYXllci50aXRsZSB9fVxuICAgICAgPC9wPlxuICAgICAgPGduLXVpLWJ1dHRvblxuICAgICAgICAqbmdJZj1cImxheWVyLm5hbWVcIlxuICAgICAgICBjbGFzcz1cImxheWVyLWFkZC1idG5cIlxuICAgICAgICB0eXBlPVwicHJpbWFyeVwiXG4gICAgICAgIChidXR0b25DbGljayk9XCJhZGRMYXllcihsYXllcilcIlxuICAgICAgICBleHRyYUNsYXNzPVwidGV4dC1zbSAhcHgtMiAhcHktMVwiXG4gICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICA+PHNwYW4gdHJhbnNsYXRlPiBtYXAubGF5ZXIuYWRkIDwvc3Bhbj48L2duLXVpLWJ1dHRvblxuICAgICAgPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
@@ -1,15 +1,16 @@
1
- import { Component, ChangeDetectorRef } from '@angular/core';
1
+ import { ChangeDetectorRef, Component } from '@angular/core';
2
2
  import { WmsEndpoint } from '@camptocamp/ogc-client';
3
3
  import { MapFacade } from '../+state/map.facade';
4
4
  import { MapContextLayerTypeEnum, } from '../map-context/map-context.model';
5
5
  import { Subject } from 'rxjs';
6
6
  import { debounceTime } from 'rxjs/operators';
7
+ import { ButtonComponent, TextInputComponent } from '../../../../../../libs/ui/inputs/src';
8
+ import { CommonModule } from '@angular/common';
9
+ import { TranslateModule } from '@ngx-translate/core';
7
10
  import * as i0 from "@angular/core";
8
11
  import * as i1 from "../+state/map.facade";
9
12
  import * as i2 from "@angular/common";
10
13
  import * as i3 from "@ngx-translate/core";
11
- import * as i4 from "../../../../../ui/inputs/src/lib/button/button.component";
12
- import * as i5 from "../../../../../ui/inputs/src/lib/text-input/text-input.component";
13
14
  export class AddLayerFromWmsComponent {
14
15
  constructor(mapFacade, changeDetectorRef) {
15
16
  this.mapFacade = mapFacade;
@@ -54,10 +55,10 @@ export class AddLayerFromWmsComponent {
54
55
  this.mapFacade.addLayer({ ...layerToAdd, title: layer.title });
55
56
  }
56
57
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddLayerFromWmsComponent, deps: [{ token: i1.MapFacade }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
57
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddLayerFromWmsComponent, selector: "gn-ui-add-layer-from-wms", ngImport: i0, template: "<div class=\"flex items-center mb-5\">\n <gn-ui-text-input\n [(value)]=\"wmsUrl\"\n (valueChange)=\"urlChange.next($event)\"\n [hint]=\"'map.wms.urlInput.hint' | translate\"\n class=\"w-96\"\n >\n </gn-ui-text-input>\n</div>\n\n<div *ngIf=\"errorMessage\" class=\"text-red-500 mt-2\">\n {{ errorMessage }}\n</div>\n\n<div *ngIf=\"loading\">\n <p class=\"loading-message\" translate>map.loading.service</p>\n</div>\n\n<div *ngIf=\"!loading && layers.length > 0\">\n <h2 class=\"font-bold\" translate>map.layers.available</h2>\n <ng-container\n *ngFor=\"let layer of layers\"\n [ngTemplateOutlet]=\"layerTreeItem\"\n [ngTemplateOutletContext]=\"{\n layer: layer\n }\"\n ></ng-container>\n</div>\n\n<ng-template #layerTreeItem let-layer=\"layer\">\n <div class=\"flex items-center justify-between layer-tree-item my-2\">\n <p class=\"max-w-xs overflow-hidden overflow-ellipsis whitespace-nowrap\">\n {{ layer.title }}\n </p>\n <gn-ui-button\n *ngIf=\"layer.name\"\n class=\"layer-add-btn\"\n type=\"primary\"\n (buttonClick)=\"addLayer(layer)\"\n extraClass=\"text-sm !px-2 !py-1\"\n translate\n ><span translate> map.layer.add </span></gn-ui-button\n >\n </div>\n <div *ngIf=\"layer.children?.length > 0\" class=\"ml-4\">\n <ng-container\n *ngFor=\"let child of layer.children\"\n [ngTemplateOutlet]=\"layerTreeItem\"\n [ngTemplateOutletContext]=\"{\n layer: child\n }\"\n >\n </ng-container>\n </div>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i4.ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: i5.TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "extraClass", "hint", "required", "disabled"], outputs: ["valueChange"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
58
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddLayerFromWmsComponent, isStandalone: true, selector: "gn-ui-add-layer-from-wms", ngImport: i0, template: "<div class=\"flex items-center mb-5\">\n <gn-ui-text-input\n [(value)]=\"wmsUrl\"\n (valueChange)=\"urlChange.next($event)\"\n [placeholder]=\"'map.wms.urlInput.hint' | translate\"\n class=\"w-96\"\n >\n </gn-ui-text-input>\n</div>\n\n<div *ngIf=\"errorMessage\" class=\"text-red-500 mt-2\">\n {{ errorMessage }}\n</div>\n\n<div *ngIf=\"loading\">\n <p class=\"loading-message\" translate>map.loading.service</p>\n</div>\n\n<div *ngIf=\"!loading && layers.length > 0\">\n <h2 class=\"font-bold\" translate>map.layers.available</h2>\n <ng-container\n *ngFor=\"let layer of layers\"\n [ngTemplateOutlet]=\"layerTreeItem\"\n [ngTemplateOutletContext]=\"{\n layer: layer\n }\"\n ></ng-container>\n</div>\n\n<ng-template #layerTreeItem let-layer=\"layer\">\n <div class=\"flex items-center justify-between layer-tree-item my-2\">\n <p class=\"max-w-xs overflow-hidden overflow-ellipsis whitespace-nowrap\">\n {{ layer.title }}\n </p>\n <gn-ui-button\n *ngIf=\"layer.name\"\n class=\"layer-add-btn\"\n type=\"primary\"\n (buttonClick)=\"addLayer(layer)\"\n extraClass=\"text-sm !px-2 !py-1\"\n translate\n ><span translate> map.layer.add </span></gn-ui-button\n >\n </div>\n <div *ngIf=\"layer.children?.length > 0\" class=\"ml-4\">\n <ng-container\n *ngFor=\"let child of layer.children\"\n [ngTemplateOutlet]=\"layerTreeItem\"\n [ngTemplateOutletContext]=\"{\n layer: child\n }\"\n >\n </ng-container>\n </div>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "component", type: TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "extraClass", "placeholder", "required", "disabled"], outputs: ["valueChange"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }] }); }
58
59
  }
59
60
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddLayerFromWmsComponent, decorators: [{
60
61
  type: Component,
61
- args: [{ selector: 'gn-ui-add-layer-from-wms', template: "<div class=\"flex items-center mb-5\">\n <gn-ui-text-input\n [(value)]=\"wmsUrl\"\n (valueChange)=\"urlChange.next($event)\"\n [hint]=\"'map.wms.urlInput.hint' | translate\"\n class=\"w-96\"\n >\n </gn-ui-text-input>\n</div>\n\n<div *ngIf=\"errorMessage\" class=\"text-red-500 mt-2\">\n {{ errorMessage }}\n</div>\n\n<div *ngIf=\"loading\">\n <p class=\"loading-message\" translate>map.loading.service</p>\n</div>\n\n<div *ngIf=\"!loading && layers.length > 0\">\n <h2 class=\"font-bold\" translate>map.layers.available</h2>\n <ng-container\n *ngFor=\"let layer of layers\"\n [ngTemplateOutlet]=\"layerTreeItem\"\n [ngTemplateOutletContext]=\"{\n layer: layer\n }\"\n ></ng-container>\n</div>\n\n<ng-template #layerTreeItem let-layer=\"layer\">\n <div class=\"flex items-center justify-between layer-tree-item my-2\">\n <p class=\"max-w-xs overflow-hidden overflow-ellipsis whitespace-nowrap\">\n {{ layer.title }}\n </p>\n <gn-ui-button\n *ngIf=\"layer.name\"\n class=\"layer-add-btn\"\n type=\"primary\"\n (buttonClick)=\"addLayer(layer)\"\n extraClass=\"text-sm !px-2 !py-1\"\n translate\n ><span translate> map.layer.add </span></gn-ui-button\n >\n </div>\n <div *ngIf=\"layer.children?.length > 0\" class=\"ml-4\">\n <ng-container\n *ngFor=\"let child of layer.children\"\n [ngTemplateOutlet]=\"layerTreeItem\"\n [ngTemplateOutletContext]=\"{\n layer: child\n }\"\n >\n </ng-container>\n </div>\n</ng-template>\n" }]
62
+ args: [{ selector: 'gn-ui-add-layer-from-wms', standalone: true, imports: [TextInputComponent, CommonModule, TranslateModule, ButtonComponent], template: "<div class=\"flex items-center mb-5\">\n <gn-ui-text-input\n [(value)]=\"wmsUrl\"\n (valueChange)=\"urlChange.next($event)\"\n [placeholder]=\"'map.wms.urlInput.hint' | translate\"\n class=\"w-96\"\n >\n </gn-ui-text-input>\n</div>\n\n<div *ngIf=\"errorMessage\" class=\"text-red-500 mt-2\">\n {{ errorMessage }}\n</div>\n\n<div *ngIf=\"loading\">\n <p class=\"loading-message\" translate>map.loading.service</p>\n</div>\n\n<div *ngIf=\"!loading && layers.length > 0\">\n <h2 class=\"font-bold\" translate>map.layers.available</h2>\n <ng-container\n *ngFor=\"let layer of layers\"\n [ngTemplateOutlet]=\"layerTreeItem\"\n [ngTemplateOutletContext]=\"{\n layer: layer\n }\"\n ></ng-container>\n</div>\n\n<ng-template #layerTreeItem let-layer=\"layer\">\n <div class=\"flex items-center justify-between layer-tree-item my-2\">\n <p class=\"max-w-xs overflow-hidden overflow-ellipsis whitespace-nowrap\">\n {{ layer.title }}\n </p>\n <gn-ui-button\n *ngIf=\"layer.name\"\n class=\"layer-add-btn\"\n type=\"primary\"\n (buttonClick)=\"addLayer(layer)\"\n extraClass=\"text-sm !px-2 !py-1\"\n translate\n ><span translate> map.layer.add </span></gn-ui-button\n >\n </div>\n <div *ngIf=\"layer.children?.length > 0\" class=\"ml-4\">\n <ng-container\n *ngFor=\"let child of layer.children\"\n [ngTemplateOutlet]=\"layerTreeItem\"\n [ngTemplateOutletContext]=\"{\n layer: child\n }\"\n >\n </ng-container>\n </div>\n</ng-template>\n" }]
62
63
  }], ctorParameters: function () { return [{ type: i1.MapFacade }, { type: i0.ChangeDetectorRef }]; } });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWxheWVyLWZyb20td21zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9hZGQtbGF5ZXItZnJvbS13bXMvYWRkLWxheWVyLWZyb20td21zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9hZGQtbGF5ZXItZnJvbS13bXMvYWRkLWxheWVyLWZyb20td21zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQVUsTUFBTSxlQUFlLENBQUE7QUFDcEUsT0FBTyxFQUFFLFdBQVcsRUFBbUIsTUFBTSx3QkFBd0IsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDaEQsT0FBTyxFQUVMLHVCQUF1QixHQUN4QixNQUFNLGtDQUFrQyxDQUFBO0FBQ3pDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDOUIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBOzs7Ozs7O0FBTzdDLE1BQU0sT0FBTyx3QkFBd0I7SUFRbkMsWUFDVSxTQUFvQixFQUNwQixpQkFBb0M7UUFEcEMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBVDlDLFdBQU0sR0FBRyxFQUFFLENBQUE7UUFDWCxZQUFPLEdBQUcsS0FBSyxDQUFBO1FBQ2YsV0FBTSxHQUFzQixFQUFFLENBQUE7UUFDOUIsZ0JBQVcsR0FBdUIsSUFBSSxDQUFBO1FBQ3RDLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFBO1FBQ2pDLGlCQUFZLEdBQWtCLElBQUksQ0FBQTtJQUsvQixDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQTtJQUMzRSxDQUFDO0lBRUQsS0FBSyxDQUFDLFVBQVU7UUFDZCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQTtRQUN4QixJQUFJO1lBQ0YsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUE7WUFFbkIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUE7Z0JBQ2hCLE9BQU07YUFDUDtZQUVELElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUE7WUFDL0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxDQUFBO1NBQzNDO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxNQUFNLEdBQUcsR0FBRyxLQUFjLENBQUE7WUFDMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUE7WUFDaEIsSUFBSSxDQUFDLFlBQVksR0FBRyx3QkFBd0IsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFBO1NBQzNEO2dCQUFTO1lBQ1IsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUE7WUFDcEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFBO1NBQ3RDO0lBQ0gsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFzQjtRQUM3QixNQUFNLFVBQVUsR0FBeUI7WUFDdkMsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1lBQ2hCLEdBQUcsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRTtZQUMzQixJQUFJLEVBQUUsdUJBQXVCLENBQUMsR0FBRztTQUNsQyxDQUFBO1FBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxHQUFHLFVBQVUsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUE7SUFDaEUsQ0FBQzsrR0E5Q1Usd0JBQXdCO21HQUF4Qix3QkFBd0IsZ0VDZnJDLDRnREF1REE7OzRGRHhDYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0UsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3RvclJlZiwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFdtc0VuZHBvaW50LCBXbXNMYXllclN1bW1hcnkgfSBmcm9tICdAY2FtcHRvY2FtcC9vZ2MtY2xpZW50J1xuaW1wb3J0IHsgTWFwRmFjYWRlIH0gZnJvbSAnLi4vK3N0YXRlL21hcC5mYWNhZGUnXG5pbXBvcnQge1xuICBNYXBDb250ZXh0TGF5ZXJNb2RlbCxcbiAgTWFwQ29udGV4dExheWVyVHlwZUVudW0sXG59IGZyb20gJy4uL21hcC1jb250ZXh0L21hcC1jb250ZXh0Lm1vZGVsJ1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktYWRkLWxheWVyLWZyb20td21zJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkZC1sYXllci1mcm9tLXdtcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FkZC1sYXllci1mcm9tLXdtcy5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFkZExheWVyRnJvbVdtc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHdtc1VybCA9ICcnXG4gIGxvYWRpbmcgPSBmYWxzZVxuICBsYXllcnM6IFdtc0xheWVyU3VtbWFyeVtdID0gW11cbiAgd21zRW5kcG9pbnQ6IFdtc0VuZHBvaW50IHwgbnVsbCA9IG51bGxcbiAgdXJsQ2hhbmdlID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpXG4gIGVycm9yTWVzc2FnZTogc3RyaW5nIHwgbnVsbCA9IG51bGxcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG1hcEZhY2FkZTogTWFwRmFjYWRlLFxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnVybENoYW5nZS5waXBlKGRlYm91bmNlVGltZSg3MDApKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5sb2FkTGF5ZXJzKCkpXG4gIH1cblxuICBhc3luYyBsb2FkTGF5ZXJzKCkge1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gbnVsbFxuICAgIHRyeSB7XG4gICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlXG5cbiAgICAgIGlmICh0aGlzLndtc1VybC50cmltKCkgPT09ICcnKSB7XG4gICAgICAgIHRoaXMubGF5ZXJzID0gW11cbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIHRoaXMud21zRW5kcG9pbnQgPSBhd2FpdCBuZXcgV21zRW5kcG9pbnQodGhpcy53bXNVcmwpLmlzUmVhZHkoKVxuICAgICAgdGhpcy5sYXllcnMgPSB0aGlzLndtc0VuZHBvaW50LmdldExheWVycygpXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnN0IGVyciA9IGVycm9yIGFzIEVycm9yXG4gICAgICB0aGlzLmxheWVycyA9IFtdXG4gICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICdFcnJvciBsb2FkaW5nIGxheWVyczogJyArIGVyci5tZXNzYWdlXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpXG4gICAgfVxuICB9XG5cbiAgYWRkTGF5ZXIobGF5ZXI6IFdtc0xheWVyU3VtbWFyeSkge1xuICAgIGNvbnN0IGxheWVyVG9BZGQ6IE1hcENvbnRleHRMYXllck1vZGVsID0ge1xuICAgICAgbmFtZTogbGF5ZXIubmFtZSxcbiAgICAgIHVybDogdGhpcy53bXNVcmwudG9TdHJpbmcoKSxcbiAgICAgIHR5cGU6IE1hcENvbnRleHRMYXllclR5cGVFbnVtLldNUyxcbiAgICB9XG4gICAgdGhpcy5tYXBGYWNhZGUuYWRkTGF5ZXIoeyAuLi5sYXllclRvQWRkLCB0aXRsZTogbGF5ZXIudGl0bGUgfSlcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIG1iLTVcIj5cbiAgPGduLXVpLXRleHQtaW5wdXRcbiAgICBbKHZhbHVlKV09XCJ3bXNVcmxcIlxuICAgICh2YWx1ZUNoYW5nZSk9XCJ1cmxDaGFuZ2UubmV4dCgkZXZlbnQpXCJcbiAgICBbaGludF09XCInbWFwLndtcy51cmxJbnB1dC5oaW50JyB8IHRyYW5zbGF0ZVwiXG4gICAgY2xhc3M9XCJ3LTk2XCJcbiAgPlxuICA8L2duLXVpLXRleHQtaW5wdXQ+XG48L2Rpdj5cblxuPGRpdiAqbmdJZj1cImVycm9yTWVzc2FnZVwiIGNsYXNzPVwidGV4dC1yZWQtNTAwIG10LTJcIj5cbiAge3sgZXJyb3JNZXNzYWdlIH19XG48L2Rpdj5cblxuPGRpdiAqbmdJZj1cImxvYWRpbmdcIj5cbiAgPHAgY2xhc3M9XCJsb2FkaW5nLW1lc3NhZ2VcIiB0cmFuc2xhdGU+bWFwLmxvYWRpbmcuc2VydmljZTwvcD5cbjwvZGl2PlxuXG48ZGl2ICpuZ0lmPVwiIWxvYWRpbmcgJiYgbGF5ZXJzLmxlbmd0aCA+IDBcIj5cbiAgPGgyIGNsYXNzPVwiZm9udC1ib2xkXCIgdHJhbnNsYXRlPm1hcC5sYXllcnMuYXZhaWxhYmxlPC9oMj5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0Zvcj1cImxldCBsYXllciBvZiBsYXllcnNcIlxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxheWVyVHJlZUl0ZW1cIlxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICBsYXllcjogbGF5ZXJcbiAgICB9XCJcbiAgPjwvbmctY29udGFpbmVyPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjbGF5ZXJUcmVlSXRlbSBsZXQtbGF5ZXI9XCJsYXllclwiPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIGxheWVyLXRyZWUtaXRlbSBteS0yXCI+XG4gICAgPHAgY2xhc3M9XCJtYXgtdy14cyBvdmVyZmxvdy1oaWRkZW4gb3ZlcmZsb3ctZWxsaXBzaXMgd2hpdGVzcGFjZS1ub3dyYXBcIj5cbiAgICAgIHt7IGxheWVyLnRpdGxlIH19XG4gICAgPC9wPlxuICAgIDxnbi11aS1idXR0b25cbiAgICAgICpuZ0lmPVwibGF5ZXIubmFtZVwiXG4gICAgICBjbGFzcz1cImxheWVyLWFkZC1idG5cIlxuICAgICAgdHlwZT1cInByaW1hcnlcIlxuICAgICAgKGJ1dHRvbkNsaWNrKT1cImFkZExheWVyKGxheWVyKVwiXG4gICAgICBleHRyYUNsYXNzPVwidGV4dC1zbSAhcHgtMiAhcHktMVwiXG4gICAgICB0cmFuc2xhdGVcbiAgICAgID48c3BhbiB0cmFuc2xhdGU+IG1hcC5sYXllci5hZGQgPC9zcGFuPjwvZ24tdWktYnV0dG9uXG4gICAgPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cImxheWVyLmNoaWxkcmVuPy5sZW5ndGggPiAwXCIgY2xhc3M9XCJtbC00XCI+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGxheWVyLmNoaWxkcmVuXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxheWVyVHJlZUl0ZW1cIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntcbiAgICAgICAgbGF5ZXI6IGNoaWxkXG4gICAgICB9XCJcbiAgICA+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWxheWVyLWZyb20td21zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9hZGQtbGF5ZXItZnJvbS13bXMvYWRkLWxheWVyLWZyb20td21zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9hZGQtbGF5ZXItZnJvbS13bXMvYWRkLWxheWVyLWZyb20td21zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUE7QUFDcEUsT0FBTyxFQUFFLFdBQVcsRUFBbUIsTUFBTSx3QkFBd0IsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDaEQsT0FBTyxFQUVMLHVCQUF1QixHQUN4QixNQUFNLGtDQUFrQyxDQUFBO0FBQ3pDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDOUIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUMxRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBOzs7OztBQVNyRCxNQUFNLE9BQU8sd0JBQXdCO0lBUW5DLFlBQ1UsU0FBb0IsRUFDcEIsaUJBQW9DO1FBRHBDLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQVQ5QyxXQUFNLEdBQUcsRUFBRSxDQUFBO1FBQ1gsWUFBTyxHQUFHLEtBQUssQ0FBQTtRQUNmLFdBQU0sR0FBc0IsRUFBRSxDQUFBO1FBQzlCLGdCQUFXLEdBQXVCLElBQUksQ0FBQTtRQUN0QyxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVUsQ0FBQTtRQUNqQyxpQkFBWSxHQUFrQixJQUFJLENBQUE7SUFLL0IsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUE7SUFDM0UsQ0FBQztJQUVELEtBQUssQ0FBQyxVQUFVO1FBQ2QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUE7UUFDeEIsSUFBSTtZQUNGLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFBO1lBRW5CLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0JBQzdCLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFBO2dCQUNoQixPQUFNO2FBQ1A7WUFFRCxJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFBO1lBQy9ELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQTtTQUMzQztRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsTUFBTSxHQUFHLEdBQUcsS0FBYyxDQUFBO1lBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFBO1lBQ2hCLElBQUksQ0FBQyxZQUFZLEdBQUcsd0JBQXdCLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQTtTQUMzRDtnQkFBUztZQUNSLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFBO1lBQ3BCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQTtTQUN0QztJQUNILENBQUM7SUFFRCxRQUFRLENBQUMsS0FBc0I7UUFDN0IsTUFBTSxVQUFVLEdBQXlCO1lBQ3ZDLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUU7WUFDM0IsSUFBSSxFQUFFLHVCQUF1QixDQUFDLEdBQUc7U0FDbEMsQ0FBQTtRQUNELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsR0FBRyxVQUFVLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFBO0lBQ2hFLENBQUM7K0dBOUNVLHdCQUF3QjttR0FBeEIsd0JBQXdCLG9GQ3BCckMsbWhEQXVEQSwwRERyQ1ksa0JBQWtCLDhKQUFFLFlBQVksc2FBQUUsZUFBZSxtT0FBRSxlQUFlOzs0RkFFakUsd0JBQXdCO2tCQVBwQyxTQUFTOytCQUNFLDBCQUEwQixjQUd4QixJQUFJLFdBQ1AsQ0FBQyxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBXbXNFbmRwb2ludCwgV21zTGF5ZXJTdW1tYXJ5IH0gZnJvbSAnQGNhbXB0b2NhbXAvb2djLWNsaWVudCdcbmltcG9ydCB7IE1hcEZhY2FkZSB9IGZyb20gJy4uLytzdGF0ZS9tYXAuZmFjYWRlJ1xuaW1wb3J0IHtcbiAgTWFwQ29udGV4dExheWVyTW9kZWwsXG4gIE1hcENvbnRleHRMYXllclR5cGVFbnVtLFxufSBmcm9tICcuLi9tYXAtY29udGV4dC9tYXAtY29udGV4dC5tb2RlbCdcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQsIFRleHRJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWFkZC1sYXllci1mcm9tLXdtcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hZGQtbGF5ZXItZnJvbS13bXMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hZGQtbGF5ZXItZnJvbS13bXMuY29tcG9uZW50LmNzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbVGV4dElucHV0Q29tcG9uZW50LCBDb21tb25Nb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgQnV0dG9uQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgQWRkTGF5ZXJGcm9tV21zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgd21zVXJsID0gJydcbiAgbG9hZGluZyA9IGZhbHNlXG4gIGxheWVyczogV21zTGF5ZXJTdW1tYXJ5W10gPSBbXVxuICB3bXNFbmRwb2ludDogV21zRW5kcG9pbnQgfCBudWxsID0gbnVsbFxuICB1cmxDaGFuZ2UgPSBuZXcgU3ViamVjdDxzdHJpbmc+KClcbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmcgfCBudWxsID0gbnVsbFxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbWFwRmFjYWRlOiBNYXBGYWNhZGUsXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudXJsQ2hhbmdlLnBpcGUoZGVib3VuY2VUaW1lKDcwMCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmxvYWRMYXllcnMoKSlcbiAgfVxuXG4gIGFzeW5jIGxvYWRMYXllcnMoKSB7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBudWxsXG4gICAgdHJ5IHtcbiAgICAgIHRoaXMubG9hZGluZyA9IHRydWVcblxuICAgICAgaWYgKHRoaXMud21zVXJsLnRyaW0oKSA9PT0gJycpIHtcbiAgICAgICAgdGhpcy5sYXllcnMgPSBbXVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgdGhpcy53bXNFbmRwb2ludCA9IGF3YWl0IG5ldyBXbXNFbmRwb2ludCh0aGlzLndtc1VybCkuaXNSZWFkeSgpXG4gICAgICB0aGlzLmxheWVycyA9IHRoaXMud21zRW5kcG9pbnQuZ2V0TGF5ZXJzKClcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc3QgZXJyID0gZXJyb3IgYXMgRXJyb3JcbiAgICAgIHRoaXMubGF5ZXJzID0gW11cbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0Vycm9yIGxvYWRpbmcgbGF5ZXJzOiAnICsgZXJyLm1lc3NhZ2VcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2VcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKClcbiAgICB9XG4gIH1cblxuICBhZGRMYXllcihsYXllcjogV21zTGF5ZXJTdW1tYXJ5KSB7XG4gICAgY29uc3QgbGF5ZXJUb0FkZDogTWFwQ29udGV4dExheWVyTW9kZWwgPSB7XG4gICAgICBuYW1lOiBsYXllci5uYW1lLFxuICAgICAgdXJsOiB0aGlzLndtc1VybC50b1N0cmluZygpLFxuICAgICAgdHlwZTogTWFwQ29udGV4dExheWVyVHlwZUVudW0uV01TLFxuICAgIH1cbiAgICB0aGlzLm1hcEZhY2FkZS5hZGRMYXllcih7IC4uLmxheWVyVG9BZGQsIHRpdGxlOiBsYXllci50aXRsZSB9KVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgbWItNVwiPlxuICA8Z24tdWktdGV4dC1pbnB1dFxuICAgIFsodmFsdWUpXT1cIndtc1VybFwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cInVybENoYW5nZS5uZXh0KCRldmVudClcIlxuICAgIFtwbGFjZWhvbGRlcl09XCInbWFwLndtcy51cmxJbnB1dC5oaW50JyB8IHRyYW5zbGF0ZVwiXG4gICAgY2xhc3M9XCJ3LTk2XCJcbiAgPlxuICA8L2duLXVpLXRleHQtaW5wdXQ+XG48L2Rpdj5cblxuPGRpdiAqbmdJZj1cImVycm9yTWVzc2FnZVwiIGNsYXNzPVwidGV4dC1yZWQtNTAwIG10LTJcIj5cbiAge3sgZXJyb3JNZXNzYWdlIH19XG48L2Rpdj5cblxuPGRpdiAqbmdJZj1cImxvYWRpbmdcIj5cbiAgPHAgY2xhc3M9XCJsb2FkaW5nLW1lc3NhZ2VcIiB0cmFuc2xhdGU+bWFwLmxvYWRpbmcuc2VydmljZTwvcD5cbjwvZGl2PlxuXG48ZGl2ICpuZ0lmPVwiIWxvYWRpbmcgJiYgbGF5ZXJzLmxlbmd0aCA+IDBcIj5cbiAgPGgyIGNsYXNzPVwiZm9udC1ib2xkXCIgdHJhbnNsYXRlPm1hcC5sYXllcnMuYXZhaWxhYmxlPC9oMj5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0Zvcj1cImxldCBsYXllciBvZiBsYXllcnNcIlxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxheWVyVHJlZUl0ZW1cIlxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICBsYXllcjogbGF5ZXJcbiAgICB9XCJcbiAgPjwvbmctY29udGFpbmVyPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjbGF5ZXJUcmVlSXRlbSBsZXQtbGF5ZXI9XCJsYXllclwiPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIGxheWVyLXRyZWUtaXRlbSBteS0yXCI+XG4gICAgPHAgY2xhc3M9XCJtYXgtdy14cyBvdmVyZmxvdy1oaWRkZW4gb3ZlcmZsb3ctZWxsaXBzaXMgd2hpdGVzcGFjZS1ub3dyYXBcIj5cbiAgICAgIHt7IGxheWVyLnRpdGxlIH19XG4gICAgPC9wPlxuICAgIDxnbi11aS1idXR0b25cbiAgICAgICpuZ0lmPVwibGF5ZXIubmFtZVwiXG4gICAgICBjbGFzcz1cImxheWVyLWFkZC1idG5cIlxuICAgICAgdHlwZT1cInByaW1hcnlcIlxuICAgICAgKGJ1dHRvbkNsaWNrKT1cImFkZExheWVyKGxheWVyKVwiXG4gICAgICBleHRyYUNsYXNzPVwidGV4dC1zbSAhcHgtMiAhcHktMVwiXG4gICAgICB0cmFuc2xhdGVcbiAgICAgID48c3BhbiB0cmFuc2xhdGU+IG1hcC5sYXllci5hZGQgPC9zcGFuPjwvZ24tdWktYnV0dG9uXG4gICAgPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cImxheWVyLmNoaWxkcmVuPy5sZW5ndGggPiAwXCIgY2xhc3M9XCJtbC00XCI+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGxheWVyLmNoaWxkcmVuXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxheWVyVHJlZUl0ZW1cIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntcbiAgICAgICAgbGF5ZXI6IGNoaWxkXG4gICAgICB9XCJcbiAgICA+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -4,12 +4,10 @@ import { UiMapModule } from '../../../../../libs/ui/map/src';
4
4
  import { defaultMapOptions, FEATURE_MAP_OPTIONS } from './constant';
5
5
  import { MapInstanceDirective } from './manager/map-instance.directive';
6
6
  import { MapContextComponent } from './map-context/component/map-context.component';
7
- import { LayersPanelComponent } from './layers-panel/layers-panel.component';
8
7
  import { UiLayoutModule } from '../../../../../libs/ui/layout/src';
9
8
  import { MatIconModule } from '@angular/material/icon';
10
9
  import { MatTabsModule } from '@angular/material/tabs';
11
10
  import { TranslateModule } from '@ngx-translate/core';
12
- import { AddLayerFromCatalogComponent } from './add-layer-from-catalog/add-layer-from-catalog.component';
13
11
  import { FeatureSearchModule } from '../../../../../libs/feature/search/src';
14
12
  import { StoreModule } from '@ngrx/store';
15
13
  import { EffectsModule } from '@ngrx/effects';
@@ -17,12 +15,8 @@ import * as fromMap from './+state/map.reducer';
17
15
  import { MapEffects } from './+state/map.effects';
18
16
  import { MapFacade } from './+state/map.facade';
19
17
  import { MapContainerComponent } from './map-container/map-container.component';
20
- import { AddLayerRecordPreviewComponent } from './add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component';
21
18
  import { UiElementsModule } from '../../../../../libs/ui/elements/src';
22
- import { UiInputsModule } from '../../../../../libs/ui/inputs/src';
23
- import { AddLayerFromWmsComponent } from './add-layer-from-wms/add-layer-from-wms.component';
24
- import { AddLayerFromFileComponent } from './add-layer-from-file/add-layer-from-file.component';
25
- import { AddLayerFromWfsComponent } from './add-layer-from-wfs/add-layer-from-wfs.component';
19
+ import { TextInputComponent, UiInputsModule } from '../../../../../libs/ui/inputs/src';
26
20
  import { GeocodingComponent } from './geocoding/geocoding.component';
27
21
  import { GEOCODING_PROVIDER } from './geocoding.service';
28
22
  import { AddLayerFromOgcApiComponent } from './add-layer-from-ogc-api/add-layer-from-ogc-api.component';
@@ -33,13 +27,7 @@ export class FeatureMapModule {
33
27
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FeatureMapModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
34
28
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: FeatureMapModule, declarations: [MapContextComponent,
35
29
  MapInstanceDirective,
36
- LayersPanelComponent,
37
- AddLayerFromCatalogComponent,
38
30
  MapContainerComponent,
39
- AddLayerRecordPreviewComponent,
40
- AddLayerFromWmsComponent,
41
- AddLayerFromFileComponent,
42
- AddLayerFromWfsComponent,
43
31
  GeocodingComponent], imports: [CommonModule,
44
32
  UiMapModule,
45
33
  UiLayoutModule,
@@ -48,10 +36,9 @@ export class FeatureMapModule {
48
36
  TranslateModule,
49
37
  FeatureSearchModule, i1.StoreFeatureModule, i2.EffectsFeatureModule, UiElementsModule,
50
38
  UiInputsModule,
51
- AddLayerFromOgcApiComponent], exports: [MapContextComponent,
39
+ AddLayerFromOgcApiComponent,
40
+ TextInputComponent], exports: [MapContextComponent,
52
41
  MapInstanceDirective,
53
- LayersPanelComponent,
54
- AddLayerFromCatalogComponent,
55
42
  MapContainerComponent,
56
43
  GeocodingComponent] }); }
57
44
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FeatureMapModule, providers: [
@@ -75,7 +62,8 @@ export class FeatureMapModule {
75
62
  EffectsModule.forFeature([MapEffects]),
76
63
  UiElementsModule,
77
64
  UiInputsModule,
78
- AddLayerFromOgcApiComponent] }); }
65
+ AddLayerFromOgcApiComponent,
66
+ TextInputComponent] }); }
79
67
  }
80
68
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FeatureMapModule, decorators: [{
81
69
  type: NgModule,
@@ -83,20 +71,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
83
71
  declarations: [
84
72
  MapContextComponent,
85
73
  MapInstanceDirective,
86
- LayersPanelComponent,
87
- AddLayerFromCatalogComponent,
88
74
  MapContainerComponent,
89
- AddLayerRecordPreviewComponent,
90
- AddLayerFromWmsComponent,
91
- AddLayerFromFileComponent,
92
- AddLayerFromWfsComponent,
93
75
  GeocodingComponent,
94
76
  ],
95
77
  exports: [
96
78
  MapContextComponent,
97
79
  MapInstanceDirective,
98
- LayersPanelComponent,
99
- AddLayerFromCatalogComponent,
100
80
  MapContainerComponent,
101
81
  GeocodingComponent,
102
82
  ],
@@ -113,6 +93,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
113
93
  UiElementsModule,
114
94
  UiInputsModule,
115
95
  AddLayerFromOgcApiComponent,
96
+ TextInputComponent,
116
97
  ],
117
98
  providers: [
118
99
  {
@@ -127,4 +108,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
127
108
  ],
128
109
  }]
129
110
  }] });
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1tYXAubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL21hcC9zcmMvbGliL2ZlYXR1cmUtbWFwLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFDNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtDQUErQyxDQUFBO0FBQ25GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFBO0FBQzVFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyREFBMkQsQ0FBQTtBQUN4RyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUM1RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDN0MsT0FBTyxLQUFLLE9BQU8sTUFBTSxzQkFBc0IsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNC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dEMsZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLDJCQUEyQjtxQkFDNUI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxtQkFBbUI7NEJBQzVCLFFBQVEsRUFBRSxpQkFBaUI7eUJBQzVCO3dCQUNELFNBQVM7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGtCQUFrQjs0QkFDM0IsUUFBUSxFQUFFLENBQUMsVUFBVSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFzQjt5QkFDNUQ7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBVaU1hcE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbWFwL3NyYydcbmltcG9ydCB7IGRlZmF1bHRNYXBPcHRpb25zLCBGRUFUVVJFX01BUF9PUFRJT05TIH0gZnJvbSAnLi9jb25zdGFudCdcbmltcG9ydCB7IE1hcEluc3RhbmNlRGlyZWN0aXZlIH0gZnJvbSAnLi9tYW5hZ2VyL21hcC1pbnN0YW5jZS5kaXJlY3RpdmUnXG5pbXBvcnQgeyBNYXBDb250ZXh0Q29tcG9uZW50IH0gZnJvbSAnLi9tYXAtY29udGV4dC9jb21wb25lbnQvbWFwLWNvbnRleHQuY29tcG9uZW50J1xuaW1wb3J0IHsgTGF5ZXJzUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2xheWVycy1wYW5lbC9sYXllcnMtcGFuZWwuY29tcG9uZW50J1xuaW1wb3J0IHsgVWlMYXlvdXRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMnXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IEFkZExheWVyRnJvbUNhdGFsb2dDb21wb25lbnQgfSBmcm9tICcuL2FkZC1sYXllci1mcm9tLWNhdGFsb2cvYWRkLWxheWVyLWZyb20tY2F0YWxvZy5jb21wb25lbnQnXG5pbXBvcnQgeyBGZWF0dXJlU2VhcmNoTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3NlYXJjaC9zcmMnXG5pbXBvcnQgeyBTdG9yZU1vZHVsZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJ1xuaW1wb3J0IHsgRWZmZWN0c01vZHVsZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnXG5pbXBvcnQgKiBhcyBmcm9tTWFwIGZyb20gJy4vK3N0YXRlL21hcC5yZWR1Y2VyJ1xuaW1wb3J0IHsgTWFwRWZmZWN0cyB9IGZyb20gJy4vK3N0YXRlL21hcC5lZmZlY3RzJ1xuaW1wb3J0IHsgTWFwRmFjYWRlIH0gZnJvbSAnLi8rc3RhdGUvbWFwLmZhY2FkZSdcbmltcG9ydCB7IE1hcENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vbWFwLWNvbnRhaW5lci9tYXAtY29udGFpbmVyLmNvbXBvbmVudCdcbmltcG9ydCB7IEFkZExheWVyUmVjb3JkUHJldmlld0NvbXBvbmVudCB9IGZyb20gJy4vYWRkLWxheWVyLWZyb20tY2F0YWxvZy9hZGQtbGF5ZXItcmVjb3JkLXByZXZpZXcvYWRkLWxheWVyLXJlY29yZC1wcmV2aWV3LmNvbXBvbmVudCdcbmltcG9ydCB7IFVpRWxlbWVudHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYydcbmltcG9ydCB7IFVpSW5wdXRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgQWRkTGF5ZXJGcm9tV21zQ29tcG9uZW50IH0gZnJvbSAnLi9hZGQtbGF5ZXItZnJvbS13bXMvYWRkLWxheWVyLWZyb20td21zLmNvbXBvbmVudCdcbmltcG9ydCB7IEFkZExheWVyRnJvbUZpbGVDb21wb25lbnQgfSBmcm9tICcuL2FkZC1sYXllci1mcm9tLWZpbGUvYWRkLWxheWVyLWZyb20tZmlsZS5jb21wb25lbnQnXG5pbXBvcnQgeyBBZGRMYXllckZyb21XZnNDb21wb25lbnQgfSBmcm9tICcuL2FkZC1sYXllci1mcm9tLXdmcy9hZGQtbGF5ZXItZnJvbS13ZnMuY29tcG9uZW50J1xuaW1wb3J0IHsgR2VvY29kaW5nQ29tcG9uZW50IH0gZnJvbSAnLi9nZW9jb2RpbmcvZ2VvY29kaW5nLmNvbXBvbmVudCdcbmltcG9ydCB7IEdFT0NPRElOR19QUk9WSURFUiwgR2VvY29kaW5nUHJvdmlkZXIgfSBmcm9tICcuL2dlb2NvZGluZy5zZXJ2aWNlJ1xuaW1wb3J0IHsgQWRkTGF5ZXJGcm9tT2djQXBpQ29tcG9uZW50IH0gZnJvbSAnLi9hZGQtbGF5ZXItZnJvbS1vZ2MtYXBpL2FkZC1sYXllci1mcm9tLW9nYy1hcGkuY29tcG9uZW50J1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBNYXBDb250ZXh0Q29tcG9uZW50LFxuICAgIE1hcEluc3RhbmNlRGlyZWN0aXZlLFxuICAgIExheWVyc1BhbmVsQ29tcG9uZW50LFxuICAgIEFkZExheWVyRnJvbUNhdGFsb2dDb21wb25lbnQsXG4gICAgTWFwQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIEFkZExheWVyUmVjb3JkUHJldmlld0NvbXBvbmVudCxcbiAgICBBZGRMYXllckZyb21XbXNDb21wb25lbnQsXG4gICAgQWRkTGF5ZXJGcm9tRmlsZUNvbXBvbmVudCxcbiAgICBBZGRMYXllckZyb21XZnNDb21wb25lbnQsXG4gICAgR2VvY29kaW5nQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgTWFwQ29udGV4dENvbXBvbmVudCxcbiAgICBNYXBJbnN0YW5jZURpcmVjdGl2ZSxcbiAgICBMYXllcnNQYW5lbENvbXBvbmVudCxcbiAgICBBZGRMYXllckZyb21DYXRhbG9nQ29tcG9uZW50LFxuICAgIE1hcENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBHZW9jb2RpbmdDb21wb25lbnQsXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgVWlNYXBNb2R1bGUsXG4gICAgVWlMYXlvdXRNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRUYWJzTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICBGZWF0dXJlU2VhcmNoTW9kdWxlLFxuICAgIFN0b3JlTW9kdWxlLmZvckZlYXR1cmUoZnJvbU1hcC5NQVBfRkVBVFVSRV9LRVksIGZyb21NYXAubWFwUmVkdWNlciksXG4gICAgRWZmZWN0c01vZHVsZS5mb3JGZWF0dXJlKFtNYXBFZmZlY3RzXSksXG4gICAgVWlFbGVtZW50c01vZHVsZSxcbiAgICBVaUlucHV0c01vZHVsZSxcbiAgICBBZGRMYXllckZyb21PZ2NBcGlDb21wb25lbnQsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEZFQVRVUkVfTUFQX09QVElPTlMsXG4gICAgICB1c2VWYWx1ZTogZGVmYXVsdE1hcE9wdGlvbnMsXG4gICAgfSxcbiAgICBNYXBGYWNhZGUsXG4gICAge1xuICAgICAgcHJvdmlkZTogR0VPQ09ESU5HX1BST1ZJREVSLFxuICAgICAgdXNlVmFsdWU6IFsnZ2VvbmFtZXMnLCB7IG1heFJvd3M6IDUgfV0gYXMgR2VvY29kaW5nUHJvdmlkZXIsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRmVhdHVyZU1hcE1vZHVsZSB7fVxuIl19
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1tYXAubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL21hcC9zcmMvbGliL2ZlYXR1cmUtbWFwLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFDNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtDQUErQyxDQUFBO0FBQ25GLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUM1RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDN0MsT0FBTyxLQUFLLE9BQU8sTUFBTSxzQkFBc0IsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUN0RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsa0JBQWtCLEVBQXFCLE1BQU0scUJBQXFCLENBQUE7QUFDM0UsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkRBQTJELENBQUE7Ozs7QUEwQ3ZHLE1BQU0sT0FBTyxnQkFBZ0I7K0dBQWhCLGdCQUFnQjtnSEFBaEIsZ0JBQWdCLGlCQXRDekIsbUJBQW1CO1lBQ25CLG9CQUFvQjtZQUNwQixxQkFBcUI7WUFDckIsa0JBQWtCLGFBU2xCLFlBQVk7WUFDWixXQUFXO1lBQ1gsY0FBYztZQUNkLGFBQWE7WUFDYixhQUFhO1lBQ2IsZUFBZTtZQUNmLG1CQUFtQixrREFHbkIsZ0JBQWdCO1lBQ2hCLGNBQWM7WUFDZCwyQkFBMkI7WUFDM0Isa0JBQWtCLGFBbEJsQixtQkFBbUI7WUFDbkIsb0JBQW9CO1lBQ3BCLHFCQUFxQjtZQUNyQixrQkFBa0I7Z0hBNkJULGdCQUFnQixhQVpoQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxtQkFBbUI7Z0JBQzVCLFFBQVEsRUFBRSxpQkFBaUI7YUFDNUI7WUFDRCxTQUFTO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGtCQUFrQjtnQkFDM0IsUUFBUSxFQUFFLENBQUMsVUFBVSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFzQjthQUM1RDtTQUNGLFlBeEJDLFlBQVk7WUFDWixXQUFXO1lBQ1gsY0FBYztZQUNkLGFBQWE7WUFDYixhQUFhO1lBQ2IsZUFBZTtZQUNmLG1CQUFtQjtZQUNuQixXQUFXLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQztZQUNuRSxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdEMsZ0JBQWdCO1lBQ2hCLGNBQWM7WUFDZCwyQkFBMkI7WUFDM0Isa0JBQWtCOzs0RkFjVCxnQkFBZ0I7a0JBeEM1QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixrQkFBa0I7cUJBQ25CO29CQUNELE9BQU8sRUFBRTt3QkFDUCxtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixrQkFBa0I7cUJBQ25CO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLFdBQVcsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDO3dCQUNuRSxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUM7d0JBQ3RDLGdCQUFnQjt3QkFDaEIsY0FBYzt3QkFDZCwyQkFBMkI7d0JBQzNCLGtCQUFrQjtxQkFDbkI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxtQkFBbUI7NEJBQzVCLFFBQVEsRUFBRSxpQkFBaUI7eUJBQzVCO3dCQUNELFNBQVM7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGtCQUFrQjs0QkFDM0IsUUFBUSxFQUFFLENBQUMsVUFBVSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFzQjt5QkFDNUQ7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBVaU1hcE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbWFwL3NyYydcbmltcG9ydCB7IGRlZmF1bHRNYXBPcHRpb25zLCBGRUFUVVJFX01BUF9PUFRJT05TIH0gZnJvbSAnLi9jb25zdGFudCdcbmltcG9ydCB7IE1hcEluc3RhbmNlRGlyZWN0aXZlIH0gZnJvbSAnLi9tYW5hZ2VyL21hcC1pbnN0YW5jZS5kaXJlY3RpdmUnXG5pbXBvcnQgeyBNYXBDb250ZXh0Q29tcG9uZW50IH0gZnJvbSAnLi9tYXAtY29udGV4dC9jb21wb25lbnQvbWFwLWNvbnRleHQuY29tcG9uZW50J1xuaW1wb3J0IHsgVWlMYXlvdXRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMnXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IEZlYXR1cmVTZWFyY2hNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvc2VhcmNoL3NyYydcbmltcG9ydCB7IFN0b3JlTW9kdWxlIH0gZnJvbSAnQG5ncngvc3RvcmUnXG5pbXBvcnQgeyBFZmZlY3RzTW9kdWxlIH0gZnJvbSAnQG5ncngvZWZmZWN0cydcbmltcG9ydCAqIGFzIGZyb21NYXAgZnJvbSAnLi8rc3RhdGUvbWFwLnJlZHVjZXInXG5pbXBvcnQgeyBNYXBFZmZlY3RzIH0gZnJvbSAnLi8rc3RhdGUvbWFwLmVmZmVjdHMnXG5pbXBvcnQgeyBNYXBGYWNhZGUgfSBmcm9tICcuLytzdGF0ZS9tYXAuZmFjYWRlJ1xuaW1wb3J0IHsgTWFwQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9tYXAtY29udGFpbmVyL21hcC1jb250YWluZXIuY29tcG9uZW50J1xuaW1wb3J0IHsgVWlFbGVtZW50c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjJ1xuaW1wb3J0IHsgVGV4dElucHV0Q29tcG9uZW50LCBVaUlucHV0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IEdlb2NvZGluZ0NvbXBvbmVudCB9IGZyb20gJy4vZ2VvY29kaW5nL2dlb2NvZGluZy5jb21wb25lbnQnXG5pbXBvcnQgeyBHRU9DT0RJTkdfUFJPVklERVIsIEdlb2NvZGluZ1Byb3ZpZGVyIH0gZnJvbSAnLi9nZW9jb2Rpbmcuc2VydmljZSdcbmltcG9ydCB7IEFkZExheWVyRnJvbU9nY0FwaUNvbXBvbmVudCB9IGZyb20gJy4vYWRkLWxheWVyLWZyb20tb2djLWFwaS9hZGQtbGF5ZXItZnJvbS1vZ2MtYXBpLmNvbXBvbmVudCdcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgTWFwQ29udGV4dENvbXBvbmVudCxcbiAgICBNYXBJbnN0YW5jZURpcmVjdGl2ZSxcbiAgICBNYXBDb250YWluZXJDb21wb25lbnQsXG4gICAgR2VvY29kaW5nQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgTWFwQ29udGV4dENvbXBvbmVudCxcbiAgICBNYXBJbnN0YW5jZURpcmVjdGl2ZSxcbiAgICBNYXBDb250YWluZXJDb21wb25lbnQsXG4gICAgR2VvY29kaW5nQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFVpTWFwTW9kdWxlLFxuICAgIFVpTGF5b3V0TW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0VGFic01vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgRmVhdHVyZVNlYXJjaE1vZHVsZSxcbiAgICBTdG9yZU1vZHVsZS5mb3JGZWF0dXJlKGZyb21NYXAuTUFQX0ZFQVRVUkVfS0VZLCBmcm9tTWFwLm1hcFJlZHVjZXIpLFxuICAgIEVmZmVjdHNNb2R1bGUuZm9yRmVhdHVyZShbTWFwRWZmZWN0c10pLFxuICAgIFVpRWxlbWVudHNNb2R1bGUsXG4gICAgVWlJbnB1dHNNb2R1bGUsXG4gICAgQWRkTGF5ZXJGcm9tT2djQXBpQ29tcG9uZW50LFxuICAgIFRleHRJbnB1dENvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogRkVBVFVSRV9NQVBfT1BUSU9OUyxcbiAgICAgIHVzZVZhbHVlOiBkZWZhdWx0TWFwT3B0aW9ucyxcbiAgICB9LFxuICAgIE1hcEZhY2FkZSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBHRU9DT0RJTkdfUFJPVklERVIsXG4gICAgICB1c2VWYWx1ZTogWydnZW9uYW1lcycsIHsgbWF4Um93czogNSB9XSBhcyBHZW9jb2RpbmdQcm92aWRlcixcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGZWF0dXJlTWFwTW9kdWxlIHt9XG4iXX0=
@@ -1,17 +1,22 @@
1
- import { Component, ChangeDetectionStrategy } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
2
  import { MapFacade } from '../+state/map.facade';
3
+ import { MatIconModule } from '@angular/material/icon';
4
+ import { UiLayoutModule } from '../../../../../../libs/ui/layout/src';
5
+ import { MatTabsModule } from '@angular/material/tabs';
6
+ import { AddLayerFromOgcApiComponent } from '../add-layer-from-ogc-api/add-layer-from-ogc-api.component';
7
+ import { AddLayerFromWfsComponent } from '../add-layer-from-wfs/add-layer-from-wfs.component';
8
+ import { AddLayerFromWmsComponent } from '../add-layer-from-wms/add-layer-from-wms.component';
9
+ import { AddLayerFromCatalogComponent } from '../add-layer-from-catalog/add-layer-from-catalog.component';
10
+ import { AddLayerFromFileComponent } from '../add-layer-from-file/add-layer-from-file.component';
11
+ import { TranslateModule } from '@ngx-translate/core';
12
+ import { CommonModule } from '@angular/common';
3
13
  import * as i0 from "@angular/core";
4
14
  import * as i1 from "../+state/map.facade";
5
- import * as i2 from "@angular/common";
15
+ import * as i2 from "@angular/material/icon";
6
16
  import * as i3 from "../../../../../ui/layout/src/lib/expandable-panel-button/expandable-panel-button.component";
7
- import * as i4 from "@angular/material/icon";
8
- import * as i5 from "@angular/material/tabs";
9
- import * as i6 from "@ngx-translate/core";
10
- import * as i7 from "../add-layer-from-ogc-api/add-layer-from-ogc-api.component";
11
- import * as i8 from "../add-layer-from-catalog/add-layer-from-catalog.component";
12
- import * as i9 from "../add-layer-from-wms/add-layer-from-wms.component";
13
- import * as i10 from "../add-layer-from-file/add-layer-from-file.component";
14
- import * as i11 from "../add-layer-from-wfs/add-layer-from-wfs.component";
17
+ import * as i4 from "@angular/material/tabs";
18
+ import * as i5 from "@ngx-translate/core";
19
+ import * as i6 from "@angular/common";
15
20
  export class LayersPanelComponent {
16
21
  constructor(mapFacade) {
17
22
  this.mapFacade = mapFacade;
@@ -25,10 +30,21 @@ export class LayersPanelComponent {
25
30
  this.mapFacade.addLayer(layer);
26
31
  }
27
32
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LayersPanelComponent, deps: [{ token: i1.MapFacade }], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: LayersPanelComponent, selector: "gn-ui-layers-panel", ngImport: i0, template: "<div\n class=\"bg-white rounded shadow shadow-lg relative h-full w-[400px] overflow-hidden\"\n>\n <div class=\"p-3 border-b border-gray-300 flex items-center\">\n <mat-icon class=\"material-symbols-outlined mr-2\">layers</mat-icon>\n <span translate>map.layers.list</span>\n </div>\n <div class=\"flex flex-col px-4 divide-y divide-y-gray-50\">\n <div\n *ngFor=\"let layer of layers$ | async; let index = index\"\n class=\"flex flex-row py-3\"\n >\n <mat-icon class=\"material-symbols-outlined -ml-2 mr-2 shrink-0\"\n >chevron_right</mat-icon\n >\n <span class=\"mr-2 grow\">{{ layer.title }}</span>\n <a\n href\n class=\"underline text-sm text-red-700 hover:text-red-900\"\n (click)=\"deleteLayer(index)\"\n >\n delete\n </a>\n </div>\n </div>\n <gn-ui-expandable-panel-button [titleTemplate]=\"addLayerTitle\">\n <mat-tab-group animationDuration=\"200ms\" class=\"h-full\">\n <mat-tab [label]=\"'map.add.layer.catalog' | translate\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-catalog></gn-ui-add-layer-from-catalog>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.wms' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-wms></gn-ui-add-layer-from-wms>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.wfs' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-wfs></gn-ui-add-layer-from-wfs>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.ogc.api' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-ogc-api\n [ogcUrl]=\"ogcUrl\"\n (layerAdded)=\"addLayer($event)\"\n ></gn-ui-add-layer-from-ogc-api>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.file' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-file></gn-ui-add-layer-from-file>\n </div>\n </mat-tab>\n </mat-tab-group>\n </gn-ui-expandable-panel-button>\n</div>\n\n<ng-template #addLayerTitle>\n <mat-icon class=\"material-symbols-outlined mr-4\">add_circle</mat-icon>\n <span translate>map.add.layer</span>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3.ExpandablePanelButtonComponent, selector: "gn-ui-expandable-panel-button", inputs: ["titleTemplate", "collapsed"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i5.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "directive", type: i6.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i7.AddLayerFromOgcApiComponent, selector: "gn-ui-add-layer-from-ogc-api", inputs: ["ogcUrl"], outputs: ["layerAdded"] }, { kind: "component", type: i8.AddLayerFromCatalogComponent, selector: "gn-ui-add-layer-from-catalog" }, { kind: "component", type: i9.AddLayerFromWmsComponent, selector: "gn-ui-add-layer-from-wms" }, { kind: "component", type: i10.AddLayerFromFileComponent, selector: "gn-ui-add-layer-from-file" }, { kind: "component", type: i11.AddLayerFromWfsComponent, selector: "gn-ui-add-layer-from-wfs" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
33
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: LayersPanelComponent, isStandalone: true, selector: "gn-ui-layers-panel", ngImport: i0, template: "<div\n class=\"bg-white rounded shadow shadow-lg relative h-full w-[400px] overflow-hidden\"\n>\n <div class=\"p-3 border-b border-gray-300 flex items-center\">\n <mat-icon class=\"material-symbols-outlined mr-2\">layers</mat-icon>\n <span translate>map.layers.list</span>\n </div>\n <div class=\"flex flex-col px-4 divide-y divide-y-gray-50\">\n <div\n *ngFor=\"let layer of layers$ | async; let index = index\"\n class=\"flex flex-row py-3\"\n >\n <mat-icon class=\"material-symbols-outlined -ml-2 mr-2 shrink-0\"\n >chevron_right</mat-icon\n >\n <span class=\"mr-2 grow\">{{ layer.title }}</span>\n <a\n href\n class=\"underline text-sm text-red-700 hover:text-red-900\"\n (click)=\"deleteLayer(index)\"\n >\n delete\n </a>\n </div>\n </div>\n <gn-ui-expandable-panel-button [titleTemplate]=\"addLayerTitle\">\n <mat-tab-group animationDuration=\"200ms\" class=\"h-full\">\n <mat-tab [label]=\"'map.add.layer.catalog' | translate\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-catalog></gn-ui-add-layer-from-catalog>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.wms' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-wms></gn-ui-add-layer-from-wms>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.wfs' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-wfs></gn-ui-add-layer-from-wfs>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.ogc.api' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-ogc-api\n [ogcUrl]=\"ogcUrl\"\n (layerAdded)=\"addLayer($event)\"\n ></gn-ui-add-layer-from-ogc-api>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.file' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-file></gn-ui-add-layer-from-file>\n </div>\n </mat-tab>\n </mat-tab-group>\n </gn-ui-expandable-panel-button>\n</div>\n\n<ng-template #addLayerTitle>\n <mat-icon class=\"material-symbols-outlined mr-4\">add_circle</mat-icon>\n <span translate>map.add.layer</span>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: UiLayoutModule }, { kind: "component", type: i3.ExpandablePanelButtonComponent, selector: "gn-ui-expandable-panel-button", inputs: ["titleTemplate", "collapsed"] }, { kind: "ngmodule", type: MatTabsModule }, { kind: "component", type: i4.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i4.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "component", type: AddLayerFromOgcApiComponent, selector: "gn-ui-add-layer-from-ogc-api", inputs: ["ogcUrl"], outputs: ["layerAdded"] }, { kind: "component", type: AddLayerFromWfsComponent, selector: "gn-ui-add-layer-from-wfs" }, { kind: "component", type: AddLayerFromWmsComponent, selector: "gn-ui-add-layer-from-wms" }, { kind: "component", type: AddLayerFromCatalogComponent, selector: "gn-ui-add-layer-from-catalog" }, { kind: "component", type: AddLayerFromFileComponent, selector: "gn-ui-add-layer-from-file" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "directive", type: i5.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
29
34
  }
30
35
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LayersPanelComponent, decorators: [{
31
36
  type: Component,
32
- args: [{ selector: 'gn-ui-layers-panel', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"bg-white rounded shadow shadow-lg relative h-full w-[400px] overflow-hidden\"\n>\n <div class=\"p-3 border-b border-gray-300 flex items-center\">\n <mat-icon class=\"material-symbols-outlined mr-2\">layers</mat-icon>\n <span translate>map.layers.list</span>\n </div>\n <div class=\"flex flex-col px-4 divide-y divide-y-gray-50\">\n <div\n *ngFor=\"let layer of layers$ | async; let index = index\"\n class=\"flex flex-row py-3\"\n >\n <mat-icon class=\"material-symbols-outlined -ml-2 mr-2 shrink-0\"\n >chevron_right</mat-icon\n >\n <span class=\"mr-2 grow\">{{ layer.title }}</span>\n <a\n href\n class=\"underline text-sm text-red-700 hover:text-red-900\"\n (click)=\"deleteLayer(index)\"\n >\n delete\n </a>\n </div>\n </div>\n <gn-ui-expandable-panel-button [titleTemplate]=\"addLayerTitle\">\n <mat-tab-group animationDuration=\"200ms\" class=\"h-full\">\n <mat-tab [label]=\"'map.add.layer.catalog' | translate\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-catalog></gn-ui-add-layer-from-catalog>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.wms' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-wms></gn-ui-add-layer-from-wms>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.wfs' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-wfs></gn-ui-add-layer-from-wfs>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.ogc.api' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-ogc-api\n [ogcUrl]=\"ogcUrl\"\n (layerAdded)=\"addLayer($event)\"\n ></gn-ui-add-layer-from-ogc-api>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.file' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-file></gn-ui-add-layer-from-file>\n </div>\n </mat-tab>\n </mat-tab-group>\n </gn-ui-expandable-panel-button>\n</div>\n\n<ng-template #addLayerTitle>\n <mat-icon class=\"material-symbols-outlined mr-4\">add_circle</mat-icon>\n <span translate>map.add.layer</span>\n</ng-template>\n" }]
37
+ args: [{ selector: 'gn-ui-layers-panel', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
38
+ MatIconModule,
39
+ UiLayoutModule,
40
+ MatTabsModule,
41
+ AddLayerFromOgcApiComponent,
42
+ AddLayerFromWfsComponent,
43
+ AddLayerFromWmsComponent,
44
+ AddLayerFromCatalogComponent,
45
+ AddLayerFromFileComponent,
46
+ TranslateModule,
47
+ CommonModule,
48
+ ], template: "<div\n class=\"bg-white rounded shadow shadow-lg relative h-full w-[400px] overflow-hidden\"\n>\n <div class=\"p-3 border-b border-gray-300 flex items-center\">\n <mat-icon class=\"material-symbols-outlined mr-2\">layers</mat-icon>\n <span translate>map.layers.list</span>\n </div>\n <div class=\"flex flex-col px-4 divide-y divide-y-gray-50\">\n <div\n *ngFor=\"let layer of layers$ | async; let index = index\"\n class=\"flex flex-row py-3\"\n >\n <mat-icon class=\"material-symbols-outlined -ml-2 mr-2 shrink-0\"\n >chevron_right</mat-icon\n >\n <span class=\"mr-2 grow\">{{ layer.title }}</span>\n <a\n href\n class=\"underline text-sm text-red-700 hover:text-red-900\"\n (click)=\"deleteLayer(index)\"\n >\n delete\n </a>\n </div>\n </div>\n <gn-ui-expandable-panel-button [titleTemplate]=\"addLayerTitle\">\n <mat-tab-group animationDuration=\"200ms\" class=\"h-full\">\n <mat-tab [label]=\"'map.add.layer.catalog' | translate\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-catalog></gn-ui-add-layer-from-catalog>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.wms' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-wms></gn-ui-add-layer-from-wms>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.wfs' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-wfs></gn-ui-add-layer-from-wfs>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.ogc.api' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-ogc-api\n [ogcUrl]=\"ogcUrl\"\n (layerAdded)=\"addLayer($event)\"\n ></gn-ui-add-layer-from-ogc-api>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.file' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-file></gn-ui-add-layer-from-file>\n </div>\n </mat-tab>\n </mat-tab-group>\n </gn-ui-expandable-panel-button>\n</div>\n\n<ng-template #addLayerTitle>\n <mat-icon class=\"material-symbols-outlined mr-4\">add_circle</mat-icon>\n <span translate>map.add.layer</span>\n</ng-template>\n" }]
33
49
  }], ctorParameters: function () { return [{ type: i1.MapFacade }]; } });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXJzLXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9sYXllcnMtcGFuZWwvbGF5ZXJzLXBhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9sYXllcnMtcGFuZWwvbGF5ZXJzLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDbEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFBOzs7Ozs7Ozs7Ozs7O0FBUWhELE1BQU0sT0FBTyxvQkFBb0I7SUFHL0IsWUFBb0IsU0FBb0I7UUFBcEIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUZ4QyxZQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUE7UUFDaEMsV0FBTSxHQUFHLEVBQUUsQ0FBQTtJQUNnQyxDQUFDO0lBRTVDLFdBQVcsQ0FBQyxLQUFhO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ25DLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBSztRQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ2hDLENBQUM7K0dBWFUsb0JBQW9CO21HQUFwQixvQkFBb0IsMERDVGpDLG96RUErREE7OzRGRHREYSxvQkFBb0I7a0JBTmhDLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE1hcEZhY2FkZSB9IGZyb20gJy4uLytzdGF0ZS9tYXAuZmFjYWRlJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1sYXllcnMtcGFuZWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGF5ZXJzLXBhbmVsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGF5ZXJzLXBhbmVsLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBMYXllcnNQYW5lbENvbXBvbmVudCB7XG4gIGxheWVycyQgPSB0aGlzLm1hcEZhY2FkZS5sYXllcnMkXG4gIG9nY1VybCA9ICcnXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbWFwRmFjYWRlOiBNYXBGYWNhZGUpIHt9XG5cbiAgZGVsZXRlTGF5ZXIoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMubWFwRmFjYWRlLnJlbW92ZUxheWVyKGluZGV4KVxuICB9XG5cbiAgYWRkTGF5ZXIobGF5ZXIpIHtcbiAgICB0aGlzLm1hcEZhY2FkZS5hZGRMYXllcihsYXllcilcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImJnLXdoaXRlIHJvdW5kZWQgc2hhZG93IHNoYWRvdy1sZyByZWxhdGl2ZSBoLWZ1bGwgdy1bNDAwcHhdIG92ZXJmbG93LWhpZGRlblwiXG4+XG4gIDxkaXYgY2xhc3M9XCJwLTMgYm9yZGVyLWIgYm9yZGVyLWdyYXktMzAwIGZsZXggaXRlbXMtY2VudGVyXCI+XG4gICAgPG1hdC1pY29uIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBtci0yXCI+bGF5ZXJzPC9tYXQtaWNvbj5cbiAgICA8c3BhbiB0cmFuc2xhdGU+bWFwLmxheWVycy5saXN0PC9zcGFuPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgcHgtNCBkaXZpZGUteSBkaXZpZGUteS1ncmF5LTUwXCI+XG4gICAgPGRpdlxuICAgICAgKm5nRm9yPVwibGV0IGxheWVyIG9mIGxheWVycyQgfCBhc3luYzsgbGV0IGluZGV4ID0gaW5kZXhcIlxuICAgICAgY2xhc3M9XCJmbGV4IGZsZXgtcm93IHB5LTNcIlxuICAgID5cbiAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgLW1sLTIgbXItMiBzaHJpbmstMFwiXG4gICAgICAgID5jaGV2cm9uX3JpZ2h0PC9tYXQtaWNvblxuICAgICAgPlxuICAgICAgPHNwYW4gY2xhc3M9XCJtci0yIGdyb3dcIj57eyBsYXllci50aXRsZSB9fTwvc3Bhbj5cbiAgICAgIDxhXG4gICAgICAgIGhyZWZcbiAgICAgICAgY2xhc3M9XCJ1bmRlcmxpbmUgdGV4dC1zbSB0ZXh0LXJlZC03MDAgaG92ZXI6dGV4dC1yZWQtOTAwXCJcbiAgICAgICAgKGNsaWNrKT1cImRlbGV0ZUxheWVyKGluZGV4KVwiXG4gICAgICA+XG4gICAgICAgIGRlbGV0ZVxuICAgICAgPC9hPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGduLXVpLWV4cGFuZGFibGUtcGFuZWwtYnV0dG9uIFt0aXRsZVRlbXBsYXRlXT1cImFkZExheWVyVGl0bGVcIj5cbiAgICA8bWF0LXRhYi1ncm91cCBhbmltYXRpb25EdXJhdGlvbj1cIjIwMG1zXCIgY2xhc3M9XCJoLWZ1bGxcIj5cbiAgICAgIDxtYXQtdGFiIFtsYWJlbF09XCInbWFwLmFkZC5sYXllci5jYXRhbG9nJyB8IHRyYW5zbGF0ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicC0zXCI+XG4gICAgICAgICAgPGduLXVpLWFkZC1sYXllci1mcm9tLWNhdGFsb2c+PC9nbi11aS1hZGQtbGF5ZXItZnJvbS1jYXRhbG9nPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbWF0LXRhYj5cbiAgICAgIDxtYXQtdGFiIFtsYWJlbF09XCInbWFwLmFkZC5sYXllci53bXMnIHwgdHJhbnNsYXRlXCIgYm9keUNsYXNzPVwiaC1mdWxsXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwLTNcIj5cbiAgICAgICAgICA8Z24tdWktYWRkLWxheWVyLWZyb20td21zPjwvZ24tdWktYWRkLWxheWVyLWZyb20td21zPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbWF0LXRhYj5cbiAgICAgIDxtYXQtdGFiIFtsYWJlbF09XCInbWFwLmFkZC5sYXllci53ZnMnIHwgdHJhbnNsYXRlXCIgYm9keUNsYXNzPVwiaC1mdWxsXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwLTNcIj5cbiAgICAgICAgICA8Z24tdWktYWRkLWxheWVyLWZyb20td2ZzPjwvZ24tdWktYWRkLWxheWVyLWZyb20td2ZzPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbWF0LXRhYj5cbiAgICAgIDxtYXQtdGFiIFtsYWJlbF09XCInbWFwLmFkZC5sYXllci5vZ2MuYXBpJyB8IHRyYW5zbGF0ZVwiIGJvZHlDbGFzcz1cImgtZnVsbFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicC0zXCI+XG4gICAgICAgICAgPGduLXVpLWFkZC1sYXllci1mcm9tLW9nYy1hcGlcbiAgICAgICAgICAgIFtvZ2NVcmxdPVwib2djVXJsXCJcbiAgICAgICAgICAgIChsYXllckFkZGVkKT1cImFkZExheWVyKCRldmVudClcIlxuICAgICAgICAgID48L2duLXVpLWFkZC1sYXllci1mcm9tLW9nYy1hcGk+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9tYXQtdGFiPlxuICAgICAgPG1hdC10YWIgW2xhYmVsXT1cIidtYXAuYWRkLmxheWVyLmZpbGUnIHwgdHJhbnNsYXRlXCIgYm9keUNsYXNzPVwiaC1mdWxsXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwLTNcIj5cbiAgICAgICAgICA8Z24tdWktYWRkLWxheWVyLWZyb20tZmlsZT48L2duLXVpLWFkZC1sYXllci1mcm9tLWZpbGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9tYXQtdGFiPlxuICAgIDwvbWF0LXRhYi1ncm91cD5cbiAgPC9nbi11aS1leHBhbmRhYmxlLXBhbmVsLWJ1dHRvbj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2FkZExheWVyVGl0bGU+XG4gIDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgbXItNFwiPmFkZF9jaXJjbGU8L21hdC1pY29uPlxuICA8c3BhbiB0cmFuc2xhdGU+bWFwLmFkZC5sYXllcjwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXJzLXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9sYXllcnMtcGFuZWwvbGF5ZXJzLXBhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjL2xpYi9sYXllcnMtcGFuZWwvbGF5ZXJzLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDbEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ2hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDckUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDREQUE0RCxDQUFBO0FBQ3hHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFBO0FBQzdGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFBO0FBQzdGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDREQUE0RCxDQUFBO0FBQ3pHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFBO0FBQ2hHLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7Ozs7Ozs7O0FBcUI5QyxNQUFNLE9BQU8sb0JBQW9CO0lBRy9CLFlBQW9CLFNBQW9CO1FBQXBCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFGeEMsWUFBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFBO1FBQ2hDLFdBQU0sR0FBRyxFQUFFLENBQUE7SUFDZ0MsQ0FBQztJQUU1QyxXQUFXLENBQUMsS0FBYTtRQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNuQyxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQUs7UUFDWixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNoQyxDQUFDOytHQVhVLG9CQUFvQjttR0FBcEIsb0JBQW9CLDhFQ2hDakMsb3pFQStEQSx5REQzQ0ksYUFBYSxtTEFDYixjQUFjLGlMQUNkLGFBQWEseVRBQ2IsMkJBQTJCLHNIQUMzQix3QkFBd0IscUVBQ3hCLHdCQUF3QixxRUFDeEIsNEJBQTRCLHlFQUM1Qix5QkFBeUIscUVBQ3pCLGVBQWUsa09BQ2YsWUFBWTs7NEZBR0gsb0JBQW9CO2tCQW5CaEMsU0FBUzsrQkFDRSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsYUFBYTt3QkFDYixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsMkJBQTJCO3dCQUMzQix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsNEJBQTRCO3dCQUM1Qix5QkFBeUI7d0JBQ3pCLGVBQWU7d0JBQ2YsWUFBWTtxQkFDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTWFwRmFjYWRlIH0gZnJvbSAnLi4vK3N0YXRlL21hcC5mYWNhZGUnXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IFVpTGF5b3V0TW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjJ1xuaW1wb3J0IHsgTWF0VGFic01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYnMnXG5pbXBvcnQgeyBBZGRMYXllckZyb21PZ2NBcGlDb21wb25lbnQgfSBmcm9tICcuLi9hZGQtbGF5ZXItZnJvbS1vZ2MtYXBpL2FkZC1sYXllci1mcm9tLW9nYy1hcGkuY29tcG9uZW50J1xuaW1wb3J0IHsgQWRkTGF5ZXJGcm9tV2ZzQ29tcG9uZW50IH0gZnJvbSAnLi4vYWRkLWxheWVyLWZyb20td2ZzL2FkZC1sYXllci1mcm9tLXdmcy5jb21wb25lbnQnXG5pbXBvcnQgeyBBZGRMYXllckZyb21XbXNDb21wb25lbnQgfSBmcm9tICcuLi9hZGQtbGF5ZXItZnJvbS13bXMvYWRkLWxheWVyLWZyb20td21zLmNvbXBvbmVudCdcbmltcG9ydCB7IEFkZExheWVyRnJvbUNhdGFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9hZGQtbGF5ZXItZnJvbS1jYXRhbG9nL2FkZC1sYXllci1mcm9tLWNhdGFsb2cuY29tcG9uZW50J1xuaW1wb3J0IHsgQWRkTGF5ZXJGcm9tRmlsZUNvbXBvbmVudCB9IGZyb20gJy4uL2FkZC1sYXllci1mcm9tLWZpbGUvYWRkLWxheWVyLWZyb20tZmlsZS5jb21wb25lbnQnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1sYXllcnMtcGFuZWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGF5ZXJzLXBhbmVsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGF5ZXJzLXBhbmVsLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBVaUxheW91dE1vZHVsZSxcbiAgICBNYXRUYWJzTW9kdWxlLFxuICAgIEFkZExheWVyRnJvbU9nY0FwaUNvbXBvbmVudCxcbiAgICBBZGRMYXllckZyb21XZnNDb21wb25lbnQsXG4gICAgQWRkTGF5ZXJGcm9tV21zQ29tcG9uZW50LFxuICAgIEFkZExheWVyRnJvbUNhdGFsb2dDb21wb25lbnQsXG4gICAgQWRkTGF5ZXJGcm9tRmlsZUNvbXBvbmVudCxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBMYXllcnNQYW5lbENvbXBvbmVudCB7XG4gIGxheWVycyQgPSB0aGlzLm1hcEZhY2FkZS5sYXllcnMkXG4gIG9nY1VybCA9ICcnXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbWFwRmFjYWRlOiBNYXBGYWNhZGUpIHt9XG5cbiAgZGVsZXRlTGF5ZXIoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMubWFwRmFjYWRlLnJlbW92ZUxheWVyKGluZGV4KVxuICB9XG5cbiAgYWRkTGF5ZXIobGF5ZXIpIHtcbiAgICB0aGlzLm1hcEZhY2FkZS5hZGRMYXllcihsYXllcilcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImJnLXdoaXRlIHJvdW5kZWQgc2hhZG93IHNoYWRvdy1sZyByZWxhdGl2ZSBoLWZ1bGwgdy1bNDAwcHhdIG92ZXJmbG93LWhpZGRlblwiXG4+XG4gIDxkaXYgY2xhc3M9XCJwLTMgYm9yZGVyLWIgYm9yZGVyLWdyYXktMzAwIGZsZXggaXRlbXMtY2VudGVyXCI+XG4gICAgPG1hdC1pY29uIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBtci0yXCI+bGF5ZXJzPC9tYXQtaWNvbj5cbiAgICA8c3BhbiB0cmFuc2xhdGU+bWFwLmxheWVycy5saXN0PC9zcGFuPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgcHgtNCBkaXZpZGUteSBkaXZpZGUteS1ncmF5LTUwXCI+XG4gICAgPGRpdlxuICAgICAgKm5nRm9yPVwibGV0IGxheWVyIG9mIGxheWVycyQgfCBhc3luYzsgbGV0IGluZGV4ID0gaW5kZXhcIlxuICAgICAgY2xhc3M9XCJmbGV4IGZsZXgtcm93IHB5LTNcIlxuICAgID5cbiAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgLW1sLTIgbXItMiBzaHJpbmstMFwiXG4gICAgICAgID5jaGV2cm9uX3JpZ2h0PC9tYXQtaWNvblxuICAgICAgPlxuICAgICAgPHNwYW4gY2xhc3M9XCJtci0yIGdyb3dcIj57eyBsYXllci50aXRsZSB9fTwvc3Bhbj5cbiAgICAgIDxhXG4gICAgICAgIGhyZWZcbiAgICAgICAgY2xhc3M9XCJ1bmRlcmxpbmUgdGV4dC1zbSB0ZXh0LXJlZC03MDAgaG92ZXI6dGV4dC1yZWQtOTAwXCJcbiAgICAgICAgKGNsaWNrKT1cImRlbGV0ZUxheWVyKGluZGV4KVwiXG4gICAgICA+XG4gICAgICAgIGRlbGV0ZVxuICAgICAgPC9hPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGduLXVpLWV4cGFuZGFibGUtcGFuZWwtYnV0dG9uIFt0aXRsZVRlbXBsYXRlXT1cImFkZExheWVyVGl0bGVcIj5cbiAgICA8bWF0LXRhYi1ncm91cCBhbmltYXRpb25EdXJhdGlvbj1cIjIwMG1zXCIgY2xhc3M9XCJoLWZ1bGxcIj5cbiAgICAgIDxtYXQtdGFiIFtsYWJlbF09XCInbWFwLmFkZC5sYXllci5jYXRhbG9nJyB8IHRyYW5zbGF0ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicC0zXCI+XG4gICAgICAgICAgPGduLXVpLWFkZC1sYXllci1mcm9tLWNhdGFsb2c+PC9nbi11aS1hZGQtbGF5ZXItZnJvbS1jYXRhbG9nPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbWF0LXRhYj5cbiAgICAgIDxtYXQtdGFiIFtsYWJlbF09XCInbWFwLmFkZC5sYXllci53bXMnIHwgdHJhbnNsYXRlXCIgYm9keUNsYXNzPVwiaC1mdWxsXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwLTNcIj5cbiAgICAgICAgICA8Z24tdWktYWRkLWxheWVyLWZyb20td21zPjwvZ24tdWktYWRkLWxheWVyLWZyb20td21zPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbWF0LXRhYj5cbiAgICAgIDxtYXQtdGFiIFtsYWJlbF09XCInbWFwLmFkZC5sYXllci53ZnMnIHwgdHJhbnNsYXRlXCIgYm9keUNsYXNzPVwiaC1mdWxsXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwLTNcIj5cbiAgICAgICAgICA8Z24tdWktYWRkLWxheWVyLWZyb20td2ZzPjwvZ24tdWktYWRkLWxheWVyLWZyb20td2ZzPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbWF0LXRhYj5cbiAgICAgIDxtYXQtdGFiIFtsYWJlbF09XCInbWFwLmFkZC5sYXllci5vZ2MuYXBpJyB8IHRyYW5zbGF0ZVwiIGJvZHlDbGFzcz1cImgtZnVsbFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicC0zXCI+XG4gICAgICAgICAgPGduLXVpLWFkZC1sYXllci1mcm9tLW9nYy1hcGlcbiAgICAgICAgICAgIFtvZ2NVcmxdPVwib2djVXJsXCJcbiAgICAgICAgICAgIChsYXllckFkZGVkKT1cImFkZExheWVyKCRldmVudClcIlxuICAgICAgICAgID48L2duLXVpLWFkZC1sYXllci1mcm9tLW9nYy1hcGk+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9tYXQtdGFiPlxuICAgICAgPG1hdC10YWIgW2xhYmVsXT1cIidtYXAuYWRkLmxheWVyLmZpbGUnIHwgdHJhbnNsYXRlXCIgYm9keUNsYXNzPVwiaC1mdWxsXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwLTNcIj5cbiAgICAgICAgICA8Z24tdWktYWRkLWxheWVyLWZyb20tZmlsZT48L2duLXVpLWFkZC1sYXllci1mcm9tLWZpbGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9tYXQtdGFiPlxuICAgIDwvbWF0LXRhYi1ncm91cD5cbiAgPC9nbi11aS1leHBhbmRhYmxlLXBhbmVsLWJ1dHRvbj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2FkZExheWVyVGl0bGU+XG4gIDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgbXItNFwiPmFkZF9jaXJjbGU8L21hdC1pY29uPlxuICA8c3BhbiB0cmFuc2xhdGU+bWFwLmFkZC5sYXllcjwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -2,7 +2,7 @@ import { Circle, Fill, Stroke, Style } from 'ol/style';
2
2
  const colorPrimary = 'blue';
3
3
  const colorSecondary = 'red';
4
4
  const colorStroke = 'white';
5
- export const DEFAULT_STYLE_FIXTURE = new Style({
5
+ export const defaultMapStyleFixture = () => new Style({
6
6
  image: new Circle({
7
7
  fill: new Fill({
8
8
  color: colorPrimary,
@@ -21,7 +21,7 @@ export const DEFAULT_STYLE_FIXTURE = new Style({
21
21
  width: 2,
22
22
  }),
23
23
  });
24
- export const DEFAULT_STYLE_HL_FIXTURE = new Style({
24
+ export const defaultMapStyleHlFixture = () => new Style({
25
25
  image: new Circle({
26
26
  fill: new Fill({
27
27
  color: colorSecondary,
@@ -40,4 +40,4 @@ export const DEFAULT_STYLE_HL_FIXTURE = new Style({
40
40
  width: 3,
41
41
  }),
42
42
  });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXN0eWxlLmZpeHR1cmVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL21hcC9zcmMvbGliL3N0eWxlL21hcC1zdHlsZS5maXh0dXJlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBRXRELE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQTtBQUMzQixNQUFNLGNBQWMsR0FBRyxLQUFLLENBQUE7QUFDNUIsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFBO0FBRTNCLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLElBQUksS0FBSyxDQUFDO0lBQzdDLEtBQUssRUFBRSxJQUFJLE1BQU0sQ0FBQztRQUNoQixJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUM7WUFDYixLQUFLLEVBQUUsWUFBWTtTQUNwQixDQUFDO1FBQ0YsTUFBTSxFQUFFLElBQUksTUFBTSxDQUFDO1lBQ2pCLEtBQUssRUFBRSxXQUFXO1lBQ2xCLEtBQUssRUFBRSxDQUFDO1NBQ1QsQ0FBQztRQUNGLE1BQU0sRUFBRSxDQUFDO0tBQ1YsQ0FBQztJQUNGLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQztRQUNiLEtBQUssRUFBRSxvQkFBb0I7S0FDNUIsQ0FBQztJQUNGLE1BQU0sRUFBRSxJQUFJLE1BQU0sQ0FBQztRQUNqQixLQUFLLEVBQUUsV0FBVztRQUNsQixLQUFLLEVBQUUsQ0FBQztLQUNULENBQUM7Q0FDSCxDQUFDLENBQUE7QUFFRixNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLEtBQUssQ0FBQztJQUNoRCxLQUFLLEVBQUUsSUFBSSxNQUFNLENBQUM7UUFDaEIsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDO1lBQ2IsS0FBSyxFQUFFLGNBQWM7U0FDdEIsQ0FBQztRQUNGLE1BQU0sRUFBRSxJQUFJLE1BQU0sQ0FBQztZQUNqQixLQUFLLEVBQUUsV0FBVztZQUNsQixLQUFLLEVBQUUsQ0FBQztTQUNULENBQUM7UUFDRixNQUFNLEVBQUUsQ0FBQztLQUNWLENBQUM7SUFDRixJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUM7UUFDYixLQUFLLEVBQUUsb0JBQW9CO0tBQzVCLENBQUM7SUFDRixNQUFNLEVBQUUsSUFBSSxNQUFNLENBQUM7UUFDakIsS0FBSyxFQUFFLGNBQWM7UUFDckIsS0FBSyxFQUFFLENBQUM7S0FDVCxDQUFDO0NBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2lyY2xlLCBGaWxsLCBTdHJva2UsIFN0eWxlIH0gZnJvbSAnb2wvc3R5bGUnXG5cbmNvbnN0IGNvbG9yUHJpbWFyeSA9ICdibHVlJ1xuY29uc3QgY29sb3JTZWNvbmRhcnkgPSAncmVkJ1xuY29uc3QgY29sb3JTdHJva2UgPSAnd2hpdGUnXG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX1NUWUxFX0ZJWFRVUkUgPSBuZXcgU3R5bGUoe1xuICBpbWFnZTogbmV3IENpcmNsZSh7XG4gICAgZmlsbDogbmV3IEZpbGwoe1xuICAgICAgY29sb3I6IGNvbG9yUHJpbWFyeSxcbiAgICB9KSxcbiAgICBzdHJva2U6IG5ldyBTdHJva2Uoe1xuICAgICAgY29sb3I6IGNvbG9yU3Ryb2tlLFxuICAgICAgd2lkdGg6IDIsXG4gICAgfSksXG4gICAgcmFkaXVzOiA1LFxuICB9KSxcbiAgZmlsbDogbmV3IEZpbGwoe1xuICAgIGNvbG9yOiAncmdiYSgwLDAsMjU1LDAuMjUpJyxcbiAgfSksXG4gIHN0cm9rZTogbmV3IFN0cm9rZSh7XG4gICAgY29sb3I6IGNvbG9yU3Ryb2tlLFxuICAgIHdpZHRoOiAyLFxuICB9KSxcbn0pXG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX1NUWUxFX0hMX0ZJWFRVUkUgPSBuZXcgU3R5bGUoe1xuICBpbWFnZTogbmV3IENpcmNsZSh7XG4gICAgZmlsbDogbmV3IEZpbGwoe1xuICAgICAgY29sb3I6IGNvbG9yU2Vjb25kYXJ5LFxuICAgIH0pLFxuICAgIHN0cm9rZTogbmV3IFN0cm9rZSh7XG4gICAgICBjb2xvcjogY29sb3JTdHJva2UsXG4gICAgICB3aWR0aDogMyxcbiAgICB9KSxcbiAgICByYWRpdXM6IDYsXG4gIH0pLFxuICBmaWxsOiBuZXcgRmlsbCh7XG4gICAgY29sb3I6ICdyZ2JhKDI1NSwwLDAsMC4yNSknLFxuICB9KSxcbiAgc3Ryb2tlOiBuZXcgU3Ryb2tlKHtcbiAgICBjb2xvcjogY29sb3JTZWNvbmRhcnksXG4gICAgd2lkdGg6IDMsXG4gIH0pLFxufSlcbiJdfQ==
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXN0eWxlLmZpeHR1cmVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL21hcC9zcmMvbGliL3N0eWxlL21hcC1zdHlsZS5maXh0dXJlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBRXRELE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQTtBQUMzQixNQUFNLGNBQWMsR0FBRyxLQUFLLENBQUE7QUFDNUIsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFBO0FBRTNCLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLEdBQVUsRUFBRSxDQUNoRCxJQUFJLEtBQUssQ0FBQztJQUNSLEtBQUssRUFBRSxJQUFJLE1BQU0sQ0FBQztRQUNoQixJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUM7WUFDYixLQUFLLEVBQUUsWUFBWTtTQUNwQixDQUFDO1FBQ0YsTUFBTSxFQUFFLElBQUksTUFBTSxDQUFDO1lBQ2pCLEtBQUssRUFBRSxXQUFXO1lBQ2xCLEtBQUssRUFBRSxDQUFDO1NBQ1QsQ0FBQztRQUNGLE1BQU0sRUFBRSxDQUFDO0tBQ1YsQ0FBQztJQUNGLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQztRQUNiLEtBQUssRUFBRSxvQkFBb0I7S0FDNUIsQ0FBQztJQUNGLE1BQU0sRUFBRSxJQUFJLE1BQU0sQ0FBQztRQUNqQixLQUFLLEVBQUUsV0FBVztRQUNsQixLQUFLLEVBQUUsQ0FBQztLQUNULENBQUM7Q0FDSCxDQUFDLENBQUE7QUFFSixNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxHQUFVLEVBQUUsQ0FDbEQsSUFBSSxLQUFLLENBQUM7SUFDUixLQUFLLEVBQUUsSUFBSSxNQUFNLENBQUM7UUFDaEIsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDO1lBQ2IsS0FBSyxFQUFFLGNBQWM7U0FDdEIsQ0FBQztRQUNGLE1BQU0sRUFBRSxJQUFJLE1BQU0sQ0FBQztZQUNqQixLQUFLLEVBQUUsV0FBVztZQUNsQixLQUFLLEVBQUUsQ0FBQztTQUNULENBQUM7UUFDRixNQUFNLEVBQUUsQ0FBQztLQUNWLENBQUM7SUFDRixJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUM7UUFDYixLQUFLLEVBQUUsb0JBQW9CO0tBQzVCLENBQUM7SUFDRixNQUFNLEVBQUUsSUFBSSxNQUFNLENBQUM7UUFDakIsS0FBSyxFQUFFLGNBQWM7UUFDckIsS0FBSyxFQUFFLENBQUM7S0FDVCxDQUFDO0NBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2lyY2xlLCBGaWxsLCBTdHJva2UsIFN0eWxlIH0gZnJvbSAnb2wvc3R5bGUnXG5cbmNvbnN0IGNvbG9yUHJpbWFyeSA9ICdibHVlJ1xuY29uc3QgY29sb3JTZWNvbmRhcnkgPSAncmVkJ1xuY29uc3QgY29sb3JTdHJva2UgPSAnd2hpdGUnXG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0TWFwU3R5bGVGaXh0dXJlID0gKCk6IFN0eWxlID0+XG4gIG5ldyBTdHlsZSh7XG4gICAgaW1hZ2U6IG5ldyBDaXJjbGUoe1xuICAgICAgZmlsbDogbmV3IEZpbGwoe1xuICAgICAgICBjb2xvcjogY29sb3JQcmltYXJ5LFxuICAgICAgfSksXG4gICAgICBzdHJva2U6IG5ldyBTdHJva2Uoe1xuICAgICAgICBjb2xvcjogY29sb3JTdHJva2UsXG4gICAgICAgIHdpZHRoOiAyLFxuICAgICAgfSksXG4gICAgICByYWRpdXM6IDUsXG4gICAgfSksXG4gICAgZmlsbDogbmV3IEZpbGwoe1xuICAgICAgY29sb3I6ICdyZ2JhKDAsMCwyNTUsMC4yNSknLFxuICAgIH0pLFxuICAgIHN0cm9rZTogbmV3IFN0cm9rZSh7XG4gICAgICBjb2xvcjogY29sb3JTdHJva2UsXG4gICAgICB3aWR0aDogMixcbiAgICB9KSxcbiAgfSlcblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRNYXBTdHlsZUhsRml4dHVyZSA9ICgpOiBTdHlsZSA9PlxuICBuZXcgU3R5bGUoe1xuICAgIGltYWdlOiBuZXcgQ2lyY2xlKHtcbiAgICAgIGZpbGw6IG5ldyBGaWxsKHtcbiAgICAgICAgY29sb3I6IGNvbG9yU2Vjb25kYXJ5LFxuICAgICAgfSksXG4gICAgICBzdHJva2U6IG5ldyBTdHJva2Uoe1xuICAgICAgICBjb2xvcjogY29sb3JTdHJva2UsXG4gICAgICAgIHdpZHRoOiAzLFxuICAgICAgfSksXG4gICAgICByYWRpdXM6IDYsXG4gICAgfSksXG4gICAgZmlsbDogbmV3IEZpbGwoe1xuICAgICAgY29sb3I6ICdyZ2JhKDI1NSwwLDAsMC4yNSknLFxuICAgIH0pLFxuICAgIHN0cm9rZTogbmV3IFN0cm9rZSh7XG4gICAgICBjb2xvcjogY29sb3JTZWNvbmRhcnksXG4gICAgICB3aWR0aDogMyxcbiAgICB9KSxcbiAgfSlcbiJdfQ==