@kepler.gl/components 3.3.0-alpha.0 → 3.3.0-alpha.2

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 (299) hide show
  1. package/dist/annotations/annotation-node.d.ts +11 -0
  2. package/dist/annotations/annotation-node.js +145 -0
  3. package/dist/annotations/annotation-overlay.d.ts +16 -0
  4. package/dist/annotations/annotation-overlay.js +166 -0
  5. package/dist/annotations/annotation-panel.d.ts +24 -0
  6. package/dist/annotations/annotation-panel.js +362 -0
  7. package/dist/annotations/annotation-text.d.ts +16 -0
  8. package/dist/annotations/annotation-text.js +150 -0
  9. package/dist/annotations/annotation-utils.d.ts +39 -0
  10. package/dist/annotations/annotation-utils.js +156 -0
  11. package/dist/annotations/index.d.ts +7 -0
  12. package/dist/annotations/index.js +53 -0
  13. package/dist/annotations/lexical-editor/clickable-link-plugin.d.ts +3 -0
  14. package/dist/annotations/lexical-editor/clickable-link-plugin.js +71 -0
  15. package/dist/annotations/lexical-editor/floating-link-editor.d.ts +1 -0
  16. package/dist/annotations/lexical-editor/floating-link-editor.js +194 -0
  17. package/dist/annotations/lexical-editor/index.d.ts +7 -0
  18. package/dist/annotations/lexical-editor/index.js +78 -0
  19. package/dist/annotations/lexical-editor/lexical-constants.d.ts +12 -0
  20. package/dist/annotations/lexical-editor/lexical-constants.js +22 -0
  21. package/dist/annotations/lexical-editor/lexical-nodes.d.ts +3 -0
  22. package/dist/annotations/lexical-editor/lexical-nodes.js +13 -0
  23. package/dist/annotations/lexical-editor/lexical-rich-text-editor.d.ts +15 -0
  24. package/dist/annotations/lexical-editor/lexical-rich-text-editor.js +122 -0
  25. package/dist/annotations/lexical-editor/lexical-theme.d.ts +15 -0
  26. package/dist/annotations/lexical-editor/lexical-theme.js +25 -0
  27. package/dist/annotations/lexical-editor/lexical-toolbar.d.ts +7 -0
  28. package/dist/annotations/lexical-editor/lexical-toolbar.js +293 -0
  29. package/dist/annotations/lexical-editor/lexical-utils.d.ts +4 -0
  30. package/dist/annotations/lexical-editor/lexical-utils.js +45 -0
  31. package/dist/annotations/lexical-editor/use-lexical-toolbar.d.ts +36 -0
  32. package/dist/annotations/lexical-editor/use-lexical-toolbar.js +253 -0
  33. package/dist/bottom-widget.d.ts +1 -1
  34. package/dist/bottom-widget.js +12 -6
  35. package/dist/common/action-panel.js +1 -1
  36. package/dist/common/animation-control/animation-control.d.ts +1 -0
  37. package/dist/common/animation-control/animation-control.js +3 -1
  38. package/dist/common/animation-control/animation-controller.js +8 -6
  39. package/dist/common/animation-control/export-video-control.d.ts +9 -0
  40. package/dist/common/animation-control/export-video-control.js +43 -0
  41. package/dist/common/animation-control/playback-controls.d.ts +4 -2
  42. package/dist/common/animation-control/playback-controls.js +7 -4
  43. package/dist/common/checkbox.d.ts +5 -21
  44. package/dist/common/checkbox.js +58 -70
  45. package/dist/common/color-legend.d.ts +1 -1
  46. package/dist/common/color-legend.js +3 -3
  47. package/dist/common/data-table/canvas.d.ts +1 -1
  48. package/dist/common/data-table/index.d.ts +2 -2
  49. package/dist/common/data-table/index.js +3 -3
  50. package/dist/common/dnd-layer-items.d.ts +4 -0
  51. package/dist/common/dnd-layer-items.js +6 -2
  52. package/dist/common/error-boundary.d.ts +1 -1
  53. package/dist/common/file-uploader/file-upload.d.ts +1 -1
  54. package/dist/common/file-uploader/file-upload.js +4 -4
  55. package/dist/common/flex-container.d.ts +15 -7
  56. package/dist/common/histogram-plot.js +102 -53
  57. package/dist/common/icon-button.d.ts +53 -6
  58. package/dist/common/icons/3d-models/airplane.d.ts +14 -0
  59. package/dist/common/icons/3d-models/airplane.js +104 -0
  60. package/dist/common/icons/3d-models/bicycle.d.ts +14 -0
  61. package/dist/common/icons/3d-models/bicycle.js +426 -0
  62. package/dist/common/icons/3d-models/boeing.d.ts +14 -0
  63. package/dist/common/icons/3d-models/boeing.js +119 -0
  64. package/dist/common/icons/3d-models/car.d.ts +14 -0
  65. package/dist/common/icons/3d-models/car.js +110 -0
  66. package/dist/common/icons/3d-models/cargoship.d.ts +14 -0
  67. package/dist/common/icons/3d-models/cargoship.js +246 -0
  68. package/dist/common/icons/3d-models/evtol.d.ts +14 -0
  69. package/dist/common/icons/3d-models/evtol.js +134 -0
  70. package/dist/common/icons/3d-models/glider.d.ts +14 -0
  71. package/dist/common/icons/3d-models/glider.js +62 -0
  72. package/dist/common/icons/3d-models/helicopter.d.ts +14 -0
  73. package/dist/common/icons/3d-models/helicopter.js +110 -0
  74. package/dist/common/icons/3d-models/scooter.d.ts +14 -0
  75. package/dist/common/icons/3d-models/scooter.js +159 -0
  76. package/dist/common/icons/3d-models/semitruck.d.ts +14 -0
  77. package/dist/common/icons/3d-models/semitruck.js +177 -0
  78. package/dist/common/icons/3d-models/truck.d.ts +14 -0
  79. package/dist/common/icons/3d-models/truck.js +122 -0
  80. package/dist/common/icons/anchor_window.d.ts +1 -8
  81. package/dist/common/icons/anchor_window.js +17 -10
  82. package/dist/common/icons/annotation-text.d.ts +9 -0
  83. package/dist/common/icons/annotation-text.js +56 -0
  84. package/dist/common/icons/arrow-down-full.d.ts +2 -1
  85. package/dist/common/icons/arrow-down-full.js +1 -1
  86. package/dist/common/icons/folder.d.ts +10 -0
  87. package/dist/common/icons/folder.js +51 -0
  88. package/dist/common/icons/index.d.ts +2 -0
  89. package/dist/common/icons/index.js +15 -1
  90. package/dist/common/icons/timeline-marker.d.ts +2 -1
  91. package/dist/common/icons/timeline-marker.js +1 -1
  92. package/dist/common/item-selector/chickleted-input.d.ts +1 -1
  93. package/dist/common/item-selector/chickleted-input.js +5 -5
  94. package/dist/common/item-selector/dropdown-list.d.ts +1 -1
  95. package/dist/common/item-selector/dropdown-list.js +1 -1
  96. package/dist/common/item-selector/dropdown-select.d.ts +13 -7
  97. package/dist/common/item-selector/item-selector.d.ts +1 -1
  98. package/dist/common/item-selector/item-selector.js +1 -1
  99. package/dist/common/item-selector/typeahead.d.ts +4 -4
  100. package/dist/common/item-selector/typeahead.js +1 -3
  101. package/dist/common/layout-splitter.d.ts +45 -0
  102. package/dist/common/layout-splitter.js +231 -0
  103. package/dist/common/line-chart.d.ts +10 -3
  104. package/dist/common/line-chart.js +219 -52
  105. package/dist/common/modal.d.ts +11 -5
  106. package/dist/common/modal.js +1 -1
  107. package/dist/common/portaled.d.ts +17 -17
  108. package/dist/common/range-plot.js +4 -2
  109. package/dist/common/range-slider.d.ts +2 -0
  110. package/dist/common/range-slider.js +108 -45
  111. package/dist/common/slider/mouse-event.d.ts +1 -1
  112. package/dist/common/slider/mouse-event.js +1 -2
  113. package/dist/common/slider/slider-bar-handle.d.ts +1 -1
  114. package/dist/common/slider/slider-bar-handle.js +1 -1
  115. package/dist/common/slider/slider-handle.d.ts +3 -3
  116. package/dist/common/slider/slider-handle.js +1 -1
  117. package/dist/common/slider/slider.d.ts +8 -4
  118. package/dist/common/slider/slider.js +78 -35
  119. package/dist/common/styled-components.d.ts +628 -178
  120. package/dist/common/styled-components.js +2 -2
  121. package/dist/common/time-range-slider-time-title.d.ts +1 -1
  122. package/dist/common/time-range-slider-time-title.js +5 -5
  123. package/dist/common/time-range-slider.d.ts +2 -1
  124. package/dist/common/time-range-slider.js +19 -7
  125. package/dist/common/timeline-helpers.d.ts +3 -0
  126. package/dist/common/timeline-helpers.js +57 -0
  127. package/dist/common/timeline-slider.js +21 -12
  128. package/dist/common/toolbar-item.js +5 -5
  129. package/dist/common/toolbar.d.ts +1 -1
  130. package/dist/common/toolbar.js +4 -4
  131. package/dist/common/vertical-toolbar.d.ts +13 -3
  132. package/dist/container.d.ts +3 -2
  133. package/dist/container.js +2 -2
  134. package/dist/context.d.ts +1 -1
  135. package/dist/context.js +1 -1
  136. package/dist/dnd-context.d.ts +4 -3
  137. package/dist/dnd-context.js +64 -9
  138. package/dist/effects/compact-color-picker.d.ts +1 -1
  139. package/dist/effects/effect-configurator.d.ts +5 -6
  140. package/dist/effects/effect-configurator.js +213 -52
  141. package/dist/effects/effect-manager.js +3 -3
  142. package/dist/effects/effect-panel-header.js +34 -17
  143. package/dist/effects/effect-panel.d.ts +4 -4
  144. package/dist/effects/effect-panel.js +61 -86
  145. package/dist/effects/effect-time-configurator.js +10 -10
  146. package/dist/effects/effect-type-dropdown-list.d.ts +1 -0
  147. package/dist/effects/effect-type-dropdown-list.js +1 -1
  148. package/dist/effects/effect-type-list-item.d.ts +2 -1
  149. package/dist/effects/effect-type-list-item.js +23 -7
  150. package/dist/effects/effect-type-selector.d.ts +1 -0
  151. package/dist/effects/effect-type-selector.js +2 -2
  152. package/dist/effects/surface-fog-section.d.ts +14 -0
  153. package/dist/effects/surface-fog-section.js +263 -0
  154. package/dist/filters/components.d.ts +7 -5
  155. package/dist/filters/filter-panels/filter-synced-dataset-panel.d.ts +6 -2
  156. package/dist/filters/index.d.ts +1 -0
  157. package/dist/filters/index.js +8 -1
  158. package/dist/filters/polygon-filter.js +2 -2
  159. package/dist/filters/time-range-filter.js +3 -1
  160. package/dist/filters/time-widget-settings.d.ts +14 -0
  161. package/dist/filters/time-widget-settings.js +312 -0
  162. package/dist/filters/time-widget-top.d.ts +2 -3
  163. package/dist/filters/time-widget-top.js +32 -39
  164. package/dist/filters/time-widget.d.ts +3 -2
  165. package/dist/filters/time-widget.js +285 -9
  166. package/dist/filters/types.d.ts +3 -3
  167. package/dist/filters/types.js +1 -1
  168. package/dist/geocoder/geocoder.d.ts +4 -1
  169. package/dist/geocoder/geocoder.js +61 -14
  170. package/dist/geocoder-panel.d.ts +3 -2
  171. package/dist/geocoder-panel.js +11 -8
  172. package/dist/hooks/use-dnd-layers.d.ts +4 -3
  173. package/dist/hooks/use-dnd-layers.js +103 -42
  174. package/dist/index.d.ts +17 -2
  175. package/dist/index.js +161 -9
  176. package/dist/injector.d.ts +1 -1
  177. package/dist/kepler-gl.d.ts +179 -27
  178. package/dist/kepler-gl.js +91 -12
  179. package/dist/loading-indicator.d.ts +3 -1
  180. package/dist/loading-indicator.js +6 -3
  181. package/dist/map/annotations/annotation-control.d.ts +16 -0
  182. package/dist/map/annotations/annotation-control.js +56 -0
  183. package/dist/map/layer-hover-info.d.ts +7 -3
  184. package/dist/map/layer-hover-info.js +124 -55
  185. package/dist/map/locale-panel.d.ts +1 -1
  186. package/dist/map/locale-panel.js +2 -2
  187. package/dist/map/map-control-panel.js +3 -2
  188. package/dist/map/map-control-toolbar.d.ts +33 -8
  189. package/dist/map/map-control.d.ts +14 -4
  190. package/dist/map/map-control.js +18 -8
  191. package/dist/map/map-draw-panel.d.ts +1 -1
  192. package/dist/map/map-draw-panel.js +7 -4
  193. package/dist/map/map-legend-panel.d.ts +11 -2
  194. package/dist/map/map-legend-panel.js +25 -8
  195. package/dist/map/map-legend.d.ts +20 -3
  196. package/dist/map/map-legend.js +145 -31
  197. package/dist/map/map-navigation-control.d.ts +13 -0
  198. package/dist/map/map-navigation-control.js +143 -0
  199. package/dist/map/map-popover.js +2 -2
  200. package/dist/map/split-map-button.d.ts +6 -1
  201. package/dist/map/split-map-button.js +113 -19
  202. package/dist/map-container.d.ts +13 -3
  203. package/dist/map-container.js +269 -59
  204. package/dist/map-view-state-context.d.ts +1 -0
  205. package/dist/map-view-state-context.js +1 -1
  206. package/dist/maps-layout.d.ts +3 -0
  207. package/dist/maps-layout.js +86 -26
  208. package/dist/modal-container.d.ts +3 -2
  209. package/dist/modal-container.js +28 -6
  210. package/dist/modals/add-map-style-modal.js +173 -200
  211. package/dist/modals/cloud-tile.d.ts +1 -2
  212. package/dist/modals/data-table-modal.d.ts +1 -1
  213. package/dist/modals/data-table-modal.js +146 -194
  214. package/dist/modals/export-data-modal.js +117 -139
  215. package/dist/modals/export-map-modal/components.d.ts +9 -5
  216. package/dist/modals/export-video-modal.d.ts +28 -0
  217. package/dist/modals/export-video-modal.js +371 -0
  218. package/dist/modals/export-video-modal.spec.d.ts +1 -0
  219. package/dist/modals/export-video-modal.spec.js +686 -0
  220. package/dist/modals/fog-height-animation.d.ts +8 -0
  221. package/dist/modals/fog-height-animation.js +97 -0
  222. package/dist/modals/hubble-utils.d.ts +41 -0
  223. package/dist/modals/hubble-utils.js +294 -0
  224. package/dist/modals/hubble-utils.spec.d.ts +1 -0
  225. package/dist/modals/hubble-utils.spec.js +397 -0
  226. package/dist/modals/modal-dialog.d.ts +1 -1
  227. package/dist/modals/share-map-modal.d.ts +2 -4
  228. package/dist/modals/swipe-composite-utils.d.ts +10 -0
  229. package/dist/modals/swipe-composite-utils.js +108 -0
  230. package/dist/modals/swipe-export-settings.d.ts +24 -0
  231. package/dist/modals/swipe-export-settings.js +370 -0
  232. package/dist/modals/swipe-export-video-container.d.ts +122 -0
  233. package/dist/modals/swipe-export-video-container.js +630 -0
  234. package/dist/modals/swipe-export-video-preview.d.ts +68 -0
  235. package/dist/modals/swipe-export-video-preview.js +339 -0
  236. package/dist/modals/tilesets-modals/load-data-footer.js +2 -2
  237. package/dist/modals/tilesets-modals/load-tileset.js +21 -10
  238. package/dist/modals/tilesets-modals/tileset-bitmap-form.d.ts +14 -0
  239. package/dist/modals/tilesets-modals/tileset-bitmap-form.js +284 -0
  240. package/dist/modals/tilesets-modals/tileset-raster-form.js +90 -11
  241. package/dist/modals/tilesets-modals/tileset-tile3d-form.js +3 -2
  242. package/dist/modals/tilesets-modals/tileset-vector-form.js +58 -4
  243. package/dist/modals/tilesets-modals/tileset-wms-form.js +4 -3
  244. package/dist/notification-panel/notification-item.d.ts +1 -53
  245. package/dist/notification-panel/notification-item.js +47 -75
  246. package/dist/notification-panel.d.ts +1 -1
  247. package/dist/notification-panel.js +20 -42
  248. package/dist/plot-container.js +7 -6
  249. package/dist/side-panel/add-by-dataset-button.js +3 -3
  250. package/dist/side-panel/common/dataset-info.js +2 -2
  251. package/dist/side-panel/filter-panel/filter-panel-header.d.ts +7 -3
  252. package/dist/side-panel/interaction-panel/geocoder-config.d.ts +11 -0
  253. package/dist/side-panel/interaction-panel/geocoder-config.js +45 -0
  254. package/dist/side-panel/interaction-panel/interaction-panel.d.ts +3 -2
  255. package/dist/side-panel/interaction-panel/interaction-panel.js +10 -3
  256. package/dist/side-panel/layer-manager.d.ts +5 -4
  257. package/dist/side-panel/layer-manager.js +26 -6
  258. package/dist/side-panel/layer-panel/color-scale-selector.d.ts +1 -1
  259. package/dist/side-panel/layer-panel/color-scale-selector.js +1 -1
  260. package/dist/side-panel/layer-panel/color-selector.d.ts +6 -4
  261. package/dist/side-panel/layer-panel/custom-palette.d.ts +3 -5
  262. package/dist/side-panel/layer-panel/custom-palette.js +5 -5
  263. package/dist/side-panel/layer-panel/dataset-layer-group.d.ts +2 -1
  264. package/dist/side-panel/layer-panel/dataset-layer-group.js +1 -1
  265. package/dist/side-panel/layer-panel/dataset-layer-section.d.ts +2 -1
  266. package/dist/side-panel/layer-panel/dataset-layer-section.js +19 -3
  267. package/dist/side-panel/layer-panel/layer-config-group.d.ts +5 -11
  268. package/dist/side-panel/layer-panel/layer-configurator.d.ts +4 -2
  269. package/dist/side-panel/layer-panel/layer-configurator.js +450 -76
  270. package/dist/side-panel/layer-panel/layer-group-header.d.ts +15 -0
  271. package/dist/side-panel/layer-panel/layer-group-header.js +179 -0
  272. package/dist/side-panel/layer-panel/layer-list.d.ts +9 -4
  273. package/dist/side-panel/layer-panel/layer-list.js +197 -40
  274. package/dist/side-panel/layer-panel/layer-panel-header.js +2 -2
  275. package/dist/side-panel/layer-panel/raster-tile-layer-configurator.d.ts +1 -1
  276. package/dist/side-panel/layer-panel/raster-tile-layer-configurator.js +127 -27
  277. package/dist/side-panel/layer-panel/scenegraph-model-selector.d.ts +24 -0
  278. package/dist/side-panel/layer-panel/scenegraph-model-selector.js +123 -0
  279. package/dist/side-panel/layer-panel/text-label-panel.d.ts +1 -1
  280. package/dist/side-panel/layer-panel/text-label-panel.js +11 -2
  281. package/dist/side-panel/layer-panel/vector-tile-layer-configurator.d.ts +1 -1
  282. package/dist/side-panel/layer-panel/vector-tile-layer-configurator.js +2 -10
  283. package/dist/side-panel/layer-panel/vis-config-slider.d.ts +2 -0
  284. package/dist/side-panel/layer-panel/vis-config-slider.js +7 -3
  285. package/dist/side-panel/panel-header.d.ts +1 -0
  286. package/dist/side-panel/panel-header.js +9 -2
  287. package/dist/side-panel/panel-tab.d.ts +2 -4
  288. package/dist/side-panel/panel-tab.js +4 -4
  289. package/dist/side-panel/panel-view-list-toggle.d.ts +4 -4
  290. package/dist/side-panel/side-bar.d.ts +1 -6
  291. package/dist/side-panel.d.ts +1 -1
  292. package/dist/side-panel.js +5 -1
  293. package/dist/types.d.ts +2 -2
  294. package/dist/types.js +1 -1
  295. package/package.json +53 -48
  296. package/dist/map/layer-selector-panel.d.ts +0 -21
  297. package/dist/map/layer-selector-panel.js +0 -85
  298. package/dist/side-panel/layer-panel/radius-by-zoom-input.d.ts +0 -11
  299. package/dist/side-panel/layer-panel/radius-by-zoom-input.js +0 -220
@@ -1,17 +1,10 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  var _typeof = require("@babel/runtime/helpers/typeof");
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
12
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
13
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
8
  var _react = _interopRequireWildcard(require("react"));
16
9
  var _reactIntl = require("react-intl");
17
10
  var _constants = require("@kepler.gl/constants");
@@ -21,9 +14,9 @@ var _styledComponents = require("../common/styled-components");
21
14
  var _components = require("./export-map-modal/components");
22
15
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
23
16
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
24
- function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
25
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } // SPDX-License-Identifier: MIT
17
+ // SPDX-License-Identifier: MIT
26
18
  // Copyright contributors to the kepler.gl project
19
+
27
20
  var getDataRowCount = function getDataRowCount(datasets, selectedDataset, filtered, intl) {
28
21
  if (selectedDataset === undefined) {
29
22
  return;
@@ -49,138 +42,123 @@ var getDataRowCount = function getDataRowCount(datasets, selectedDataset, filter
49
42
  });
50
43
  };
51
44
  var ExportDataModalFactory = function ExportDataModalFactory() {
52
- var ExportDataModal = /*#__PURE__*/function (_Component) {
53
- function ExportDataModal() {
54
- var _this;
55
- (0, _classCallCheck2["default"])(this, ExportDataModal);
56
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
57
- args[_key] = arguments[_key];
58
- }
59
- _this = _callSuper(this, ExportDataModal, [].concat(args));
60
- (0, _defineProperty2["default"])(_this, "_onSelectDataset", function (_ref) {
61
- var value = _ref.target.value;
62
- _this.props.applyCPUFilter(value);
63
- _this.props.onChangeExportSelectedDataset(value);
64
- });
65
- return _this;
66
- }
67
- (0, _inherits2["default"])(ExportDataModal, _Component);
68
- return (0, _createClass2["default"])(ExportDataModal, [{
69
- key: "componentDidMount",
70
- value: function componentDidMount() {
71
- var toCPUFilter = this.props.selectedDataset || Object.keys(this.props.datasets);
72
- this.props.applyCPUFilter(toCPUFilter);
45
+ var ExportDataModal = function ExportDataModal(_ref) {
46
+ var _ref$supportedDataTyp = _ref.supportedDataTypes,
47
+ supportedDataTypes = _ref$supportedDataTyp === void 0 ? _constants.EXPORT_DATA_TYPE_OPTIONS : _ref$supportedDataTyp,
48
+ datasets = _ref.datasets,
49
+ selectedDataset = _ref.selectedDataset,
50
+ dataType = _ref.dataType,
51
+ filtered = _ref.filtered,
52
+ onChangeExportDataType = _ref.onChangeExportDataType,
53
+ onChangeExportFiltered = _ref.onChangeExportFiltered,
54
+ applyCPUFilter = _ref.applyCPUFilter,
55
+ onChangeExportSelectedDataset = _ref.onChangeExportSelectedDataset,
56
+ intl = _ref.intl;
57
+ (0, _react.useEffect)(function () {
58
+ var toCPUFilter = selectedDataset || Object.keys(datasets);
59
+ applyCPUFilter(toCPUFilter);
60
+ // eslint-disable-next-line react-hooks/exhaustive-deps
61
+ }, []);
62
+ var onSelectDataset = function onSelectDataset(_ref2) {
63
+ var value = _ref2.target.value;
64
+ applyCPUFilter(value);
65
+ onChangeExportSelectedDataset(value);
66
+ };
67
+ var exportAllDatasets = selectedDataset ? !datasets[selectedDataset] : true;
68
+ var showTiledDatasetWarning = Object.keys(datasets).some(function (datasetId) {
69
+ return (datasets[datasetId].type === _constants.DatasetType.VECTOR_TILE || datasets[datasetId].type === _constants.DatasetType.RASTER_TILE || datasets[datasetId].type === _constants.DatasetType.WMS_TILE || datasets[datasetId].type === _constants.DatasetType.TILE_3D || datasets[datasetId].type === _constants.DatasetType.BITMAP) && (selectedDataset === datasetId || exportAllDatasets);
70
+ });
71
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledModalContent, {
72
+ className: "export-data-modal"
73
+ }, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledExportSection, null, /*#__PURE__*/_react["default"].createElement("div", {
74
+ className: "description"
75
+ }, /*#__PURE__*/_react["default"].createElement("div", {
76
+ className: "title"
77
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
78
+ id: 'modal.exportData.datasetTitle'
79
+ })), /*#__PURE__*/_react["default"].createElement("div", {
80
+ className: "subtitle"
81
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
82
+ id: 'modal.exportData.datasetSubtitle'
83
+ }))), /*#__PURE__*/_react["default"].createElement("div", {
84
+ className: "selection"
85
+ }, /*#__PURE__*/_react["default"].createElement("select", {
86
+ value: selectedDataset,
87
+ onChange: onSelectDataset
88
+ }, [intl.formatMessage({
89
+ id: 'modal.exportData.allDatasets'
90
+ })].concat(Object.keys(datasets)).map(function (d) {
91
+ return /*#__PURE__*/_react["default"].createElement("option", {
92
+ key: d,
93
+ value: d
94
+ }, datasets[d] && datasets[d].label || d);
95
+ })))), /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledExportSection, null, /*#__PURE__*/_react["default"].createElement("div", {
96
+ className: "description"
97
+ }, /*#__PURE__*/_react["default"].createElement("div", {
98
+ className: "title"
99
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
100
+ id: 'modal.exportData.dataTypeTitle'
101
+ })), /*#__PURE__*/_react["default"].createElement("div", {
102
+ className: "subtitle"
103
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
104
+ id: 'modal.exportData.dataTypeSubtitle'
105
+ }))), /*#__PURE__*/_react["default"].createElement("div", {
106
+ className: "selection"
107
+ }, supportedDataTypes.map(function (op) {
108
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledType, {
109
+ key: op.id,
110
+ selected: dataType === op.id,
111
+ onClick: function onClick() {
112
+ return op.available && onChangeExportDataType(op.id);
113
+ }
114
+ }, /*#__PURE__*/_react["default"].createElement(_icons.FileType, {
115
+ ext: op.label,
116
+ height: "80px",
117
+ fontSize: "11px"
118
+ }), dataType === op.id && /*#__PURE__*/_react["default"].createElement(_styledComponents.CheckMark, null));
119
+ }))), /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledExportSection, null, /*#__PURE__*/_react["default"].createElement("div", {
120
+ className: "description"
121
+ }, /*#__PURE__*/_react["default"].createElement("div", {
122
+ className: "title"
123
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
124
+ id: 'modal.exportData.dataTypeTitle'
125
+ })), /*#__PURE__*/_react["default"].createElement("div", {
126
+ className: "subtitle"
127
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
128
+ id: 'modal.exportData.filterDataSubtitle'
129
+ }))), /*#__PURE__*/_react["default"].createElement("div", {
130
+ className: "selection"
131
+ }, /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledFilteredOption, {
132
+ className: "unfiltered-option",
133
+ selected: !filtered,
134
+ onClick: function onClick() {
135
+ return onChangeExportFiltered(false);
73
136
  }
74
- }, {
75
- key: "render",
76
- value: function render() {
77
- var _this$props = this.props,
78
- _this$props$supported = _this$props.supportedDataTypes,
79
- supportedDataTypes = _this$props$supported === void 0 ? _constants.EXPORT_DATA_TYPE_OPTIONS : _this$props$supported,
80
- datasets = _this$props.datasets,
81
- selectedDataset = _this$props.selectedDataset,
82
- dataType = _this$props.dataType,
83
- filtered = _this$props.filtered,
84
- onChangeExportDataType = _this$props.onChangeExportDataType,
85
- onChangeExportFiltered = _this$props.onChangeExportFiltered,
86
- intl = _this$props.intl;
87
- var exportAllDatasets = selectedDataset ? !datasets[selectedDataset] : true;
88
- var showTiledDatasetWarning = Object.keys(datasets).some(function (datasetId) {
89
- return (datasets[datasetId].type === _constants.DatasetType.VECTOR_TILE || datasets[datasetId].type === _constants.DatasetType.RASTER_TILE || datasets[datasetId].type === _constants.DatasetType.WMS_TILE || datasets[datasetId].type === _constants.DatasetType.TILE_3D) && (selectedDataset === datasetId || exportAllDatasets);
90
- });
91
- return /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledModalContent, {
92
- className: "export-data-modal"
93
- }, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledExportSection, null, /*#__PURE__*/_react["default"].createElement("div", {
94
- className: "description"
95
- }, /*#__PURE__*/_react["default"].createElement("div", {
96
- className: "title"
97
- }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
98
- id: 'modal.exportData.datasetTitle'
99
- })), /*#__PURE__*/_react["default"].createElement("div", {
100
- className: "subtitle"
101
- }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
102
- id: 'modal.exportData.datasetSubtitle'
103
- }))), /*#__PURE__*/_react["default"].createElement("div", {
104
- className: "selection"
105
- }, /*#__PURE__*/_react["default"].createElement("select", {
106
- value: selectedDataset,
107
- onChange: this._onSelectDataset
108
- }, [intl.formatMessage({
109
- id: 'modal.exportData.allDatasets'
110
- })].concat(Object.keys(datasets)).map(function (d) {
111
- return /*#__PURE__*/_react["default"].createElement("option", {
112
- key: d,
113
- value: d
114
- }, datasets[d] && datasets[d].label || d);
115
- })))), /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledExportSection, null, /*#__PURE__*/_react["default"].createElement("div", {
116
- className: "description"
117
- }, /*#__PURE__*/_react["default"].createElement("div", {
118
- className: "title"
119
- }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
120
- id: 'modal.exportData.dataTypeTitle'
121
- })), /*#__PURE__*/_react["default"].createElement("div", {
122
- className: "subtitle"
123
- }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
124
- id: 'modal.exportData.dataTypeSubtitle'
125
- }))), /*#__PURE__*/_react["default"].createElement("div", {
126
- className: "selection"
127
- }, supportedDataTypes.map(function (op) {
128
- return /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledType, {
129
- key: op.id,
130
- selected: dataType === op.id,
131
- onClick: function onClick() {
132
- return op.available && onChangeExportDataType(op.id);
133
- }
134
- }, /*#__PURE__*/_react["default"].createElement(_icons.FileType, {
135
- ext: op.label,
136
- height: "80px",
137
- fontSize: "11px"
138
- }), dataType === op.id && /*#__PURE__*/_react["default"].createElement(_styledComponents.CheckMark, null));
139
- }))), /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledExportSection, null, /*#__PURE__*/_react["default"].createElement("div", {
140
- className: "description"
141
- }, /*#__PURE__*/_react["default"].createElement("div", {
142
- className: "title"
143
- }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
144
- id: 'modal.exportData.dataTypeTitle'
145
- })), /*#__PURE__*/_react["default"].createElement("div", {
146
- className: "subtitle"
147
- }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
148
- id: 'modal.exportData.filterDataSubtitle'
149
- }))), /*#__PURE__*/_react["default"].createElement("div", {
150
- className: "selection"
151
- }, /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledFilteredOption, {
152
- className: "unfiltered-option",
153
- selected: !filtered,
154
- onClick: function onClick() {
155
- return onChangeExportFiltered(false);
156
- }
157
- }, /*#__PURE__*/_react["default"].createElement("div", {
158
- className: "filter-option-title"
159
- }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
160
- id: 'modal.exportData.unfilteredData'
161
- })), /*#__PURE__*/_react["default"].createElement("div", {
162
- className: "filter-option-subtitle"
163
- }, getDataRowCount(datasets, selectedDataset, false, intl)), !filtered && /*#__PURE__*/_react["default"].createElement(_styledComponents.CheckMark, null)), /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledFilteredOption, {
164
- className: "filtered-option",
165
- selected: filtered,
166
- onClick: function onClick() {
167
- return onChangeExportFiltered(true);
168
- }
169
- }, /*#__PURE__*/_react["default"].createElement("div", {
170
- className: "filter-option-title"
171
- }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
172
- id: 'modal.exportData.filteredData'
173
- })), /*#__PURE__*/_react["default"].createElement("div", {
174
- className: "filter-option-subtitle"
175
- }, getDataRowCount(datasets, selectedDataset, true, intl)), filtered && /*#__PURE__*/_react["default"].createElement(_styledComponents.CheckMark, null)))), showTiledDatasetWarning ? /*#__PURE__*/_react["default"].createElement("div", {
176
- className: "title"
177
- }, /*#__PURE__*/_react["default"].createElement(_components.StyledWarning, null, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
178
- id: 'modal.exportData.tiledDatasetWarning'
179
- }))) : null));
137
+ }, /*#__PURE__*/_react["default"].createElement("div", {
138
+ className: "filter-option-title"
139
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
140
+ id: 'modal.exportData.unfilteredData'
141
+ })), /*#__PURE__*/_react["default"].createElement("div", {
142
+ className: "filter-option-subtitle"
143
+ }, getDataRowCount(datasets, selectedDataset, false, intl)), !filtered && /*#__PURE__*/_react["default"].createElement(_styledComponents.CheckMark, null)), /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledFilteredOption, {
144
+ className: "filtered-option",
145
+ selected: filtered,
146
+ onClick: function onClick() {
147
+ return onChangeExportFiltered(true);
180
148
  }
181
- }]);
182
- }(_react.Component);
149
+ }, /*#__PURE__*/_react["default"].createElement("div", {
150
+ className: "filter-option-title"
151
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
152
+ id: 'modal.exportData.filteredData'
153
+ })), /*#__PURE__*/_react["default"].createElement("div", {
154
+ className: "filter-option-subtitle"
155
+ }, getDataRowCount(datasets, selectedDataset, true, intl)), filtered && /*#__PURE__*/_react["default"].createElement(_styledComponents.CheckMark, null)))), showTiledDatasetWarning ? /*#__PURE__*/_react["default"].createElement("div", {
156
+ className: "title"
157
+ }, /*#__PURE__*/_react["default"].createElement(_components.StyledWarning, null, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
158
+ id: 'modal.exportData.tiledDatasetWarning'
159
+ }))) : null));
160
+ };
183
161
  return (0, _reactIntl.injectIntl)(ExportDataModal);
184
162
  };
185
163
  var _default = exports["default"] = ExportDataModalFactory;
186
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RJbnRsIiwiX2NvbnN0YW50cyIsIl9sb2NhbGl6YXRpb24iLCJfaWNvbnMiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9jb21wb25lbnRzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiX2NhbGxTdXBlciIsIm8iLCJfZ2V0UHJvdG90eXBlT2YyIiwiX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4yIiwiX2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCIsIlJlZmxlY3QiLCJjb25zdHJ1Y3QiLCJjb25zdHJ1Y3RvciIsImFwcGx5IiwiQm9vbGVhbiIsInByb3RvdHlwZSIsInZhbHVlT2YiLCJnZXREYXRhUm93Q291bnQiLCJkYXRhc2V0cyIsInNlbGVjdGVkRGF0YXNldCIsImZpbHRlcmVkIiwiaW50bCIsInVuZGVmaW5lZCIsInNlbGVjdGVkRGF0YSIsImZvcm1hdE1lc3NhZ2UiLCJpZCIsImZpbGVDb3VudCIsImtleXMiLCJsZW5ndGgiLCJkYXRhQ29udGFpbmVyIiwiZmlsdGVyZWRJZHhDUFUiLCJyb3dDb3VudCIsIm51bVJvd3MiLCJ0b0xvY2FsZVN0cmluZyIsIkV4cG9ydERhdGFNb2RhbEZhY3RvcnkiLCJFeHBvcnREYXRhTW9kYWwiLCJfQ29tcG9uZW50IiwiX3RoaXMiLCJfY2xhc3NDYWxsQ2hlY2syIiwiX2xlbiIsImFyZ3VtZW50cyIsImFyZ3MiLCJBcnJheSIsIl9rZXkiLCJjb25jYXQiLCJfZGVmaW5lUHJvcGVydHkyIiwiX3JlZiIsInZhbHVlIiwidGFyZ2V0IiwicHJvcHMiLCJhcHBseUNQVUZpbHRlciIsIm9uQ2hhbmdlRXhwb3J0U2VsZWN0ZWREYXRhc2V0IiwiX2luaGVyaXRzMiIsIl9jcmVhdGVDbGFzczIiLCJrZXkiLCJjb21wb25lbnREaWRNb3VudCIsInRvQ1BVRmlsdGVyIiwicmVuZGVyIiwiX3RoaXMkcHJvcHMiLCJfdGhpcyRwcm9wcyRzdXBwb3J0ZWQiLCJzdXBwb3J0ZWREYXRhVHlwZXMiLCJFWFBPUlRfREFUQV9UWVBFX09QVElPTlMiLCJkYXRhVHlwZSIsIm9uQ2hhbmdlRXhwb3J0RGF0YVR5cGUiLCJvbkNoYW5nZUV4cG9ydEZpbHRlcmVkIiwiZXhwb3J0QWxsRGF0YXNldHMiLCJzaG93VGlsZWREYXRhc2V0V2FybmluZyIsInNvbWUiLCJkYXRhc2V0SWQiLCJ0eXBlIiwiRGF0YXNldFR5cGUiLCJWRUNUT1JfVElMRSIsIlJBU1RFUl9USUxFIiwiV01TX1RJTEUiLCJUSUxFXzNEIiwiY3JlYXRlRWxlbWVudCIsIlN0eWxlZE1vZGFsQ29udGVudCIsImNsYXNzTmFtZSIsIlN0eWxlZEV4cG9ydFNlY3Rpb24iLCJGb3JtYXR0ZWRNZXNzYWdlIiwib25DaGFuZ2UiLCJfb25TZWxlY3REYXRhc2V0IiwibWFwIiwiZCIsImxhYmVsIiwib3AiLCJTdHlsZWRUeXBlIiwic2VsZWN0ZWQiLCJvbkNsaWNrIiwiYXZhaWxhYmxlIiwiRmlsZVR5cGUiLCJleHQiLCJoZWlnaHQiLCJmb250U2l6ZSIsIkNoZWNrTWFyayIsIlN0eWxlZEZpbHRlcmVkT3B0aW9uIiwiU3R5bGVkV2FybmluZyIsIkNvbXBvbmVudCIsImluamVjdEludGwiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kYWxzL2V4cG9ydC1kYXRhLW1vZGFsLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHtDb21wb25lbnR9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7aW5qZWN0SW50bCwgSW50bFNoYXBlfSBmcm9tICdyZWFjdC1pbnRsJztcblxuaW1wb3J0IHtEYXRhc2V0VHlwZSwgRVhQT1JUX0RBVEFfVFlQRV9PUFRJT05TfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5pbXBvcnQge0Zvcm1hdHRlZE1lc3NhZ2V9IGZyb20gJ0BrZXBsZXIuZ2wvbG9jYWxpemF0aW9uJztcbmltcG9ydCB7RGF0YXNldHN9IGZyb20gJ0BrZXBsZXIuZ2wvdGFibGUnO1xuXG5pbXBvcnQge0ZpbGVUeXBlfSBmcm9tICcuLi9jb21tb24vaWNvbnMnO1xuaW1wb3J0IHtcbiAgU3R5bGVkRXhwb3J0U2VjdGlvbixcbiAgU3R5bGVkRmlsdGVyZWRPcHRpb24sXG4gIFN0eWxlZE1vZGFsQ29udGVudCxcbiAgU3R5bGVkVHlwZSxcbiAgQ2hlY2tNYXJrXG59IGZyb20gJy4uL2NvbW1vbi9zdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge1N0eWxlZFdhcm5pbmd9IGZyb20gJy4vZXhwb3J0LW1hcC1tb2RhbC9jb21wb25lbnRzJztcblxuY29uc3QgZ2V0RGF0YVJvd0NvdW50ID0gKFxuICBkYXRhc2V0czogRGF0YXNldHMsXG4gIHNlbGVjdGVkRGF0YXNldDogc3RyaW5nIHwgdW5kZWZpbmVkLFxuICBmaWx0ZXJlZDogYm9vbGVhbixcbiAgaW50bDogSW50bFNoYXBlXG4pID0+IHtcbiAgaWYgKHNlbGVjdGVkRGF0YXNldCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIGNvbnN0IHNlbGVjdGVkRGF0YSA9IGRhdGFzZXRzW3NlbGVjdGVkRGF0YXNldF07XG4gIGlmICghc2VsZWN0ZWREYXRhKSB7XG4gICAgcmV0dXJuIGludGwuZm9ybWF0TWVzc2FnZShcbiAgICAgIHtpZDogJ21vZGFsLmV4cG9ydERhdGEuZmlsZUNvdW50J30sXG4gICAgICB7ZmlsZUNvdW50OiBPYmplY3Qua2V5cyhkYXRhc2V0cykubGVuZ3RofVxuICAgICk7XG4gIH1cbiAgY29uc3Qge2RhdGFDb250YWluZXIsIGZpbHRlcmVkSWR4Q1BVfSA9IHNlbGVjdGVkRGF0YTtcblxuICBpZiAoZmlsdGVyZWQgJiYgIWZpbHRlcmVkSWR4Q1BVKSB7XG4gICAgcmV0dXJuICctJztcbiAgfVxuXG4gIGNvbnN0IHJvd0NvdW50ID0gZmlsdGVyZWQgPyBmaWx0ZXJlZElkeENQVT8ubGVuZ3RoIDogZGF0YUNvbnRhaW5lci5udW1Sb3dzKCk7XG5cbiAgcmV0dXJuIGludGwuZm9ybWF0TWVzc2FnZShcbiAgICB7aWQ6ICdtb2RhbC5leHBvcnREYXRhLnJvd0NvdW50J30sXG4gICAge3Jvd0NvdW50OiByb3dDb3VudD8udG9Mb2NhbGVTdHJpbmcoKX1cbiAgKTtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXhwb3J0RGF0YU1vZGFsUHJvcHMge1xuICBkYXRhc2V0czogRGF0YXNldHM7XG4gIHNlbGVjdGVkRGF0YXNldD86IHN0cmluZztcbiAgZGF0YVR5cGU6IHN0cmluZztcbiAgZmlsdGVyZWQ6IGJvb2xlYW47XG4gIC8vIGNhbGxiYWNrc1xuICBhcHBseUNQVUZpbHRlcjogKGZpbHRlcjogc3RyaW5nIHwgc3RyaW5nW10pID0+IHZvaWQ7XG4gIG9uQ2hhbmdlRXhwb3J0U2VsZWN0ZWREYXRhc2V0OiAoZGF0YXNldDogc3RyaW5nKSA9PiB2b2lkO1xuICBvbkNoYW5nZUV4cG9ydERhdGFUeXBlOiAodHlwZTogc3RyaW5nKSA9PiB2b2lkO1xuICBvbkNoYW5nZUV4cG9ydEZpbHRlcmVkOiAoaXNGaWx0ZXJlZDogYm9vbGVhbikgPT4gdm9pZDtcbiAgaW50bDogSW50bFNoYXBlO1xuICBzdXBwb3J0ZWREYXRhVHlwZXM6IHtcbiAgICBpZDogc3RyaW5nO1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gICAgYXZhaWxhYmxlOiBib29sZWFuO1xuICB9W107XG59XG5cbmNvbnN0IEV4cG9ydERhdGFNb2RhbEZhY3RvcnkgPSAoKSA9PiB7XG4gIGNsYXNzIEV4cG9ydERhdGFNb2RhbCBleHRlbmRzIENvbXBvbmVudDxFeHBvcnREYXRhTW9kYWxQcm9wcz4ge1xuICAgIGNvbXBvbmVudERpZE1vdW50KCkge1xuICAgICAgY29uc3QgdG9DUFVGaWx0ZXIgPSB0aGlzLnByb3BzLnNlbGVjdGVkRGF0YXNldCB8fCBPYmplY3Qua2V5cyh0aGlzLnByb3BzLmRhdGFzZXRzKTtcbiAgICAgIHRoaXMucHJvcHMuYXBwbHlDUFVGaWx0ZXIodG9DUFVGaWx0ZXIpO1xuICAgIH1cblxuICAgIF9vblNlbGVjdERhdGFzZXQ6IFJlYWN0LkNoYW5nZUV2ZW50SGFuZGxlcjxIVE1MU2VsZWN0RWxlbWVudD4gPSAoe3RhcmdldDoge3ZhbHVlfX0pID0+IHtcbiAgICAgIHRoaXMucHJvcHMuYXBwbHlDUFVGaWx0ZXIodmFsdWUpO1xuICAgICAgdGhpcy5wcm9wcy5vbkNoYW5nZUV4cG9ydFNlbGVjdGVkRGF0YXNldCh2YWx1ZSk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgc3VwcG9ydGVkRGF0YVR5cGVzID0gRVhQT1JUX0RBVEFfVFlQRV9PUFRJT05TLFxuICAgICAgICBkYXRhc2V0cyxcbiAgICAgICAgc2VsZWN0ZWREYXRhc2V0LFxuICAgICAgICBkYXRhVHlwZSxcbiAgICAgICAgZmlsdGVyZWQsXG4gICAgICAgIG9uQ2hhbmdlRXhwb3J0RGF0YVR5cGUsXG4gICAgICAgIG9uQ2hhbmdlRXhwb3J0RmlsdGVyZWQsXG4gICAgICAgIGludGxcbiAgICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBjb25zdCBleHBvcnRBbGxEYXRhc2V0cyA9IHNlbGVjdGVkRGF0YXNldCA/ICFkYXRhc2V0c1tzZWxlY3RlZERhdGFzZXRdIDogdHJ1ZTtcbiAgICAgIGNvbnN0IHNob3dUaWxlZERhdGFzZXRXYXJuaW5nID0gT2JqZWN0LmtleXMoZGF0YXNldHMpLnNvbWUoZGF0YXNldElkID0+IHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAoZGF0YXNldHNbZGF0YXNldElkXS50eXBlID09PSBEYXRhc2V0VHlwZS5WRUNUT1JfVElMRSB8fFxuICAgICAgICAgICAgZGF0YXNldHNbZGF0YXNldElkXS50eXBlID09PSBEYXRhc2V0VHlwZS5SQVNURVJfVElMRSB8fFxuICAgICAgICAgICAgZGF0YXNldHNbZGF0YXNldElkXS50eXBlID09PSBEYXRhc2V0VHlwZS5XTVNfVElMRSB8fFxuICAgICAgICAgICAgZGF0YXNldHNbZGF0YXNldElkXS50eXBlID09PSBEYXRhc2V0VHlwZS5USUxFXzNEKSAmJlxuICAgICAgICAgIChzZWxlY3RlZERhdGFzZXQgPT09IGRhdGFzZXRJZCB8fCBleHBvcnRBbGxEYXRhc2V0cylcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8U3R5bGVkTW9kYWxDb250ZW50IGNsYXNzTmFtZT1cImV4cG9ydC1kYXRhLW1vZGFsXCI+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxTdHlsZWRFeHBvcnRTZWN0aW9uPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5leHBvcnREYXRhLmRhdGFzZXRUaXRsZSd9IC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzdWJ0aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5leHBvcnREYXRhLmRhdGFzZXRTdWJ0aXRsZSd9IC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInNlbGVjdGlvblwiPlxuICAgICAgICAgICAgICAgIDxzZWxlY3QgdmFsdWU9e3NlbGVjdGVkRGF0YXNldH0gb25DaGFuZ2U9e3RoaXMuX29uU2VsZWN0RGF0YXNldH0+XG4gICAgICAgICAgICAgICAgICB7W2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5leHBvcnREYXRhLmFsbERhdGFzZXRzJ30pXVxuICAgICAgICAgICAgICAgICAgICAuY29uY2F0KE9iamVjdC5rZXlzKGRhdGFzZXRzKSlcbiAgICAgICAgICAgICAgICAgICAgLm1hcChkID0+IChcbiAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIGtleT17ZH0gdmFsdWU9e2R9PlxuICAgICAgICAgICAgICAgICAgICAgICAgeyhkYXRhc2V0c1tkXSAmJiBkYXRhc2V0c1tkXS5sYWJlbCkgfHwgZH1cbiAgICAgICAgICAgICAgICAgICAgICA8L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9TdHlsZWRFeHBvcnRTZWN0aW9uPlxuICAgICAgICAgICAgPFN0eWxlZEV4cG9ydFNlY3Rpb24+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGVzY3JpcHRpb25cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J21vZGFsLmV4cG9ydERhdGEuZGF0YVR5cGVUaXRsZSd9IC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzdWJ0aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5leHBvcnREYXRhLmRhdGFUeXBlU3VidGl0bGUnfSAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzZWxlY3Rpb25cIj5cbiAgICAgICAgICAgICAgICB7c3VwcG9ydGVkRGF0YVR5cGVzLm1hcChvcCA9PiAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkVHlwZVxuICAgICAgICAgICAgICAgICAgICBrZXk9e29wLmlkfVxuICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZD17ZGF0YVR5cGUgPT09IG9wLmlkfVxuICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvcC5hdmFpbGFibGUgJiYgb25DaGFuZ2VFeHBvcnREYXRhVHlwZShvcC5pZCl9XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxGaWxlVHlwZSBleHQ9e29wLmxhYmVsfSBoZWlnaHQ9XCI4MHB4XCIgZm9udFNpemU9XCIxMXB4XCIgLz5cbiAgICAgICAgICAgICAgICAgICAge2RhdGFUeXBlID09PSBvcC5pZCAmJiA8Q2hlY2tNYXJrIC8+fVxuICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUeXBlPlxuICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvU3R5bGVkRXhwb3J0U2VjdGlvbj5cbiAgICAgICAgICAgIDxTdHlsZWRFeHBvcnRTZWN0aW9uPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5leHBvcnREYXRhLmRhdGFUeXBlVGl0bGUnfSAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwic3VidGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnbW9kYWwuZXhwb3J0RGF0YS5maWx0ZXJEYXRhU3VidGl0bGUnfSAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzZWxlY3Rpb25cIj5cbiAgICAgICAgICAgICAgICA8U3R5bGVkRmlsdGVyZWRPcHRpb25cbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cInVuZmlsdGVyZWQtb3B0aW9uXCJcbiAgICAgICAgICAgICAgICAgIHNlbGVjdGVkPXshZmlsdGVyZWR9XG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZUV4cG9ydEZpbHRlcmVkKGZhbHNlKX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpbHRlci1vcHRpb24tdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5leHBvcnREYXRhLnVuZmlsdGVyZWREYXRhJ30gLz5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWx0ZXItb3B0aW9uLXN1YnRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIHtnZXREYXRhUm93Q291bnQoZGF0YXNldHMsIHNlbGVjdGVkRGF0YXNldCwgZmFsc2UsIGludGwpfVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICB7IWZpbHRlcmVkICYmIDxDaGVja01hcmsgLz59XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRGaWx0ZXJlZE9wdGlvbj5cbiAgICAgICAgICAgICAgICA8U3R5bGVkRmlsdGVyZWRPcHRpb25cbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImZpbHRlcmVkLW9wdGlvblwiXG4gICAgICAgICAgICAgICAgICBzZWxlY3RlZD17ZmlsdGVyZWR9XG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZUV4cG9ydEZpbHRlcmVkKHRydWUpfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmlsdGVyLW9wdGlvbi10aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J21vZGFsLmV4cG9ydERhdGEuZmlsdGVyZWREYXRhJ30gLz5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWx0ZXItb3B0aW9uLXN1YnRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIHtnZXREYXRhUm93Q291bnQoZGF0YXNldHMsIHNlbGVjdGVkRGF0YXNldCwgdHJ1ZSwgaW50bCl9XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIHtmaWx0ZXJlZCAmJiA8Q2hlY2tNYXJrIC8+fVxuICAgICAgICAgICAgICAgIDwvU3R5bGVkRmlsdGVyZWRPcHRpb24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9TdHlsZWRFeHBvcnRTZWN0aW9uPlxuICAgICAgICAgICAge3Nob3dUaWxlZERhdGFzZXRXYXJuaW5nID8gKFxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpdGxlXCI+XG4gICAgICAgICAgICAgICAgPFN0eWxlZFdhcm5pbmc+XG4gICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J21vZGFsLmV4cG9ydERhdGEudGlsZWREYXRhc2V0V2FybmluZyd9IC8+XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRXYXJuaW5nPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1N0eWxlZE1vZGFsQ29udGVudD5cbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGluamVjdEludGwoRXhwb3J0RGF0YU1vZGFsKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IEV4cG9ydERhdGFNb2RhbEZhY3Rvcnk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsVUFBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUsVUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsYUFBQSxHQUFBSCxPQUFBO0FBR0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssaUJBQUEsR0FBQUwsT0FBQTtBQU9BLElBQUFNLFdBQUEsR0FBQU4sT0FBQTtBQUE0RCxTQUFBTyx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQVQsd0JBQUFTLENBQUEsRUFBQUUsQ0FBQSxTQUFBQSxDQUFBLElBQUFGLENBQUEsSUFBQUEsQ0FBQSxDQUFBSSxVQUFBLFNBQUFKLENBQUEsZUFBQUEsQ0FBQSxnQkFBQUssT0FBQSxDQUFBTCxDQUFBLDBCQUFBQSxDQUFBLHNCQUFBQSxDQUFBLFFBQUFHLENBQUEsR0FBQUosd0JBQUEsQ0FBQUcsQ0FBQSxPQUFBQyxDQUFBLElBQUFBLENBQUEsQ0FBQUcsR0FBQSxDQUFBTixDQUFBLFVBQUFHLENBQUEsQ0FBQUksR0FBQSxDQUFBUCxDQUFBLE9BQUFRLENBQUEsS0FBQUMsU0FBQSxVQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLENBQUEsSUFBQWQsQ0FBQSxvQkFBQWMsQ0FBQSxPQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQWhCLENBQUEsRUFBQWMsQ0FBQSxTQUFBRyxD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
164
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RJbnRsIiwiX2NvbnN0YW50cyIsIl9sb2NhbGl6YXRpb24iLCJfaWNvbnMiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9jb21wb25lbnRzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiZ2V0RGF0YVJvd0NvdW50IiwiZGF0YXNldHMiLCJzZWxlY3RlZERhdGFzZXQiLCJmaWx0ZXJlZCIsImludGwiLCJ1bmRlZmluZWQiLCJzZWxlY3RlZERhdGEiLCJmb3JtYXRNZXNzYWdlIiwiaWQiLCJmaWxlQ291bnQiLCJrZXlzIiwibGVuZ3RoIiwiZGF0YUNvbnRhaW5lciIsImZpbHRlcmVkSWR4Q1BVIiwicm93Q291bnQiLCJudW1Sb3dzIiwidG9Mb2NhbGVTdHJpbmciLCJFeHBvcnREYXRhTW9kYWxGYWN0b3J5IiwiRXhwb3J0RGF0YU1vZGFsIiwiX3JlZiIsIl9yZWYkc3VwcG9ydGVkRGF0YVR5cCIsInN1cHBvcnRlZERhdGFUeXBlcyIsIkVYUE9SVF9EQVRBX1RZUEVfT1BUSU9OUyIsImRhdGFUeXBlIiwib25DaGFuZ2VFeHBvcnREYXRhVHlwZSIsIm9uQ2hhbmdlRXhwb3J0RmlsdGVyZWQiLCJhcHBseUNQVUZpbHRlciIsIm9uQ2hhbmdlRXhwb3J0U2VsZWN0ZWREYXRhc2V0IiwidXNlRWZmZWN0IiwidG9DUFVGaWx0ZXIiLCJvblNlbGVjdERhdGFzZXQiLCJfcmVmMiIsInZhbHVlIiwidGFyZ2V0IiwiZXhwb3J0QWxsRGF0YXNldHMiLCJzaG93VGlsZWREYXRhc2V0V2FybmluZyIsInNvbWUiLCJkYXRhc2V0SWQiLCJ0eXBlIiwiRGF0YXNldFR5cGUiLCJWRUNUT1JfVElMRSIsIlJBU1RFUl9USUxFIiwiV01TX1RJTEUiLCJUSUxFXzNEIiwiQklUTUFQIiwiY3JlYXRlRWxlbWVudCIsIlN0eWxlZE1vZGFsQ29udGVudCIsImNsYXNzTmFtZSIsIlN0eWxlZEV4cG9ydFNlY3Rpb24iLCJGb3JtYXR0ZWRNZXNzYWdlIiwib25DaGFuZ2UiLCJjb25jYXQiLCJtYXAiLCJkIiwia2V5IiwibGFiZWwiLCJvcCIsIlN0eWxlZFR5cGUiLCJzZWxlY3RlZCIsIm9uQ2xpY2siLCJhdmFpbGFibGUiLCJGaWxlVHlwZSIsImV4dCIsImhlaWdodCIsImZvbnRTaXplIiwiQ2hlY2tNYXJrIiwiU3R5bGVkRmlsdGVyZWRPcHRpb24iLCJTdHlsZWRXYXJuaW5nIiwiaW5qZWN0SW50bCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb2RhbHMvZXhwb3J0LWRhdGEtbW9kYWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge3VzZUVmZmVjdH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHtpbmplY3RJbnRsLCBJbnRsU2hhcGV9IGZyb20gJ3JlYWN0LWludGwnO1xuXG5pbXBvcnQge0RhdGFzZXRUeXBlLCBFWFBPUlRfREFUQV9UWVBFX09QVElPTlN9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7Rm9ybWF0dGVkTWVzc2FnZX0gZnJvbSAnQGtlcGxlci5nbC9sb2NhbGl6YXRpb24nO1xuaW1wb3J0IHtEYXRhc2V0c30gZnJvbSAnQGtlcGxlci5nbC90YWJsZSc7XG5cbmltcG9ydCB7RmlsZVR5cGV9IGZyb20gJy4uL2NvbW1vbi9pY29ucyc7XG5pbXBvcnQge1xuICBTdHlsZWRFeHBvcnRTZWN0aW9uLFxuICBTdHlsZWRGaWx0ZXJlZE9wdGlvbixcbiAgU3R5bGVkTW9kYWxDb250ZW50LFxuICBTdHlsZWRUeXBlLFxuICBDaGVja01hcmtcbn0gZnJvbSAnLi4vY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7U3R5bGVkV2FybmluZ30gZnJvbSAnLi9leHBvcnQtbWFwLW1vZGFsL2NvbXBvbmVudHMnO1xuXG5jb25zdCBnZXREYXRhUm93Q291bnQgPSAoXG4gIGRhdGFzZXRzOiBEYXRhc2V0cyxcbiAgc2VsZWN0ZWREYXRhc2V0OiBzdHJpbmcgfCB1bmRlZmluZWQsXG4gIGZpbHRlcmVkOiBib29sZWFuLFxuICBpbnRsOiBJbnRsU2hhcGVcbikgPT4ge1xuICBpZiAoc2VsZWN0ZWREYXRhc2V0ID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgY29uc3Qgc2VsZWN0ZWREYXRhID0gZGF0YXNldHNbc2VsZWN0ZWREYXRhc2V0XTtcbiAgaWYgKCFzZWxlY3RlZERhdGEpIHtcbiAgICByZXR1cm4gaW50bC5mb3JtYXRNZXNzYWdlKFxuICAgICAge2lkOiAnbW9kYWwuZXhwb3J0RGF0YS5maWxlQ291bnQnfSxcbiAgICAgIHtmaWxlQ291bnQ6IE9iamVjdC5rZXlzKGRhdGFzZXRzKS5sZW5ndGh9XG4gICAgKTtcbiAgfVxuICBjb25zdCB7ZGF0YUNvbnRhaW5lciwgZmlsdGVyZWRJZHhDUFV9ID0gc2VsZWN0ZWREYXRhO1xuXG4gIGlmIChmaWx0ZXJlZCAmJiAhZmlsdGVyZWRJZHhDUFUpIHtcbiAgICByZXR1cm4gJy0nO1xuICB9XG5cbiAgY29uc3Qgcm93Q291bnQgPSBmaWx0ZXJlZCA/IGZpbHRlcmVkSWR4Q1BVPy5sZW5ndGggOiBkYXRhQ29udGFpbmVyLm51bVJvd3MoKTtcblxuICByZXR1cm4gaW50bC5mb3JtYXRNZXNzYWdlKFxuICAgIHtpZDogJ21vZGFsLmV4cG9ydERhdGEucm93Q291bnQnfSxcbiAgICB7cm93Q291bnQ6IHJvd0NvdW50Py50b0xvY2FsZVN0cmluZygpfVxuICApO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBFeHBvcnREYXRhTW9kYWxQcm9wcyB7XG4gIGRhdGFzZXRzOiBEYXRhc2V0cztcbiAgc2VsZWN0ZWREYXRhc2V0Pzogc3RyaW5nO1xuICBkYXRhVHlwZTogc3RyaW5nO1xuICBmaWx0ZXJlZDogYm9vbGVhbjtcbiAgLy8gY2FsbGJhY2tzXG4gIGFwcGx5Q1BVRmlsdGVyOiAoZmlsdGVyOiBzdHJpbmcgfCBzdHJpbmdbXSkgPT4gdm9pZDtcbiAgb25DaGFuZ2VFeHBvcnRTZWxlY3RlZERhdGFzZXQ6IChkYXRhc2V0OiBzdHJpbmcpID0+IHZvaWQ7XG4gIG9uQ2hhbmdlRXhwb3J0RGF0YVR5cGU6ICh0eXBlOiBzdHJpbmcpID0+IHZvaWQ7XG4gIG9uQ2hhbmdlRXhwb3J0RmlsdGVyZWQ6IChpc0ZpbHRlcmVkOiBib29sZWFuKSA9PiB2b2lkO1xuICBpbnRsOiBJbnRsU2hhcGU7XG4gIHN1cHBvcnRlZERhdGFUeXBlczoge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBhdmFpbGFibGU6IGJvb2xlYW47XG4gIH1bXTtcbn1cblxuY29uc3QgRXhwb3J0RGF0YU1vZGFsRmFjdG9yeSA9ICgpID0+IHtcbiAgY29uc3QgRXhwb3J0RGF0YU1vZGFsID0gKHtcbiAgICBzdXBwb3J0ZWREYXRhVHlwZXMgPSBFWFBPUlRfREFUQV9UWVBFX09QVElPTlMsXG4gICAgZGF0YXNldHMsXG4gICAgc2VsZWN0ZWREYXRhc2V0LFxuICAgIGRhdGFUeXBlLFxuICAgIGZpbHRlcmVkLFxuICAgIG9uQ2hhbmdlRXhwb3J0RGF0YVR5cGUsXG4gICAgb25DaGFuZ2VFeHBvcnRGaWx0ZXJlZCxcbiAgICBhcHBseUNQVUZpbHRlcixcbiAgICBvbkNoYW5nZUV4cG9ydFNlbGVjdGVkRGF0YXNldCxcbiAgICBpbnRsXG4gIH06IEV4cG9ydERhdGFNb2RhbFByb3BzKSA9PiB7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IHRvQ1BVRmlsdGVyID0gc2VsZWN0ZWREYXRhc2V0IHx8IE9iamVjdC5rZXlzKGRhdGFzZXRzKTtcbiAgICAgIGFwcGx5Q1BVRmlsdGVyKHRvQ1BVRmlsdGVyKTtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgICB9LCBbXSk7XG5cbiAgICBjb25zdCBvblNlbGVjdERhdGFzZXQ6IFJlYWN0LkNoYW5nZUV2ZW50SGFuZGxlcjxIVE1MU2VsZWN0RWxlbWVudD4gPSAoe3RhcmdldDoge3ZhbHVlfX0pID0+IHtcbiAgICAgIGFwcGx5Q1BVRmlsdGVyKHZhbHVlKTtcbiAgICAgIG9uQ2hhbmdlRXhwb3J0U2VsZWN0ZWREYXRhc2V0KHZhbHVlKTtcbiAgICB9O1xuXG4gICAgY29uc3QgZXhwb3J0QWxsRGF0YXNldHMgPSBzZWxlY3RlZERhdGFzZXQgPyAhZGF0YXNldHNbc2VsZWN0ZWREYXRhc2V0XSA6IHRydWU7XG4gICAgY29uc3Qgc2hvd1RpbGVkRGF0YXNldFdhcm5pbmcgPSBPYmplY3Qua2V5cyhkYXRhc2V0cykuc29tZShkYXRhc2V0SWQgPT4ge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgKGRhdGFzZXRzW2RhdGFzZXRJZF0udHlwZSA9PT0gRGF0YXNldFR5cGUuVkVDVE9SX1RJTEUgfHxcbiAgICAgICAgICBkYXRhc2V0c1tkYXRhc2V0SWRdLnR5cGUgPT09IERhdGFzZXRUeXBlLlJBU1RFUl9USUxFIHx8XG4gICAgICAgICAgZGF0YXNldHNbZGF0YXNldElkXS50eXBlID09PSBEYXRhc2V0VHlwZS5XTVNfVElMRSB8fFxuICAgICAgICAgIGRhdGFzZXRzW2RhdGFzZXRJZF0udHlwZSA9PT0gRGF0YXNldFR5cGUuVElMRV8zRCB8fFxuICAgICAgICAgIGRhdGFzZXRzW2RhdGFzZXRJZF0udHlwZSA9PT0gRGF0YXNldFR5cGUuQklUTUFQKSAmJlxuICAgICAgICAoc2VsZWN0ZWREYXRhc2V0ID09PSBkYXRhc2V0SWQgfHwgZXhwb3J0QWxsRGF0YXNldHMpXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxTdHlsZWRNb2RhbENvbnRlbnQgY2xhc3NOYW1lPVwiZXhwb3J0LWRhdGEtbW9kYWxcIj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8U3R5bGVkRXhwb3J0U2VjdGlvbj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGVzY3JpcHRpb25cIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aXRsZVwiPlxuICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnbW9kYWwuZXhwb3J0RGF0YS5kYXRhc2V0VGl0bGUnfSAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzdWJ0aXRsZVwiPlxuICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnbW9kYWwuZXhwb3J0RGF0YS5kYXRhc2V0U3VidGl0bGUnfSAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzZWxlY3Rpb25cIj5cbiAgICAgICAgICAgICAgPHNlbGVjdCB2YWx1ZT17c2VsZWN0ZWREYXRhc2V0fSBvbkNoYW5nZT17b25TZWxlY3REYXRhc2V0fT5cbiAgICAgICAgICAgICAgICB7W2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5leHBvcnREYXRhLmFsbERhdGFzZXRzJ30pXVxuICAgICAgICAgICAgICAgICAgLmNvbmNhdChPYmplY3Qua2V5cyhkYXRhc2V0cykpXG4gICAgICAgICAgICAgICAgICAubWFwKGQgPT4gKFxuICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIGtleT17ZH0gdmFsdWU9e2R9PlxuICAgICAgICAgICAgICAgICAgICAgIHsoZGF0YXNldHNbZF0gJiYgZGF0YXNldHNbZF0ubGFiZWwpIHx8IGR9XG4gICAgICAgICAgICAgICAgICAgIDwvb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgIDwvc2VsZWN0PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9TdHlsZWRFeHBvcnRTZWN0aW9uPlxuICAgICAgICAgIDxTdHlsZWRFeHBvcnRTZWN0aW9uPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpdGxlXCI+XG4gICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5leHBvcnREYXRhLmRhdGFUeXBlVGl0bGUnfSAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzdWJ0aXRsZVwiPlxuICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnbW9kYWwuZXhwb3J0RGF0YS5kYXRhVHlwZVN1YnRpdGxlJ30gLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwic2VsZWN0aW9uXCI+XG4gICAgICAgICAgICAgIHtzdXBwb3J0ZWREYXRhVHlwZXMubWFwKG9wID0+IChcbiAgICAgICAgICAgICAgICA8U3R5bGVkVHlwZVxuICAgICAgICAgICAgICAgICAga2V5PXtvcC5pZH1cbiAgICAgICAgICAgICAgICAgIHNlbGVjdGVkPXtkYXRhVHlwZSA9PT0gb3AuaWR9XG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvcC5hdmFpbGFibGUgJiYgb25DaGFuZ2VFeHBvcnREYXRhVHlwZShvcC5pZCl9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPEZpbGVUeXBlIGV4dD17b3AubGFiZWx9IGhlaWdodD1cIjgwcHhcIiBmb250U2l6ZT1cIjExcHhcIiAvPlxuICAgICAgICAgICAgICAgICAge2RhdGFUeXBlID09PSBvcC5pZCAmJiA8Q2hlY2tNYXJrIC8+fVxuICAgICAgICAgICAgICAgIDwvU3R5bGVkVHlwZT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L1N0eWxlZEV4cG9ydFNlY3Rpb24+XG4gICAgICAgICAgPFN0eWxlZEV4cG9ydFNlY3Rpb24+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGl0bGVcIj5cbiAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J21vZGFsLmV4cG9ydERhdGEuZGF0YVR5cGVUaXRsZSd9IC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInN1YnRpdGxlXCI+XG4gICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5leHBvcnREYXRhLmZpbHRlckRhdGFTdWJ0aXRsZSd9IC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInNlbGVjdGlvblwiPlxuICAgICAgICAgICAgICA8U3R5bGVkRmlsdGVyZWRPcHRpb25cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJ1bmZpbHRlcmVkLW9wdGlvblwiXG4gICAgICAgICAgICAgICAgc2VsZWN0ZWQ9eyFmaWx0ZXJlZH1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZUV4cG9ydEZpbHRlcmVkKGZhbHNlKX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmlsdGVyLW9wdGlvbi10aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5leHBvcnREYXRhLnVuZmlsdGVyZWREYXRhJ30gLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpbHRlci1vcHRpb24tc3VidGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgIHtnZXREYXRhUm93Q291bnQoZGF0YXNldHMsIHNlbGVjdGVkRGF0YXNldCwgZmFsc2UsIGludGwpfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIHshZmlsdGVyZWQgJiYgPENoZWNrTWFyayAvPn1cbiAgICAgICAgICAgICAgPC9TdHlsZWRGaWx0ZXJlZE9wdGlvbj5cbiAgICAgICAgICAgICAgPFN0eWxlZEZpbHRlcmVkT3B0aW9uXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZmlsdGVyZWQtb3B0aW9uXCJcbiAgICAgICAgICAgICAgICBzZWxlY3RlZD17ZmlsdGVyZWR9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VFeHBvcnRGaWx0ZXJlZCh0cnVlKX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmlsdGVyLW9wdGlvbi10aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5leHBvcnREYXRhLmZpbHRlcmVkRGF0YSd9IC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWx0ZXItb3B0aW9uLXN1YnRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICB7Z2V0RGF0YVJvd0NvdW50KGRhdGFzZXRzLCBzZWxlY3RlZERhdGFzZXQsIHRydWUsIGludGwpfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIHtmaWx0ZXJlZCAmJiA8Q2hlY2tNYXJrIC8+fVxuICAgICAgICAgICAgICA8L1N0eWxlZEZpbHRlcmVkT3B0aW9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9TdHlsZWRFeHBvcnRTZWN0aW9uPlxuICAgICAgICAgIHtzaG93VGlsZWREYXRhc2V0V2FybmluZyA/IChcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGl0bGVcIj5cbiAgICAgICAgICAgICAgPFN0eWxlZFdhcm5pbmc+XG4gICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5leHBvcnREYXRhLnRpbGVkRGF0YXNldFdhcm5pbmcnfSAvPlxuICAgICAgICAgICAgICA8L1N0eWxlZFdhcm5pbmc+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L1N0eWxlZE1vZGFsQ29udGVudD5cbiAgICApO1xuICB9O1xuXG4gIHJldHVybiBpbmplY3RJbnRsKEV4cG9ydERhdGFNb2RhbCk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBFeHBvcnREYXRhTW9kYWxGYWN0b3J5O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsVUFBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUsVUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsYUFBQSxHQUFBSCxPQUFBO0FBR0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssaUJBQUEsR0FBQUwsT0FBQTtBQU9BLElBQUFNLFdBQUEsR0FBQU4sT0FBQTtBQUE0RCxTQUFBTyx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQVQsd0JBQUFTLENBQUEsRUFBQUUsQ0FBQSxTQUFBQSxDQUFBLElBQUFGLENBQUEsSUFBQUEsQ0FBQSxDQUFBSSxVQUFBLFNBQUFKLENBQUEsZUFBQUEsQ0FBQSxnQkFBQUssT0FBQSxDQUFBTCxDQUFBLDBCQUFBQSxDQUFBLHNCQUFBQSxDQUFBLFFBQUFHLENBQUEsR0FBQUosd0JBQUEsQ0FBQUcsQ0FBQSxPQUFBQyxDQUFBLElBQUFBLENBQUEsQ0FBQUcsR0FBQSxDQUFBTixDQUFBLFVBQUFHLENBQUEsQ0FBQUksR0FBQSxDQUFBUCxDQUFBLE9BQUFRLENBQUEsS0FBQUMsU0FBQSxVQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLENBQUEsSUFBQWQsQ0FBQSxvQkFBQWMsQ0FBQSxPQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQWhCLENBQUEsRUFBQWMsQ0FBQSxTQUFBRyxDQUFBLEdBQUFQLENBQUEsR0FBQUMsTUFBQSxDQUFBRSx3QkFBQSxDQUFBYixDQUFBLEVBQUFjLENBQUEsVUFBQUcsQ0FBQSxLQUFBQSxDQUFBLENBQUFWLEdBQUEsSUFBQVUsQ0FBQSxDQUFBQyxHQUFBLElBQUFQLE1BQUEsQ0FBQUMsY0FBQSxDQUFBSixDQUFBLEVBQUFNLENBQUEsRUFBQUcsQ0FBQSxJQUFBVCxDQUFBLENBQUFNLENBQUEsSUFBQWQsQ0FBQSxDQUFBYyxDQUFBLFlBQUFOLENBQUEsY0FBQVIsQ0FBQSxFQUFBRyxDQUFBLElBQUFBLENBQUEsQ0FBQWUsR0FBQSxDQUFBbEIsQ0FBQSxFQUFBUSxDQUFBLEdBQUFBLENBQUE7QUFsQjVEO0FBQ0E7O0FBbUJBLElBQU1XLGVBQWUsR0FBRyxTQUFsQkEsZUFBZUEsQ0FDbkJDLFFBQWtCLEVBQ2xCQyxlQUFtQyxFQUNuQ0MsUUFBaUIsRUFDakJDLElBQWUsRUFDWjtFQUNILElBQUlGLGVBQWUsS0FBS0csU0FBUyxFQUFFO0lBQ2pDO0VBQ0Y7RUFDQSxJQUFNQyxZQUFZLEdBQUdMLFFBQVEsQ0FBQ0MsZUFBZSxDQUFDO0VBQzlDLElBQUksQ0FBQ0ksWUFBWSxFQUFFO0lBQ2pCLE9BQU9GLElBQUksQ0FBQ0csYUFBYSxDQUN2QjtNQUFDQyxFQUFFLEVBQUU7SUFBNEIsQ0FBQyxFQUNsQztNQUFDQyxTQUFTLEVBQUVqQixNQUFNLENBQUNrQixJQUFJLENBQUNULFFBQVEsQ0FBQyxDQUFDVTtJQUFNLENBQzFDLENBQUM7RUFDSDtFQUNBLElBQU9DLGFBQWEsR0FBb0JOLFlBQVksQ0FBN0NNLGFBQWE7SUFBRUMsY0FBYyxHQUFJUCxZQUFZLENBQTlCTyxjQUFjO0VBRXBDLElBQUlWLFFBQVEsSUFBSSxDQUFDVSxjQUFjLEVBQUU7SUFDL0IsT0FBTyxHQUFHO0VBQ1o7RUFFQSxJQUFNQyxRQUFRLEdBQUdYLFFBQVEsR0FBR1UsY0FBYyxhQUFkQSxjQUFjLHVCQUFkQSxjQUFjLENBQUVGLE1BQU0sR0FBR0MsYUFBYSxDQUFDRyxPQUFPLENBQUMsQ0FBQztFQUU1RSxPQUFPWCxJQUFJLENBQUNHLGFBQWEsQ0FDdkI7SUFBQ0MsRUFBRSxFQUFFO0VBQTJCLENBQUMsRUFDakM7SUFBQ00sUUFBUSxFQUFFQSxRQUFRLGFBQVJBLFFBQVEsdUJBQVJBLFFBQVEsQ0FBRUUsY0FBYyxDQUFDO0VBQUMsQ0FDdkMsQ0FBQztBQUNILENBQUM7QUFvQkQsSUFBTUMsc0JBQXNCLEdBQUcsU0FBekJBLHNCQUFzQkEsQ0FBQSxFQUFTO0VBQ25DLElBQU1DLGVBQWUsR0FBRyxTQUFsQkEsZUFBZUEsQ0FBQUMsSUFBQSxFQVdPO0lBQUEsSUFBQUMscUJBQUEsR0FBQUQsSUFBQSxDQVYxQkUsa0JBQWtCO01BQWxCQSxrQkFBa0IsR0FBQUQscUJBQUEsY0FBR0UsbUNBQXdCLEdBQUFGLHFCQUFBO01BQzdDbkIsUUFBUSxHQUFBa0IsSUFBQSxDQUFSbEIsUUFBUTtNQUNSQyxlQUFlLEdBQUFpQixJQUFBLENBQWZqQixlQUFlO01BQ2ZxQixRQUFRLEdBQUFKLElBQUEsQ0FBUkksUUFBUTtNQUNScEIsUUFBUSxHQUFBZ0IsSUFBQSxDQUFSaEIsUUFBUTtNQUNScUIsc0JBQXNCLEdBQUFMLElBQUEsQ0FBdEJLLHNCQUFzQjtNQUN0QkMsc0JBQXNCLEdBQUFOLElBQUEsQ0FBdEJNLHNCQUFzQjtNQUN0QkMsY0FBYyxHQUFBUCxJQUFBLENBQWRPLGNBQWM7TUFDZEMsNkJBQTZCLEdBQUFSLElBQUEsQ0FBN0JRLDZCQUE2QjtNQUM3QnZCLElBQUksR0FBQWUsSUFBQSxDQUFKZixJQUFJO0lBRUosSUFBQXdCLGdCQUFTLEVBQUMsWUFBTTtNQUNkLElBQU1DLFdBQVcsR0FBRzNCLGVBQWUsSUFBSVYsTUFBTSxDQUFDa0IsSUFBSSxDQUFDVCxRQUFRLENBQUM7TUFDNUR5QixjQUFjLENBQUNHLFdBQVcsQ0FBQztNQUMzQjtJQUNGLENBQUMsRUFBRSxFQUFFLENBQUM7SUFFTixJQUFNQyxlQUE0RCxHQUFHLFNBQS9EQSxlQUE0REEsQ0FBQUMsS0FBQSxFQUEwQjtNQUFBLElBQVpDLEtBQUssR0FBQUQsS0FBQSxDQUFkRSxNQUFNLENBQUdELEtBQUs7TUFDbkZOLGNBQWMsQ0FBQ00sS0FBSyxDQUFDO01BQ3JCTCw2QkFBNkIsQ0FBQ0ssS0FBSyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxJQUFNRSxpQkFBaUIsR0FBR2hDLGVBQWUsR0FBRyxDQUFDRCxRQUFRLENBQUNDLGVBQWUsQ0FBQyxHQUFHLElBQUk7SUFDN0UsSUFBTWlDLHVCQUF1QixHQUFHM0MsTUFBTSxDQUFDa0IsSUFBSSxDQUFDVCxRQUFRLENBQUMsQ0FBQ21DLElBQUksQ0FBQyxVQUFBQyxTQUFTLEVBQUk7TUFDdEUsT0FDRSxDQUFDcEMsUUFBUSxDQUFDb0MsU0FBUyxDQUFDLENBQUNDLElBQUksS0FBS0Msc0JBQVcsQ0FBQ0MsV0FBVyxJQUNuRHZDLFFBQVEsQ0FBQ29DLFNBQVMsQ0FBQyxDQUFDQyxJQUFJLEtBQUtDLHNCQUFXLENBQUNFLFdBQVcsSUFDcER4QyxRQUFRLENBQUNvQyxTQUFTLENBQUMsQ0FBQ0MsSUFBSSxLQUFLQyxzQkFBVyxDQUFDRyxRQUFRLElBQ2pEekMsUUFBUSxDQUFDb0MsU0FBUyxDQUFDLENBQUNDLElBQUksS0FBS0Msc0JBQVcsQ0FBQ0ksT0FBTyxJQUNoRDFDLFFBQVEsQ0FBQ29DLFNBQVMsQ0FBQyxDQUFDQyxJQUFJLEtBQUtDLHNCQUFXLENBQUNLLE1BQU0sTUFDaEQxQyxlQUFlLEtBQUttQyxTQUFTLElBQUlILGlCQUFpQixDQUFDO0lBRXhELENBQUMsQ0FBQztJQUVGLG9CQUNFL0QsTUFBQSxZQUFBMEUsYUFBQSxDQUFDbkUsaUJBQUEsQ0FBQW9FLGtCQUFrQjtNQUFDQyxTQUFTLEVBQUM7SUFBbUIsZ0JBQy9DNUUsTUFBQSxZQUFBMEUsYUFBQSwyQkFDRTFFLE1BQUEsWUFBQTBFLGFBQUEsQ0FBQ25FLGlCQUFBLENBQUFzRSxtQkFBbUIscUJBQ2xCN0UsTUFBQSxZQUFBMEUsYUFBQTtNQUFLRSxTQUFTLEVBQUM7SUFBYSxnQkFDMUI1RSxNQUFBLFlBQUEwRSxhQUFBO01BQUtFLFNBQVMsRUFBQztJQUFPLGdCQUNwQjVFLE1BQUEsWUFBQTBFLGFBQUEsQ0FBQ3JFLGFBQUEsQ0FBQXlFLGdCQUFnQjtNQUFDekMsRUFBRSxFQUFFO0lBQWdDLENBQUUsQ0FDckQsQ0FBQyxlQUNOckMsTUFBQSxZQUFBMEUsYUFBQTtNQUFLRSxTQUFTLEVBQUM7SUFBVSxnQkFDdkI1RSxNQUFBLFlBQUEwRSxhQUFBLENBQUNyRSxhQUFBLENBQUF5RSxnQkFBZ0I7TUFBQ3pDLEVBQUUsRUFBRTtJQUFtQyxDQUFFLENBQ3hELENBQ0YsQ0FBQyxlQUNOckMsTUFBQSxZQUFBMEUsYUFBQTtNQUFLRSxTQUFTLEVBQUM7SUFBVyxnQkFDeEI1RSxNQUFBLFlBQUEwRSxhQUFBO01BQVFiLEtBQUssRUFBRTlCLGVBQWdCO01BQUNnRCxRQUFRLEVBQUVwQjtJQUFnQixHQUN2RCxDQUFDMUIsSUFBSSxDQUFDRyxhQUFhLENBQUM7TUFBQ0MsRUFBRSxFQUFFO0lBQThCLENBQUMsQ0FBQyxDQUFDLENBQ3hEMkMsTUFBTSxDQUFDM0QsTUFBTSxDQUFDa0IsSUFBSSxDQUFDVCxRQUFRLENBQUMsQ0FBQyxDQUM3Qm1ELEdBQUcsQ0FBQyxVQUFBQyxDQUFDO01BQUEsb0JBQ0psRixNQUFBLFlBQUEwRSxhQUFBO1FBQVFTLEdBQUcsRUFBRUQsQ0FBRTtRQUFDckIsS0FBSyxFQUFFcUI7TUFBRSxHQUNyQnBELFFBQVEsQ0FBQ29ELENBQUMsQ0FBQyxJQUFJcEQsUUFBUSxDQUFDb0QsQ0FBQyxDQUFDLENBQUNFLEtBQUssSUFBS0YsQ0FDakMsQ0FBQztJQUFBLENBQ1YsQ0FDRyxDQUNMLENBQ2MsQ0FBQyxlQUN0QmxGLE1BQUEsWUFBQTBFLGFBQUEsQ0FBQ25FLGlCQUFBLENBQUFzRSxtQkFBbUIscUJBQ2xCN0UsTUFBQSxZQUFBMEUsYUFBQTtNQUFLRSxTQUFTLEVBQUM7SUFBYSxnQkFDMUI1RSxNQUFBLFlBQUEwRSxhQUFBO01BQUtFLFNBQVMsRUFBQztJQUFPLGdCQUNwQjVFLE1BQUEsWUFBQTBFLGFBQUEsQ0FBQ3JFLGFBQUEsQ0FBQXlFLGdCQUFnQjtNQUFDekMsRUFBRSxFQUFFO0lBQWlDLENBQUUsQ0FDdEQsQ0FBQyxlQUNOckMsTUFBQSxZQUFBMEUsYUFBQTtNQUFLRSxTQUFTLEVBQUM7SUFBVSxnQkFDdkI1RSxNQUFBLFlBQUEwRSxhQUFBLENBQUNyRSxhQUFBLENBQUF5RSxnQkFBZ0I7TUFBQ3pDLEVBQUUsRUFBRTtJQUFvQyxDQUFFLENBQ3pELENBQ0YsQ0FBQyxlQUNOckMsTUFBQSxZQUFBMEUsYUFBQTtNQUFLRSxTQUFTLEVBQUM7SUFBVyxHQUN2QjFCLGtCQUFrQixDQUFDK0IsR0FBRyxDQUFDLFVBQUFJLEVBQUU7TUFBQSxvQkFDeEJyRixNQUFBLFlBQUEwRSxhQUFBLENBQUNuRSxpQkFBQSxDQUFBK0UsVUFBVTtRQUNUSCxHQUFHLEVBQUVFLEVBQUUsQ0FBQ2hELEVBQUc7UUFDWGtELFFBQVEsRUFBRW5DLFFBQVEsS0FBS2lDLEVBQUUsQ0FBQ2hELEVBQUc7UUFDN0JtRCxPQUFPLEVBQUUsU0FBVEEsT0FBT0EsQ0FBQTtVQUFBLE9BQVFILEVBQUUsQ0FBQ0ksU0FBUyxJQUFJcEMsc0JBQXNCLENBQUNnQyxFQUFFLENBQUNoRCxFQUFFLENBQUM7UUFBQTtNQUFDLGdCQUU3RHJDLE1BQUEsWUFBQTBFLGFBQUEsQ0FBQ3BFLE1BQUEsQ0FBQW9GLFFBQVE7UUFBQ0MsR0FBRyxFQUFFTixFQUFFLENBQUNELEtBQU07UUFBQ1EsTUFBTSxFQUFDLE1BQU07UUFBQ0MsUUFBUSxFQUFDO01BQU0sQ0FBRSxDQUFDLEVBQ3hEekMsUUFBUSxLQUFLaUMsRUFBRSxDQUFDaEQsRUFBRSxpQkFBSXJDLE1BQUEsWUFBQTBFLGFBQUEsQ0FBQ25FLGlCQUFBLENBQUF1RixTQUFTLE1BQUUsQ0FDekIsQ0FBQztJQUFBLENBQ2QsQ0FDRSxDQUNjLENBQUMsZUFDdEI5RixNQUFBLFlBQUEwRSxhQUFBLENBQUNuRSxpQkFBQSxDQUFBc0UsbUJBQW1CLHFCQUNsQjdFLE1BQUEsWUFBQTBFLGFBQUE7TUFBS0UsU0FBUyxFQUFDO0lBQWEsZ0JBQzFCNUUsTUFBQSxZQUFBMEUsYUFBQTtNQUFLRSxTQUFTLEVBQUM7SUFBTyxnQkFDcEI1RSxNQUFBLFlBQUEwRSxhQUFBLENBQUNyRSxhQUFBLENBQUF5RSxnQkFBZ0I7TUFBQ3pDLEVBQUUsRUFBRTtJQUFpQyxDQUFFLENBQ3RELENBQUMsZUFDTnJDLE1BQUEsWUFBQTBFLGFBQUE7TUFBS0UsU0FBUyxFQUFDO0lBQVUsZ0JBQ3ZCNUUsTUFBQSxZQUFBMEUsYUFBQSxDQUFDckUsYUFBQSxDQUFBeUUsZ0JBQWdCO01BQUN6QyxFQUFFLEVBQUU7SUFBc0MsQ0FBRSxDQUMzRCxDQUNGLENBQUMsZUFDTnJDLE1BQUEsWUFBQTBFLGFBQUE7TUFBS0UsU0FBUyxFQUFDO0lBQVcsZ0JBQ3hCNUUsTUFBQSxZQUFBMEUsYUFBQSxDQUFDbkUsaUJBQUEsQ0FBQXdGLG9CQUFvQjtNQUNuQm5CLFNBQVMsRUFBQyxtQkFBbUI7TUFDN0JXLFFBQVEsRUFBRSxDQUFDdkQsUUFBUztNQUNwQndELE9BQU8sRUFBRSxTQUFUQSxPQUFPQSxDQUFBO1FBQUEsT0FBUWxDLHNCQUFzQixDQUFDLEtBQUssQ0FBQztNQUFBO0lBQUMsZ0JBRTdDdEQsTUFBQSxZQUFBMEUsYUFBQTtNQUFLRSxTQUFTLEVBQUM7SUFBcUIsZ0JBQ2xDNUUsTUFBQSxZQUFBMEUsYUFBQSxDQUFDckUsYUFBQSxDQUFBeUUsZ0JBQWdCO01BQUN6QyxFQUFFLEVBQUU7SUFBa0MsQ0FBRSxDQUN2RCxDQUFDLGVBQ05yQyxNQUFBLFlBQUEwRSxhQUFBO01BQUtFLFNBQVMsRUFBQztJQUF3QixHQUNwQy9DLGVBQWUsQ0FBQ0MsUUFBUSxFQUFFQyxlQUFlLEVBQUUsS0FBSyxFQUFFRSxJQUFJLENBQ3BELENBQUMsRUFDTCxDQUFDRCxRQUFRLGlCQUFJaEMsTUFBQSxZQUFBMEUsYUFBQSxDQUFDbkUsaUJBQUEsQ0FBQXVGLFNBQVMsTUFBRSxDQUNOLENBQUMsZUFDdkI5RixNQUFBLFlBQUEwRSxhQUFBLENBQUNuRSxpQkFBQSxDQUFBd0Ysb0JBQW9CO01BQ25CbkIsU0FBUyxFQUFDLGlCQUFpQjtNQUMzQlcsUUFBUSxFQUFFdkQsUUFBUztNQUNuQndELE9BQU8sRUFBRSxTQUFUQSxPQUFPQSxDQUFBO1FBQUEsT0FBUWxDLHNCQUFzQixDQUFDLElBQUksQ0FBQztNQUFBO0lBQUMsZ0JBRTVDdEQsTUFBQSxZQUFBMEUsYUFBQTtNQUFLRSxTQUFTLEVBQUM7SUFBcUIsZ0JBQ2xDNUUsTUFBQSxZQUFBMEUsYUFBQSxDQUFDckUsYUFBQSxDQUFBeUUsZ0JBQWdCO01BQUN6QyxFQUFFLEVBQUU7SUFBZ0MsQ0FBRSxDQUNyRCxDQUFDLGVBQ05yQyxNQUFBLFlBQUEwRSxhQUFBO01BQUtFLFNBQVMsRUFBQztJQUF3QixHQUNwQy9DLGVBQWUsQ0FBQ0MsUUFBUSxFQUFFQyxlQUFlLEVBQUUsSUFBSSxFQUFFRSxJQUFJLENBQ25ELENBQUMsRUFDTEQsUUFBUSxpQkFBSWhDLE1BQUEsWUFBQTBFLGFBQUEsQ0FBQ25FLGlCQUFBLENBQUF1RixTQUFTLE1BQUUsQ0FDTCxDQUNuQixDQUNjLENBQUMsRUFDckI5Qix1QkFBdUIsZ0JBQ3RCaEUsTUFBQSxZQUFBMEUsYUFBQTtNQUFLRSxTQUFTLEVBQUM7SUFBTyxnQkFDcEI1RSxNQUFBLFlBQUEwRSxhQUFBLENBQUNsRSxXQUFBLENBQUF3RixhQUFhLHFCQUNaaEcsTUFBQSxZQUFBMEUsYUFBQSxDQUFDckUsYUFBQSxDQUFBeUUsZ0JBQWdCO01BQUN6QyxFQUFFLEVBQUU7SUFBdUMsQ0FBRSxDQUNsRCxDQUNaLENBQUMsR0FDSixJQUNELENBQ2EsQ0FBQztFQUV6QixDQUFDO0VBRUQsT0FBTyxJQUFBNEQscUJBQVUsRUFBQ2xELGVBQWUsQ0FBQztBQUNwQyxDQUFDO0FBQUMsSUFBQW1ELFFBQUEsR0FBQUMsT0FBQSxjQUVhckQsc0JBQXNCIiwiaWdub3JlTGlzdCI6W119
@@ -1,9 +1,13 @@
1
1
  import React from 'react';
2
- export declare const StyledExportMapSection: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<Omit<import("styled-components/dist/types").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "disabled"> & import("../../common/styled-components").StyledExportSectionProps, "ref"> & {
3
- ref?: ((instance: HTMLDivElement | null) => void | React.DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof React.DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | React.RefObject<HTMLDivElement> | null | undefined;
4
- }, never>> & Omit<import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").Substitute<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, import("../../common/styled-components").StyledExportSectionProps>>, keyof React.Component<any, {}, any>>;
5
- export declare const StyledWarning: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>>;
6
- export declare const StyledExportLink: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<React.DetailedHTMLProps<React.AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, never>>;
2
+ export declare const StyledExportMapSection: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "disabled"> & import("../../common/styled-components").StyledExportSectionProps, never> & Partial<Pick<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "disabled"> & import("../../common/styled-components").StyledExportSectionProps, never>>, "as" | "forwardedAs"> & {
3
+ as?: import("styled-components").WebTarget | undefined;
4
+ forwardedAs?: import("styled-components").WebTarget | undefined;
5
+ }, never> & Partial<Pick<import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "disabled"> & import("../../common/styled-components").StyledExportSectionProps, never> & Partial<Pick<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "disabled"> & import("../../common/styled-components").StyledExportSectionProps, never>>, "as" | "forwardedAs"> & {
6
+ as?: import("styled-components").WebTarget | undefined;
7
+ forwardedAs?: import("styled-components").WebTarget | undefined;
8
+ }, never>>> & string;
9
+ export declare const StyledWarning: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never> & Partial<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>>> & string;
10
+ export declare const StyledExportLink: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<React.DetailedHTMLProps<React.AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, never> & Partial<Pick<React.DetailedHTMLProps<React.AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, never>>> & string;
7
11
  export declare const ExportMapLink: ({ children, ...props }: {
8
12
  [x: string]: any;
9
13
  children: any;
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import { ExportVideo } from '@kepler.gl/types';
3
+ import { MapStyle } from '@kepler.gl/reducers';
4
+ import { UIStateActions, VisStateActions } from '@kepler.gl/actions';
5
+ export type VideoConfiguration = {
6
+ mediaType?: string;
7
+ cameraPreset?: string;
8
+ fileName?: string;
9
+ resolution?: string;
10
+ durationMs?: number;
11
+ swipeStartPct?: number;
12
+ swipeEndPct?: number;
13
+ swipeEasing?: 'linear' | 'ease-in-out';
14
+ };
15
+ export interface ExportVideoModalProps {
16
+ mapboxApiAccessToken: string;
17
+ mapboxApiUrl?: string;
18
+ mapState: any;
19
+ mapStyle: MapStyle;
20
+ visState: any;
21
+ exportVideo: ExportVideo;
22
+ containerW: number;
23
+ visStateActions: typeof VisStateActions;
24
+ uiStateActions: typeof UIStateActions;
25
+ onClose: () => void;
26
+ }
27
+ declare const ExportVideoModalFactory: () => React.FC<ExportVideoModalProps>;
28
+ export default ExportVideoModalFactory;