geonetwork-ui 2.5.0-dev.d91908296 → 2.5.0-dev.e060bf76e

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 (312) hide show
  1. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +11 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
  3. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +50 -32
  4. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +23 -3
  5. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  6. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  7. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +7 -4
  8. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +18 -16
  9. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +24 -14
  10. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +16 -18
  11. package/esm2022/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.mjs +3 -3
  12. package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +2 -2
  13. package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +2 -2
  14. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.mjs +2 -2
  15. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.mjs +3 -2
  16. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.mjs +2 -2
  17. package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +7 -23
  18. package/esm2022/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.mjs +11 -11
  19. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +2 -2
  20. package/esm2022/libs/feature/editor/src/lib/models/wizard-field.type.mjs +3 -4
  21. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +1 -1
  22. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +25 -5
  23. package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +6 -7
  24. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +10 -7
  25. package/esm2022/libs/feature/record/src/lib/state/mdview.actions.mjs +4 -1
  26. package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +7 -2
  27. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +9 -1
  28. package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +19 -1
  29. package/esm2022/libs/feature/record/src/lib/state/mdview.selectors.mjs +6 -1
  30. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +6 -3
  31. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +1 -1
  32. package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +46 -1
  33. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +3 -2
  34. package/esm2022/libs/ui/dataviz/src/index.mjs +3 -3
  35. package/esm2022/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.mjs +51 -0
  36. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.component.mjs +133 -0
  37. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.data.source.mjs +24 -0
  38. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.mjs +82 -0
  39. package/esm2022/libs/ui/elements/src/index.mjs +2 -1
  40. package/esm2022/libs/ui/elements/src/lib/application-banner/application-banner.component.mjs +78 -0
  41. package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +3 -3
  42. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +18 -10
  43. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +2 -1
  44. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +10 -4
  45. package/esm2022/libs/ui/inputs/src/index.mjs +1 -2
  46. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +43 -3
  47. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +1 -6
  48. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +14 -4
  49. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +22 -13
  50. package/esm2022/libs/ui/widgets/src/index.mjs +1 -2
  51. package/esm2022/libs/ui/widgets/src/lib/ui-widgets.module.mjs +5 -6
  52. package/esm2022/libs/util/data-fetcher/src/index.mjs +3 -1
  53. package/esm2022/libs/util/data-fetcher/src/lib/data-fetcher.mjs +5 -4
  54. package/esm2022/libs/util/data-fetcher/src/lib/model.mjs +7 -3
  55. package/esm2022/libs/util/data-fetcher/src/lib/readers/base-cache.mjs +12 -0
  56. package/esm2022/libs/util/data-fetcher/src/lib/readers/base-file.mjs +3 -3
  57. package/esm2022/libs/util/data-fetcher/src/lib/readers/base.mjs +1 -1
  58. package/esm2022/libs/util/data-fetcher/src/lib/readers/csv.mjs +2 -2
  59. package/esm2022/libs/util/data-fetcher/src/lib/readers/excel.mjs +2 -2
  60. package/esm2022/libs/util/data-fetcher/src/lib/readers/geojson.mjs +2 -2
  61. package/esm2022/libs/util/data-fetcher/src/lib/readers/gml.mjs +5 -3
  62. package/esm2022/libs/util/data-fetcher/src/lib/readers/json.mjs +2 -2
  63. package/esm2022/libs/util/data-fetcher/src/lib/readers/wfs.mjs +35 -9
  64. package/esm2022/libs/util/data-fetcher/src/lib/utils.mjs +11 -9
  65. package/esm2022/libs/util/shared/src/lib/services/date.service.mjs +41 -0
  66. package/esm2022/libs/util/shared/src/lib/services/index.mjs +2 -1
  67. package/esm2022/libs/util/shared/src/lib/utils/temporal-extent-union.mjs +4 -4
  68. package/esm2022/translations/de.json +10 -75
  69. package/esm2022/translations/en.json +10 -75
  70. package/esm2022/translations/es.json +9 -74
  71. package/esm2022/translations/fr.json +22 -87
  72. package/esm2022/translations/it.json +27 -91
  73. package/esm2022/translations/nl.json +9 -74
  74. package/esm2022/translations/pt.json +9 -74
  75. package/fesm2022/geonetwork-ui.mjs +1185 -1207
  76. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  77. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  78. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +3 -0
  79. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  80. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +3 -1
  81. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
  82. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +2 -1
  83. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  84. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +6 -0
  85. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  86. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +2 -1
  87. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  88. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +2 -1
  89. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  90. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts +7 -9
  91. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts.map +1 -1
  92. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +2 -2
  93. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  94. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +5 -7
  95. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  96. 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
  97. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts.map +1 -1
  98. package/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.d.ts +1 -3
  99. package/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.d.ts.map +1 -1
  100. package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts +3 -3
  101. package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts.map +1 -1
  102. package/libs/feature/editor/src/lib/models/wizard-field.type.d.ts +2 -3
  103. package/libs/feature/editor/src/lib/models/wizard-field.type.d.ts.map +1 -1
  104. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +5 -1
  105. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  106. package/libs/feature/record/src/lib/feature-record.module.d.ts +2 -2
  107. package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
  108. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +3 -2
  109. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  110. package/libs/feature/record/src/lib/state/mdview.actions.d.ts +16 -1
  111. package/libs/feature/record/src/lib/state/mdview.actions.d.ts.map +1 -1
  112. package/libs/feature/record/src/lib/state/mdview.effects.d.ts +5 -0
  113. package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
  114. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +2 -0
  115. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  116. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts +4 -1
  117. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts.map +1 -1
  118. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts +2 -0
  119. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts.map +1 -1
  120. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts +2 -1
  121. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
  122. package/libs/feature/search/src/lib/utils/service/fields.d.ts +10 -0
  123. package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
  124. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  125. package/libs/ui/dataviz/src/index.d.ts +2 -2
  126. package/libs/ui/dataviz/src/index.d.ts.map +1 -1
  127. package/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.d.ts +14 -0
  128. package/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.d.ts.map +1 -0
  129. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts +45 -0
  130. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts.map +1 -0
  131. package/libs/ui/dataviz/src/lib/data-table/data-table.data.source.d.ts +12 -0
  132. package/libs/ui/dataviz/src/lib/data-table/data-table.data.source.d.ts.map +1 -0
  133. package/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.d.ts +10 -0
  134. package/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.d.ts.map +1 -0
  135. package/libs/ui/elements/src/index.d.ts +1 -0
  136. package/libs/ui/elements/src/index.d.ts.map +1 -1
  137. package/libs/ui/elements/src/lib/application-banner/application-banner.component.d.ts +16 -0
  138. package/libs/ui/elements/src/lib/application-banner/application-banner.component.d.ts.map +1 -0
  139. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +5 -0
  140. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
  141. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
  142. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +2 -1
  143. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  144. package/libs/ui/inputs/src/index.d.ts +0 -1
  145. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  146. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts +16 -1
  147. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
  148. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +27 -28
  149. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  150. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +4 -2
  151. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -1
  152. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +6 -3
  153. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  154. package/libs/ui/widgets/src/index.d.ts +0 -1
  155. package/libs/ui/widgets/src/index.d.ts.map +1 -1
  156. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts +8 -9
  157. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts.map +1 -1
  158. package/libs/util/data-fetcher/src/index.d.ts +3 -1
  159. package/libs/util/data-fetcher/src/index.d.ts.map +1 -1
  160. package/libs/util/data-fetcher/src/lib/data-fetcher.d.ts +2 -2
  161. package/libs/util/data-fetcher/src/lib/data-fetcher.d.ts.map +1 -1
  162. package/libs/util/data-fetcher/src/lib/model.d.ts +1 -1
  163. package/libs/util/data-fetcher/src/lib/model.d.ts.map +1 -1
  164. package/libs/util/data-fetcher/src/lib/readers/base-cache.d.ts +8 -0
  165. package/libs/util/data-fetcher/src/lib/readers/base-cache.d.ts.map +1 -0
  166. package/libs/util/data-fetcher/src/lib/readers/base-file.d.ts +2 -2
  167. package/libs/util/data-fetcher/src/lib/readers/base-file.d.ts.map +1 -1
  168. package/libs/util/data-fetcher/src/lib/readers/base.d.ts +2 -2
  169. package/libs/util/data-fetcher/src/lib/readers/base.d.ts.map +1 -1
  170. package/libs/util/data-fetcher/src/lib/readers/gml.d.ts +5 -3
  171. package/libs/util/data-fetcher/src/lib/readers/gml.d.ts.map +1 -1
  172. package/libs/util/data-fetcher/src/lib/readers/wfs.d.ts +7 -4
  173. package/libs/util/data-fetcher/src/lib/readers/wfs.d.ts.map +1 -1
  174. package/libs/util/data-fetcher/src/lib/utils.d.ts +2 -2
  175. package/libs/util/data-fetcher/src/lib/utils.d.ts.map +1 -1
  176. package/libs/util/shared/src/lib/services/date.service.d.ts +13 -0
  177. package/libs/util/shared/src/lib/services/date.service.d.ts.map +1 -0
  178. package/libs/util/shared/src/lib/services/index.d.ts +1 -0
  179. package/libs/util/shared/src/lib/services/index.d.ts.map +1 -1
  180. package/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts +2 -1
  181. package/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts.map +1 -1
  182. package/package.json +1 -1
  183. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +25 -0
  184. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +4 -0
  185. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +55 -32
  186. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +42 -7
  187. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +3 -1
  188. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +4 -1
  189. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +75 -0
  190. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +4 -1
  191. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.html +3 -3
  192. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.ts +17 -15
  193. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +43 -20
  194. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.html +4 -3
  195. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +10 -18
  196. package/src/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.html +1 -1
  197. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +1 -0
  198. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.ts +1 -1
  199. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +0 -13
  200. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.ts +0 -20
  201. package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.ts +3 -4
  202. package/src/libs/feature/editor/src/lib/fields.config.ts +1 -1
  203. package/src/libs/feature/editor/src/lib/models/wizard-field.type.ts +0 -1
  204. package/src/libs/feature/record/src/lib/data-view/data-view.component.html +24 -11
  205. package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +26 -4
  206. package/src/libs/feature/record/src/lib/feature-record.module.ts +6 -4
  207. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +71 -60
  208. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +6 -3
  209. package/src/libs/feature/record/src/lib/state/mdview.actions.ts +16 -0
  210. package/src/libs/feature/record/src/lib/state/mdview.effects.ts +21 -2
  211. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +15 -0
  212. package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +30 -1
  213. package/src/libs/feature/record/src/lib/state/mdview.selectors.ts +12 -0
  214. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +1 -0
  215. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +1 -0
  216. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +2 -0
  217. package/src/libs/feature/search/src/lib/utils/service/fields.ts +55 -0
  218. package/src/libs/ui/dataviz/src/index.ts +2 -2
  219. package/src/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.ts +52 -0
  220. package/src/libs/ui/dataviz/src/lib/{table/table.component.css → data-table/data-table.component.css} +4 -0
  221. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.html +67 -0
  222. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.ts +173 -0
  223. package/src/libs/ui/dataviz/src/lib/data-table/data-table.data.source.ts +33 -0
  224. package/src/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.ts +84 -0
  225. package/src/libs/ui/elements/src/index.ts +1 -0
  226. package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.css +0 -0
  227. package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.html +25 -0
  228. package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.ts +70 -0
  229. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.ts +2 -2
  230. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +3 -3
  231. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +12 -2
  232. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +2 -0
  233. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +3 -0
  234. package/src/libs/ui/inputs/src/index.ts +0 -1
  235. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +48 -0
  236. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +0 -3
  237. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +37 -1
  238. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +8 -2
  239. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +2 -0
  240. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +10 -2
  241. package/src/libs/ui/widgets/src/index.ts +0 -1
  242. package/src/libs/ui/widgets/src/lib/ui-widgets.module.ts +2 -3
  243. package/src/libs/util/data-fetcher/src/index.ts +3 -0
  244. package/src/libs/util/data-fetcher/src/lib/data-fetcher.ts +13 -4
  245. package/src/libs/util/data-fetcher/src/lib/model.ts +6 -2
  246. package/src/libs/util/data-fetcher/src/lib/readers/base-cache.ts +14 -0
  247. package/src/libs/util/data-fetcher/src/lib/readers/base-file.ts +2 -1
  248. package/src/libs/util/data-fetcher/src/lib/readers/base.ts +2 -2
  249. package/src/libs/util/data-fetcher/src/lib/readers/csv.ts +1 -1
  250. package/src/libs/util/data-fetcher/src/lib/readers/excel.ts +1 -1
  251. package/src/libs/util/data-fetcher/src/lib/readers/geojson.ts +1 -1
  252. package/src/libs/util/data-fetcher/src/lib/readers/gml.ts +7 -7
  253. package/src/libs/util/data-fetcher/src/lib/readers/json.ts +1 -1
  254. package/src/libs/util/data-fetcher/src/lib/readers/wfs.ts +53 -8
  255. package/src/libs/util/data-fetcher/src/lib/utils.ts +36 -32
  256. package/src/libs/util/shared/src/lib/services/date.service.ts +45 -0
  257. package/src/libs/util/shared/src/lib/services/index.ts +1 -0
  258. package/src/libs/util/shared/src/lib/utils/temporal-extent-union.ts +6 -3
  259. package/translations/de.json +10 -75
  260. package/translations/en.json +10 -75
  261. package/translations/es.json +9 -74
  262. package/translations/fr.json +22 -87
  263. package/translations/it.json +27 -91
  264. package/translations/nl.json +9 -74
  265. package/translations/pt.json +9 -74
  266. package/translations/sk.json +9 -74
  267. package/esm2022/libs/ui/dataviz/src/lib/table/table.component.mjs +0 -61
  268. package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +0 -40
  269. package/esm2022/libs/ui/inputs/src/lib/chips-input/chips-input.component.mjs +0 -78
  270. package/esm2022/libs/ui/widgets/src/lib/step-bar/step-bar.component.mjs +0 -55
  271. package/libs/ui/dataviz/src/lib/table/table.component.d.ts +0 -29
  272. package/libs/ui/dataviz/src/lib/table/table.component.d.ts.map +0 -1
  273. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts +0 -11
  274. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts.map +0 -1
  275. package/libs/ui/inputs/src/lib/chips-input/chips-input.component.d.ts +0 -33
  276. package/libs/ui/inputs/src/lib/chips-input/chips-input.component.d.ts.map +0 -1
  277. package/libs/ui/widgets/src/lib/step-bar/step-bar.component.d.ts +0 -21
  278. package/libs/ui/widgets/src/lib/step-bar/step-bar.component.d.ts.map +0 -1
  279. package/src/libs/data-access/datafeeder/src/index.ts +0 -1
  280. package/src/libs/data-access/datafeeder/src/openapi/api/api.ts +0 -11
  281. package/src/libs/data-access/datafeeder/src/openapi/api/config.api.service.ts +0 -168
  282. package/src/libs/data-access/datafeeder/src/openapi/api/dataPublishing.api.service.ts +0 -270
  283. package/src/libs/data-access/datafeeder/src/openapi/api/fileUpload.api.service.ts +0 -734
  284. package/src/libs/data-access/datafeeder/src/openapi/api.module.ts +0 -46
  285. package/src/libs/data-access/datafeeder/src/openapi/configuration.ts +0 -125
  286. package/src/libs/data-access/datafeeder/src/openapi/encoder.ts +0 -20
  287. package/src/libs/data-access/datafeeder/src/openapi/index.ts +0 -5
  288. package/src/libs/data-access/datafeeder/src/openapi/model/analysisStatusEnum.api.model.ts +0 -24
  289. package/src/libs/data-access/datafeeder/src/openapi/model/boundingBox.api.model.ts +0 -20
  290. package/src/libs/data-access/datafeeder/src/openapi/model/cRS.api.model.ts +0 -25
  291. package/src/libs/data-access/datafeeder/src/openapi/model/datasetMetadata.api.model.ts +0 -45
  292. package/src/libs/data-access/datafeeder/src/openapi/model/datasetPublishRequest.api.model.ts +0 -39
  293. package/src/libs/data-access/datafeeder/src/openapi/model/datasetPublishingStatus.api.model.ts +0 -50
  294. package/src/libs/data-access/datafeeder/src/openapi/model/datasetUploadStatus.api.model.ts +0 -39
  295. package/src/libs/data-access/datafeeder/src/openapi/model/models.ts +0 -13
  296. package/src/libs/data-access/datafeeder/src/openapi/model/property.api.model.ts +0 -17
  297. package/src/libs/data-access/datafeeder/src/openapi/model/publishJobStatus.api.model.ts +0 -33
  298. package/src/libs/data-access/datafeeder/src/openapi/model/publishRequest.api.model.ts +0 -16
  299. package/src/libs/data-access/datafeeder/src/openapi/model/publishStatusEnum.api.model.ts +0 -20
  300. package/src/libs/data-access/datafeeder/src/openapi/model/publishStepEnum.api.model.ts +0 -42
  301. package/src/libs/data-access/datafeeder/src/openapi/model/uploadJobStatus.api.model.ts +0 -33
  302. package/src/libs/data-access/datafeeder/src/openapi/variables.ts +0 -9
  303. package/src/libs/data-access/datafeeder/src/spec.yaml +0 -537
  304. package/src/libs/ui/dataviz/src/lib/table/table.component.html +0 -40
  305. package/src/libs/ui/dataviz/src/lib/table/table.component.ts +0 -80
  306. package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +0 -40
  307. package/src/libs/ui/inputs/src/lib/chips-input/chips-input.component.css +0 -36
  308. package/src/libs/ui/inputs/src/lib/chips-input/chips-input.component.html +0 -23
  309. package/src/libs/ui/inputs/src/lib/chips-input/chips-input.component.ts +0 -81
  310. package/src/libs/ui/widgets/src/lib/step-bar/step-bar.component.css +0 -3
  311. package/src/libs/ui/widgets/src/lib/step-bar/step-bar.component.html +0 -13
  312. package/src/libs/ui/widgets/src/lib/step-bar/step-bar.component.ts +0 -55
@@ -6,8 +6,12 @@ export class FetchError {
6
6
  this.stack = null;
7
7
  this.message = `An error happened in the data fetcher, type: ${type}, info: ${info}`;
8
8
  }
9
- static http(code) {
10
- return new FetchError('http', '', code);
9
+ static http(code, body) {
10
+ const info = body
11
+ ? `Error ${code}
12
+ ${body}`
13
+ : `${code}`;
14
+ return new FetchError('http', info, code);
11
15
  }
12
16
  static corsOrNetwork(message) {
13
17
  return new FetchError('network', message, 0);
@@ -52,4 +56,4 @@ export const AllMimeTypes = {
52
56
  excel: ExcelMimeTypes,
53
57
  gml: GmlMimeTypes,
54
58
  };
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYy9saWIvbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxPQUFPLFVBQVU7SUFJckIsWUFDUyxJQUFrRSxFQUNsRSxJQUFZLEVBQ1osYUFBYSxDQUFDO1FBRmQsU0FBSSxHQUFKLElBQUksQ0FBOEQ7UUFDbEUsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLGVBQVUsR0FBVixVQUFVLENBQUk7UUFMdkIsVUFBSyxHQUFHLElBQUksQ0FBQTtRQU9WLElBQUksQ0FBQyxPQUFPLEdBQUcsZ0RBQWdELElBQUksV0FBVyxJQUFJLEVBQUUsQ0FBQTtJQUN0RixDQUFDO0lBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFZO1FBQ3RCLE9BQU8sSUFBSSxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUN6QyxDQUFDO0lBQ0QsTUFBTSxDQUFDLGFBQWEsQ0FBQyxPQUFlO1FBQ2xDLE9BQU8sSUFBSSxVQUFVLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUM5QyxDQUFDO0lBQ0QsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFZO1FBQy9CLE9BQU8sSUFBSSxVQUFVLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUN6QyxDQUFDO0lBQ0QsTUFBTSxDQUFDLGVBQWUsQ0FBQyxRQUFnQjtRQUNyQyxPQUFPLElBQUksVUFBVSxDQUFDLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUN2RCxDQUFDO0lBQ0QsTUFBTSxDQUFDLFdBQVc7UUFDaEIsT0FBTyxJQUFJLFVBQVUsQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ3pDLENBQUM7Q0FDRjtBQUVELDZHQUE2RztBQUU3RyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUc7SUFDMUIsVUFBVSxFQUFFLGdEQUFnRDtJQUM1RCxpQkFBaUIsRUFBRSwwQkFBMEI7Q0FDckMsQ0FBQTtBQUNWLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFDLGtCQUFrQixDQUFVLENBQUE7QUFDMUQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUc7SUFDOUIsc0JBQXNCO0lBQ3RCLDBCQUEwQjtDQUNsQixDQUFBO0FBQ1YsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLDBCQUEwQixFQUFFLE9BQU87SUFDbkMsbUVBQW1FLEVBQUUsUUFBUTtDQUNyRSxDQUFBO0FBQ1YsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMscUJBQXFCLENBQVUsQ0FBQTtBQVM1RCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDNUIsS0FBSztJQUNMLE1BQU07SUFDTixTQUFTO0lBQ1QsT0FBTztJQUNQLEtBQUs7SUFDTCxLQUFLO0NBQ0csQ0FBQTtBQUdWLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRztJQUMxQixHQUFHLEVBQUUsWUFBWTtJQUNqQixJQUFJLEVBQUUsYUFBYTtJQUNuQixPQUFPLEVBQUUsZ0JBQWdCO0lBQ3pCLEtBQUssRUFBRSxjQUFjO0lBQ3JCLEdBQUcsRUFBRSxZQUFZO0NBQ2xCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEZlYXR1cmUgfSBmcm9tICdnZW9qc29uJ1xuXG5leHBvcnQgdHlwZSBEYXRhSXRlbSA9IEZlYXR1cmVcblxuZXhwb3J0IGNsYXNzIEZldGNoRXJyb3Ige1xuICBtZXNzYWdlOiBzdHJpbmdcbiAgc3RhY2sgPSBudWxsXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHR5cGU6ICdodHRwJyB8ICduZXR3b3JrJyB8ICdwYXJzZScgfCAndW5zdXBwb3J0ZWRUeXBlJyB8ICd1bmtub3duJyxcbiAgICBwdWJsaWMgaW5mbzogc3RyaW5nLFxuICAgIHB1YmxpYyBodHRwU3RhdHVzID0gMFxuICApIHtcbiAgICB0aGlzLm1lc3NhZ2UgPSBgQW4gZXJyb3IgaGFwcGVuZWQgaW4gdGhlIGRhdGEgZmV0Y2hlciwgdHlwZTogJHt0eXBlfSwgaW5mbzogJHtpbmZvfWBcbiAgfVxuICBzdGF0aWMgaHR0cChjb2RlOiBudW1iZXIpIHtcbiAgICByZXR1cm4gbmV3IEZldGNoRXJyb3IoJ2h0dHAnLCAnJywgY29kZSlcbiAgfVxuICBzdGF0aWMgY29yc09yTmV0d29yayhtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IEZldGNoRXJyb3IoJ25ldHdvcmsnLCBtZXNzYWdlLCAwKVxuICB9XG4gIHN0YXRpYyBwYXJzaW5nRmFpbGVkKGluZm86IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgRmV0Y2hFcnJvcigncGFyc2UnLCBpbmZvLCAwKVxuICB9XG4gIHN0YXRpYyB1bnN1cHBvcnRlZFR5cGUobWltZVR5cGU6IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgRmV0Y2hFcnJvcigndW5zdXBwb3J0ZWRUeXBlJywgbWltZVR5cGUsIDApXG4gIH1cbiAgc3RhdGljIHVua25vd25UeXBlKCkge1xuICAgIHJldHVybiBuZXcgRmV0Y2hFcnJvcigndW5rbm93bicsICcnLCAwKVxuICB9XG59XG5cbi8vIFVzZWZ1bCByZWZlcmVuY2U6IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUVFAvQmFzaWNzX29mX0hUVFAvTUlNRV90eXBlcy9Db21tb25fdHlwZXNcblxuZXhwb3J0IGNvbnN0IENzdk1pbWVUeXBlcyA9IFtcbiAgJ3RleHQvY3N2JywgLy8gYXMgcGVyIGh0dHBzOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmM0MTgwXG4gICdhcHBsaWNhdGlvbi9jc3YnLCAvLyBzZWVtcyB0byBiZSBhbHNvIGNvbW1vblxuXSBhcyBjb25zdFxuZXhwb3J0IGNvbnN0IEpzb25NaW1lVHlwZXMgPSBbJ2FwcGxpY2F0aW9uL2pzb24nXSBhcyBjb25zdFxuZXhwb3J0IGNvbnN0IEdlb0pzb25NaW1lVHlwZXMgPSBbXG4gICdhcHBsaWNhdGlvbi9nZW8ranNvbicsXG4gICdhcHBsaWNhdGlvbi92bmQuZ2VvK2pzb24nLFxuXSBhcyBjb25zdFxuZXhwb3J0IGNvbnN0IEV4Y2VsTWltZVR5cGVzID0gW1xuICAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsJywgLy8gLnhsc1xuICAnYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LnNwcmVhZHNoZWV0bWwuc2hlZXQnLCAvLyAueHNseFxuXSBhcyBjb25zdFxuZXhwb3J0IGNvbnN0IEdtbE1pbWVUeXBlcyA9IFsnYXBwbGljYXRpb24vZ21sK3htbCddIGFzIGNvbnN0XG5cbmV4cG9ydCB0eXBlIFN1cHBvcnRlZE1pbWVUeXBlID1cbiAgfCAodHlwZW9mIENzdk1pbWVUeXBlcylbbnVtYmVyXVxuICB8ICh0eXBlb2YgSnNvbk1pbWVUeXBlcylbbnVtYmVyXVxuICB8ICh0eXBlb2YgR2VvSnNvbk1pbWVUeXBlcylbbnVtYmVyXVxuICB8ICh0eXBlb2YgRXhjZWxNaW1lVHlwZXMpW251bWJlcl1cbiAgfCAodHlwZW9mIEdtbE1pbWVUeXBlcylbbnVtYmVyXVxuXG5leHBvcnQgY29uc3QgU3VwcG9ydGVkVHlwZXMgPSBbXG4gICdjc3YnLFxuICAnanNvbicsXG4gICdnZW9qc29uJyxcbiAgJ2V4Y2VsJyxcbiAgJ2dtbCcsXG4gICd3ZnMnLFxuXSBhcyBjb25zdFxuZXhwb3J0IHR5cGUgU3VwcG9ydGVkVHlwZSA9ICh0eXBlb2YgU3VwcG9ydGVkVHlwZXMpW251bWJlcl1cblxuZXhwb3J0IGNvbnN0IEFsbE1pbWVUeXBlcyA9IHtcbiAgY3N2OiBDc3ZNaW1lVHlwZXMsXG4gIGpzb246IEpzb25NaW1lVHlwZXMsXG4gIGdlb2pzb246IEdlb0pzb25NaW1lVHlwZXMsXG4gIGV4Y2VsOiBFeGNlbE1pbWVUeXBlcyxcbiAgZ21sOiBHbWxNaW1lVHlwZXMsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YXNldEhlYWRlcnMge1xuICBtaW1lVHlwZT86IHN0cmluZ1xuICBzdXBwb3J0ZWRUeXBlPzogU3VwcG9ydGVkVHlwZVxuICBmaWxlU2l6ZUJ5dGVzPzogbnVtYmVyXG4gIGxhc3RVcGRhdGU/OiBEYXRlXG4gIGxhc3RVcGRhdGVJbnZhbGlkPzogdHJ1ZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb3BlcnR5SW5mbyB7XG4gIG5hbWU6IHN0cmluZ1xuICBsYWJlbDogc3RyaW5nXG4gIHR5cGU6ICdudW1iZXInIHwgJ2RhdGUnIHwgJ3VybCcgfCAnc3RyaW5nJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFzZXRJbmZvIHtcbiAgaXRlbXNDb3VudDogbnVtYmVyXG59XG5cbmV4cG9ydCB0eXBlIEZpZWxkTmFtZSA9IHN0cmluZ1xuXG50eXBlIFN1bU9wZXJhdGlvbiA9IFsnc3VtJywgRmllbGROYW1lXVxudHlwZSBBdmVyYWdlT3BlcmF0aW9uID0gWydhdmVyYWdlJywgRmllbGROYW1lXVxudHlwZSBNaW5PcGVyYXRpb24gPSBbJ21pbicsIEZpZWxkTmFtZV1cbnR5cGUgTWF4T3BlcmF0aW9uID0gWydtYXgnLCBGaWVsZE5hbWVdXG50eXBlIENvdW50T3BlcmF0aW9uID0gWydjb3VudCddXG5leHBvcnQgdHlwZSBGaWVsZEFnZ3JlZ2F0aW9uID1cbiAgfCBTdW1PcGVyYXRpb25cbiAgfCBBdmVyYWdlT3BlcmF0aW9uXG4gIHwgTWluT3BlcmF0aW9uXG4gIHwgTWF4T3BlcmF0aW9uXG4gIHwgQ291bnRPcGVyYXRpb25cblxudHlwZSBBbGxPcGVyYXRpb24gPSBbJ2FsbCddXG50eXBlIERpc3RpbmN0T3BlcmF0aW9uID0gWydkaXN0aW5jdCcsIEZpZWxkTmFtZV1cbnR5cGUgUmFuZ2VCdWNrZXRzT3BlcmF0aW9uID0gWydyYW5nZUJ1Y2tldHMnLCBGaWVsZE5hbWUsIG51bWJlcl0gLy8gM3JkIHZhbHVlIGlzIHRoZSBidWNrZXQgY291bnQ7IE5PVCBJTVBMRU1FTlRFRFxuZXhwb3J0IHR5cGUgRmllbGRHcm91cEJ5ID1cbiAgfCBBbGxPcGVyYXRpb25cbiAgfCBEaXN0aW5jdE9wZXJhdGlvblxuICB8IFJhbmdlQnVja2V0c09wZXJhdGlvblxuXG5leHBvcnQgdHlwZSBGaWVsZFNvcnQgPSBbJ2Rlc2MnIHwgJ2FzYycsIEZpZWxkTmFtZV1cblxudHlwZSBDb21wYXJpc29uT3BlcmF0b3IgPSAnPCcgfCAnPicgfCAnPD0nIHwgJz49JyB8ICc9JyB8ICchPSdcbnR5cGUgQ29tcGFyaXNvbiA9IFtDb21wYXJpc29uT3BlcmF0b3IsIEZpZWxkTmFtZSwgc3RyaW5nIHwgbnVtYmVyXVxudHlwZSBBbmRPcGVyYXRpb24gPSBbJ2FuZCcsIC4uLkZpZWxkRmlsdGVyW11dXG50eXBlIE9yT3BlcmF0aW9uID0gWydvcicsIC4uLkZpZWxkRmlsdGVyW11dXG50eXBlIE5vdE9wZXJhdGlvbiA9IFsnbm90JywgRmllbGRGaWx0ZXJdXG50eXBlIEluT3BlcmF0aW9uID0gWydpbicsIEZpZWxkTmFtZSwgLi4uKHN0cmluZ1tdIHwgbnVtYmVyW10pXVxudHlwZSBMaWtlT3BlcmF0aW9uID0gWydsaWtlJywgRmllbGROYW1lLCBzdHJpbmddXG5leHBvcnQgdHlwZSBGaWVsZEZpbHRlciA9XG4gIHwgQ29tcGFyaXNvblxuICB8IEFuZE9wZXJhdGlvblxuICB8IE9yT3BlcmF0aW9uXG4gIHwgTm90T3BlcmF0aW9uXG4gIHwgSW5PcGVyYXRpb25cbiAgfCBMaWtlT3BlcmF0aW9uXG4iXX0=
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYy9saWIvbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxPQUFPLFVBQVU7SUFJckIsWUFDUyxJQUFrRSxFQUNsRSxJQUFZLEVBQ1osYUFBYSxDQUFDO1FBRmQsU0FBSSxHQUFKLElBQUksQ0FBOEQ7UUFDbEUsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLGVBQVUsR0FBVixVQUFVLENBQUk7UUFMdkIsVUFBSyxHQUFHLElBQUksQ0FBQTtRQU9WLElBQUksQ0FBQyxPQUFPLEdBQUcsZ0RBQWdELElBQUksV0FBVyxJQUFJLEVBQUUsQ0FBQTtJQUN0RixDQUFDO0lBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFZLEVBQUUsSUFBYTtRQUNyQyxNQUFNLElBQUksR0FBRyxJQUFJO1lBQ2YsQ0FBQyxDQUFDLFNBQVMsSUFBSTtFQUNuQixJQUFJLEVBQUU7WUFDRixDQUFDLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQTtRQUNiLE9BQU8sSUFBSSxVQUFVLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUMzQyxDQUFDO0lBQ0QsTUFBTSxDQUFDLGFBQWEsQ0FBQyxPQUFlO1FBQ2xDLE9BQU8sSUFBSSxVQUFVLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUM5QyxDQUFDO0lBQ0QsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFZO1FBQy9CLE9BQU8sSUFBSSxVQUFVLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUN6QyxDQUFDO0lBQ0QsTUFBTSxDQUFDLGVBQWUsQ0FBQyxRQUFnQjtRQUNyQyxPQUFPLElBQUksVUFBVSxDQUFDLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUN2RCxDQUFDO0lBQ0QsTUFBTSxDQUFDLFdBQVc7UUFDaEIsT0FBTyxJQUFJLFVBQVUsQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ3pDLENBQUM7Q0FDRjtBQUVELDZHQUE2RztBQUU3RyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUc7SUFDMUIsVUFBVSxFQUFFLGdEQUFnRDtJQUM1RCxpQkFBaUIsRUFBRSwwQkFBMEI7Q0FDckMsQ0FBQTtBQUNWLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFDLGtCQUFrQixDQUFVLENBQUE7QUFDMUQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUc7SUFDOUIsc0JBQXNCO0lBQ3RCLDBCQUEwQjtDQUNsQixDQUFBO0FBQ1YsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLDBCQUEwQixFQUFFLE9BQU87SUFDbkMsbUVBQW1FLEVBQUUsUUFBUTtDQUNyRSxDQUFBO0FBQ1YsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMscUJBQXFCLENBQVUsQ0FBQTtBQVM1RCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDNUIsS0FBSztJQUNMLE1BQU07SUFDTixTQUFTO0lBQ1QsT0FBTztJQUNQLEtBQUs7SUFDTCxLQUFLO0NBQ0csQ0FBQTtBQUdWLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRztJQUMxQixHQUFHLEVBQUUsWUFBWTtJQUNqQixJQUFJLEVBQUUsYUFBYTtJQUNuQixPQUFPLEVBQUUsZ0JBQWdCO0lBQ3pCLEtBQUssRUFBRSxjQUFjO0lBQ3JCLEdBQUcsRUFBRSxZQUFZO0NBQ2xCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEZlYXR1cmUgfSBmcm9tICdnZW9qc29uJ1xuXG5leHBvcnQgdHlwZSBEYXRhSXRlbSA9IEZlYXR1cmVcblxuZXhwb3J0IGNsYXNzIEZldGNoRXJyb3Ige1xuICBtZXNzYWdlOiBzdHJpbmdcbiAgc3RhY2sgPSBudWxsXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHR5cGU6ICdodHRwJyB8ICduZXR3b3JrJyB8ICdwYXJzZScgfCAndW5zdXBwb3J0ZWRUeXBlJyB8ICd1bmtub3duJyxcbiAgICBwdWJsaWMgaW5mbzogc3RyaW5nLFxuICAgIHB1YmxpYyBodHRwU3RhdHVzID0gMFxuICApIHtcbiAgICB0aGlzLm1lc3NhZ2UgPSBgQW4gZXJyb3IgaGFwcGVuZWQgaW4gdGhlIGRhdGEgZmV0Y2hlciwgdHlwZTogJHt0eXBlfSwgaW5mbzogJHtpbmZvfWBcbiAgfVxuICBzdGF0aWMgaHR0cChjb2RlOiBudW1iZXIsIGJvZHk/OiBzdHJpbmcpIHtcbiAgICBjb25zdCBpbmZvID0gYm9keVxuICAgICAgPyBgRXJyb3IgJHtjb2RlfVxuJHtib2R5fWBcbiAgICAgIDogYCR7Y29kZX1gXG4gICAgcmV0dXJuIG5ldyBGZXRjaEVycm9yKCdodHRwJywgaW5mbywgY29kZSlcbiAgfVxuICBzdGF0aWMgY29yc09yTmV0d29yayhtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IEZldGNoRXJyb3IoJ25ldHdvcmsnLCBtZXNzYWdlLCAwKVxuICB9XG4gIHN0YXRpYyBwYXJzaW5nRmFpbGVkKGluZm86IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgRmV0Y2hFcnJvcigncGFyc2UnLCBpbmZvLCAwKVxuICB9XG4gIHN0YXRpYyB1bnN1cHBvcnRlZFR5cGUobWltZVR5cGU6IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgRmV0Y2hFcnJvcigndW5zdXBwb3J0ZWRUeXBlJywgbWltZVR5cGUsIDApXG4gIH1cbiAgc3RhdGljIHVua25vd25UeXBlKCkge1xuICAgIHJldHVybiBuZXcgRmV0Y2hFcnJvcigndW5rbm93bicsICcnLCAwKVxuICB9XG59XG5cbi8vIFVzZWZ1bCByZWZlcmVuY2U6IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUVFAvQmFzaWNzX29mX0hUVFAvTUlNRV90eXBlcy9Db21tb25fdHlwZXNcblxuZXhwb3J0IGNvbnN0IENzdk1pbWVUeXBlcyA9IFtcbiAgJ3RleHQvY3N2JywgLy8gYXMgcGVyIGh0dHBzOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmM0MTgwXG4gICdhcHBsaWNhdGlvbi9jc3YnLCAvLyBzZWVtcyB0byBiZSBhbHNvIGNvbW1vblxuXSBhcyBjb25zdFxuZXhwb3J0IGNvbnN0IEpzb25NaW1lVHlwZXMgPSBbJ2FwcGxpY2F0aW9uL2pzb24nXSBhcyBjb25zdFxuZXhwb3J0IGNvbnN0IEdlb0pzb25NaW1lVHlwZXMgPSBbXG4gICdhcHBsaWNhdGlvbi9nZW8ranNvbicsXG4gICdhcHBsaWNhdGlvbi92bmQuZ2VvK2pzb24nLFxuXSBhcyBjb25zdFxuZXhwb3J0IGNvbnN0IEV4Y2VsTWltZVR5cGVzID0gW1xuICAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsJywgLy8gLnhsc1xuICAnYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LnNwcmVhZHNoZWV0bWwuc2hlZXQnLCAvLyAueHNseFxuXSBhcyBjb25zdFxuZXhwb3J0IGNvbnN0IEdtbE1pbWVUeXBlcyA9IFsnYXBwbGljYXRpb24vZ21sK3htbCddIGFzIGNvbnN0XG5cbmV4cG9ydCB0eXBlIFN1cHBvcnRlZE1pbWVUeXBlID1cbiAgfCAodHlwZW9mIENzdk1pbWVUeXBlcylbbnVtYmVyXVxuICB8ICh0eXBlb2YgSnNvbk1pbWVUeXBlcylbbnVtYmVyXVxuICB8ICh0eXBlb2YgR2VvSnNvbk1pbWVUeXBlcylbbnVtYmVyXVxuICB8ICh0eXBlb2YgRXhjZWxNaW1lVHlwZXMpW251bWJlcl1cbiAgfCAodHlwZW9mIEdtbE1pbWVUeXBlcylbbnVtYmVyXVxuXG5leHBvcnQgY29uc3QgU3VwcG9ydGVkVHlwZXMgPSBbXG4gICdjc3YnLFxuICAnanNvbicsXG4gICdnZW9qc29uJyxcbiAgJ2V4Y2VsJyxcbiAgJ2dtbCcsXG4gICd3ZnMnLFxuXSBhcyBjb25zdFxuZXhwb3J0IHR5cGUgU3VwcG9ydGVkVHlwZSA9ICh0eXBlb2YgU3VwcG9ydGVkVHlwZXMpW251bWJlcl1cblxuZXhwb3J0IGNvbnN0IEFsbE1pbWVUeXBlcyA9IHtcbiAgY3N2OiBDc3ZNaW1lVHlwZXMsXG4gIGpzb246IEpzb25NaW1lVHlwZXMsXG4gIGdlb2pzb246IEdlb0pzb25NaW1lVHlwZXMsXG4gIGV4Y2VsOiBFeGNlbE1pbWVUeXBlcyxcbiAgZ21sOiBHbWxNaW1lVHlwZXMsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YXNldEhlYWRlcnMge1xuICBtaW1lVHlwZT86IHN0cmluZ1xuICBzdXBwb3J0ZWRUeXBlPzogU3VwcG9ydGVkVHlwZVxuICBmaWxlU2l6ZUJ5dGVzPzogbnVtYmVyXG4gIGxhc3RVcGRhdGU/OiBEYXRlXG4gIGxhc3RVcGRhdGVJbnZhbGlkPzogdHJ1ZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb3BlcnR5SW5mbyB7XG4gIG5hbWU6IHN0cmluZ1xuICBsYWJlbDogc3RyaW5nXG4gIHR5cGU6ICdudW1iZXInIHwgJ2RhdGUnIHwgJ3VybCcgfCAnc3RyaW5nJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFzZXRJbmZvIHtcbiAgaXRlbXNDb3VudDogbnVtYmVyXG59XG5cbmV4cG9ydCB0eXBlIEZpZWxkTmFtZSA9IHN0cmluZ1xuXG50eXBlIFN1bU9wZXJhdGlvbiA9IFsnc3VtJywgRmllbGROYW1lXVxudHlwZSBBdmVyYWdlT3BlcmF0aW9uID0gWydhdmVyYWdlJywgRmllbGROYW1lXVxudHlwZSBNaW5PcGVyYXRpb24gPSBbJ21pbicsIEZpZWxkTmFtZV1cbnR5cGUgTWF4T3BlcmF0aW9uID0gWydtYXgnLCBGaWVsZE5hbWVdXG50eXBlIENvdW50T3BlcmF0aW9uID0gWydjb3VudCddXG5leHBvcnQgdHlwZSBGaWVsZEFnZ3JlZ2F0aW9uID1cbiAgfCBTdW1PcGVyYXRpb25cbiAgfCBBdmVyYWdlT3BlcmF0aW9uXG4gIHwgTWluT3BlcmF0aW9uXG4gIHwgTWF4T3BlcmF0aW9uXG4gIHwgQ291bnRPcGVyYXRpb25cblxudHlwZSBBbGxPcGVyYXRpb24gPSBbJ2FsbCddXG50eXBlIERpc3RpbmN0T3BlcmF0aW9uID0gWydkaXN0aW5jdCcsIEZpZWxkTmFtZV1cbnR5cGUgUmFuZ2VCdWNrZXRzT3BlcmF0aW9uID0gWydyYW5nZUJ1Y2tldHMnLCBGaWVsZE5hbWUsIG51bWJlcl0gLy8gM3JkIHZhbHVlIGlzIHRoZSBidWNrZXQgY291bnQ7IE5PVCBJTVBMRU1FTlRFRFxuZXhwb3J0IHR5cGUgRmllbGRHcm91cEJ5ID1cbiAgfCBBbGxPcGVyYXRpb25cbiAgfCBEaXN0aW5jdE9wZXJhdGlvblxuICB8IFJhbmdlQnVja2V0c09wZXJhdGlvblxuXG5leHBvcnQgdHlwZSBGaWVsZFNvcnQgPSBbJ2Rlc2MnIHwgJ2FzYycsIEZpZWxkTmFtZV1cblxudHlwZSBDb21wYXJpc29uT3BlcmF0b3IgPSAnPCcgfCAnPicgfCAnPD0nIHwgJz49JyB8ICc9JyB8ICchPSdcbnR5cGUgQ29tcGFyaXNvbiA9IFtDb21wYXJpc29uT3BlcmF0b3IsIEZpZWxkTmFtZSwgc3RyaW5nIHwgbnVtYmVyXVxudHlwZSBBbmRPcGVyYXRpb24gPSBbJ2FuZCcsIC4uLkZpZWxkRmlsdGVyW11dXG50eXBlIE9yT3BlcmF0aW9uID0gWydvcicsIC4uLkZpZWxkRmlsdGVyW11dXG50eXBlIE5vdE9wZXJhdGlvbiA9IFsnbm90JywgRmllbGRGaWx0ZXJdXG50eXBlIEluT3BlcmF0aW9uID0gWydpbicsIEZpZWxkTmFtZSwgLi4uKHN0cmluZ1tdIHwgbnVtYmVyW10pXVxudHlwZSBMaWtlT3BlcmF0aW9uID0gWydsaWtlJywgRmllbGROYW1lLCBzdHJpbmddXG5leHBvcnQgdHlwZSBGaWVsZEZpbHRlciA9XG4gIHwgQ29tcGFyaXNvblxuICB8IEFuZE9wZXJhdGlvblxuICB8IE9yT3BlcmF0aW9uXG4gIHwgTm90T3BlcmF0aW9uXG4gIHwgSW5PcGVyYXRpb25cbiAgfCBMaWtlT3BlcmF0aW9uXG4iXX0=
@@ -0,0 +1,12 @@
1
+ import { BaseReader } from './base';
2
+ export class BaseCacheReader extends BaseReader {
3
+ constructor(url, cacheActive = true) {
4
+ super(url);
5
+ this.url = url;
6
+ this.cacheActive = cacheActive;
7
+ }
8
+ setCacheActive(value) {
9
+ this.cacheActive = value;
10
+ }
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jYWNoZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9kYXRhLWZldGNoZXIvc3JjL2xpYi9yZWFkZXJzL2Jhc2UtY2FjaGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUVuQyxNQUFNLE9BQWdCLGVBQWdCLFNBQVEsVUFBVTtJQUN0RCxZQUNZLEdBQVcsRUFDWCxjQUFjLElBQUk7UUFFNUIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBSEEsUUFBRyxHQUFILEdBQUcsQ0FBUTtRQUNYLGdCQUFXLEdBQVgsV0FBVyxDQUFPO0lBRzlCLENBQUM7SUFFRCxjQUFjLENBQUMsS0FBYztRQUMzQixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQTtJQUMxQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlUmVhZGVyIH0gZnJvbSAnLi9iYXNlJ1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUNhY2hlUmVhZGVyIGV4dGVuZHMgQmFzZVJlYWRlciB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCB1cmw6IHN0cmluZyxcbiAgICBwcm90ZWN0ZWQgY2FjaGVBY3RpdmUgPSB0cnVlXG4gICkge1xuICAgIHN1cGVyKHVybClcbiAgfVxuXG4gIHNldENhY2hlQWN0aXZlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5jYWNoZUFjdGl2ZSA9IHZhbHVlXG4gIH1cbn1cbiJdfQ==
@@ -1,7 +1,7 @@
1
- import { BaseReader } from './base';
2
1
  import { getJsonDataItemsProxy, jsonToGeojsonFeature } from '../utils';
3
2
  import { generateSqlQuery } from '../sql-utils';
4
- export class BaseFileReader extends BaseReader {
3
+ import { BaseCacheReader } from './base-cache';
4
+ export class BaseFileReader extends BaseCacheReader {
5
5
  getData() {
6
6
  throw new Error('not implemented');
7
7
  }
@@ -34,4 +34,4 @@ export class BaseFileReader extends BaseReader {
34
34
  return result.map(jsonToGeojsonFeature);
35
35
  }
36
36
  }
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2RhdGEtZmV0Y2hlci9zcmMvbGliL3JlYWRlcnMvYmFzZS1maWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFFbkMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQU8vQyxNQUFNLE9BQU8sY0FBZSxTQUFRLFVBQVU7SUFHbEMsT0FBTztRQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUNwQyxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFBO0lBQ3BDLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDOUQsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQzNCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDVCxDQUFDO1lBQ0MsVUFBVSxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTTtTQUNoQyxDQUFnQixDQUNwQixDQUFBO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFJO1FBQ1IsTUFBTSxLQUFLLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxLQUFLLENBQUE7UUFDN0Msa0RBQWtEO1FBQ2xELElBQ0UsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJO1lBQ3RCLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSTtZQUN6QixJQUFJLENBQUMsUUFBUSxJQUFJLElBQUk7WUFDckIsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJO1lBQ2pCLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSTtZQUNuQixJQUFJLENBQUMsVUFBVSxJQUFJLElBQUk7WUFDdkIsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLEVBQ2xCLENBQUM7WUFDRCxPQUFPLEtBQUssQ0FBQTtRQUNkLENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUM5QyxNQUFNLEtBQUssR0FBRyxnQkFBZ0IsQ0FDNUIsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxJQUFJLEVBQ1QsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsS0FBSyxFQUNWLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFlBQVksQ0FDbEIsQ0FBQTtRQUNELE1BQU0sTUFBTSxHQUFHLE1BQU0sTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ3BELE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FDbkMsQ0FBQTtRQUNELE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0lBQ3pDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VSZWFkZXIgfSBmcm9tICcuL2Jhc2UnXG5pbXBvcnQgeyBEYXRhSXRlbSwgRGF0YXNldEluZm8sIFByb3BlcnR5SW5mbyB9IGZyb20gJy4uL21vZGVsJ1xuaW1wb3J0IHsgZ2V0SnNvbkRhdGFJdGVtc1Byb3h5LCBqc29uVG9HZW9qc29uRmVhdHVyZSB9IGZyb20gJy4uL3V0aWxzJ1xuaW1wb3J0IHsgZ2VuZXJhdGVTcWxRdWVyeSB9IGZyb20gJy4uL3NxbC11dGlscydcblxudHlwZSBQYXJzZVJlc3VsdCA9IHtcbiAgaXRlbXM6IERhdGFJdGVtW11cbiAgcHJvcGVydGllczogUHJvcGVydHlJbmZvW11cbn1cblxuZXhwb3J0IGNsYXNzIEJhc2VGaWxlUmVhZGVyIGV4dGVuZHMgQmFzZVJlYWRlciB7XG4gIHByaXZhdGUgcGFyc2VSZXN1bHRfOiBQcm9taXNlPFBhcnNlUmVzdWx0PlxuXG4gIHByb3RlY3RlZCBnZXREYXRhKCk6IFByb21pc2U8UGFyc2VSZXN1bHQ+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vdCBpbXBsZW1lbnRlZCcpXG4gIH1cblxuICBsb2FkKCkge1xuICAgIHRoaXMucGFyc2VSZXN1bHRfID0gdGhpcy5nZXREYXRhKClcbiAgfVxuXG4gIGdldCBwcm9wZXJ0aWVzKCk6IFByb21pc2U8UHJvcGVydHlJbmZvW10+IHtcbiAgICByZXR1cm4gdGhpcy5wYXJzZVJlc3VsdF8udGhlbigocmVzdWx0KSA9PiByZXN1bHQucHJvcGVydGllcylcbiAgfVxuXG4gIGdldCBpbmZvKCk6IFByb21pc2U8RGF0YXNldEluZm8+IHtcbiAgICByZXR1cm4gdGhpcy5wYXJzZVJlc3VsdF8udGhlbihcbiAgICAgIChyZXN1bHQpID0+XG4gICAgICAgICh7XG4gICAgICAgICAgaXRlbXNDb3VudDogcmVzdWx0Lml0ZW1zLmxlbmd0aCxcbiAgICAgICAgfSkgYXMgRGF0YXNldEluZm9cbiAgICApXG4gIH1cblxuICBhc3luYyByZWFkKCk6IFByb21pc2U8RGF0YUl0ZW1bXT4ge1xuICAgIGNvbnN0IGl0ZW1zID0gKGF3YWl0IHRoaXMucGFyc2VSZXN1bHRfKS5pdGVtc1xuICAgIC8vIG5vIHF1ZXJ5IGRlZmluZWQ6IHJldHVybiB0aGUgZnVsbCByZXN1bHRzIGFzIGlzXG4gICAgaWYgKFxuICAgICAgdGhpcy5ncm91cGVkQnkgPT0gbnVsbCAmJlxuICAgICAgdGhpcy5hZ2dyZWdhdGlvbnMgPT0gbnVsbCAmJlxuICAgICAgdGhpcy5zZWxlY3RlZCA9PSBudWxsICYmXG4gICAgICB0aGlzLnNvcnQgPT0gbnVsbCAmJlxuICAgICAgdGhpcy5maWx0ZXIgPT0gbnVsbCAmJlxuICAgICAgdGhpcy5zdGFydEluZGV4ID09IG51bGwgJiZcbiAgICAgIHRoaXMuY291bnQgPT0gbnVsbFxuICAgICkge1xuICAgICAgcmV0dXJuIGl0ZW1zXG4gICAgfVxuXG4gICAgY29uc3QganNvbkl0ZW1zID0gZ2V0SnNvbkRhdGFJdGVtc1Byb3h5KGl0ZW1zKVxuICAgIGNvbnN0IHF1ZXJ5ID0gZ2VuZXJhdGVTcWxRdWVyeShcbiAgICAgIHRoaXMuc2VsZWN0ZWQsXG4gICAgICB0aGlzLmZpbHRlcixcbiAgICAgIHRoaXMuc29ydCxcbiAgICAgIHRoaXMuc3RhcnRJbmRleCxcbiAgICAgIHRoaXMuY291bnQsXG4gICAgICB0aGlzLmdyb3VwZWRCeSxcbiAgICAgIHRoaXMuYWdncmVnYXRpb25zXG4gICAgKVxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGltcG9ydCgnYWxhc3FsJykudGhlbigobW9kdWxlKSA9PlxuICAgICAgbW9kdWxlLmRlZmF1bHQocXVlcnksIFtqc29uSXRlbXNdKVxuICAgIClcbiAgICByZXR1cm4gcmVzdWx0Lm1hcChqc29uVG9HZW9qc29uRmVhdHVyZSlcbiAgfVxufVxuIl19
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2RhdGEtZmV0Y2hlci9zcmMvbGliL3JlYWRlcnMvYmFzZS1maWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQU85QyxNQUFNLE9BQU8sY0FBZSxTQUFRLGVBQWU7SUFHdkMsT0FBTztRQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUNwQyxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFBO0lBQ3BDLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDOUQsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQzNCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDVCxDQUFDO1lBQ0MsVUFBVSxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTTtTQUNoQyxDQUFnQixDQUNwQixDQUFBO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFJO1FBQ1IsTUFBTSxLQUFLLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxLQUFLLENBQUE7UUFDN0Msa0RBQWtEO1FBQ2xELElBQ0UsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJO1lBQ3RCLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSTtZQUN6QixJQUFJLENBQUMsUUFBUSxJQUFJLElBQUk7WUFDckIsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJO1lBQ2pCLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSTtZQUNuQixJQUFJLENBQUMsVUFBVSxJQUFJLElBQUk7WUFDdkIsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLEVBQ2xCLENBQUM7WUFDRCxPQUFPLEtBQUssQ0FBQTtRQUNkLENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUM5QyxNQUFNLEtBQUssR0FBRyxnQkFBZ0IsQ0FDNUIsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxJQUFJLEVBQ1QsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsS0FBSyxFQUNWLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFlBQVksQ0FDbEIsQ0FBQTtRQUNELE1BQU0sTUFBTSxHQUFHLE1BQU0sTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ3BELE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FDbkMsQ0FBQTtRQUNELE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0lBQ3pDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VSZWFkZXIgfSBmcm9tICcuL2Jhc2UnXG5pbXBvcnQgeyBEYXRhSXRlbSwgRGF0YXNldEluZm8sIFByb3BlcnR5SW5mbyB9IGZyb20gJy4uL21vZGVsJ1xuaW1wb3J0IHsgZ2V0SnNvbkRhdGFJdGVtc1Byb3h5LCBqc29uVG9HZW9qc29uRmVhdHVyZSB9IGZyb20gJy4uL3V0aWxzJ1xuaW1wb3J0IHsgZ2VuZXJhdGVTcWxRdWVyeSB9IGZyb20gJy4uL3NxbC11dGlscydcbmltcG9ydCB7IEJhc2VDYWNoZVJlYWRlciB9IGZyb20gJy4vYmFzZS1jYWNoZSdcblxudHlwZSBQYXJzZVJlc3VsdCA9IHtcbiAgaXRlbXM6IERhdGFJdGVtW11cbiAgcHJvcGVydGllczogUHJvcGVydHlJbmZvW11cbn1cblxuZXhwb3J0IGNsYXNzIEJhc2VGaWxlUmVhZGVyIGV4dGVuZHMgQmFzZUNhY2hlUmVhZGVyIHtcbiAgcHJpdmF0ZSBwYXJzZVJlc3VsdF86IFByb21pc2U8UGFyc2VSZXN1bHQ+XG5cbiAgcHJvdGVjdGVkIGdldERhdGEoKTogUHJvbWlzZTxQYXJzZVJlc3VsdD4ge1xuICAgIHRocm93IG5ldyBFcnJvcignbm90IGltcGxlbWVudGVkJylcbiAgfVxuXG4gIGxvYWQoKSB7XG4gICAgdGhpcy5wYXJzZVJlc3VsdF8gPSB0aGlzLmdldERhdGEoKVxuICB9XG5cbiAgZ2V0IHByb3BlcnRpZXMoKTogUHJvbWlzZTxQcm9wZXJ0eUluZm9bXT4ge1xuICAgIHJldHVybiB0aGlzLnBhcnNlUmVzdWx0Xy50aGVuKChyZXN1bHQpID0+IHJlc3VsdC5wcm9wZXJ0aWVzKVxuICB9XG5cbiAgZ2V0IGluZm8oKTogUHJvbWlzZTxEYXRhc2V0SW5mbz4ge1xuICAgIHJldHVybiB0aGlzLnBhcnNlUmVzdWx0Xy50aGVuKFxuICAgICAgKHJlc3VsdCkgPT5cbiAgICAgICAgKHtcbiAgICAgICAgICBpdGVtc0NvdW50OiByZXN1bHQuaXRlbXMubGVuZ3RoLFxuICAgICAgICB9KSBhcyBEYXRhc2V0SW5mb1xuICAgIClcbiAgfVxuXG4gIGFzeW5jIHJlYWQoKTogUHJvbWlzZTxEYXRhSXRlbVtdPiB7XG4gICAgY29uc3QgaXRlbXMgPSAoYXdhaXQgdGhpcy5wYXJzZVJlc3VsdF8pLml0ZW1zXG4gICAgLy8gbm8gcXVlcnkgZGVmaW5lZDogcmV0dXJuIHRoZSBmdWxsIHJlc3VsdHMgYXMgaXNcbiAgICBpZiAoXG4gICAgICB0aGlzLmdyb3VwZWRCeSA9PSBudWxsICYmXG4gICAgICB0aGlzLmFnZ3JlZ2F0aW9ucyA9PSBudWxsICYmXG4gICAgICB0aGlzLnNlbGVjdGVkID09IG51bGwgJiZcbiAgICAgIHRoaXMuc29ydCA9PSBudWxsICYmXG4gICAgICB0aGlzLmZpbHRlciA9PSBudWxsICYmXG4gICAgICB0aGlzLnN0YXJ0SW5kZXggPT0gbnVsbCAmJlxuICAgICAgdGhpcy5jb3VudCA9PSBudWxsXG4gICAgKSB7XG4gICAgICByZXR1cm4gaXRlbXNcbiAgICB9XG5cbiAgICBjb25zdCBqc29uSXRlbXMgPSBnZXRKc29uRGF0YUl0ZW1zUHJveHkoaXRlbXMpXG4gICAgY29uc3QgcXVlcnkgPSBnZW5lcmF0ZVNxbFF1ZXJ5KFxuICAgICAgdGhpcy5zZWxlY3RlZCxcbiAgICAgIHRoaXMuZmlsdGVyLFxuICAgICAgdGhpcy5zb3J0LFxuICAgICAgdGhpcy5zdGFydEluZGV4LFxuICAgICAgdGhpcy5jb3VudCxcbiAgICAgIHRoaXMuZ3JvdXBlZEJ5LFxuICAgICAgdGhpcy5hZ2dyZWdhdGlvbnNcbiAgICApXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgaW1wb3J0KCdhbGFzcWwnKS50aGVuKChtb2R1bGUpID0+XG4gICAgICBtb2R1bGUuZGVmYXVsdChxdWVyeSwgW2pzb25JdGVtc10pXG4gICAgKVxuICAgIHJldHVybiByZXN1bHQubWFwKGpzb25Ub0dlb2pzb25GZWF0dXJlKVxuICB9XG59XG4iXX0=
@@ -59,4 +59,4 @@ export class BaseReader {
59
59
  return this;
60
60
  }
61
61
  }
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9kYXRhLWZldGNoZXIvc3JjL2xpYi9yZWFkZXJzL2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsTUFBTSxPQUFPLFVBQVU7SUFTckIsWUFBc0IsR0FBVztRQUFYLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFSdkIsYUFBUSxHQUFnQixJQUFJLENBQUE7UUFDNUIsY0FBUyxHQUFtQixJQUFJLENBQUE7UUFDaEMsaUJBQVksR0FBdUIsSUFBSSxDQUFBO1FBQ3ZDLFdBQU0sR0FBZ0IsSUFBSSxDQUFBO1FBQzFCLFNBQUksR0FBZ0IsSUFBSSxDQUFBO1FBQ3hCLGVBQVUsR0FBVyxJQUFJLENBQUE7UUFDekIsVUFBSyxHQUFXLElBQUksQ0FBQTtJQUVNLENBQUM7SUFFckMsSUFBSTtRQUNGLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUNwQyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0lBQ3BDLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUE7SUFDcEMsQ0FBQztJQUVELElBQUk7UUFDRixNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUE7SUFDcEMsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQTtRQUNyQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQTtRQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQTtRQUNwQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQTtRQUNsQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQTtRQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQTtRQUNqQixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFDRCxNQUFNLENBQUMsR0FBRyxjQUEyQjtRQUNuQyxJQUFJLENBQUMsUUFBUSxHQUFHLGNBQWMsQ0FBQTtRQUM5QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQSxDQUFDLG9EQUFvRDtRQUM3RSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQTtRQUNyQixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFDRCxPQUFPLENBQUMsR0FBRyxPQUF1QjtRQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQTtRQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQSxDQUFDLGdEQUFnRDtRQUNyRSxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFDRCxTQUFTLENBQUMsR0FBRyxZQUFnQztRQUMzQyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQTtRQUNoQyxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFDRCxLQUFLLENBQUMsTUFBbUI7UUFDdkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7UUFDcEIsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBQ0QsT0FBTyxDQUFDLEdBQUcsVUFBdUI7UUFDaEMsSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUE7UUFDdEIsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBQ0QsS0FBSyxDQUFDLFVBQWtCLEVBQUUsS0FBYTtRQUNyQyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQTtRQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtRQUNsQixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERhdGFJdGVtLFxuICBEYXRhc2V0SW5mbyxcbiAgRmllbGRBZ2dyZWdhdGlvbixcbiAgRmllbGRGaWx0ZXIsXG4gIEZpZWxkR3JvdXBCeSxcbiAgRmllbGROYW1lLFxuICBGaWVsZFNvcnQsXG4gIFByb3BlcnR5SW5mbyxcbn0gZnJvbSAnLi4vbW9kZWwnXG5cbmV4cG9ydCBjbGFzcyBCYXNlUmVhZGVyIHtcbiAgcHJvdGVjdGVkIHNlbGVjdGVkOiBGaWVsZE5hbWVbXSA9IG51bGxcbiAgcHJvdGVjdGVkIGdyb3VwZWRCeTogRmllbGRHcm91cEJ5W10gPSBudWxsXG4gIHByb3RlY3RlZCBhZ2dyZWdhdGlvbnM6IEZpZWxkQWdncmVnYXRpb25bXSA9IG51bGxcbiAgcHJvdGVjdGVkIGZpbHRlcjogRmllbGRGaWx0ZXIgPSBudWxsXG4gIHByb3RlY3RlZCBzb3J0OiBGaWVsZFNvcnRbXSA9IG51bGxcbiAgcHJvdGVjdGVkIHN0YXJ0SW5kZXg6IG51bWJlciA9IG51bGxcbiAgcHJvdGVjdGVkIGNvdW50OiBudW1iZXIgPSBudWxsXG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIHVybDogc3RyaW5nKSB7fVxuXG4gIGxvYWQoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdub3QgaW1wbGVtZW50ZWQnKVxuICB9XG5cbiAgZ2V0IHByb3BlcnRpZXMoKTogUHJvbWlzZTxQcm9wZXJ0eUluZm9bXT4ge1xuICAgIHRocm93IG5ldyBFcnJvcignbm90IGltcGxlbWVudGVkJylcbiAgfVxuXG4gIGdldCBpbmZvKCk6IFByb21pc2U8RGF0YXNldEluZm8+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vdCBpbXBsZW1lbnRlZCcpXG4gIH1cblxuICByZWFkKCk6IFByb21pc2U8RGF0YUl0ZW1bXT4ge1xuICAgIHRocm93IG5ldyBFcnJvcignbm90IGltcGxlbWVudGVkJylcbiAgfVxuXG4gIHNlbGVjdEFsbCgpOiB0aGlzIHtcbiAgICB0aGlzLmdyb3VwZWRCeSA9IG51bGxcbiAgICB0aGlzLmFnZ3JlZ2F0aW9ucyA9IG51bGxcbiAgICB0aGlzLnNlbGVjdGVkID0gbnVsbFxuICAgIHRoaXMuZmlsdGVyID0gbnVsbFxuICAgIHRoaXMuc3RhcnRJbmRleCA9IG51bGxcbiAgICB0aGlzLmNvdW50ID0gbnVsbFxuICAgIHJldHVybiB0aGlzXG4gIH1cbiAgc2VsZWN0KC4uLnNlbGVjdGVkRmllbGRzOiBGaWVsZE5hbWVbXSk6IHRoaXMge1xuICAgIHRoaXMuc2VsZWN0ZWQgPSBzZWxlY3RlZEZpZWxkc1xuICAgIHRoaXMuYWdncmVnYXRpb25zID0gbnVsbCAvLyBjbGVhciBhZ2dyZWdhdGlvbnMgJiBncm91cHMgd2hlbiBzZWxlY3RpbmcgZmllbGRzXG4gICAgdGhpcy5ncm91cGVkQnkgPSBudWxsXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuICBncm91cEJ5KC4uLmdyb3VwQnk6IEZpZWxkR3JvdXBCeVtdKTogdGhpcyB7XG4gICAgdGhpcy5ncm91cGVkQnkgPSBncm91cEJ5XG4gICAgdGhpcy5zZWxlY3RlZCA9IG51bGwgLy8gY2xlYXIgbm9ybWFsIGZpZWxkIHNlbGVjdGlvbiB3aGVuIGFnZ3JlZ2F0aW5nXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuICBhZ2dyZWdhdGUoLi4uYWdncmVnYXRpb25zOiBGaWVsZEFnZ3JlZ2F0aW9uW10pOiB0aGlzIHtcbiAgICB0aGlzLmFnZ3JlZ2F0aW9ucyA9IGFnZ3JlZ2F0aW9uc1xuICAgIHJldHVybiB0aGlzXG4gIH1cbiAgd2hlcmUoZmlsdGVyOiBGaWVsZEZpbHRlcik6IHRoaXMge1xuICAgIHRoaXMuZmlsdGVyID0gZmlsdGVyXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuICBvcmRlckJ5KC4uLmZpZWxkU29ydHM6IEZpZWxkU29ydFtdKTogdGhpcyB7XG4gICAgdGhpcy5zb3J0ID0gZmllbGRTb3J0c1xuICAgIHJldHVybiB0aGlzXG4gIH1cbiAgbGltaXQoc3RhcnRJbmRleDogbnVtYmVyLCBjb3VudDogbnVtYmVyKTogdGhpcyB7XG4gICAgdGhpcy5zdGFydEluZGV4ID0gc3RhcnRJbmRleFxuICAgIHRoaXMuY291bnQgPSBjb3VudFxuICAgIHJldHVybiB0aGlzXG4gIH1cbn1cbiJdfQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9kYXRhLWZldGNoZXIvc3JjL2xpYi9yZWFkZXJzL2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsTUFBTSxPQUFPLFVBQVU7SUFTckIsWUFBc0IsR0FBVztRQUFYLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFSdkIsYUFBUSxHQUFnQixJQUFJLENBQUE7UUFDL0IsY0FBUyxHQUFtQixJQUFJLENBQUE7UUFDaEMsaUJBQVksR0FBdUIsSUFBSSxDQUFBO1FBQ3BDLFdBQU0sR0FBZ0IsSUFBSSxDQUFBO1FBQzFCLFNBQUksR0FBZ0IsSUFBSSxDQUFBO1FBQ3hCLGVBQVUsR0FBVyxJQUFJLENBQUE7UUFDekIsVUFBSyxHQUFXLElBQUksQ0FBQTtJQUVNLENBQUM7SUFFckMsSUFBSTtRQUNGLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUNwQyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0lBQ3BDLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUE7SUFDcEMsQ0FBQztJQUVELElBQUk7UUFDRixNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUE7SUFDcEMsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQTtRQUNyQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQTtRQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQTtRQUNwQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQTtRQUNsQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQTtRQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQTtRQUNqQixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFDRCxNQUFNLENBQUMsR0FBRyxjQUEyQjtRQUNuQyxJQUFJLENBQUMsUUFBUSxHQUFHLGNBQWMsQ0FBQTtRQUM5QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQSxDQUFDLG9EQUFvRDtRQUM3RSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQTtRQUNyQixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFDRCxPQUFPLENBQUMsR0FBRyxPQUF1QjtRQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQTtRQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQSxDQUFDLGdEQUFnRDtRQUNyRSxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFDRCxTQUFTLENBQUMsR0FBRyxZQUFnQztRQUMzQyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQTtRQUNoQyxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFDRCxLQUFLLENBQUMsTUFBbUI7UUFDdkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7UUFDcEIsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBQ0QsT0FBTyxDQUFDLEdBQUcsVUFBdUI7UUFDaEMsSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUE7UUFDdEIsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBQ0QsS0FBSyxDQUFDLFVBQWtCLEVBQUUsS0FBYTtRQUNyQyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQTtRQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtRQUNsQixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERhdGFJdGVtLFxuICBEYXRhc2V0SW5mbyxcbiAgRmllbGRBZ2dyZWdhdGlvbixcbiAgRmllbGRGaWx0ZXIsXG4gIEZpZWxkR3JvdXBCeSxcbiAgRmllbGROYW1lLFxuICBGaWVsZFNvcnQsXG4gIFByb3BlcnR5SW5mbyxcbn0gZnJvbSAnLi4vbW9kZWwnXG5cbmV4cG9ydCBjbGFzcyBCYXNlUmVhZGVyIHtcbiAgcHJvdGVjdGVkIHNlbGVjdGVkOiBGaWVsZE5hbWVbXSA9IG51bGxcbiAgcHVibGljIGdyb3VwZWRCeTogRmllbGRHcm91cEJ5W10gPSBudWxsXG4gIHB1YmxpYyBhZ2dyZWdhdGlvbnM6IEZpZWxkQWdncmVnYXRpb25bXSA9IG51bGxcbiAgcHJvdGVjdGVkIGZpbHRlcjogRmllbGRGaWx0ZXIgPSBudWxsXG4gIHByb3RlY3RlZCBzb3J0OiBGaWVsZFNvcnRbXSA9IG51bGxcbiAgcHJvdGVjdGVkIHN0YXJ0SW5kZXg6IG51bWJlciA9IG51bGxcbiAgcHJvdGVjdGVkIGNvdW50OiBudW1iZXIgPSBudWxsXG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIHVybDogc3RyaW5nKSB7fVxuXG4gIGxvYWQoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdub3QgaW1wbGVtZW50ZWQnKVxuICB9XG5cbiAgZ2V0IHByb3BlcnRpZXMoKTogUHJvbWlzZTxQcm9wZXJ0eUluZm9bXT4ge1xuICAgIHRocm93IG5ldyBFcnJvcignbm90IGltcGxlbWVudGVkJylcbiAgfVxuXG4gIGdldCBpbmZvKCk6IFByb21pc2U8RGF0YXNldEluZm8+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vdCBpbXBsZW1lbnRlZCcpXG4gIH1cblxuICByZWFkKCk6IFByb21pc2U8RGF0YUl0ZW1bXT4ge1xuICAgIHRocm93IG5ldyBFcnJvcignbm90IGltcGxlbWVudGVkJylcbiAgfVxuXG4gIHNlbGVjdEFsbCgpOiB0aGlzIHtcbiAgICB0aGlzLmdyb3VwZWRCeSA9IG51bGxcbiAgICB0aGlzLmFnZ3JlZ2F0aW9ucyA9IG51bGxcbiAgICB0aGlzLnNlbGVjdGVkID0gbnVsbFxuICAgIHRoaXMuZmlsdGVyID0gbnVsbFxuICAgIHRoaXMuc3RhcnRJbmRleCA9IG51bGxcbiAgICB0aGlzLmNvdW50ID0gbnVsbFxuICAgIHJldHVybiB0aGlzXG4gIH1cbiAgc2VsZWN0KC4uLnNlbGVjdGVkRmllbGRzOiBGaWVsZE5hbWVbXSk6IHRoaXMge1xuICAgIHRoaXMuc2VsZWN0ZWQgPSBzZWxlY3RlZEZpZWxkc1xuICAgIHRoaXMuYWdncmVnYXRpb25zID0gbnVsbCAvLyBjbGVhciBhZ2dyZWdhdGlvbnMgJiBncm91cHMgd2hlbiBzZWxlY3RpbmcgZmllbGRzXG4gICAgdGhpcy5ncm91cGVkQnkgPSBudWxsXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuICBncm91cEJ5KC4uLmdyb3VwQnk6IEZpZWxkR3JvdXBCeVtdKTogdGhpcyB7XG4gICAgdGhpcy5ncm91cGVkQnkgPSBncm91cEJ5XG4gICAgdGhpcy5zZWxlY3RlZCA9IG51bGwgLy8gY2xlYXIgbm9ybWFsIGZpZWxkIHNlbGVjdGlvbiB3aGVuIGFnZ3JlZ2F0aW5nXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuICBhZ2dyZWdhdGUoLi4uYWdncmVnYXRpb25zOiBGaWVsZEFnZ3JlZ2F0aW9uW10pOiB0aGlzIHtcbiAgICB0aGlzLmFnZ3JlZ2F0aW9ucyA9IGFnZ3JlZ2F0aW9uc1xuICAgIHJldHVybiB0aGlzXG4gIH1cbiAgd2hlcmUoZmlsdGVyOiBGaWVsZEZpbHRlcik6IHRoaXMge1xuICAgIHRoaXMuZmlsdGVyID0gZmlsdGVyXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuICBvcmRlckJ5KC4uLmZpZWxkU29ydHM6IEZpZWxkU29ydFtdKTogdGhpcyB7XG4gICAgdGhpcy5zb3J0ID0gZmllbGRTb3J0c1xuICAgIHJldHVybiB0aGlzXG4gIH1cbiAgbGltaXQoc3RhcnRJbmRleDogbnVtYmVyLCBjb3VudDogbnVtYmVyKTogdGhpcyB7XG4gICAgdGhpcy5zdGFydEluZGV4ID0gc3RhcnRJbmRleFxuICAgIHRoaXMuY291bnQgPSBjb3VudFxuICAgIHJldHVybiB0aGlzXG4gIH1cbn1cbiJdfQ==
@@ -31,7 +31,7 @@ export function parseCsv(text) {
31
31
  }
32
32
  export class CsvReader extends BaseFileReader {
33
33
  getData() {
34
- return fetchDataAsText(this.url).then(parseCsv);
34
+ return fetchDataAsText(this.url, this.cacheActive).then(parseCsv);
35
35
  }
36
36
  }
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3N2LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2RhdGEtZmV0Y2hlci9zcmMvbGliL3JlYWRlcnMvY3N2LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxJQUFJLE1BQU0sV0FBVyxDQUFBO0FBRWpDLE9BQU8sRUFDTCxlQUFlLEVBQ2Ysb0JBQW9CLEVBQ3BCLHFCQUFxQixHQUN0QixNQUFNLFVBQVUsQ0FBQTtBQUNqQixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRTVDLE1BQU0sVUFBVSxRQUFRLENBQUMsSUFBWTtJQUluQyxnREFBZ0Q7SUFDaEQsNkVBQTZFO0lBQzdFLElBQUksU0FBUyxDQUFBO0lBQ2IsSUFBSSxDQUFDO1FBQ0gsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNsQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUNoQyxNQUFNLEVBQUUsS0FBSztTQUNkLENBQUMsQ0FBQTtRQUNGLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQTtJQUNuQyxDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMsd0RBQXdELENBQUMsQ0FBQTtJQUMzRSxDQUFDO0lBRUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUU7UUFDOUIsTUFBTSxFQUFFLElBQUk7UUFDWixjQUFjLEVBQUUsSUFBSTtRQUNwQixTQUFTO0tBQ1YsQ0FBQyxDQUFBO0lBQ0YsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQ2IsaURBQWlEO1lBQy9DLE1BQU0sQ0FBQyxNQUFNO2lCQUNWLEdBQUcsQ0FDRixDQUFDLEtBQUssRUFBRSxFQUFFLENBQ1IsS0FBSyxLQUFLLENBQUMsT0FBTyxXQUFXLEtBQUssQ0FBQyxHQUFHLFlBQVksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUNsRTtpQkFDQSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQ2hCLENBQUE7SUFDSCxDQUFDO0lBRUQsTUFBTSxLQUFLLEdBQUksTUFBTSxDQUFDLElBQWMsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtJQUM5RCxPQUFPLHFCQUFxQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQTtBQUMzQyxDQUFDO0FBRUQsTUFBTSxPQUFPLFNBQVUsU0FBUSxjQUFjO0lBQzNDLE9BQU87UUFDTCxPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQ2pELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFBhcGEgZnJvbSAncGFwYXBhcnNlJ1xuaW1wb3J0IHsgRGF0YUl0ZW0sIFByb3BlcnR5SW5mbyB9IGZyb20gJy4uL21vZGVsJ1xuaW1wb3J0IHtcbiAgZmV0Y2hEYXRhQXNUZXh0LFxuICBqc29uVG9HZW9qc29uRmVhdHVyZSxcbiAgcHJvY2Vzc0l0ZW1Qcm9wZXJ0aWVzLFxufSBmcm9tICcuLi91dGlscydcbmltcG9ydCB7IEJhc2VGaWxlUmVhZGVyIH0gZnJvbSAnLi9iYXNlLWZpbGUnXG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUNzdih0ZXh0OiBzdHJpbmcpOiB7XG4gIGl0ZW1zOiBEYXRhSXRlbVtdXG4gIHByb3BlcnRpZXM6IFByb3BlcnR5SW5mb1tdXG59IHtcbiAgLy8gZmlyc3QgcGFyc2UgdGhlIGhlYWRlciB0byBndWVzcyB0aGUgZGVsaW1pdGVyXG4gIC8vIG5vdGUgdGhhdCB3ZSBkbyB0aGF0IHRvIG5vdCByZWx5IG9uIFBhcGFwYXJzZSBsb2dpYyBmb3IgZ3Vlc3NpbmcgZGVsaW1pdGVyXG4gIGxldCBkZWxpbWl0ZXJcbiAgdHJ5IHtcbiAgICBjb25zdCBoZWFkZXIgPSB0ZXh0LnNwbGl0KCdcXG4nKVswXVxuICAgIGNvbnN0IHJlc3VsdCA9IFBhcGEucGFyc2UoaGVhZGVyLCB7XG4gICAgICBoZWFkZXI6IGZhbHNlLFxuICAgIH0pXG4gICAgZGVsaW1pdGVyID0gcmVzdWx0Lm1ldGEuZGVsaW1pdGVyXG4gIH0gY2F0Y2ggKGUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0NTViBwYXJzaW5nIGZhaWxlZDogdGhlIGRlbGltaXRlciBjb3VsZCBub3QgYmUgZ3Vlc3NlZCcpXG4gIH1cblxuICBjb25zdCBwYXJzZWQgPSBQYXBhLnBhcnNlKHRleHQsIHtcbiAgICBoZWFkZXI6IHRydWUsXG4gICAgc2tpcEVtcHR5TGluZXM6IHRydWUsXG4gICAgZGVsaW1pdGVyLFxuICB9KVxuICBpZiAocGFyc2VkLmVycm9ycy5sZW5ndGgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAnQ1NWIHBhcnNpbmcgZmFpbGVkIGZvciB0aGUgZm9sbG93aW5nIHJlYXNvbnM6XFxuJyArXG4gICAgICAgIHBhcnNlZC5lcnJvcnNcbiAgICAgICAgICAubWFwKFxuICAgICAgICAgICAgKGVycm9yKSA9PlxuICAgICAgICAgICAgICBgKiAke2Vycm9yLm1lc3NhZ2V9IGF0IHJvdyAke2Vycm9yLnJvd30sIGNvbHVtbiAke2Vycm9yLmluZGV4fWBcbiAgICAgICAgICApXG4gICAgICAgICAgLmpvaW4oJ1xcbicpXG4gICAgKVxuICB9XG5cbiAgY29uc3QgaXRlbXMgPSAocGFyc2VkLmRhdGEgYXMgYW55W10pLm1hcChqc29uVG9HZW9qc29uRmVhdHVyZSlcbiAgcmV0dXJuIHByb2Nlc3NJdGVtUHJvcGVydGllcyhpdGVtcywgdHJ1ZSlcbn1cblxuZXhwb3J0IGNsYXNzIENzdlJlYWRlciBleHRlbmRzIEJhc2VGaWxlUmVhZGVyIHtcbiAgZ2V0RGF0YSgpIHtcbiAgICByZXR1cm4gZmV0Y2hEYXRhQXNUZXh0KHRoaXMudXJsKS50aGVuKHBhcnNlQ3N2KVxuICB9XG59XG4iXX0=
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3N2LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2RhdGEtZmV0Y2hlci9zcmMvbGliL3JlYWRlcnMvY3N2LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxJQUFJLE1BQU0sV0FBVyxDQUFBO0FBRWpDLE9BQU8sRUFDTCxlQUFlLEVBQ2Ysb0JBQW9CLEVBQ3BCLHFCQUFxQixHQUN0QixNQUFNLFVBQVUsQ0FBQTtBQUNqQixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRTVDLE1BQU0sVUFBVSxRQUFRLENBQUMsSUFBWTtJQUluQyxnREFBZ0Q7SUFDaEQsNkVBQTZFO0lBQzdFLElBQUksU0FBUyxDQUFBO0lBQ2IsSUFBSSxDQUFDO1FBQ0gsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNsQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUNoQyxNQUFNLEVBQUUsS0FBSztTQUNkLENBQUMsQ0FBQTtRQUNGLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQTtJQUNuQyxDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMsd0RBQXdELENBQUMsQ0FBQTtJQUMzRSxDQUFDO0lBRUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUU7UUFDOUIsTUFBTSxFQUFFLElBQUk7UUFDWixjQUFjLEVBQUUsSUFBSTtRQUNwQixTQUFTO0tBQ1YsQ0FBQyxDQUFBO0lBQ0YsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQ2IsaURBQWlEO1lBQy9DLE1BQU0sQ0FBQyxNQUFNO2lCQUNWLEdBQUcsQ0FDRixDQUFDLEtBQUssRUFBRSxFQUFFLENBQ1IsS0FBSyxLQUFLLENBQUMsT0FBTyxXQUFXLEtBQUssQ0FBQyxHQUFHLFlBQVksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUNsRTtpQkFDQSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQ2hCLENBQUE7SUFDSCxDQUFDO0lBRUQsTUFBTSxLQUFLLEdBQUksTUFBTSxDQUFDLElBQWMsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtJQUM5RCxPQUFPLHFCQUFxQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQTtBQUMzQyxDQUFDO0FBRUQsTUFBTSxPQUFPLFNBQVUsU0FBUSxjQUFjO0lBQzNDLE9BQU87UUFDTCxPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDbkUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUGFwYSBmcm9tICdwYXBhcGFyc2UnXG5pbXBvcnQgeyBEYXRhSXRlbSwgUHJvcGVydHlJbmZvIH0gZnJvbSAnLi4vbW9kZWwnXG5pbXBvcnQge1xuICBmZXRjaERhdGFBc1RleHQsXG4gIGpzb25Ub0dlb2pzb25GZWF0dXJlLFxuICBwcm9jZXNzSXRlbVByb3BlcnRpZXMsXG59IGZyb20gJy4uL3V0aWxzJ1xuaW1wb3J0IHsgQmFzZUZpbGVSZWFkZXIgfSBmcm9tICcuL2Jhc2UtZmlsZSdcblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlQ3N2KHRleHQ6IHN0cmluZyk6IHtcbiAgaXRlbXM6IERhdGFJdGVtW11cbiAgcHJvcGVydGllczogUHJvcGVydHlJbmZvW11cbn0ge1xuICAvLyBmaXJzdCBwYXJzZSB0aGUgaGVhZGVyIHRvIGd1ZXNzIHRoZSBkZWxpbWl0ZXJcbiAgLy8gbm90ZSB0aGF0IHdlIGRvIHRoYXQgdG8gbm90IHJlbHkgb24gUGFwYXBhcnNlIGxvZ2ljIGZvciBndWVzc2luZyBkZWxpbWl0ZXJcbiAgbGV0IGRlbGltaXRlclxuICB0cnkge1xuICAgIGNvbnN0IGhlYWRlciA9IHRleHQuc3BsaXQoJ1xcbicpWzBdXG4gICAgY29uc3QgcmVzdWx0ID0gUGFwYS5wYXJzZShoZWFkZXIsIHtcbiAgICAgIGhlYWRlcjogZmFsc2UsXG4gICAgfSlcbiAgICBkZWxpbWl0ZXIgPSByZXN1bHQubWV0YS5kZWxpbWl0ZXJcbiAgfSBjYXRjaCAoZSkge1xuICAgIHRocm93IG5ldyBFcnJvcignQ1NWIHBhcnNpbmcgZmFpbGVkOiB0aGUgZGVsaW1pdGVyIGNvdWxkIG5vdCBiZSBndWVzc2VkJylcbiAgfVxuXG4gIGNvbnN0IHBhcnNlZCA9IFBhcGEucGFyc2UodGV4dCwge1xuICAgIGhlYWRlcjogdHJ1ZSxcbiAgICBza2lwRW1wdHlMaW5lczogdHJ1ZSxcbiAgICBkZWxpbWl0ZXIsXG4gIH0pXG4gIGlmIChwYXJzZWQuZXJyb3JzLmxlbmd0aCkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICdDU1YgcGFyc2luZyBmYWlsZWQgZm9yIHRoZSBmb2xsb3dpbmcgcmVhc29uczpcXG4nICtcbiAgICAgICAgcGFyc2VkLmVycm9yc1xuICAgICAgICAgIC5tYXAoXG4gICAgICAgICAgICAoZXJyb3IpID0+XG4gICAgICAgICAgICAgIGAqICR7ZXJyb3IubWVzc2FnZX0gYXQgcm93ICR7ZXJyb3Iucm93fSwgY29sdW1uICR7ZXJyb3IuaW5kZXh9YFxuICAgICAgICAgIClcbiAgICAgICAgICAuam9pbignXFxuJylcbiAgICApXG4gIH1cblxuICBjb25zdCBpdGVtcyA9IChwYXJzZWQuZGF0YSBhcyBhbnlbXSkubWFwKGpzb25Ub0dlb2pzb25GZWF0dXJlKVxuICByZXR1cm4gcHJvY2Vzc0l0ZW1Qcm9wZXJ0aWVzKGl0ZW1zLCB0cnVlKVxufVxuXG5leHBvcnQgY2xhc3MgQ3N2UmVhZGVyIGV4dGVuZHMgQmFzZUZpbGVSZWFkZXIge1xuICBnZXREYXRhKCkge1xuICAgIHJldHVybiBmZXRjaERhdGFBc1RleHQodGhpcy51cmwsIHRoaXMuY2FjaGVBY3RpdmUpLnRoZW4ocGFyc2VDc3YpXG4gIH1cbn1cbiJdfQ==
@@ -18,7 +18,7 @@ export function parseExcel(buffer) {
18
18
  }
19
19
  export class ExcelReader extends BaseFileReader {
20
20
  getData() {
21
- return fetchDataAsArrayBuffer(this.url).then(parseExcel);
21
+ return fetchDataAsArrayBuffer(this.url, this.cacheActive).then(parseExcel);
22
22
  }
23
23
  }
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYy9saWIvcmVhZGVycy9leGNlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsc0JBQXNCLEVBQ3RCLG9CQUFvQixFQUNwQixxQkFBcUIsR0FDdEIsTUFBTSxVQUFVLENBQUE7QUFDakIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUU1Qzs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLFVBQVUsQ0FBQyxNQUFtQjtJQUk1QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO1FBQzdDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUM3QixNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNyRCxJQUFJLElBQUksR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDakIsSUFBSSxHQUFHLEVBQUUsQ0FBQTtRQUNYLENBQUM7UUFDRCxPQUFPLHFCQUFxQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUNwRSxDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUM7QUFFRCxNQUFNLE9BQU8sV0FBWSxTQUFRLGNBQWM7SUFDN0MsT0FBTztRQUNMLE9BQU8sc0JBQXNCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQTtJQUMxRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhSXRlbSwgUHJvcGVydHlJbmZvIH0gZnJvbSAnLi4vbW9kZWwnXG5pbXBvcnQge1xuICBmZXRjaERhdGFBc0FycmF5QnVmZmVyLFxuICBqc29uVG9HZW9qc29uRmVhdHVyZSxcbiAgcHJvY2Vzc0l0ZW1Qcm9wZXJ0aWVzLFxufSBmcm9tICcuLi91dGlscydcbmltcG9ydCB7IEJhc2VGaWxlUmVhZGVyIH0gZnJvbSAnLi9iYXNlLWZpbGUnXG5cbi8qKlxuICogVGhpcyB3aWxsIHJlYWQgdGhlIGZpcnN0IHNoZWV0IG9mIHRoZSBleGNlbCB3b3JrYm9vayBhbmQgZXhwZWN0IHRoZSBmaXJzdFxuICogbGluZSB0byBjb250YWluIHRoZSBwcm9wZXJ0aWVzIG5hbWVzXG4gKiBAcGFyYW0gYnVmZmVyXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUV4Y2VsKGJ1ZmZlcjogQXJyYXlCdWZmZXIpOiBQcm9taXNlPHtcbiAgaXRlbXM6IERhdGFJdGVtW11cbiAgcHJvcGVydGllczogUHJvcGVydHlJbmZvW11cbn0+IHtcbiAgcmV0dXJuIGltcG9ydCgneGxzeCcpLnRoZW4oKHsgcmVhZCwgdXRpbHMgfSkgPT4ge1xuICAgIGNvbnN0IHdvcmtib29rID0gcmVhZChidWZmZXIpXG4gICAgY29uc3Qgc2hlZXQgPSB3b3JrYm9vay5TaGVldHNbd29ya2Jvb2suU2hlZXROYW1lc1swXV1cbiAgICBsZXQganNvbiA9IHV0aWxzLnNoZWV0X3RvX2pzb24oc2hlZXQpXG4gICAgaWYgKCFqc29uLmxlbmd0aCkge1xuICAgICAganNvbiA9IFtdXG4gICAgfVxuICAgIHJldHVybiBwcm9jZXNzSXRlbVByb3BlcnRpZXMoanNvbi5tYXAoanNvblRvR2VvanNvbkZlYXR1cmUpLCB0cnVlKVxuICB9KVxufVxuXG5leHBvcnQgY2xhc3MgRXhjZWxSZWFkZXIgZXh0ZW5kcyBCYXNlRmlsZVJlYWRlciB7XG4gIGdldERhdGEoKSB7XG4gICAgcmV0dXJuIGZldGNoRGF0YUFzQXJyYXlCdWZmZXIodGhpcy51cmwpLnRoZW4ocGFyc2VFeGNlbClcbiAgfVxufVxuIl19
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYy9saWIvcmVhZGVycy9leGNlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsc0JBQXNCLEVBQ3RCLG9CQUFvQixFQUNwQixxQkFBcUIsR0FDdEIsTUFBTSxVQUFVLENBQUE7QUFDakIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUU1Qzs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLFVBQVUsQ0FBQyxNQUFtQjtJQUk1QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO1FBQzdDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUM3QixNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNyRCxJQUFJLElBQUksR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDakIsSUFBSSxHQUFHLEVBQUUsQ0FBQTtRQUNYLENBQUM7UUFDRCxPQUFPLHFCQUFxQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUNwRSxDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUM7QUFFRCxNQUFNLE9BQU8sV0FBWSxTQUFRLGNBQWM7SUFDN0MsT0FBTztRQUNMLE9BQU8sc0JBQXNCLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQzVFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFJdGVtLCBQcm9wZXJ0eUluZm8gfSBmcm9tICcuLi9tb2RlbCdcbmltcG9ydCB7XG4gIGZldGNoRGF0YUFzQXJyYXlCdWZmZXIsXG4gIGpzb25Ub0dlb2pzb25GZWF0dXJlLFxuICBwcm9jZXNzSXRlbVByb3BlcnRpZXMsXG59IGZyb20gJy4uL3V0aWxzJ1xuaW1wb3J0IHsgQmFzZUZpbGVSZWFkZXIgfSBmcm9tICcuL2Jhc2UtZmlsZSdcblxuLyoqXG4gKiBUaGlzIHdpbGwgcmVhZCB0aGUgZmlyc3Qgc2hlZXQgb2YgdGhlIGV4Y2VsIHdvcmtib29rIGFuZCBleHBlY3QgdGhlIGZpcnN0XG4gKiBsaW5lIHRvIGNvbnRhaW4gdGhlIHByb3BlcnRpZXMgbmFtZXNcbiAqIEBwYXJhbSBidWZmZXJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlRXhjZWwoYnVmZmVyOiBBcnJheUJ1ZmZlcik6IFByb21pc2U8e1xuICBpdGVtczogRGF0YUl0ZW1bXVxuICBwcm9wZXJ0aWVzOiBQcm9wZXJ0eUluZm9bXVxufT4ge1xuICByZXR1cm4gaW1wb3J0KCd4bHN4JykudGhlbigoeyByZWFkLCB1dGlscyB9KSA9PiB7XG4gICAgY29uc3Qgd29ya2Jvb2sgPSByZWFkKGJ1ZmZlcilcbiAgICBjb25zdCBzaGVldCA9IHdvcmtib29rLlNoZWV0c1t3b3JrYm9vay5TaGVldE5hbWVzWzBdXVxuICAgIGxldCBqc29uID0gdXRpbHMuc2hlZXRfdG9fanNvbihzaGVldClcbiAgICBpZiAoIWpzb24ubGVuZ3RoKSB7XG4gICAgICBqc29uID0gW11cbiAgICB9XG4gICAgcmV0dXJuIHByb2Nlc3NJdGVtUHJvcGVydGllcyhqc29uLm1hcChqc29uVG9HZW9qc29uRmVhdHVyZSksIHRydWUpXG4gIH0pXG59XG5cbmV4cG9ydCBjbGFzcyBFeGNlbFJlYWRlciBleHRlbmRzIEJhc2VGaWxlUmVhZGVyIHtcbiAgZ2V0RGF0YSgpIHtcbiAgICByZXR1cm4gZmV0Y2hEYXRhQXNBcnJheUJ1ZmZlcih0aGlzLnVybCwgdGhpcy5jYWNoZUFjdGl2ZSkudGhlbihwYXJzZUV4Y2VsKVxuICB9XG59XG4iXX0=
@@ -15,7 +15,7 @@ export function parseGeojson(text) {
15
15
  }
16
16
  export class GeojsonReader extends BaseFileReader {
17
17
  getData() {
18
- return fetchDataAsText(this.url).then(parseGeojson);
18
+ return fetchDataAsText(this.url, this.cacheActive).then(parseGeojson);
19
19
  }
20
20
  }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvanNvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9kYXRhLWZldGNoZXIvc3JjL2xpYi9yZWFkZXJzL2dlb2pzb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUNqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRTVDOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUFDLElBQVk7SUFJdkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUMvQixNQUFNLFFBQVEsR0FDWixNQUFNLENBQUMsSUFBSSxLQUFLLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUE7SUFDaEUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUM3QixNQUFNLElBQUksS0FBSyxDQUNiLCtGQUErRixDQUNoRyxDQUFBO0lBQ0gsQ0FBQztJQUNELE9BQU8scUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUE7QUFDeEMsQ0FBQztBQUVELE1BQU0sT0FBTyxhQUFjLFNBQVEsY0FBYztJQUMvQyxPQUFPO1FBQ0wsT0FBTyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQTtJQUNyRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhSXRlbSwgUHJvcGVydHlJbmZvIH0gZnJvbSAnLi4vbW9kZWwnXG5pbXBvcnQgeyBmZXRjaERhdGFBc1RleHQsIHByb2Nlc3NJdGVtUHJvcGVydGllcyB9IGZyb20gJy4uL3V0aWxzJ1xuaW1wb3J0IHsgQmFzZUZpbGVSZWFkZXIgfSBmcm9tICcuL2Jhc2UtZmlsZSdcblxuLyoqXG4gKiBUaGlzIHBhcnNlciBzdXBwb3J0cyBib3RoIEdlb2pzb24gRmVhdHVyZSBjb2xsZWN0aW9ucyBvciBhcnJheXNcbiAqIG9mIEZlYXR1cmVzXG4gKiBAcGFyYW0gdGV4dFxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VHZW9qc29uKHRleHQ6IHN0cmluZyk6IHtcbiAgaXRlbXM6IERhdGFJdGVtW11cbiAgcHJvcGVydGllczogUHJvcGVydHlJbmZvW11cbn0ge1xuICBjb25zdCBwYXJzZWQgPSBKU09OLnBhcnNlKHRleHQpXG4gIGNvbnN0IGZlYXR1cmVzID1cbiAgICBwYXJzZWQudHlwZSA9PT0gJ0ZlYXR1cmVDb2xsZWN0aW9uJyA/IHBhcnNlZC5mZWF0dXJlcyA6IHBhcnNlZFxuICBpZiAoIUFycmF5LmlzQXJyYXkoZmVhdHVyZXMpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgJ0NvdWxkIG5vdCBwYXJzZSBHZW9KU09OLCBleHBlY3RlZCBhIGZlYXR1cmVzIGNvbGxlY3Rpb24gb3IgYW4gYXJyYXkgb2YgZmVhdHVyZXMgYXQgcm9vdCBsZXZlbCdcbiAgICApXG4gIH1cbiAgcmV0dXJuIHByb2Nlc3NJdGVtUHJvcGVydGllcyhmZWF0dXJlcylcbn1cblxuZXhwb3J0IGNsYXNzIEdlb2pzb25SZWFkZXIgZXh0ZW5kcyBCYXNlRmlsZVJlYWRlciB7XG4gIGdldERhdGEoKSB7XG4gICAgcmV0dXJuIGZldGNoRGF0YUFzVGV4dCh0aGlzLnVybCkudGhlbihwYXJzZUdlb2pzb24pXG4gIH1cbn1cbiJdfQ==
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvanNvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9kYXRhLWZldGNoZXIvc3JjL2xpYi9yZWFkZXJzL2dlb2pzb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUNqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRTVDOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUFDLElBQVk7SUFJdkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUMvQixNQUFNLFFBQVEsR0FDWixNQUFNLENBQUMsSUFBSSxLQUFLLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUE7SUFDaEUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUM3QixNQUFNLElBQUksS0FBSyxDQUNiLCtGQUErRixDQUNoRyxDQUFBO0lBQ0gsQ0FBQztJQUNELE9BQU8scUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUE7QUFDeEMsQ0FBQztBQUVELE1BQU0sT0FBTyxhQUFjLFNBQVEsY0FBYztJQUMvQyxPQUFPO1FBQ0wsT0FBTyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFBO0lBQ3ZFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFJdGVtLCBQcm9wZXJ0eUluZm8gfSBmcm9tICcuLi9tb2RlbCdcbmltcG9ydCB7IGZldGNoRGF0YUFzVGV4dCwgcHJvY2Vzc0l0ZW1Qcm9wZXJ0aWVzIH0gZnJvbSAnLi4vdXRpbHMnXG5pbXBvcnQgeyBCYXNlRmlsZVJlYWRlciB9IGZyb20gJy4vYmFzZS1maWxlJ1xuXG4vKipcbiAqIFRoaXMgcGFyc2VyIHN1cHBvcnRzIGJvdGggR2VvanNvbiBGZWF0dXJlIGNvbGxlY3Rpb25zIG9yIGFycmF5c1xuICogb2YgRmVhdHVyZXNcbiAqIEBwYXJhbSB0ZXh0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUdlb2pzb24odGV4dDogc3RyaW5nKToge1xuICBpdGVtczogRGF0YUl0ZW1bXVxuICBwcm9wZXJ0aWVzOiBQcm9wZXJ0eUluZm9bXVxufSB7XG4gIGNvbnN0IHBhcnNlZCA9IEpTT04ucGFyc2UodGV4dClcbiAgY29uc3QgZmVhdHVyZXMgPVxuICAgIHBhcnNlZC50eXBlID09PSAnRmVhdHVyZUNvbGxlY3Rpb24nID8gcGFyc2VkLmZlYXR1cmVzIDogcGFyc2VkXG4gIGlmICghQXJyYXkuaXNBcnJheShmZWF0dXJlcykpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAnQ291bGQgbm90IHBhcnNlIEdlb0pTT04sIGV4cGVjdGVkIGEgZmVhdHVyZXMgY29sbGVjdGlvbiBvciBhbiBhcnJheSBvZiBmZWF0dXJlcyBhdCByb290IGxldmVsJ1xuICAgIClcbiAgfVxuICByZXR1cm4gcHJvY2Vzc0l0ZW1Qcm9wZXJ0aWVzKGZlYXR1cmVzKVxufVxuXG5leHBvcnQgY2xhc3MgR2VvanNvblJlYWRlciBleHRlbmRzIEJhc2VGaWxlUmVhZGVyIHtcbiAgZ2V0RGF0YSgpIHtcbiAgICByZXR1cm4gZmV0Y2hEYXRhQXNUZXh0KHRoaXMudXJsLCB0aGlzLmNhY2hlQWN0aXZlKS50aGVuKHBhcnNlR2VvanNvbilcbiAgfVxufVxuIl19
@@ -24,13 +24,15 @@ export function parseGml(text, namespace, version) {
24
24
  throw Error("Couldn't retrieve namespace url");
25
25
  }
26
26
  export class GmlReader extends BaseFileReader {
27
- constructor(url, namespace, version) {
27
+ constructor(url, namespace, version, cacheActive = true) {
28
28
  super(url);
29
+ this.url = url;
29
30
  this.namespace = namespace;
30
31
  this.version = version;
32
+ this.cacheActive = cacheActive;
31
33
  }
32
34
  getData() {
33
- return fetchDataAsText(this.url).then((text) => parseGml(text, this.namespace, this.version));
35
+ return fetchDataAsText(this.url, this.cacheActive).then((text) => parseGml(text, this.namespace, this.version));
34
36
  }
35
37
  }
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ21sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2RhdGEtZmV0Y2hlci9zcmMvbGliL3JlYWRlcnMvZ21sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFNUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUNqRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUd4QyxNQUFNLFVBQVUsUUFBUSxDQUN0QixJQUFZLEVBQ1osU0FBaUIsRUFDakIsT0FBZTtJQUtmLE1BQU0saUJBQWlCLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUM5QyxNQUFNLEtBQUssR0FBRyxJQUFJLE1BQU0sQ0FBQyxTQUFTLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBO0lBQzFFLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFFOUIsSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUMvQixNQUFNLEVBQUUsR0FBRyxJQUFJLEdBQUcsQ0FBQztZQUNqQixTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNuQixXQUFXLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDO1lBQ2pDLE9BQU8sRUFBRSxPQUFPO1NBQ2pCLENBQUMsQ0FBQTtRQUVGLElBQUksUUFBUSxDQUFBO1FBQ1osSUFBSSxDQUFDO1lBQ0gsUUFBUSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDbEMsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxNQUFNLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFBO1FBQ3JELENBQUM7UUFFRCxNQUFNLFdBQVcsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQy9ELE9BQU8scUJBQXFCLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUMxRCxDQUFDO0lBQ0QsTUFBTSxLQUFLLENBQUMsaUNBQWlDLENBQUMsQ0FBQTtBQUNoRCxDQUFDO0FBRUQsTUFBTSxPQUFPLFNBQVUsU0FBUSxjQUFjO0lBSTNDLFlBQVksR0FBRyxFQUFFLFNBQVMsRUFBRSxPQUFPO1FBQ2pDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNWLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFBO1FBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO0lBQ3hCLENBQUM7SUFFUyxPQUFPO1FBQ2YsT0FBTyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQzdDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQzdDLENBQUE7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRmlsZVJlYWRlciB9IGZyb20gJy4vYmFzZS1maWxlJ1xuaW1wb3J0IHsgRGF0YUl0ZW0sIFByb3BlcnR5SW5mbyB9IGZyb20gJy4uL21vZGVsJ1xuaW1wb3J0IHsgZmV0Y2hEYXRhQXNUZXh0LCBwcm9jZXNzSXRlbVByb3BlcnRpZXMgfSBmcm9tICcuLi91dGlscydcbmltcG9ydCB7IEdlb0pTT04sIFdGUyB9IGZyb20gJ29sL2Zvcm1hdCdcbmltcG9ydCB7IFdmc1ZlcnNpb24gfSBmcm9tICdAY2FtcHRvY2FtcC9vZ2MtY2xpZW50J1xuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VHbWwoXG4gIHRleHQ6IHN0cmluZyxcbiAgbmFtZXNwYWNlOiBzdHJpbmcsXG4gIHZlcnNpb246IHN0cmluZ1xuKToge1xuICBpdGVtczogRGF0YUl0ZW1bXVxuICBwcm9wZXJ0aWVzOiBQcm9wZXJ0eUluZm9bXVxufSB7XG4gIGNvbnN0IHNwbGl0dGVkTmFtZXNwYWNlID0gbmFtZXNwYWNlLnNwbGl0KCc6JylcbiAgY29uc3QgcmVnZXggPSBuZXcgUmVnRXhwKGB4bWxuczoke3NwbGl0dGVkTmFtZXNwYWNlWzBdfT1bXCInXShbXidcIl0qKVtcIiddYClcbiAgY29uc3QgbWF0Y2ggPSByZWdleC5leGVjKHRleHQpXG5cbiAgaWYgKG1hdGNoICYmIG1hdGNoLmxlbmd0aCA+PSAyKSB7XG4gICAgY29uc3Qgd2YgPSBuZXcgV0ZTKHtcbiAgICAgIGZlYXR1cmVOUzogbWF0Y2hbMV0sXG4gICAgICBmZWF0dXJlVHlwZTogc3BsaXR0ZWROYW1lc3BhY2VbMV0sXG4gICAgICB2ZXJzaW9uOiB2ZXJzaW9uLFxuICAgIH0pXG5cbiAgICBsZXQgZmVhdHVyZXNcbiAgICB0cnkge1xuICAgICAgZmVhdHVyZXMgPSB3Zi5yZWFkRmVhdHVyZXModGV4dClcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBFcnJvcihcIkNvdWxkbid0IHBhcnNlIFdGUyB3aXRoIEdNTCBmZWF0dXJlc1wiKVxuICAgIH1cblxuICAgIGNvbnN0IGdlb2pzb25JdGVtID0gbmV3IEdlb0pTT04oKS53cml0ZUZlYXR1cmVzT2JqZWN0KGZlYXR1cmVzKVxuICAgIHJldHVybiBwcm9jZXNzSXRlbVByb3BlcnRpZXMoZ2VvanNvbkl0ZW0uZmVhdHVyZXMsIHRydWUpXG4gIH1cbiAgdGhyb3cgRXJyb3IoXCJDb3VsZG4ndCByZXRyaWV2ZSBuYW1lc3BhY2UgdXJsXCIpXG59XG5cbmV4cG9ydCBjbGFzcyBHbWxSZWFkZXIgZXh0ZW5kcyBCYXNlRmlsZVJlYWRlciB7XG4gIG5hbWVzcGFjZTogc3RyaW5nXG4gIHZlcnNpb246IFdmc1ZlcnNpb25cblxuICBjb25zdHJ1Y3Rvcih1cmwsIG5hbWVzcGFjZSwgdmVyc2lvbikge1xuICAgIHN1cGVyKHVybClcbiAgICB0aGlzLm5hbWVzcGFjZSA9IG5hbWVzcGFjZVxuICAgIHRoaXMudmVyc2lvbiA9IHZlcnNpb25cbiAgfVxuXG4gIHByb3RlY3RlZCBnZXREYXRhKCkge1xuICAgIHJldHVybiBmZXRjaERhdGFBc1RleHQodGhpcy51cmwpLnRoZW4oKHRleHQpID0+XG4gICAgICBwYXJzZUdtbCh0ZXh0LCB0aGlzLm5hbWVzcGFjZSwgdGhpcy52ZXJzaW9uKVxuICAgIClcbiAgfVxufVxuIl19
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ21sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2RhdGEtZmV0Y2hlci9zcmMvbGliL3JlYWRlcnMvZ21sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFNUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUNqRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUd4QyxNQUFNLFVBQVUsUUFBUSxDQUN0QixJQUFZLEVBQ1osU0FBaUIsRUFDakIsT0FBZTtJQUtmLE1BQU0saUJBQWlCLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUM5QyxNQUFNLEtBQUssR0FBRyxJQUFJLE1BQU0sQ0FBQyxTQUFTLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBO0lBQzFFLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFFOUIsSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUMvQixNQUFNLEVBQUUsR0FBRyxJQUFJLEdBQUcsQ0FBQztZQUNqQixTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNuQixXQUFXLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDO1lBQ2pDLE9BQU8sRUFBRSxPQUFPO1NBQ2pCLENBQUMsQ0FBQTtRQUVGLElBQUksUUFBUSxDQUFBO1FBQ1osSUFBSSxDQUFDO1lBQ0gsUUFBUSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDbEMsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxNQUFNLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFBO1FBQ3JELENBQUM7UUFFRCxNQUFNLFdBQVcsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQy9ELE9BQU8scUJBQXFCLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUMxRCxDQUFDO0lBQ0QsTUFBTSxLQUFLLENBQUMsaUNBQWlDLENBQUMsQ0FBQTtBQUNoRCxDQUFDO0FBRUQsTUFBTSxPQUFPLFNBQVUsU0FBUSxjQUFjO0lBQzNDLFlBQ1ksR0FBVyxFQUNYLFNBQWlCLEVBQ2pCLE9BQW1CLEVBQ25CLGNBQWMsSUFBSTtRQUU1QixLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7UUFMQSxRQUFHLEdBQUgsR0FBRyxDQUFRO1FBQ1gsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUNqQixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQ25CLGdCQUFXLEdBQVgsV0FBVyxDQUFPO0lBRzlCLENBQUM7SUFFUyxPQUFPO1FBQ2YsT0FBTyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDL0QsUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FDN0MsQ0FBQTtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VGaWxlUmVhZGVyIH0gZnJvbSAnLi9iYXNlLWZpbGUnXG5pbXBvcnQgeyBEYXRhSXRlbSwgUHJvcGVydHlJbmZvIH0gZnJvbSAnLi4vbW9kZWwnXG5pbXBvcnQgeyBmZXRjaERhdGFBc1RleHQsIHByb2Nlc3NJdGVtUHJvcGVydGllcyB9IGZyb20gJy4uL3V0aWxzJ1xuaW1wb3J0IHsgR2VvSlNPTiwgV0ZTIH0gZnJvbSAnb2wvZm9ybWF0J1xuaW1wb3J0IHsgV2ZzVmVyc2lvbiB9IGZyb20gJ0BjYW1wdG9jYW1wL29nYy1jbGllbnQnXG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUdtbChcbiAgdGV4dDogc3RyaW5nLFxuICBuYW1lc3BhY2U6IHN0cmluZyxcbiAgdmVyc2lvbjogc3RyaW5nXG4pOiB7XG4gIGl0ZW1zOiBEYXRhSXRlbVtdXG4gIHByb3BlcnRpZXM6IFByb3BlcnR5SW5mb1tdXG59IHtcbiAgY29uc3Qgc3BsaXR0ZWROYW1lc3BhY2UgPSBuYW1lc3BhY2Uuc3BsaXQoJzonKVxuICBjb25zdCByZWdleCA9IG5ldyBSZWdFeHAoYHhtbG5zOiR7c3BsaXR0ZWROYW1lc3BhY2VbMF19PVtcIiddKFteJ1wiXSopW1wiJ11gKVxuICBjb25zdCBtYXRjaCA9IHJlZ2V4LmV4ZWModGV4dClcblxuICBpZiAobWF0Y2ggJiYgbWF0Y2gubGVuZ3RoID49IDIpIHtcbiAgICBjb25zdCB3ZiA9IG5ldyBXRlMoe1xuICAgICAgZmVhdHVyZU5TOiBtYXRjaFsxXSxcbiAgICAgIGZlYXR1cmVUeXBlOiBzcGxpdHRlZE5hbWVzcGFjZVsxXSxcbiAgICAgIHZlcnNpb246IHZlcnNpb24sXG4gICAgfSlcblxuICAgIGxldCBmZWF0dXJlc1xuICAgIHRyeSB7XG4gICAgICBmZWF0dXJlcyA9IHdmLnJlYWRGZWF0dXJlcyh0ZXh0KVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IEVycm9yKFwiQ291bGRuJ3QgcGFyc2UgV0ZTIHdpdGggR01MIGZlYXR1cmVzXCIpXG4gICAgfVxuXG4gICAgY29uc3QgZ2VvanNvbkl0ZW0gPSBuZXcgR2VvSlNPTigpLndyaXRlRmVhdHVyZXNPYmplY3QoZmVhdHVyZXMpXG4gICAgcmV0dXJuIHByb2Nlc3NJdGVtUHJvcGVydGllcyhnZW9qc29uSXRlbS5mZWF0dXJlcywgdHJ1ZSlcbiAgfVxuICB0aHJvdyBFcnJvcihcIkNvdWxkbid0IHJldHJpZXZlIG5hbWVzcGFjZSB1cmxcIilcbn1cblxuZXhwb3J0IGNsYXNzIEdtbFJlYWRlciBleHRlbmRzIEJhc2VGaWxlUmVhZGVyIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHVybDogc3RyaW5nLFxuICAgIHByb3RlY3RlZCBuYW1lc3BhY2U6IHN0cmluZyxcbiAgICBwcm90ZWN0ZWQgdmVyc2lvbjogV2ZzVmVyc2lvbixcbiAgICBwcm90ZWN0ZWQgY2FjaGVBY3RpdmUgPSB0cnVlXG4gICkge1xuICAgIHN1cGVyKHVybClcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXREYXRhKCkge1xuICAgIHJldHVybiBmZXRjaERhdGFBc1RleHQodGhpcy51cmwsIHRoaXMuY2FjaGVBY3RpdmUpLnRoZW4oKHRleHQpID0+XG4gICAgICBwYXJzZUdtbCh0ZXh0LCB0aGlzLm5hbWVzcGFjZSwgdGhpcy52ZXJzaW9uKVxuICAgIClcbiAgfVxufVxuIl19
@@ -13,7 +13,7 @@ export function parseJson(text) {
13
13
  }
14
14
  export class JsonReader extends BaseFileReader {
15
15
  getData() {
16
- return fetchDataAsText(this.url).then(parseJson);
16
+ return fetchDataAsText(this.url, this.cacheActive).then(parseJson);
17
17
  }
18
18
  }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9kYXRhLWZldGNoZXIvc3JjL2xpYi9yZWFkZXJzL2pzb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLGVBQWUsRUFDZixvQkFBb0IsRUFDcEIscUJBQXFCLEdBQ3RCLE1BQU0sVUFBVSxDQUFBO0FBQ2pCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFNUM7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FBQyxJQUFZO0lBSXBDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFVLENBQUE7SUFDeEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUMzQixNQUFNLElBQUksS0FBSyxDQUFDLHVEQUF1RCxDQUFDLENBQUE7SUFDMUUsQ0FBQztJQUNELE9BQU8scUJBQXFCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUE7QUFDaEUsQ0FBQztBQUVELE1BQU0sT0FBTyxVQUFXLFNBQVEsY0FBYztJQUM1QyxPQUFPO1FBQ0wsT0FBTyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUNsRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhSXRlbSwgUHJvcGVydHlJbmZvIH0gZnJvbSAnLi4vbW9kZWwnXG5pbXBvcnQge1xuICBmZXRjaERhdGFBc1RleHQsXG4gIGpzb25Ub0dlb2pzb25GZWF0dXJlLFxuICBwcm9jZXNzSXRlbVByb3BlcnRpZXMsXG59IGZyb20gJy4uL3V0aWxzJ1xuaW1wb3J0IHsgQmFzZUZpbGVSZWFkZXIgfSBmcm9tICcuL2Jhc2UtZmlsZSdcblxuLyoqXG4gKiBUaGlzIHBhcnNlciBvbmx5IHN1cHBvcnRzIGFycmF5cyBvZiBzaW1wbGUgZmxhdCBvYmplY3RzIHdpdGggcHJvcGVydGllc1xuICogQHBhcmFtIHRleHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlSnNvbih0ZXh0OiBzdHJpbmcpOiB7XG4gIGl0ZW1zOiBEYXRhSXRlbVtdXG4gIHByb3BlcnRpZXM6IFByb3BlcnR5SW5mb1tdXG59IHtcbiAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZSh0ZXh0KSBhcyBhbnlbXVxuICBpZiAoIUFycmF5LmlzQXJyYXkocGFyc2VkKSkge1xuICAgIHRocm93IG5ldyBFcnJvcignQ291bGQgbm90IHBhcnNlIEpTT04sIGV4cGVjdGVkIGFuIGFycmF5IGF0IHJvb3QgbGV2ZWwnKVxuICB9XG4gIHJldHVybiBwcm9jZXNzSXRlbVByb3BlcnRpZXMocGFyc2VkLm1hcChqc29uVG9HZW9qc29uRmVhdHVyZSkpXG59XG5cbmV4cG9ydCBjbGFzcyBKc29uUmVhZGVyIGV4dGVuZHMgQmFzZUZpbGVSZWFkZXIge1xuICBnZXREYXRhKCkge1xuICAgIHJldHVybiBmZXRjaERhdGFBc1RleHQodGhpcy51cmwpLnRoZW4ocGFyc2VKc29uKVxuICB9XG59XG4iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9kYXRhLWZldGNoZXIvc3JjL2xpYi9yZWFkZXJzL2pzb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLGVBQWUsRUFDZixvQkFBb0IsRUFDcEIscUJBQXFCLEdBQ3RCLE1BQU0sVUFBVSxDQUFBO0FBQ2pCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFNUM7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FBQyxJQUFZO0lBSXBDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFVLENBQUE7SUFDeEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUMzQixNQUFNLElBQUksS0FBSyxDQUFDLHVEQUF1RCxDQUFDLENBQUE7SUFDMUUsQ0FBQztJQUNELE9BQU8scUJBQXFCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUE7QUFDaEUsQ0FBQztBQUVELE1BQU0sT0FBTyxVQUFXLFNBQVEsY0FBYztJQUM1QyxPQUFPO1FBQ0wsT0FBTyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQ3BFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFJdGVtLCBQcm9wZXJ0eUluZm8gfSBmcm9tICcuLi9tb2RlbCdcbmltcG9ydCB7XG4gIGZldGNoRGF0YUFzVGV4dCxcbiAganNvblRvR2VvanNvbkZlYXR1cmUsXG4gIHByb2Nlc3NJdGVtUHJvcGVydGllcyxcbn0gZnJvbSAnLi4vdXRpbHMnXG5pbXBvcnQgeyBCYXNlRmlsZVJlYWRlciB9IGZyb20gJy4vYmFzZS1maWxlJ1xuXG4vKipcbiAqIFRoaXMgcGFyc2VyIG9ubHkgc3VwcG9ydHMgYXJyYXlzIG9mIHNpbXBsZSBmbGF0IG9iamVjdHMgd2l0aCBwcm9wZXJ0aWVzXG4gKiBAcGFyYW0gdGV4dFxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VKc29uKHRleHQ6IHN0cmluZyk6IHtcbiAgaXRlbXM6IERhdGFJdGVtW11cbiAgcHJvcGVydGllczogUHJvcGVydHlJbmZvW11cbn0ge1xuICBjb25zdCBwYXJzZWQgPSBKU09OLnBhcnNlKHRleHQpIGFzIGFueVtdXG4gIGlmICghQXJyYXkuaXNBcnJheShwYXJzZWQpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdDb3VsZCBub3QgcGFyc2UgSlNPTiwgZXhwZWN0ZWQgYW4gYXJyYXkgYXQgcm9vdCBsZXZlbCcpXG4gIH1cbiAgcmV0dXJuIHByb2Nlc3NJdGVtUHJvcGVydGllcyhwYXJzZWQubWFwKGpzb25Ub0dlb2pzb25GZWF0dXJlKSlcbn1cblxuZXhwb3J0IGNsYXNzIEpzb25SZWFkZXIgZXh0ZW5kcyBCYXNlRmlsZVJlYWRlciB7XG4gIGdldERhdGEoKSB7XG4gICAgcmV0dXJuIGZldGNoRGF0YUFzVGV4dCh0aGlzLnVybCwgdGhpcy5jYWNoZUFjdGl2ZSkudGhlbihwYXJzZUpzb24pXG4gIH1cbn1cbiJdfQ==
@@ -1,17 +1,31 @@
1
1
  import { WfsEndpoint } from '@camptocamp/ogc-client';
2
2
  import { fetchDataAsText } from '../utils';
3
- import { BaseReader } from './base';
4
3
  import { GmlReader, parseGml } from './gml';
5
4
  import { GeojsonReader, parseGeojson } from './geojson';
6
- export class WfsReader extends BaseReader {
7
- constructor(url, wfsEndpoint, featureTypeName) {
8
- super(url);
5
+ import { BaseCacheReader } from './base-cache';
6
+ import { getJsonDataItemsProxy, jsonToGeojsonFeature } from '../utils';
7
+ import { generateSqlQuery } from '../sql-utils';
8
+ export class WfsReader extends BaseCacheReader {
9
+ constructor(url, wfsEndpoint, featureTypeName, cacheActive) {
10
+ super(url, cacheActive);
9
11
  this.endpoint = wfsEndpoint;
10
12
  this.featureTypeName = featureTypeName;
11
13
  this.version = this.endpoint.getVersion();
12
14
  }
13
15
  get properties() {
14
- return this.getData().then((result) => result.properties);
16
+ return this.endpoint
17
+ .getFeatureTypeFull(this.featureTypeName)
18
+ .then((featureType) => Object.keys(featureType.properties).map((prop) => {
19
+ const originalType = featureType.properties[prop];
20
+ const type = originalType === 'float' || originalType === 'integer'
21
+ ? 'number'
22
+ : originalType; // FIXME: ogc-client typing is incorrect, should be a string union
23
+ return {
24
+ name: prop,
25
+ label: prop,
26
+ type,
27
+ };
28
+ }));
15
29
  }
16
30
  get info() {
17
31
  return this.endpoint.getFeatureTypeFull(this.featureTypeName).then((result) => ({
@@ -48,13 +62,18 @@ export class WfsReader extends BaseReader {
48
62
  throw new Error('wfs.geojsongml.notsupported');
49
63
  }
50
64
  }
51
- getData() {
65
+ async getData(aggregation, groupedBy) {
66
+ if (aggregation || groupedBy) {
67
+ return { items: await this.getQueryData() };
68
+ }
52
69
  const asJson = this.endpoint.supportsJson(this.featureTypeName);
70
+ const attributes = this.selected ?? undefined;
53
71
  let url = this.endpoint.getFeatureUrl(this.featureTypeName, {
54
72
  ...(this.startIndex !== null && { startIndex: this.startIndex }),
55
73
  ...(this.count !== null && { maxFeatures: this.count }),
56
74
  asJson,
57
75
  outputCrs: 'EPSG:4326',
76
+ attributes,
58
77
  // sortBy: this.sort // TODO: no sort in ogc-client?
59
78
  });
60
79
  if (Array.isArray(this.sort) && this.sort.length > 0) {
@@ -65,15 +84,22 @@ export class WfsReader extends BaseReader {
65
84
  // Direct update on string url to prevent encoding of +A and +D
66
85
  url = `${url}${finalUrl.search ? '&' : ''}SORTBY=${sorts}`;
67
86
  }
68
- return fetchDataAsText(url).then((text) => asJson
87
+ return fetchDataAsText(url, this.cacheActive).then((text) => asJson
69
88
  ? parseGeojson(text)
70
89
  : parseGml(text, this.featureTypeName, this.version));
71
90
  }
91
+ async getQueryData() {
92
+ const items = (await this.getData()).items;
93
+ const jsonItems = getJsonDataItemsProxy(items);
94
+ const query = generateSqlQuery(this.selected, this.filter, this.sort, this.startIndex, this.count, this.groupedBy, this.aggregations);
95
+ const result = await import('alasql').then((module) => module.default(query, [jsonItems]));
96
+ return result.map(jsonToGeojsonFeature);
97
+ }
72
98
  load() {
73
99
  // Nothing to load for Wfs
74
100
  }
75
101
  async read() {
76
- return (await this.getData()).items;
102
+ return (await this.getData(this.aggregations, this.groupedBy)).items;
77
103
  }
78
104
  }
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ZzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2RhdGEtZmV0Y2hlci9zcmMvbGliL3JlYWRlcnMvd2ZzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQWMsTUFBTSx3QkFBd0IsQ0FBQTtBQUVoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUE7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFFdkQsTUFBTSxPQUFPLFNBQVUsU0FBUSxVQUFVO0lBS3ZDLFlBQVksR0FBVyxFQUFFLFdBQXdCLEVBQUUsZUFBdUI7UUFDeEUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ1YsSUFBSSxDQUFDLFFBQVEsR0FBRyxXQUFXLENBQUE7UUFDM0IsSUFBSSxDQUFDLGVBQWUsR0FBRyxlQUFlLENBQUE7UUFDdEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFBO0lBQzNDLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtJQUMzRCxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxJQUFJLENBQ2hFLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDVCxDQUFDO1lBQ0MsVUFBVSxFQUFFLE1BQU0sQ0FBQyxXQUFXO1NBQy9C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LElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDckQsTUFBTSxRQUFRLEdBQUcsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7WUFDN0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUk7aUJBQ3BCLEdBQUcsQ0FDRixDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FDdkU7aUJBQ0EsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1lBQ1osK0RBQStEO1lBQy9ELEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxLQUFLLEVBQUUsQ0FBQTtRQUM1RCxDQUFDO1FBRUQsT0FBTyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDeEMsTUFBTTtZQUNKLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO1lBQ3BCLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUN2RCxDQUFBO0lBQ0gsQ0FBQztJQUVELElBQUk7UUFDRiwwQkFBMEI7SUFDNUIsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFJO1FBQ1IsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFBO0lBQ3JDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdmc0VuZHBvaW50LCBXZnNWZXJzaW9uIH0gZnJvbSAnQGNhbXB0b2NhbXAvb2djLWNsaWVudCdcbmltcG9ydCB7IERhdGFJdGVtLCBEYXRhc2V0SW5mbywgUHJvcGVydHlJbmZvIH0gZnJvbSAnLi4vbW9kZWwnXG5pbXBvcnQgeyBmZXRjaERhdGFBc1RleHQgfSBmcm9tICcuLi91dGlscydcbmltcG9ydCB7IEJhc2VSZWFkZXIgfSBmcm9tICcuL2Jhc2UnXG5pbXBvcnQgeyBHbWxSZWFkZXIsIHBhcnNlR21sIH0gZnJvbSAnLi9nbWwnXG5pbXBvcnQgeyBHZW9qc29uUmVhZGVyLCBwYXJzZUdlb2pzb24gfSBmcm9tICcuL2dlb2pzb24nXG5cbmV4cG9ydCBjbGFzcyBXZnNSZWFkZXIgZXh0ZW5kcyBCYXNlUmVhZGVyIHtcbiAgZW5kcG9pbnQ6IFdmc0VuZHBvaW50XG4gIGZlYXR1cmVUeXBlTmFtZTogc3RyaW5nXG4gIHZlcnNpb246IFdmc1ZlcnNpb25cblxuICBjb25zdHJ1Y3Rvcih1cmw6IHN0cmluZywgd2ZzRW5kcG9pbnQ6IFdmc0VuZHBvaW50LCBmZWF0dXJlVHlwZU5hbWU6IHN0cmluZykge1xuICAgIHN1cGVyKHVybClcbiAgICB0aGlzLmVuZHBvaW50ID0gd2ZzRW5kcG9pbnRcbiAgICB0aGlzLmZlYXR1cmVUeXBlTmFtZSA9IGZlYXR1cmVUeXBlTmFtZVxuICAgIHRoaXMudmVyc2lvbiA9IHRoaXMuZW5kcG9pbnQuZ2V0VmVyc2lvbigpXG4gIH1cblxuICBnZXQgcHJvcGVydGllcygpOiBQcm9taXNlPFByb3BlcnR5SW5mb1tdPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0RGF0YSgpLnRoZW4oKHJlc3VsdCkgPT4gcmVzdWx0LnByb3BlcnRpZXMpXG4gIH1cblxuICBnZXQgaW5mbygpOiBQcm9taXNlPERhdGFzZXRJbmZvPiB7XG4gICAgcmV0dXJuIHRoaXMuZW5kcG9pbnQuZ2V0RmVhdHVyZVR5cGVGdWxsKHRoaXMuZmVhdHVyZVR5cGVOYW1lKS50aGVuKFxuICAgICAgKHJlc3VsdCkgPT5cbiAgICAgICAgKHtcbiAgICAgICAgICBpdGVtc0NvdW50OiByZXN1bHQub2JqZWN0Q291bnQsXG4gICAgICAgIH0pIGFzIERhdGFzZXRJbmZvXG4gICAgKVxuICB9XG5cbiAgc3RhdGljIGFzeW5jIGNyZWF0ZVJlYWRlcih3ZnNVcmxFbmRwb2ludDogc3RyaW5nLCBmZWF0dXJlVHlwZU5hbWU/OiBzdHJpbmcpIHtcbiAgICBjb25zdCB3ZnNFbmRwb2ludCA9IGF3YWl0IG5ldyBXZnNFbmRwb2ludCh3ZnNVcmxFbmRwb2ludCkuaXNSZWFkeSgpXG4gICAgY29uc3QgZmVhdHVyZVR5cGVzID0gd2ZzRW5kcG9pbnQuZ2V0RmVhdHVyZVR5cGVzKClcbiAgICBjb25zdCBmZWF0dXJlVHlwZSA9IHdmc0VuZHBvaW50LmdldEZlYXR1cmVUeXBlU3VtbWFyeShcbiAgICAgIGZlYXR1cmVUeXBlcy5sZW5ndGggPT09IDEgJiYgIWZlYXR1cmVUeXBlTmFtZVxuICAgICAgICA/IGZlYXR1cmVUeXBlc1swXS5uYW1lXG4gICAgICAgIDogZmVhdHVyZVR5cGVOYW1lXG4gICAgKVxuICAgIGlmICghZmVhdHVyZVR5cGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignd2ZzLmZlYXR1cmV0eXBlLm5vdGZvdW5kJylcbiAgICB9XG5cbiAgICBpZiAod2ZzRW5kcG9pbnQuc3VwcG9ydHNTdGFydEluZGV4KCkpIHtcbiAgICAgIHJldHVybiBuZXcgV2ZzUmVhZGVyKHdmc1VybEVuZHBvaW50LCB3ZnNFbmRwb2ludCwgZmVhdHVyZVR5cGUubmFtZSlcbiAgICB9IGVsc2UgaWYgKHdmc0VuZHBvaW50LnN1cHBvcnRzSnNvbihmZWF0dXJlVHlwZS5uYW1lKSkge1xuICAgICAgcmV0dXJuIG5ldyBHZW9qc29uUmVhZGVyKFxuICAgICAgICB3ZnNFbmRwb2ludC5nZXRGZWF0dXJlVXJsKGZlYXR1cmVUeXBlLm5hbWUsIHtcbiAgICAgICAgICBhc0pzb246IHRydWUsXG4gICAgICAgICAgb3V0cHV0Q3JzOiAnRVBTRzo0MzI2JyxcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKFxuICAgICAgICBmZWF0dXJlVHlwZS5vdXRwdXRGb3JtYXRzLmZpbmQoKGYpID0+XG4gICAgICAgICAgZi50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCdnbWwnKVxuICAgICAgICApICYmXG4gICAgICAgIChmZWF0dXJlVHlwZS5kZWZhdWx0Q3JzID09PSAnRVBTRzo0MzI2JyB8fFxuICAgICAgICAgIGZlYXR1cmVUeXBlLm90aGVyQ3JzPy5pbmNsdWRlcygnRVBTRzo0MzI2JykpXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIG5ldyBHbWxSZWFkZXIoXG4gICAgICAgICAgd2ZzRW5kcG9pbnQuZ2V0RmVhdHVyZVVybChmZWF0dXJlVHlwZS5uYW1lLCB7XG4gICAgICAgICAgICBvdXRwdXRGb3JtYXQ6IGZlYXR1cmVUeXBlLm91dHB1dEZvcm1hdHMuZmluZCgoZikgPT5cbiAgICAgICAgICAgICAgZi50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCdnbWwnKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIG91dHB1dENyczogJ0VQU0c6NDMyNicsXG4gICAgICAgICAgfSksXG4gICAgICAgICAgZmVhdHVyZVR5cGUubmFtZSxcbiAgICAgICAgICB3ZnNFbmRwb2ludC5nZXRWZXJzaW9uKClcbiAgICAgICAgKVxuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCd3ZnMuZ2VvanNvbmdtbC5ub3RzdXBwb3J0ZWQnKVxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBnZXREYXRhKCkge1xuICAgIGNvbnN0IGFzSnNvbiA9IHRoaXMuZW5kcG9pbnQuc3VwcG9ydHNKc29uKHRoaXMuZmVhdHVyZVR5cGVOYW1lKVxuICAgIGxldCB1cmwgPSB0aGlzLmVuZHBvaW50LmdldEZlYXR1cmVVcmwodGhpcy5mZWF0dXJlVHlwZU5hbWUsIHtcbiAgICAgIC4uLih0aGlzLnN0YXJ0SW5kZXggIT09IG51bGwgJiYgeyBzdGFydEluZGV4OiB0aGlzLnN0YXJ0SW5kZXggfSksXG4gICAgICAuLi4odGhpcy5jb3VudCAhPT0gbnVsbCAmJiB7IG1heEZlYXR1cmVzOiB0aGlzLmNvdW50IH0pLFxuICAgICAgYXNKc29uLFxuICAgICAgb3V0cHV0Q3JzOiAnRVBTRzo0MzI2JyxcbiAgICAgIC8vIHNvcnRCeTogdGhpcy5zb3J0IC8vIFRPRE86IG5vIHNvcnQgaW4gb2djLWNsaWVudD9cbiAgICB9KVxuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5zb3J0KSAmJiB0aGlzLnNvcnQubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgZmluYWxVcmwgPSBuZXcgVVJMKHVybClcbiAgICAgIGNvbnN0IHNvcnRzID0gdGhpcy5zb3J0XG4gICAgICAgIC5tYXAoXG4gICAgICAgICAgKGZpZWxkU29ydCkgPT4gYCR7ZmllbGRTb3J0WzFdfSske2ZpZWxkU29ydFswXSA9PT0gJ2FzYycgPyAnQScgOiAnRCd9YFxuICAgICAgICApXG4gICAgICAgIC5qb2luKCcsJylcbiAgICAgIC8vIERpcmVjdCB1cGRhdGUgb24gc3RyaW5nIHVybCB0byBwcmV2ZW50IGVuY29kaW5nIG9mICtBIGFuZCArRFxuICAgICAgdXJsID0gYCR7dXJsfSR7ZmluYWxVcmwuc2VhcmNoID8gJyYnIDogJyd9U09SVEJZPSR7c29ydHN9YFxuICAgIH1cblxuICAgIHJldHVybiBmZXRjaERhdGFBc1RleHQodXJsKS50aGVuKCh0ZXh0KSA9PlxuICAgICAgYXNKc29uXG4gICAgICAgID8gcGFyc2VHZW9qc29uKHRleHQpXG4gICAgICAgIDogcGFyc2VHbWwodGV4dCwgdGhpcy5mZWF0dXJlVHlwZU5hbWUsIHRoaXMudmVyc2lvbilcbiAgICApXG4gIH1cblxuICBsb2FkKCkge1xuICAgIC8vIE5vdGhpbmcgdG8gbG9hZCBmb3IgV2ZzXG4gIH1cblxuICBhc3luYyByZWFkKCk6IFByb21pc2U8RGF0YUl0ZW1bXT4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXREYXRhKCkpLml0ZW1zXG4gIH1cbn1cbiJdfQ==
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ZzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2RhdGEtZmV0Y2hlci9zcmMvbGliL3JlYWRlcnMvd2ZzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQWMsTUFBTSx3QkFBd0IsQ0FBQTtBQUVoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sT0FBTyxDQUFBO0FBQzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDOUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUUvQyxNQUFNLE9BQU8sU0FBVSxTQUFRLGVBQWU7SUFLNUMsWUFDRSxHQUFXLEVBQ1gsV0FBd0IsRUFDeEIsZUFBdUIsRUFDdkIsV0FBcUI7UUFFckIsS0FBSyxDQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsQ0FBQTtRQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLFdBQVcsQ0FBQTtRQUMzQixJQUFJLENBQUMsZUFBZSxHQUFHLGVBQWUsQ0FBQTtRQUN0QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDM0MsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLFFBQVE7YUFDakIsa0JBQWtCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQzthQUN4QyxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUNwQixNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENB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QyxDQUFBO1FBQ0QsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLENBQUE7SUFDekMsQ0FBQztJQUVELElBQUk7UUFDRiwwQkFBMEI7SUFDNUIsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFJO1FBQ1IsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQTtJQUN0RSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBXZnNFbmRwb2ludCwgV2ZzVmVyc2lvbiB9IGZyb20gJ0BjYW1wdG9jYW1wL29nYy1jbGllbnQnXG5pbXBvcnQgeyBEYXRhSXRlbSwgRGF0YXNldEluZm8sIFByb3BlcnR5SW5mbyB9IGZyb20gJy4uL21vZGVsJ1xuaW1wb3J0IHsgZmV0Y2hEYXRhQXNUZXh0IH0gZnJvbSAnLi4vdXRpbHMnXG5pbXBvcnQgeyBHbWxSZWFkZXIsIHBhcnNlR21sIH0gZnJvbSAnLi9nbWwnXG5pbXBvcnQgeyBHZW9qc29uUmVhZGVyLCBwYXJzZUdlb2pzb24gfSBmcm9tICcuL2dlb2pzb24nXG5pbXBvcnQgeyBCYXNlQ2FjaGVSZWFkZXIgfSBmcm9tICcuL2Jhc2UtY2FjaGUnXG5pbXBvcnQgeyBnZXRKc29uRGF0YUl0ZW1zUHJveHksIGpzb25Ub0dlb2pzb25GZWF0dXJlIH0gZnJvbSAnLi4vdXRpbHMnXG5pbXBvcnQgeyBnZW5lcmF0ZVNxbFF1ZXJ5IH0gZnJvbSAnLi4vc3FsLXV0aWxzJ1xuXG5leHBvcnQgY2xhc3MgV2ZzUmVhZGVyIGV4dGVuZHMgQmFzZUNhY2hlUmVhZGVyIHtcbiAgZW5kcG9pbnQ6IFdmc0VuZHBvaW50XG4gIGZlYXR1cmVUeXBlTmFtZTogc3RyaW5nXG4gIHZlcnNpb246IFdmc1ZlcnNpb25cblxuICBjb25zdHJ1Y3RvcihcbiAgICB1cmw6IHN0cmluZyxcbiAgICB3ZnNFbmRwb2ludDogV2ZzRW5kcG9pbnQsXG4gICAgZmVhdHVyZVR5cGVOYW1lOiBzdHJpbmcsXG4gICAgY2FjaGVBY3RpdmU/OiBib29sZWFuXG4gICkge1xuICAgIHN1cGVyKHVybCwgY2FjaGVBY3RpdmUpXG4gICAgdGhpcy5lbmRwb2ludCA9IHdmc0VuZHBvaW50XG4gICAgdGhpcy5mZWF0dXJlVHlwZU5hbWUgPSBmZWF0dXJlVHlwZU5hbWVcbiAgICB0aGlzLnZlcnNpb24gPSB0aGlzLmVuZHBvaW50LmdldFZlcnNpb24oKVxuICB9XG5cbiAgZ2V0IHByb3BlcnRpZXMoKTogUHJvbWlzZTxQcm9wZXJ0eUluZm9bXT4ge1xuICAgIHJldHVybiB0aGlzLmVuZHBvaW50XG4gICAgICAuZ2V0RmVhdHVyZVR5cGVGdWxsKHRoaXMuZmVhdHVyZVR5cGVOYW1lKVxuICAgICAgLnRoZW4oKGZlYXR1cmVUeXBlKSA9PlxuICAgICAgICBPYmplY3Qua2V5cyhmZWF0dXJlVHlwZS5wcm9wZXJ0aWVzKS5tYXAoKHByb3ApID0+IHtcbiAgICAgICAgICBjb25zdCBvcmlnaW5hbFR5cGUgPSBmZWF0dXJlVHlwZS5wcm9wZXJ0aWVzW3Byb3BdXG4gICAgICAgICAgY29uc3QgdHlwZSA9XG4gICAgICAgICAgICBvcmlnaW5hbFR5cGUgPT09ICdmbG9hdCcgfHwgb3JpZ2luYWxUeXBlID09PSAnaW50ZWdlcidcbiAgICAgICAgICAgICAgPyAnbnVtYmVyJ1xuICAgICAgICAgICAgICA6IChvcmlnaW5hbFR5cGUgYXMgUHJvcGVydHlJbmZvWyd0eXBlJ10pIC8vIEZJWE1FOiBvZ2MtY2xpZW50IHR5cGluZyBpcyBpbmNvcnJlY3QsIHNob3VsZCBiZSBhIHN0cmluZyB1bmlvblxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuYW1lOiBwcm9wLFxuICAgICAgICAgICAgbGFiZWw6IHByb3AsXG4gICAgICAgICAgICB0eXBlLFxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIClcbiAgfVxuXG4gIGdldCBpbmZvKCk6IFByb21pc2U8RGF0YXNldEluZm8+IHtcbiAgICByZXR1cm4gdGhpcy5lbmRwb2ludC5nZXRGZWF0dXJlVHlwZUZ1bGwodGhpcy5mZWF0dXJlVHlwZU5hbWUpLnRoZW4oXG4gICAgICAocmVzdWx0KSA9PlxuICAgICAgICAoe1xuICAgICAgICAgIGl0ZW1zQ291bnQ6IHJlc3VsdC5vYmplY3RDb3VudCxcbiAgICAgICAgfSkgYXMgRGF0YXNldEluZm9cbiAgICApXG4gIH1cblxuICBzdGF0aWMgYXN5bmMgY3JlYXRlUmVhZGVyKHdmc1VybEVuZHBvaW50OiBzdHJpbmcsIGZlYXR1cmVUeXBlTmFtZT86IHN0cmluZykge1xuICAgIGNvbnN0IHdmc0VuZHBvaW50ID0gYXdhaXQgbmV3IFdmc0VuZHBvaW50KHdmc1VybEVuZHBvaW50KS5pc1JlYWR5KClcbiAgICBjb25zdCBmZWF0dXJlVHlwZXMgPSB3ZnNFbmRwb2ludC5nZXRGZWF0dXJlVHlwZXMoKVxuICAgIGNvbnN0IGZlYXR1cmVUeXBlID0gd2ZzRW5kcG9pbnQuZ2V0RmVhdHVyZVR5cGVTdW1tYXJ5KFxuICAgICAgZmVhdHVyZVR5cGVzLmxlbmd0aCA9PT0gMSAmJiAhZmVhdHVyZVR5cGVOYW1lXG4gICAgICAgID8gZmVhdHVyZVR5cGVzWzBdLm5hbWVcbiAgICAgICAgOiBmZWF0dXJlVHlwZU5hbWVcbiAgICApXG4gICAgaWYgKCFmZWF0dXJlVHlwZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCd3ZnMuZmVhdHVyZXR5cGUubm90Zm91bmQnKVxuICAgIH1cblxuICAgIGlmICh3ZnNFbmRwb2ludC5zdXBwb3J0c1N0YXJ0SW5kZXgoKSkge1xuICAgICAgcmV0dXJuIG5ldyBXZnNSZWFkZXIod2ZzVXJsRW5kcG9pbnQsIHdmc0VuZHBvaW50LCBmZWF0dXJlVHlwZS5uYW1lKVxuICAgIH0gZWxzZSBpZiAod2ZzRW5kcG9pbnQuc3VwcG9ydHNKc29uKGZlYXR1cmVUeXBlLm5hbWUpKSB7XG4gICAgICByZXR1cm4gbmV3IEdlb2pzb25SZWFkZXIoXG4gICAgICAgIHdmc0VuZHBvaW50LmdldEZlYXR1cmVVcmwoZmVhdHVyZVR5cGUubmFtZSwge1xuICAgICAgICAgIGFzSnNvbjogdHJ1ZSxcbiAgICAgICAgICBvdXRwdXRDcnM6ICdFUFNHOjQzMjYnLFxuICAgICAgICB9KVxuICAgICAgKVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoXG4gICAgICAgIGZlYXR1cmVUeXBlLm91dHB1dEZvcm1hdHMuZmluZCgoZikgPT5cbiAgICAgICAgICBmLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ2dtbCcpXG4gICAgICAgICkgJiZcbiAgICAgICAgKGZlYXR1cmVUeXBlLmRlZmF1bHRDcnMgPT09ICdFUFNHOjQzMjYnIHx8XG4gICAgICAgICAgZmVhdHVyZVR5cGUub3RoZXJDcnM/LmluY2x1ZGVzKCdFUFNHOjQzMjYnKSlcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gbmV3IEdtbFJlYWRlcihcbiAgICAgICAgICB3ZnNFbmRwb2ludC5nZXRGZWF0dXJlVXJsKGZlYXR1cmVUeXBlLm5hbWUsIHtcbiAgICAgICAgICAgIG91dHB1dEZvcm1hdDogZmVhdHVyZVR5cGUub3V0cHV0Rm9ybWF0cy5maW5kKChmKSA9PlxuICAgICAgICAgICAgICBmLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ2dtbCcpXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgb3V0cHV0Q3JzOiAnRVBTRzo0MzI2JyxcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmZWF0dXJlVHlwZS5uYW1lLFxuICAgICAgICAgIHdmc0VuZHBvaW50LmdldFZlcnNpb24oKVxuICAgICAgICApXG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3dmcy5nZW9qc29uZ21sLm5vdHN1cHBvcnRlZCcpXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldERhdGEoYWdncmVnYXRpb24/LCBncm91cGVkQnk/KSB7XG4gICAgaWYgKGFnZ3JlZ2F0aW9uIHx8IGdyb3VwZWRCeSkge1xuICAgICAgcmV0dXJuIHsgaXRlbXM6IGF3YWl0IHRoaXMuZ2V0UXVlcnlEYXRhKCkgfVxuICAgIH1cbiAgICBjb25zdCBhc0pzb24gPSB0aGlzLmVuZHBvaW50LnN1cHBvcnRzSnNvbih0aGlzLmZlYXR1cmVUeXBlTmFtZSlcbiAgICBjb25zdCBhdHRyaWJ1dGVzID0gdGhpcy5zZWxlY3RlZCA/PyB1bmRlZmluZWRcbiAgICBsZXQgdXJsID0gdGhpcy5lbmRwb2ludC5nZXRGZWF0dXJlVXJsKHRoaXMuZmVhdHVyZVR5cGVOYW1lLCB7XG4gICAgICAuLi4odGhpcy5zdGFydEluZGV4ICE9PSBudWxsICYmIHsgc3RhcnRJbmRleDogdGhpcy5zdGFydEluZGV4IH0pLFxuICAgICAgLi4uKHRoaXMuY291bnQgIT09IG51bGwgJiYgeyBtYXhGZWF0dXJlczogdGhpcy5jb3VudCB9KSxcbiAgICAgIGFzSnNvbixcbiAgICAgIG91dHB1dENyczogJ0VQU0c6NDMyNicsXG4gICAgICBhdHRyaWJ1dGVzLFxuICAgICAgLy8gc29ydEJ5OiB0aGlzLnNvcnQgLy8gVE9ETzogbm8gc29ydCBpbiBvZ2MtY2xpZW50P1xuICAgIH0pXG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLnNvcnQpICYmIHRoaXMuc29ydC5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCBmaW5hbFVybCA9IG5ldyBVUkwodXJsKVxuICAgICAgY29uc3Qgc29ydHMgPSB0aGlzLnNvcnRcbiAgICAgICAgLm1hcChcbiAgICAgICAgICAoZmllbGRTb3J0KSA9PiBgJHtmaWVsZFNvcnRbMV19KyR7ZmllbGRTb3J0WzBdID09PSAnYXNjJyA/ICdBJyA6ICdEJ31gXG4gICAgICAgIClcbiAgICAgICAgLmpvaW4oJywnKVxuICAgICAgLy8gRGlyZWN0IHVwZGF0ZSBvbiBzdHJpbmcgdXJsIHRvIHByZXZlbnQgZW5jb2Rpbmcgb2YgK0EgYW5kICtEXG4gICAgICB1cmwgPSBgJHt1cmx9JHtmaW5hbFVybC5zZWFyY2ggPyAnJicgOiAnJ31TT1JUQlk9JHtzb3J0c31gXG4gICAgfVxuXG4gICAgcmV0dXJuIGZldGNoRGF0YUFzVGV4dCh1cmwsIHRoaXMuY2FjaGVBY3RpdmUpLnRoZW4oKHRleHQpID0+XG4gICAgICBhc0pzb25cbiAgICAgICAgPyBwYXJzZUdlb2pzb24odGV4dClcbiAgICAgICAgOiBwYXJzZUdtbCh0ZXh0LCB0aGlzLmZlYXR1cmVUeXBlTmFtZSwgdGhpcy52ZXJzaW9uKVxuICAgIClcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRRdWVyeURhdGEoKSB7XG4gICAgY29uc3QgaXRlbXMgPSAoYXdhaXQgdGhpcy5nZXREYXRhKCkpLml0ZW1zXG4gICAgY29uc3QganNvbkl0ZW1zID0gZ2V0SnNvbkRhdGFJdGVtc1Byb3h5KGl0ZW1zKVxuICAgIGNvbnN0IHF1ZXJ5ID0gZ2VuZXJhdGVTcWxRdWVyeShcbiAgICAgIHRoaXMuc2VsZWN0ZWQsXG4gICAgICB0aGlzLmZpbHRlcixcbiAgICAgIHRoaXMuc29ydCxcbiAgICAgIHRoaXMuc3RhcnRJbmRleCxcbiAgICAgIHRoaXMuY291bnQsXG4gICAgICB0aGlzLmdyb3VwZWRCeSxcbiAgICAgIHRoaXMuYWdncmVnYXRpb25zXG4gICAgKVxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGltcG9ydCgnYWxhc3FsJykudGhlbigobW9kdWxlKSA9PlxuICAgICAgbW9kdWxlLmRlZmF1bHQocXVlcnksIFtqc29uSXRlbXNdKVxuICAgIClcbiAgICByZXR1cm4gcmVzdWx0Lm1hcChqc29uVG9HZW9qc29uRmVhdHVyZSlcbiAgfVxuXG4gIGxvYWQoKSB7XG4gICAgLy8gTm90aGluZyB0byBsb2FkIGZvciBXZnNcbiAgfVxuXG4gIGFzeW5jIHJlYWQoKTogUHJvbWlzZTxEYXRhSXRlbVtdPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmdldERhdGEodGhpcy5hZ2dyZWdhdGlvbnMsIHRoaXMuZ3JvdXBlZEJ5KSkuaXRlbXNcbiAgfVxufVxuIl19
@@ -36,30 +36,32 @@ export function fetchHeaders(url) {
36
36
  return parseHeaders(response.headers);
37
37
  });
38
38
  }
39
- export function fetchDataAsText(url) {
40
- return useCache(() => sharedFetch(url)
39
+ export function fetchDataAsText(url, cacheActive) {
40
+ const fetchFactory = () => sharedFetch(url)
41
41
  .catch((error) => {
42
42
  throw FetchError.corsOrNetwork(error.message);
43
43
  })
44
44
  .then(async (response) => {
45
45
  if (!response.ok) {
46
- throw FetchError.http(response.status);
46
+ throw FetchError.http(response.status, await response.text());
47
47
  }
48
48
  return response.text();
49
- }), url, 'asText');
49
+ });
50
+ return cacheActive ? useCache(fetchFactory, url, 'asText') : fetchFactory();
50
51
  }
51
- export function fetchDataAsArrayBuffer(url) {
52
- return useCache(() => sharedFetch(url)
52
+ export function fetchDataAsArrayBuffer(url, cacheActive) {
53
+ const fetchFactory = () => sharedFetch(url)
53
54
  .catch((error) => {
54
55
  throw FetchError.corsOrNetwork(error.message);
55
56
  })
56
57
  .then(async (response) => {
57
58
  if (!response.ok) {
58
- throw FetchError.http(response.status);
59
+ throw FetchError.http(response.status, await response.text());
59
60
  }
60
61
  // convert to a numeric array so that we can store the response in cache
61
62
  return Array.from(new Uint8Array(await response.arrayBuffer()));
62
- }), url, 'asArrayBuffer').then((array) => {
63
+ });
64
+ return (cacheActive ? useCache(fetchFactory, url, 'asArrayBuffer') : fetchFactory()).then((array) => {
63
65
  return new Uint8Array(array).buffer;
64
66
  });
65
67
  }
@@ -204,4 +206,4 @@ export function getJsonDataItemsProxy(items) {
204
206
  },
205
207
  });
206
208
  }
207
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYy9saWIvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFVBQVUsRUFHVixjQUFjLEdBQ2YsTUFBTSxTQUFTLENBQUE7QUFDaEIsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxLQUFLLElBQUksU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDbkQsT0FBTyxFQUFFLFFBQVEsSUFBSSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUU1RCxNQUFNLENBQUMsS0FBSyxVQUFVLGdCQUFnQixDQUNwQyxHQUFXLEVBQ1gsUUFBd0I7SUFFeEIsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLEdBQUcsQ0FDbEMsR0FBRyxFQUNILE9BQU8sTUFBTSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUN2RSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDM0IsTUFBTSxhQUFhLEdBQ2pCLG9CQUFvQixJQUFJLG9CQUFvQixDQUFDLE1BQU07UUFDakQsQ0FBQyxDQUFFLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBb0I7UUFDMUQsQ0FBQyxDQUFDLElBQUksQ0FBQTtJQUVWLGVBQWU7SUFDZixJQUFJLFFBQVE7UUFBRSxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUE7SUFFOUMseUJBQXlCO0lBQ3pCLE1BQU0sT0FBTyxHQUFHLE1BQU0sWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ3ZD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LFVBQVUsQ0FBQTtZQUM3QixDQUFDO1lBQ0QsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDbEIsQ0FBQztRQUNELEdBQUc7WUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixDQUFDLENBQUE7UUFDN0MsQ0FBQztLQUNGLENBQUMsQ0FBQTtBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEYXRhSXRlbSxcbiAgRGF0YXNldEhlYWRlcnMsXG4gIEZldGNoRXJyb3IsXG4gIFByb3BlcnR5SW5mbyxcbiAgU3VwcG9ydGVkVHlwZSxcbiAgU3VwcG9ydGVkVHlwZXMsXG59IGZyb20gJy4vbW9kZWwnXG5pbXBvcnQgeyBzaGFyZWRGZXRjaCwgdXNlQ2FjaGUgfSBmcm9tICdAY2FtcHRvY2FtcC9vZ2MtY2xpZW50J1xuaW1wb3J0IHsgcGFyc2VIZWFkZXJzIH0gZnJvbSAnLi9oZWFkZXJzJ1xuaW1wb3J0IHsgcGFyc2UgYXMgcGFyc2VEYXRlIH0gZnJvbSAnZGF0ZS1mbnMvcGFyc2UnXG5pbXBvcnQgeyBwYXJzZUlTTyBhcyBwYXJzZUlzb0RhdGUgfSBmcm9tICdkYXRlLWZucy9wYXJzZUlTTydcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGluZmVyRGF0YXNldFR5cGUoXG4gIHVybDogc3RyaW5nLFxuICB0eXBlSGludD86IFN1cHBvcnRlZFR5cGVcbik6IFByb21pc2U8U3VwcG9ydGVkVHlwZT4ge1xuICBjb25zdCBmaWxlRXh0ZW5zaW9uTWF0Y2hlcyA9IG5ldyBVUkwoXG4gICAgdXJsLFxuICAgIHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnID8gd2luZG93LmxvY2F0aW9uLnRvU3RyaW5nKCkgOiB1bmRlZmluZWRcbiAgKS5wYXRobmFtZS5tYXRjaCgvXFwuKC4rKSQvKVxuICBjb25zdCBmaWxlRXh0ZW5zaW9uID1cbiAgICBmaWxlRXh0ZW5zaW9uTWF0Y2hlcyAmJiBmaWxlRXh0ZW5zaW9uTWF0Y2hlcy5sZW5ndGhcbiAgICAgID8gKGZpbGVFeHRlbnNpb25NYXRjaGVzWzFdLnRvTG93ZXJDYXNlKCkgYXMgU3VwcG9ydGVkVHlwZSlcbiAgICAgIDogbnVsbFxuXG4gIC8vIDEuIHR5cGUgaGludFxuICBpZiAodHlwZUhpbnQpIHJldHVybiBQcm9taXNlLnJlc29sdmUodHlwZUhpbnQpXG5cbiAgLy8gMi4gY29udGVudC10eXBlIGhlYWRlclxuICBjb25zdCBoZWFkZXJzID0gYXdhaXQgZmV0Y2hIZWFkZXJzKHVybClcbiAgaWYgKCdzdXBwb3J0ZWRUeXBlJyBpbiBoZWFkZXJzKSByZXR1cm4gaGVhZGVycy5zdXBwb3J0ZWRUeXBlXG4gIC8vIDMuIGZpbGUgZXh0ZW5zaW9uIGZyb20gdXJsXG4gIGVsc2UgaWYgKFN1cHBvcnRlZFR5cGVzLmluZGV4T2YoZmlsZUV4dGVuc2lvbikgPiAtMSkgcmV0dXJuIGZpbGVFeHRlbnNpb25cblxuICAvLyBubyB0eXBlIGluZmVycmVkIG9yIGhpbnRlZFxuICBpZiAoJ21pbWVUeXBlJyBpbiBoZWFkZXJzKSB0aHJvdyBGZXRjaEVycm9yLnVuc3VwcG9ydGVkVHlwZShoZWFkZXJzLm1pbWVUeXBlKVxuICBlbHNlIHRocm93IEZldGNoRXJyb3IudW5rbm93blR5cGUoKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZmV0Y2hIZWFkZXJzKHVybDogc3RyaW5nKTogUHJvbWlzZTxEYXRhc2V0SGVhZGVycz4ge1xuICByZXR1cm4gc2hhcmVkRmV0Y2godXJsLCAnSEVBRCcpXG4gICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgdGhyb3cgRmV0Y2hFcnJvci5jb3JzT3JOZXR3b3JrKGVycm9yLm1lc3NhZ2UpXG4gICAgfSlcbiAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgdGhyb3cgRmV0Y2hFcnJvci5odHRwKHJlc3BvbnNlLnN0YXR1cylcbiAgICAgIH1cbiAgICAgIHJldHVybiBwYXJzZUhlYWRlcnMocmVzcG9uc2UuaGVhZGVycylcbiAgICB9KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZmV0Y2hEYXRhQXNUZXh0KHVybDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgcmV0dXJuIHVzZUNhY2hlKFxuICAgICgpID0+XG4gICAgICBzaGFyZWRGZXRjaCh1cmwpXG4gICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICB0aHJvdyBGZXRjaEVycm9yLmNvcnNPck5ldHdvcmsoZXJyb3IubWVzc2FnZSlcbiAgICAgICAgfSlcbiAgICAgICAgLnRoZW4oYXN5bmMgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgICAgICAgICAgdGhyb3cgRmV0Y2hFcnJvci5odHRwKHJlc3BvbnNlLnN0YXR1cylcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLnRleHQoKVxuICAgICAgICB9KSxcbiAgICB1cmwsXG4gICAgJ2FzVGV4dCdcbiAgKVxufVxuZXhwb3J0IGZ1bmN0aW9uIGZldGNoRGF0YUFzQXJyYXlCdWZmZXIodXJsOiBzdHJpbmcpOiBQcm9taXNlPEFycmF5QnVmZmVyPiB7XG4gIHJldHVybiB1c2VDYWNoZShcbiAgICAoKSA9PlxuICAgICAgc2hhcmVkRmV0Y2godXJsKVxuICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgdGhyb3cgRmV0Y2hFcnJvci5jb3JzT3JOZXR3b3JrKGVycm9yLm1lc3NhZ2UpXG4gICAgICAgIH0pXG4gICAgICAgIC50aGVuKGFzeW5jIChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgICAgIHRocm93IEZldGNoRXJyb3IuaHR0cChyZXNwb25zZS5zdGF0dXMpXG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIGNvbnZlcnQgdG8gYSBudW1lcmljIGFycmF5IHNvIHRoYXQgd2UgY2FuIHN0b3JlIHRoZSByZXNwb25zZSBpbiBjYWNoZVxuICAgICAgICAgIHJldHVybiBBcnJheS5mcm9tKG5ldyBVaW50OEFycmF5KGF3YWl0IHJlc3BvbnNlLmFycmF5QnVmZmVyKCkpKVxuICAgICAgICB9KSxcbiAgICB1cmwsXG4gICAgJ2FzQXJyYXlCdWZmZXInXG4gICkudGhlbigoYXJyYXkpID0+IHtcbiAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYXJyYXkpLmJ1ZmZlclxuICB9KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJ5UGFyc2VEYXRlKGlucHV0OiB1bmtub3duKTogRGF0ZSB8IG51bGwge1xuICBpZiAodHlwZW9mIGlucHV0ICE9PSAnc3RyaW5nJykgcmV0dXJuIG51bGxcblxuICBmdW5jdGlvbiB0cnlJc28odmFsdWU6IHN0cmluZykge1xuICAgIGNvbnN0IHBhcnNlZCA9IHBhcnNlSXNvRGF0ZSh2YWx1ZSlcbiAgICByZXR1cm4gaXNOYU4ocGFyc2VkLmdldERhdGUoKSkgPyBudWxsIDogcGFyc2VkXG4gIH1cbiAgZnVuY3Rpb24gdHJ5Rm9ybWF0KHZhbHVlOiBzdHJpbmcsIGZvcm1hdDogc3RyaW5nKSB7XG4gICAgY29uc3QgcGFyc2VkID0gcGFyc2VEYXRlKHZhbHVlLCBmb3JtYXQsIG5ldyBEYXRlKCkpXG4gICAgcmV0dXJuIGlzTmFOKHBhcnNlZC5nZXREYXRlKCkpID8gbnVsbCA6IHBhcnNlZFxuICB9XG4gIHJldHVybiAoXG4gICAgdHJ5SXNvKGlucHV0KSB8fFxuICAgIHRyeUZvcm1hdChpbnB1dCwgJ2RkL01NL3l5eXknKSB8fFxuICAgIHRyeUZvcm1hdChpbnB1dCwgJ2RkLk1NLnl5eXknKSB8fFxuICAgIHRyeUZvcm1hdChpbnB1dCwgJ01NL2RkL3l5eXknKSB8fFxuICAgIG51bGxcbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJ5UGFyc2VOdW1iZXIoaW5wdXQ6IHN0cmluZyk6IG51bWJlciB8IG51bGwge1xuICBpZiAoaXNOYU4oaW5wdXQgYXMgYW55KSkgcmV0dXJuIG51bGxcbiAgY29uc3QgcGFyc2VkID0gcGFyc2VGbG9hdChpbnB1dClcbiAgcmV0dXJuIGlzTmFOKHBhcnNlZCkgPyBudWxsIDogcGFyc2VkXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBqc29uVG9HZW9qc29uRmVhdHVyZShvYmplY3Q6IHsgW2tleTogc3RyaW5nXTogYW55IH0pOiBEYXRhSXRlbSB7XG4gIGNvbnN0IHsgaWQsIHByb3BlcnRpZXMgfSA9IE9iamVjdC5rZXlzKG9iamVjdClcbiAgICAubWFwKChwcm9wZXJ0eSkgPT4gKHByb3BlcnR5ID8gcHJvcGVydHkgOiAndW5rbm93bicpKSAvL3ByZXZlbnQgZW1wdHkgc3RyaW5nc1xuICAgIC5yZWR1Y2UoXG4gICAgICAocHJldiwgY3VycikgPT5cbiAgICAgICAgY3Vyci50b0xvd2VyQ2FzZSgpLmVuZHNXaXRoKCdpZCcpXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIC4uLnByZXYsXG4gICAgICAgICAgICAgIGlkOiBvYmplY3RbY3Vycl0sXG4gICAgICAgICAgICB9XG4gICAgICAgICAgOiB7XG4gICAgICAgICAgICAgIC4uLnByZXYsXG4gICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsgLi4ucHJldi5wcm9wZXJ0aWVzLCBbY3Vycl06IG9iamVjdFtjdXJyXSB9LFxuICAgICAgICAgICAgfSxcbiAgICAgIHsgaWQ6IHVuZGVmaW5lZCwgcHJvcGVydGllczoge30gfVxuICAgIClcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiAnRmVhdHVyZScsXG4gICAgZ2VvbWV0cnk6IG51bGwsXG4gICAgcHJvcGVydGllcyxcbiAgICAuLi4oaWQgIT09IHVuZGVmaW5lZCAmJiB7IGlkIH0pLFxuICB9XG59XG5cbmZ1bmN0aW9uIG11dGF0ZVByb3BlcnRpZXMoXG4gIGl0ZW1zOiBEYXRhSXRlbVtdLFxuICBtdXRhdG9yczogeyBbZmllbGROYW1lOiBzdHJpbmddOiAodmFsdWU6IHVua25vd24pID0+IHVua25vd24gfVxuKTogRGF0YUl0ZW1bXSB7XG4gIGNvbnN0IG11dGF0b3JLZXlzID0gT2JqZWN0LmtleXMobXV0YXRvcnMpXG4gIGZvciAobGV0IGkgPSAwLCBpaSA9IGl0ZW1zLmxlbmd0aDsgaSA8IGlpOyBpKyspIHtcbiAgICBjb25zdCBpdGVtID0gaXRlbXNbaV1cbiAgICBmb3IgKGNvbnN0IG11dGF0b3JGaWVsZCBvZiBtdXRhdG9yS2V5cykge1xuICAgICAgaWYgKCEobXV0YXRvckZpZWxkIGluIGl0ZW0ucHJvcGVydGllcykpIGNvbnRpbnVlXG4gICAgICBpdGVtLnByb3BlcnRpZXNbbXV0YXRvckZpZWxkXSA9IG11dGF0b3JzW211dGF0b3JGaWVsZF0oXG4gICAgICAgIGl0ZW0ucHJvcGVydGllc1ttdXRhdG9yRmllbGRdXG4gICAgICApXG4gICAgfVxuICB9XG4gIHJldHVybiBpdGVtc1xufVxuXG5jb25zdCBTQU1QTEVfU0laRSA9IDIwXG5cbi8qKlxuICogVGhpcyB3aWxsIGluZmVyIGZpZWxkIHR5cGVzIGZyb20gYSBsaXN0IG9mIGRhdGEgaXRlbXMgYW5kIGNhc3QgdGhlIHZhbHVlcyBhY2NvcmRpbmdseVxuICogQHBhcmFtIGl0ZW1zXG4gKiBAcGFyYW0gaW5mZXJUeXBlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvY2Vzc0l0ZW1Qcm9wZXJ0aWVzKFxuICBpdGVtczogRGF0YUl0ZW1bXSxcbiAgaW5mZXJUeXBlcyA9IGZhbHNlXG4pOiB7XG4gIGl0ZW1zOiBEYXRhSXRlbVtdXG4gIHByb3BlcnRpZXM6IFByb3BlcnR5SW5mb1tdXG59IHtcbiAgY29uc3QgZm91bmRGaWVsZHM6IHsgW25hbWU6IHN0cmluZ106IFByb3BlcnR5SW5mbyB9ID0ge31cbiAgZm9yIChsZXQgaSA9IDAsIGlpID0gTWF0aC5taW4oU0FNUExFX1NJWkUsIGl0ZW1zLmxlbmd0aCk7IGkgPCBpaTsgaSsrKSB7XG4gICAgY29uc3QgaXRlbSA9IGl0ZW1zW2ldXG4gICAgY29uc3QgZmllbGRzID0gT2JqZWN0LmtleXMoaXRlbS5wcm9wZXJ0aWVzKVxuICAgIGZvciAoY29uc3QgZmllbGQgb2YgZmllbGRzKSB7XG4gICAgICBpZiAoIShmaWVsZCBpbiBmb3VuZEZpZWxkcykpIHtcbiAgICAgICAgZm91bmRGaWVsZHNbZmllbGRdID0ge1xuICAgICAgICAgIGxhYmVsOiBmaWVsZCxcbiAgICAgICAgICBuYW1lOiBmaWVsZCxcbiAgICAgICAgICB0eXBlOiBudWxsLFxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjb25zdCB2YWx1ZSA9IGl0ZW0ucHJvcGVydGllc1tmaWVsZF1cbiAgICAgIGNvbnN0IGluZm8gPSBmb3VuZEZpZWxkc1tmaWVsZF1cbiAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSAnJyB8fCB2YWx1ZSA9PT0gbnVsbCkgY29udGludWVcblxuICAgICAgaWYgKCFpbmZlclR5cGVzKSB7XG4gICAgICAgIGlmIChpbmZvLnR5cGUgPT09IG51bGwgJiYgdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgICAgICAgIGluZm8udHlwZSA9ICdudW1iZXInXG4gICAgICAgIH0gZWxzZSBpZiAoaW5mby50eXBlID09PSAnbnVtYmVyJyAmJiB0eXBlb2YgdmFsdWUgIT09ICdudW1iZXInKSB7XG4gICAgICAgICAgaW5mby50eXBlID0gJ3N0cmluZydcbiAgICAgICAgfVxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuXG4gICAgICBjb25zdCBwYXJzZWROdW1iZXIgPSB0cnlQYXJzZU51bWJlcih2YWx1ZSlcbiAgICAgIGlmIChpbmZvLnR5cGUgPT09IG51bGwgJiYgcGFyc2VkTnVtYmVyICE9PSBudWxsKSB7XG4gICAgICAgIGluZm8udHlwZSA9ICdudW1iZXInXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9IGVsc2UgaWYgKGluZm8udHlwZSA9PT0gJ251bWJlcicgJiYgcGFyc2VkTnVtYmVyID09PSBudWxsKSB7XG4gICAgICAgIGluZm8udHlwZSA9ICdzdHJpbmcnXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG4gICAgICBjb25zdCBwYXJzZWREYXRlID0gdHJ5UGFyc2VEYXRlKHZhbHVlKVxuICAgICAgaWYgKGluZm8udHlwZSA9PT0gbnVsbCAmJiBwYXJzZWREYXRlICE9PSBudWxsKSB7XG4gICAgICAgIGluZm8udHlwZSA9ICdkYXRlJ1xuICAgICAgfSBlbHNlIGlmIChpbmZvLnR5cGUgPT09ICdkYXRlJyAmJiBwYXJzZWREYXRlID09PSBudWxsKSB7XG4gICAgICAgIGluZm8udHlwZSA9ICdzdHJpbmcnXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29uc3QgcHJvcGVydGllczogUHJvcGVydHlJbmZvW10gPSBbXVxuICBjb25zdCBtdXRhdG9ycyA9IHt9XG4gIGZvciAoY29uc3QgZmllbGQgaW4gZm91bmRGaWVsZHMpIHtcbiAgICBjb25zdCBpbmZvID0gZm91bmRGaWVsZHNbZmllbGRdXG4gICAgaWYgKGluZm8udHlwZSA9PT0gJ251bWJlcicpIHtcbiAgICAgIG11dGF0b3JzW2ZpZWxkXSA9IHRyeVBhcnNlTnVtYmVyXG4gICAgfSBlbHNlIGlmIChpbmZvLnR5cGUgPT09ICdkYXRlJykge1xuICAgICAgbXV0YXRvcnNbZmllbGRdID0gdHJ5UGFyc2VEYXRlXG4gICAgfVxuICAgIHByb3BlcnRpZXMucHVzaCh7IC4uLmluZm8sIHR5cGU6IGluZm8udHlwZSB8fCAnc3RyaW5nJyB9KVxuICB9XG4gIGlmIChpbmZlclR5cGVzKSB7XG4gICAgbXV0YXRlUHJvcGVydGllcyhpdGVtcywgbXV0YXRvcnMpXG4gIH1cbiAgcmV0dXJuIHsgaXRlbXMsIHByb3BlcnRpZXMgfVxufVxuXG4vKipcbiAqIFRoaXMgY3JlYXRlcyBhIFByb3h5IHRoYXQgYWxsb3dzIHJlYWRpbmcgYW5kIHdyaXRpbmcgdG8gdGhlIGRhdGEgaXRlbSBwcm9wZXJ0aWVzXG4gKiBhcyBpZiBpdCB3YXMgYSBzaW1wbGUgYXJyYXkgb2YgSlNPTiBvYmplY3RzXG4gKiBAcGFyYW0gaXRlbXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEpzb25EYXRhSXRlbXNQcm94eShcbiAgaXRlbXM6IERhdGFJdGVtW11cbik6IFJlY29yZDxzdHJpbmcsIHVua25vd24+W10ge1xuICByZXR1cm4gbmV3IFByb3h5PFJlY29yZDxzdHJpbmcsIHVua25vd24+W10+KGl0ZW1zIGFzIGFueSwge1xuICAgIGdldCh0YXJnZXQ6IFJlY29yZDxzdHJpbmcsIHVua25vd24+W10sIHA6IHN0cmluZyB8IHN5bWJvbCkge1xuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2YgcCA9PT0gJ3N0cmluZycgJiZcbiAgICAgICAgIU51bWJlci5pc05hTihwYXJzZUludChwKSkgJiZcbiAgICAgICAgdGFyZ2V0W3BdPy5wcm9wZXJ0aWVzXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIHRhcmdldFtwXS5wcm9wZXJ0aWVzXG4gICAgICB9XG4gICAgICByZXR1cm4gdGFyZ2V0W3BdXG4gICAgfSxcbiAgICBzZXQoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoaXMgb2JqZWN0IGlzIHJlYWQtb25seScpXG4gICAgfSxcbiAgfSlcbn1cbiJdfQ==
209
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYy9saWIvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFVBQVUsRUFHVixjQUFjLEdBQ2YsTUFBTSxTQUFTLENBQUE7QUFDaEIsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxLQUFLLElBQUksU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDbkQsT0FBTyxFQUFFLFFBQVEsSUFBSSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUU1RCxNQUFNLENBQUMsS0FBSyxVQUFVLGdCQUFnQixDQUNwQyxHQUFXLEVBQ1gsUUFBd0I7SUFFeEIsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLEdBQUcsQ0FDbEMsR0FBRyxFQUNILE9BQU8sTUFBTSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUN2RSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDM0IsTUFBTSxhQUFhLEdBQ2pCLG9CQUFvQixJQUFJLG9CQUFvQixDQUFDLE1BQU07UUFDakQsQ0FBQyxDQUFFLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBb0I7UUFDMUQsQ0FBQyxDQUFDLElBQUksQ0FBQTtJQUVWLGVBQWU7SUFDZixJQUFJLFFBQVE7UUFBRSxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUE7SUFFOUMseUJBQXlCO0lBQ3pCLE1BQU0sT0FBTyxHQUFHLE1BQU0sWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ3ZD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S0FBaUI7SUFFakIsT0FBTyxJQUFJLEtBQUssQ0FBNEIsS0FBWSxFQUFFO1FBQ3hELEdBQUcsQ0FBQyxNQUFpQyxFQUFFLENBQWtCO1lBQ3ZELElBQ0UsT0FBTyxDQUFDLEtBQUssUUFBUTtnQkFDckIsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDMUIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsRUFDckIsQ0FBQztnQkFDRCxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUE7WUFDN0IsQ0FBQztZQUNELE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ2xCLENBQUM7UUFDRCxHQUFHO1lBQ0QsTUFBTSxJQUFJLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO1FBQzdDLENBQUM7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGF0YUl0ZW0sXG4gIERhdGFzZXRIZWFkZXJzLFxuICBGZXRjaEVycm9yLFxuICBQcm9wZXJ0eUluZm8sXG4gIFN1cHBvcnRlZFR5cGUsXG4gIFN1cHBvcnRlZFR5cGVzLFxufSBmcm9tICcuL21vZGVsJ1xuaW1wb3J0IHsgc2hhcmVkRmV0Y2gsIHVzZUNhY2hlIH0gZnJvbSAnQGNhbXB0b2NhbXAvb2djLWNsaWVudCdcbmltcG9ydCB7IHBhcnNlSGVhZGVycyB9IGZyb20gJy4vaGVhZGVycydcbmltcG9ydCB7IHBhcnNlIGFzIHBhcnNlRGF0ZSB9IGZyb20gJ2RhdGUtZm5zL3BhcnNlJ1xuaW1wb3J0IHsgcGFyc2VJU08gYXMgcGFyc2VJc29EYXRlIH0gZnJvbSAnZGF0ZS1mbnMvcGFyc2VJU08nXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpbmZlckRhdGFzZXRUeXBlKFxuICB1cmw6IHN0cmluZyxcbiAgdHlwZUhpbnQ/OiBTdXBwb3J0ZWRUeXBlXG4pOiBQcm9taXNlPFN1cHBvcnRlZFR5cGU+IHtcbiAgY29uc3QgZmlsZUV4dGVuc2lvbk1hdGNoZXMgPSBuZXcgVVJMKFxuICAgIHVybCxcbiAgICB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyA/IHdpbmRvdy5sb2NhdGlvbi50b1N0cmluZygpIDogdW5kZWZpbmVkXG4gICkucGF0aG5hbWUubWF0Y2goL1xcLiguKykkLylcbiAgY29uc3QgZmlsZUV4dGVuc2lvbiA9XG4gICAgZmlsZUV4dGVuc2lvbk1hdGNoZXMgJiYgZmlsZUV4dGVuc2lvbk1hdGNoZXMubGVuZ3RoXG4gICAgICA/IChmaWxlRXh0ZW5zaW9uTWF0Y2hlc1sxXS50b0xvd2VyQ2FzZSgpIGFzIFN1cHBvcnRlZFR5cGUpXG4gICAgICA6IG51bGxcblxuICAvLyAxLiB0eXBlIGhpbnRcbiAgaWYgKHR5cGVIaW50KSByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHR5cGVIaW50KVxuXG4gIC8vIDIuIGNvbnRlbnQtdHlwZSBoZWFkZXJcbiAgY29uc3QgaGVhZGVycyA9IGF3YWl0IGZldGNoSGVhZGVycyh1cmwpXG4gIGlmICgnc3VwcG9ydGVkVHlwZScgaW4gaGVhZGVycykgcmV0dXJuIGhlYWRlcnMuc3VwcG9ydGVkVHlwZVxuICAvLyAzLiBmaWxlIGV4dGVuc2lvbiBmcm9tIHVybFxuICBlbHNlIGlmIChTdXBwb3J0ZWRUeXBlcy5pbmRleE9mKGZpbGVFeHRlbnNpb24pID4gLTEpIHJldHVybiBmaWxlRXh0ZW5zaW9uXG5cbiAgLy8gbm8gdHlwZSBpbmZlcnJlZCBvciBoaW50ZWRcbiAgaWYgKCdtaW1lVHlwZScgaW4gaGVhZGVycykgdGhyb3cgRmV0Y2hFcnJvci51bnN1cHBvcnRlZFR5cGUoaGVhZGVycy5taW1lVHlwZSlcbiAgZWxzZSB0aHJvdyBGZXRjaEVycm9yLnVua25vd25UeXBlKClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZldGNoSGVhZGVycyh1cmw6IHN0cmluZyk6IFByb21pc2U8RGF0YXNldEhlYWRlcnM+IHtcbiAgcmV0dXJuIHNoYXJlZEZldGNoKHVybCwgJ0hFQUQnKVxuICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgIHRocm93IEZldGNoRXJyb3IuY29yc09yTmV0d29yayhlcnJvci5tZXNzYWdlKVxuICAgIH0pXG4gICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgIHRocm93IEZldGNoRXJyb3IuaHR0cChyZXNwb25zZS5zdGF0dXMpXG4gICAgICB9XG4gICAgICByZXR1cm4gcGFyc2VIZWFkZXJzKHJlc3BvbnNlLmhlYWRlcnMpXG4gICAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZldGNoRGF0YUFzVGV4dChcbiAgdXJsOiBzdHJpbmcsXG4gIGNhY2hlQWN0aXZlOiBib29sZWFuXG4pOiBQcm9taXNlPHN0cmluZz4ge1xuICBjb25zdCBmZXRjaEZhY3RvcnkgPSAoKSA9PlxuICAgIHNoYXJlZEZldGNoKHVybClcbiAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgdGhyb3cgRmV0Y2hFcnJvci5jb3JzT3JOZXR3b3JrKGVycm9yLm1lc3NhZ2UpXG4gICAgICB9KVxuICAgICAgLnRoZW4oYXN5bmMgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgICB0aHJvdyBGZXRjaEVycm9yLmh0dHAocmVzcG9uc2Uuc3RhdHVzLCBhd2FpdCByZXNwb25zZS50ZXh0KCkpXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLnRleHQoKVxuICAgICAgfSlcblxuICByZXR1cm4gY2FjaGVBY3RpdmUgPyB1c2VDYWNoZShmZXRjaEZhY3RvcnksIHVybCwgJ2FzVGV4dCcpIDogZmV0Y2hGYWN0b3J5KClcbn1cbmV4cG9ydCBmdW5jdGlvbiBmZXRjaERhdGFBc0FycmF5QnVmZmVyKFxuICB1cmw6IHN0cmluZyxcbiAgY2FjaGVBY3RpdmU6IGJvb2xlYW5cbik6IFByb21pc2U8QXJyYXlCdWZmZXI+IHtcbiAgY29uc3QgZmV0Y2hGYWN0b3J5ID0gKCkgPT5cbiAgICBzaGFyZWRGZXRjaCh1cmwpXG4gICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgIHRocm93IEZldGNoRXJyb3IuY29yc09yTmV0d29yayhlcnJvci5tZXNzYWdlKVxuICAgICAgfSlcbiAgICAgIC50aGVuKGFzeW5jIChyZXNwb25zZSkgPT4ge1xuICAgICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgICAgdGhyb3cgRmV0Y2hFcnJvci5odHRwKHJlc3BvbnNlLnN0YXR1cywgYXdhaXQgcmVzcG9uc2UudGV4dCgpKVxuICAgICAgICB9XG4gICAgICAgIC8vIGNvbnZlcnQgdG8gYSBudW1lcmljIGFycmF5IHNvIHRoYXQgd2UgY2FuIHN0b3JlIHRoZSByZXNwb25zZSBpbiBjYWNoZVxuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShuZXcgVWludDhBcnJheShhd2FpdCByZXNwb25zZS5hcnJheUJ1ZmZlcigpKSlcbiAgICAgIH0pXG5cbiAgcmV0dXJuIChcbiAgICBjYWNoZUFjdGl2ZSA/IHVzZUNhY2hlKGZldGNoRmFjdG9yeSwgdXJsLCAnYXNBcnJheUJ1ZmZlcicpIDogZmV0Y2hGYWN0b3J5KClcbiAgKS50aGVuKChhcnJheSkgPT4ge1xuICAgIHJldHVybiBuZXcgVWludDhBcnJheShhcnJheSkuYnVmZmVyXG4gIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cnlQYXJzZURhdGUoaW5wdXQ6IHVua25vd24pOiBEYXRlIHwgbnVsbCB7XG4gIGlmICh0eXBlb2YgaW5wdXQgIT09ICdzdHJpbmcnKSByZXR1cm4gbnVsbFxuXG4gIGZ1bmN0aW9uIHRyeUlzbyh2YWx1ZTogc3RyaW5nKSB7XG4gICAgY29uc3QgcGFyc2VkID0gcGFyc2VJc29EYXRlKHZhbHVlKVxuICAgIHJldHVybiBpc05hTihwYXJzZWQuZ2V0RGF0ZSgpKSA/IG51bGwgOiBwYXJzZWRcbiAgfVxuICBmdW5jdGlvbiB0cnlGb3JtYXQodmFsdWU6IHN0cmluZywgZm9ybWF0OiBzdHJpbmcpIHtcbiAgICBjb25zdCBwYXJzZWQgPSBwYXJzZURhdGUodmFsdWUsIGZvcm1hdCwgbmV3IERhdGUoKSlcbiAgICByZXR1cm4gaXNOYU4ocGFyc2VkLmdldERhdGUoKSkgPyBudWxsIDogcGFyc2VkXG4gIH1cbiAgcmV0dXJuIChcbiAgICB0cnlJc28oaW5wdXQpIHx8XG4gICAgdHJ5Rm9ybWF0KGlucHV0LCAnZGQvTU0veXl5eScpIHx8XG4gICAgdHJ5Rm9ybWF0KGlucHV0LCAnZGQuTU0ueXl5eScpIHx8XG4gICAgdHJ5Rm9ybWF0KGlucHV0LCAnTU0vZGQveXl5eScpIHx8XG4gICAgbnVsbFxuICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cnlQYXJzZU51bWJlcihpbnB1dDogc3RyaW5nKTogbnVtYmVyIHwgbnVsbCB7XG4gIGlmIChpc05hTihpbnB1dCBhcyBhbnkpKSByZXR1cm4gbnVsbFxuICBjb25zdCBwYXJzZWQgPSBwYXJzZUZsb2F0KGlucHV0KVxuICByZXR1cm4gaXNOYU4ocGFyc2VkKSA/IG51bGwgOiBwYXJzZWRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGpzb25Ub0dlb2pzb25GZWF0dXJlKG9iamVjdDogeyBba2V5OiBzdHJpbmddOiBhbnkgfSk6IERhdGFJdGVtIHtcbiAgY29uc3QgeyBpZCwgcHJvcGVydGllcyB9ID0gT2JqZWN0LmtleXMob2JqZWN0KVxuICAgIC5tYXAoKHByb3BlcnR5KSA9PiAocHJvcGVydHkgPyBwcm9wZXJ0eSA6ICd1bmtub3duJykpIC8vcHJldmVudCBlbXB0eSBzdHJpbmdzXG4gICAgLnJlZHVjZShcbiAgICAgIChwcmV2LCBjdXJyKSA9PlxuICAgICAgICBjdXJyLnRvTG93ZXJDYXNlKCkuZW5kc1dpdGgoJ2lkJylcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgLi4ucHJldixcbiAgICAgICAgICAgICAgaWQ6IG9iamVjdFtjdXJyXSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgLi4ucHJldixcbiAgICAgICAgICAgICAgcHJvcGVydGllczogeyAuLi5wcmV2LnByb3BlcnRpZXMsIFtjdXJyXTogb2JqZWN0W2N1cnJdIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgeyBpZDogdW5kZWZpbmVkLCBwcm9wZXJ0aWVzOiB7fSB9XG4gICAgKVxuICByZXR1cm4ge1xuICAgIHR5cGU6ICdGZWF0dXJlJyxcbiAgICBnZW9tZXRyeTogbnVsbCxcbiAgICBwcm9wZXJ0aWVzLFxuICAgIC4uLihpZCAhPT0gdW5kZWZpbmVkICYmIHsgaWQgfSksXG4gIH1cbn1cblxuZnVuY3Rpb24gbXV0YXRlUHJvcGVydGllcyhcbiAgaXRlbXM6IERhdGFJdGVtW10sXG4gIG11dGF0b3JzOiB7IFtmaWVsZE5hbWU6IHN0cmluZ106ICh2YWx1ZTogdW5rbm93bikgPT4gdW5rbm93biB9XG4pOiBEYXRhSXRlbVtdIHtcbiAgY29uc3QgbXV0YXRvcktleXMgPSBPYmplY3Qua2V5cyhtdXRhdG9ycylcbiAgZm9yIChsZXQgaSA9IDAsIGlpID0gaXRlbXMubGVuZ3RoOyBpIDwgaWk7IGkrKykge1xuICAgIGNvbnN0IGl0ZW0gPSBpdGVtc1tpXVxuICAgIGZvciAoY29uc3QgbXV0YXRvckZpZWxkIG9mIG11dGF0b3JLZXlzKSB7XG4gICAgICBpZiAoIShtdXRhdG9yRmllbGQgaW4gaXRlbS5wcm9wZXJ0aWVzKSkgY29udGludWVcbiAgICAgIGl0ZW0ucHJvcGVydGllc1ttdXRhdG9yRmllbGRdID0gbXV0YXRvcnNbbXV0YXRvckZpZWxkXShcbiAgICAgICAgaXRlbS5wcm9wZXJ0aWVzW211dGF0b3JGaWVsZF1cbiAgICAgIClcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGl0ZW1zXG59XG5cbmNvbnN0IFNBTVBMRV9TSVpFID0gMjBcblxuLyoqXG4gKiBUaGlzIHdpbGwgaW5mZXIgZmllbGQgdHlwZXMgZnJvbSBhIGxpc3Qgb2YgZGF0YSBpdGVtcyBhbmQgY2FzdCB0aGUgdmFsdWVzIGFjY29yZGluZ2x5XG4gKiBAcGFyYW0gaXRlbXNcbiAqIEBwYXJhbSBpbmZlclR5cGVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcm9jZXNzSXRlbVByb3BlcnRpZXMoXG4gIGl0ZW1zOiBEYXRhSXRlbVtdLFxuICBpbmZlclR5cGVzID0gZmFsc2Vcbik6IHtcbiAgaXRlbXM6IERhdGFJdGVtW11cbiAgcHJvcGVydGllczogUHJvcGVydHlJbmZvW11cbn0ge1xuICBjb25zdCBmb3VuZEZpZWxkczogeyBbbmFtZTogc3RyaW5nXTogUHJvcGVydHlJbmZvIH0gPSB7fVxuICBmb3IgKGxldCBpID0gMCwgaWkgPSBNYXRoLm1pbihTQU1QTEVfU0laRSwgaXRlbXMubGVuZ3RoKTsgaSA8IGlpOyBpKyspIHtcbiAgICBjb25zdCBpdGVtID0gaXRlbXNbaV1cbiAgICBjb25zdCBmaWVsZHMgPSBPYmplY3Qua2V5cyhpdGVtLnByb3BlcnRpZXMpXG4gICAgZm9yIChjb25zdCBmaWVsZCBvZiBmaWVsZHMpIHtcbiAgICAgIGlmICghKGZpZWxkIGluIGZvdW5kRmllbGRzKSkge1xuICAgICAgICBmb3VuZEZpZWxkc1tmaWVsZF0gPSB7XG4gICAgICAgICAgbGFiZWw6IGZpZWxkLFxuICAgICAgICAgIG5hbWU6IGZpZWxkLFxuICAgICAgICAgIHR5cGU6IG51bGwsXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNvbnN0IHZhbHVlID0gaXRlbS5wcm9wZXJ0aWVzW2ZpZWxkXVxuICAgICAgY29uc3QgaW5mbyA9IGZvdW5kRmllbGRzW2ZpZWxkXVxuICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09ICcnIHx8IHZhbHVlID09PSBudWxsKSBjb250aW51ZVxuXG4gICAgICBpZiAoIWluZmVyVHlwZXMpIHtcbiAgICAgICAgaWYgKGluZm8udHlwZSA9PT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgaW5mby50eXBlID0gJ251bWJlcidcbiAgICAgICAgfSBlbHNlIGlmIChpbmZvLnR5cGUgPT09ICdudW1iZXInICYmIHR5cGVvZiB2YWx1ZSAhPT0gJ251bWJlcicpIHtcbiAgICAgICAgICBpbmZvLnR5cGUgPSAnc3RyaW5nJ1xuICAgICAgICB9XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHBhcnNlZE51bWJlciA9IHRyeVBhcnNlTnVtYmVyKHZhbHVlKVxuICAgICAgaWYgKGluZm8udHlwZSA9PT0gbnVsbCAmJiBwYXJzZWROdW1iZXIgIT09IG51bGwpIHtcbiAgICAgICAgaW5mby50eXBlID0gJ251bWJlcidcbiAgICAgICAgY29udGludWVcbiAgICAgIH0gZWxzZSBpZiAoaW5mby50eXBlID09PSAnbnVtYmVyJyAmJiBwYXJzZWROdW1iZXIgPT09IG51bGwpIHtcbiAgICAgICAgaW5mby50eXBlID0gJ3N0cmluZydcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGNvbnN0IHBhcnNlZERhdGUgPSB0cnlQYXJzZURhdGUodmFsdWUpXG4gICAgICBpZiAoaW5mby50eXBlID09PSBudWxsICYmIHBhcnNlZERhdGUgIT09IG51bGwpIHtcbiAgICAgICAgaW5mby50eXBlID0gJ2RhdGUnXG4gICAgICB9IGVsc2UgaWYgKGluZm8udHlwZSA9PT0gJ2RhdGUnICYmIHBhcnNlZERhdGUgPT09IG51bGwpIHtcbiAgICAgICAgaW5mby50eXBlID0gJ3N0cmluZydcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjb25zdCBwcm9wZXJ0aWVzOiBQcm9wZXJ0eUluZm9bXSA9IFtdXG4gIGNvbnN0IG11dGF0b3JzID0ge31cbiAgZm9yIChjb25zdCBmaWVsZCBpbiBmb3VuZEZpZWxkcykge1xuICAgIGNvbnN0IGluZm8gPSBmb3VuZEZpZWxkc1tmaWVsZF1cbiAgICBpZiAoaW5mby50eXBlID09PSAnbnVtYmVyJykge1xuICAgICAgbXV0YXRvcnNbZmllbGRdID0gdHJ5UGFyc2VOdW1iZXJcbiAgICB9IGVsc2UgaWYgKGluZm8udHlwZSA9PT0gJ2RhdGUnKSB7XG4gICAgICBtdXRhdG9yc1tmaWVsZF0gPSB0cnlQYXJzZURhdGVcbiAgICB9XG4gICAgcHJvcGVydGllcy5wdXNoKHsgLi4uaW5mbywgdHlwZTogaW5mby50eXBlIHx8ICdzdHJpbmcnIH0pXG4gIH1cbiAgaWYgKGluZmVyVHlwZXMpIHtcbiAgICBtdXRhdGVQcm9wZXJ0aWVzKGl0ZW1zLCBtdXRhdG9ycylcbiAgfVxuICByZXR1cm4geyBpdGVtcywgcHJvcGVydGllcyB9XG59XG5cbi8qKlxuICogVGhpcyBjcmVhdGVzIGEgUHJveHkgdGhhdCBhbGxvd3MgcmVhZGluZyBhbmQgd3JpdGluZyB0byB0aGUgZGF0YSBpdGVtIHByb3BlcnRpZXNcbiAqIGFzIGlmIGl0IHdhcyBhIHNpbXBsZSBhcnJheSBvZiBKU09OIG9iamVjdHNcbiAqIEBwYXJhbSBpdGVtc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0SnNvbkRhdGFJdGVtc1Byb3h5KFxuICBpdGVtczogRGF0YUl0ZW1bXVxuKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj5bXSB7XG4gIHJldHVybiBuZXcgUHJveHk8UmVjb3JkPHN0cmluZywgdW5rbm93bj5bXT4oaXRlbXMgYXMgYW55LCB7XG4gICAgZ2V0KHRhcmdldDogUmVjb3JkPHN0cmluZywgdW5rbm93bj5bXSwgcDogc3RyaW5nIHwgc3ltYm9sKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHR5cGVvZiBwID09PSAnc3RyaW5nJyAmJlxuICAgICAgICAhTnVtYmVyLmlzTmFOKHBhcnNlSW50KHApKSAmJlxuICAgICAgICB0YXJnZXRbcF0/LnByb3BlcnRpZXNcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gdGFyZ2V0W3BdLnByb3BlcnRpZXNcbiAgICAgIH1cbiAgICAgIHJldHVybiB0YXJnZXRbcF1cbiAgICB9LFxuICAgIHNldCgpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhpcyBvYmplY3QgaXMgcmVhZC1vbmx5JylcbiAgICB9LFxuICB9KVxufVxuIl19
@@ -0,0 +1,41 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { TranslateService } from '@ngx-translate/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@ngx-translate/core";
5
+ export class DateService {
6
+ constructor(translateService) {
7
+ this.translateService = translateService;
8
+ }
9
+ getDateObject(date) {
10
+ if (typeof date === 'string') {
11
+ const dateObj = new Date(date);
12
+ if (isNaN(dateObj.getTime())) {
13
+ throw new Error('Invalid date string');
14
+ }
15
+ return dateObj;
16
+ }
17
+ return date;
18
+ }
19
+ getLocaleAndDate(date) {
20
+ const locale = this.translateService.currentLang || 'en-US';
21
+ const dateObj = this.getDateObject(date);
22
+ return { locale, dateObj };
23
+ }
24
+ formatDate(date, options) {
25
+ const { locale, dateObj } = this.getLocaleAndDate(date);
26
+ return dateObj.toLocaleDateString(locale, options);
27
+ }
28
+ formatDateTime(date, options) {
29
+ const { locale, dateObj } = this.getLocaleAndDate(date);
30
+ return dateObj.toLocaleString(locale, options);
31
+ }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateService, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
33
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateService, providedIn: 'root' }); }
34
+ }
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateService, decorators: [{
36
+ type: Injectable,
37
+ args: [{
38
+ providedIn: 'root',
39
+ }]
40
+ }], ctorParameters: () => [{ type: i1.TranslateService }] });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMvbGliL3NlcnZpY2VzL2RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBOzs7QUFLdEQsTUFBTSxPQUFPLFdBQVc7SUFDdEIsWUFBb0IsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFBRyxDQUFDO0lBRWxELGFBQWEsQ0FBQyxJQUFtQjtRQUN2QyxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzdCLE1BQU0sT0FBTyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQzlCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQzdCLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQTtZQUN4QyxDQUFDO1lBQ0QsT0FBTyxPQUFPLENBQUE7UUFDaEIsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQztJQUVPLGdCQUFnQixDQUFDLElBQW1CO1FBSTFDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLElBQUksT0FBTyxDQUFBO1FBQzNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDeEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQTtJQUM1QixDQUFDO0lBRUQsVUFBVSxDQUNSLElBQW1CLEVBQ25CLE9BQW9DO1FBRXBDLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ3ZELE9BQU8sT0FBTyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQTtJQUNwRCxDQUFDO0lBRUQsY0FBYyxDQUNaLElBQW1CLEVBQ25CLE9BQW9DO1FBRXBDLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ3ZELE9BQU8sT0FBTyxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUE7SUFDaEQsQ0FBQzsrR0FyQ1UsV0FBVzttSEFBWCxXQUFXLGNBRlYsTUFBTTs7NEZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRGF0ZVNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UpIHt9XG5cbiAgcHJpdmF0ZSBnZXREYXRlT2JqZWN0KGRhdGU6IERhdGUgfCBzdHJpbmcpOiBEYXRlIHtcbiAgICBpZiAodHlwZW9mIGRhdGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjb25zdCBkYXRlT2JqID0gbmV3IERhdGUoZGF0ZSlcbiAgICAgIGlmIChpc05hTihkYXRlT2JqLmdldFRpbWUoKSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGRhdGUgc3RyaW5nJylcbiAgICAgIH1cbiAgICAgIHJldHVybiBkYXRlT2JqXG4gICAgfVxuICAgIHJldHVybiBkYXRlXG4gIH1cblxuICBwcml2YXRlIGdldExvY2FsZUFuZERhdGUoZGF0ZTogRGF0ZSB8IHN0cmluZyk6IHtcbiAgICBsb2NhbGU6IHN0cmluZ1xuICAgIGRhdGVPYmo6IERhdGVcbiAgfSB7XG4gICAgY29uc3QgbG9jYWxlID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmN1cnJlbnRMYW5nIHx8ICdlbi1VUydcbiAgICBjb25zdCBkYXRlT2JqID0gdGhpcy5nZXREYXRlT2JqZWN0KGRhdGUpXG4gICAgcmV0dXJuIHsgbG9jYWxlLCBkYXRlT2JqIH1cbiAgfVxuXG4gIGZvcm1hdERhdGUoXG4gICAgZGF0ZTogRGF0ZSB8IHN0cmluZyxcbiAgICBvcHRpb25zPzogSW50bC5EYXRlVGltZUZvcm1hdE9wdGlvbnNcbiAgKTogc3RyaW5nIHtcbiAgICBjb25zdCB7IGxvY2FsZSwgZGF0ZU9iaiB9ID0gdGhpcy5nZXRMb2NhbGVBbmREYXRlKGRhdGUpXG4gICAgcmV0dXJuIGRhdGVPYmoudG9Mb2NhbGVEYXRlU3RyaW5nKGxvY2FsZSwgb3B0aW9ucylcbiAgfVxuXG4gIGZvcm1hdERhdGVUaW1lKFxuICAgIGRhdGU6IERhdGUgfCBzdHJpbmcsXG4gICAgb3B0aW9ucz86IEludGwuRGF0ZVRpbWVGb3JtYXRPcHRpb25zXG4gICk6IHN0cmluZyB7XG4gICAgY29uc3QgeyBsb2NhbGUsIGRhdGVPYmogfSA9IHRoaXMuZ2V0TG9jYWxlQW5kRGF0ZShkYXRlKVxuICAgIHJldHVybiBkYXRlT2JqLnRvTG9jYWxlU3RyaW5nKGxvY2FsZSwgb3B0aW9ucylcbiAgfVxufVxuIl19
@@ -1,4 +1,5 @@
1
1
  export * from './theme.service';
2
2
  export * from './log.service';
3
3
  export * from './proxy.service';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYy9saWIvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLGVBQWUsQ0FBQTtBQUM3QixjQUFjLGlCQUFpQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90aGVtZS5zZXJ2aWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9sb2cuc2VydmljZSdcbmV4cG9ydCAqIGZyb20gJy4vcHJveHkuc2VydmljZSdcbiJdfQ==
4
+ export * from './date.service';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYy9saWIvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLGVBQWUsQ0FBQTtBQUM3QixjQUFjLGlCQUFpQixDQUFBO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3RoZW1lLnNlcnZpY2UnXG5leHBvcnQgKiBmcm9tICcuL2xvZy5zZXJ2aWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9wcm94eS5zZXJ2aWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlLnNlcnZpY2UnXG4iXX0=