@kepler.gl/components 3.2.6 → 3.3.0-alpha.1

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 (370) 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 +5 -5
  34. package/dist/bottom-widget.js +12 -6
  35. package/dist/common/action-panel.d.ts +3 -3
  36. package/dist/common/animation-control/animation-control.d.ts +2 -1
  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 +5 -3
  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 +4 -4
  46. package/dist/common/color-legend.js +3 -3
  47. package/dist/common/column-stats-chart.d.ts +3 -3
  48. package/dist/common/data-table/button.d.ts +1 -1
  49. package/dist/common/data-table/canvas.d.ts +0 -1
  50. package/dist/common/data-table/cell-size.d.ts +2 -2
  51. package/dist/common/data-table/display-format.d.ts +1 -1
  52. package/dist/common/data-table/header-cell.d.ts +2 -2
  53. package/dist/common/data-table/index.d.ts +8 -10
  54. package/dist/common/data-table/index.js +3 -3
  55. package/dist/common/data-table/option-dropdown.d.ts +1 -1
  56. package/dist/common/field-selector.d.ts +5 -5
  57. package/dist/common/field-token.d.ts +1 -1
  58. package/dist/common/file-uploader/file-drop.d.ts +1 -1
  59. package/dist/common/file-uploader/file-upload-progress.d.ts +1 -1
  60. package/dist/common/file-uploader/file-upload.d.ts +1 -1
  61. package/dist/common/file-uploader/file-upload.js +4 -4
  62. package/dist/common/flex-container.d.ts +2 -3
  63. package/dist/common/histogram-plot.d.ts +1 -1
  64. package/dist/common/histogram-plot.js +102 -53
  65. package/dist/common/icon-button.d.ts +16 -16
  66. package/dist/common/icons/3d-models/airplane.d.ts +14 -0
  67. package/dist/common/icons/3d-models/airplane.js +104 -0
  68. package/dist/common/icons/3d-models/bicycle.d.ts +14 -0
  69. package/dist/common/icons/3d-models/bicycle.js +426 -0
  70. package/dist/common/icons/3d-models/boeing.d.ts +14 -0
  71. package/dist/common/icons/3d-models/boeing.js +119 -0
  72. package/dist/common/icons/3d-models/car.d.ts +14 -0
  73. package/dist/common/icons/3d-models/car.js +110 -0
  74. package/dist/common/icons/3d-models/cargoship.d.ts +14 -0
  75. package/dist/common/icons/3d-models/cargoship.js +246 -0
  76. package/dist/common/icons/3d-models/evtol.d.ts +14 -0
  77. package/dist/common/icons/3d-models/evtol.js +134 -0
  78. package/dist/common/icons/3d-models/glider.d.ts +14 -0
  79. package/dist/common/icons/3d-models/glider.js +62 -0
  80. package/dist/common/icons/3d-models/helicopter.d.ts +14 -0
  81. package/dist/common/icons/3d-models/helicopter.js +110 -0
  82. package/dist/common/icons/3d-models/scooter.d.ts +14 -0
  83. package/dist/common/icons/3d-models/scooter.js +159 -0
  84. package/dist/common/icons/3d-models/semitruck.d.ts +14 -0
  85. package/dist/common/icons/3d-models/semitruck.js +177 -0
  86. package/dist/common/icons/3d-models/truck.d.ts +14 -0
  87. package/dist/common/icons/3d-models/truck.js +122 -0
  88. package/dist/common/icons/anchor_window.d.ts +1 -8
  89. package/dist/common/icons/anchor_window.js +17 -10
  90. package/dist/common/icons/annotation-text.d.ts +9 -0
  91. package/dist/common/icons/annotation-text.js +56 -0
  92. package/dist/common/icons/base.d.ts +1 -1
  93. package/dist/common/icons/close.js +1 -1
  94. package/dist/common/icons/effects/distance-fog.d.ts +14 -0
  95. package/dist/common/icons/effects/distance-fog.js +79 -0
  96. package/dist/common/icons/effects/surface-fog.d.ts +14 -0
  97. package/dist/common/icons/effects/surface-fog.js +86 -0
  98. package/dist/common/icons/index.d.ts +3 -0
  99. package/dist/common/icons/index.js +22 -1
  100. package/dist/common/item-selector/chickleted-input.d.ts +5 -5
  101. package/dist/common/item-selector/chickleted-input.js +5 -5
  102. package/dist/common/item-selector/dropdown-list.d.ts +3 -3
  103. package/dist/common/item-selector/dropdown-select.d.ts +7 -7
  104. package/dist/common/item-selector/item-selector.d.ts +2 -2
  105. package/dist/common/item-selector/typeahead.d.ts +3 -3
  106. package/dist/common/line-chart.d.ts +4 -1
  107. package/dist/common/line-chart.js +59 -12
  108. package/dist/common/loading-spinner.d.ts +2 -2
  109. package/dist/common/modal.d.ts +5 -5
  110. package/dist/common/portaled.d.ts +8 -25
  111. package/dist/common/progress-bar.d.ts +1 -1
  112. package/dist/common/radius-legend.d.ts +1 -1
  113. package/dist/common/range-brush.d.ts +1 -1
  114. package/dist/common/range-plot.d.ts +1 -1
  115. package/dist/common/range-plot.js +4 -2
  116. package/dist/common/range-slider.d.ts +2 -0
  117. package/dist/common/range-slider.js +108 -43
  118. package/dist/common/slider/mouse-event.d.ts +1 -1
  119. package/dist/common/slider/slider-bar-handle.d.ts +2 -2
  120. package/dist/common/slider/slider-handle.d.ts +3 -3
  121. package/dist/common/slider/slider.d.ts +6 -2
  122. package/dist/common/slider/slider.js +78 -35
  123. package/dist/common/styled-components.d.ts +158 -159
  124. package/dist/common/styled-components.js +2 -2
  125. package/dist/common/sync-timeline-control.d.ts +3 -3
  126. package/dist/common/time-range-slider-time-title.d.ts +2 -2
  127. package/dist/common/time-range-slider-time-title.js +5 -5
  128. package/dist/common/time-range-slider.d.ts +4 -3
  129. package/dist/common/time-range-slider.js +19 -7
  130. package/dist/common/timeline-helpers.d.ts +3 -0
  131. package/dist/common/timeline-helpers.js +57 -0
  132. package/dist/common/timeline-slider.d.ts +1 -1
  133. package/dist/common/timeline-slider.js +21 -12
  134. package/dist/common/tippy-tooltip.d.ts +1 -1
  135. package/dist/common/toolbar-item.d.ts +1 -1
  136. package/dist/common/toolbar-item.js +5 -5
  137. package/dist/common/toolbar.d.ts +2 -2
  138. package/dist/common/toolbar.js +4 -4
  139. package/dist/common/vertical-toolbar.d.ts +2 -3
  140. package/dist/container.d.ts +6 -6
  141. package/dist/context.d.ts +3 -3
  142. package/dist/dnd-context.d.ts +2 -2
  143. package/dist/editor/editor.d.ts +1 -1
  144. package/dist/editor/editor.js +1 -1
  145. package/dist/editor/feature-action-panel.d.ts +1 -1
  146. package/dist/editor/feature-action-panel.js +1 -1
  147. package/dist/effects/compact-color-picker.d.ts +1 -1
  148. package/dist/effects/effect-configurator.d.ts +5 -4
  149. package/dist/effects/effect-configurator.js +243 -44
  150. package/dist/effects/effect-list.d.ts +1 -1
  151. package/dist/effects/effect-manager.d.ts +3 -3
  152. package/dist/effects/effect-manager.js +11 -4
  153. package/dist/effects/effect-panel-header.d.ts +2 -2
  154. package/dist/effects/effect-panel-header.js +35 -18
  155. package/dist/effects/effect-panel.d.ts +6 -6
  156. package/dist/effects/effect-panel.js +61 -86
  157. package/dist/effects/effect-time-configurator.d.ts +1 -1
  158. package/dist/effects/effect-time-configurator.js +10 -10
  159. package/dist/effects/effect-time-selector.d.ts +1 -1
  160. package/dist/effects/effect-time-slider.d.ts +3 -3
  161. package/dist/effects/effect-type-dropdown-list.d.ts +3 -2
  162. package/dist/effects/effect-type-dropdown-list.js +1 -1
  163. package/dist/effects/effect-type-list-item.d.ts +2 -1
  164. package/dist/effects/effect-type-list-item.js +23 -7
  165. package/dist/effects/effect-type-selector.d.ts +3 -2
  166. package/dist/effects/effect-type-selector.js +2 -2
  167. package/dist/effects/side-panel-title.d.ts +1 -1
  168. package/dist/effects/surface-fog-section.d.ts +14 -0
  169. package/dist/effects/surface-fog-section.js +263 -0
  170. package/dist/effects/timezone-selector.d.ts +1 -1
  171. package/dist/filters/components.d.ts +2 -3
  172. package/dist/filters/filter-panels/types.d.ts +4 -4
  173. package/dist/filters/index.d.ts +1 -0
  174. package/dist/filters/index.js +8 -1
  175. package/dist/filters/polygon-filter.js +2 -2
  176. package/dist/filters/time-range-filter.js +3 -1
  177. package/dist/filters/time-widget-settings.d.ts +14 -0
  178. package/dist/filters/time-widget-settings.js +312 -0
  179. package/dist/filters/time-widget-top.d.ts +2 -3
  180. package/dist/filters/time-widget-top.js +32 -39
  181. package/dist/filters/time-widget.d.ts +3 -2
  182. package/dist/filters/time-widget.js +285 -9
  183. package/dist/filters/types.d.ts +11 -11
  184. package/dist/filters/types.js +1 -1
  185. package/dist/geocoder/geocoder.d.ts +7 -4
  186. package/dist/geocoder/geocoder.js +65 -14
  187. package/dist/geocoder-panel.d.ts +11 -2
  188. package/dist/geocoder-panel.js +8 -4
  189. package/dist/hooks/use-cloud-list-provider.d.ts +1 -1
  190. package/dist/hooks/use-dnd-effects.d.ts +1 -1
  191. package/dist/hooks/use-dnd-layers.d.ts +1 -1
  192. package/dist/hooks/use-feature-flags.d.ts +1 -1
  193. package/dist/hooks/use-fetch-raster-tile-metadata.d.ts +3 -3
  194. package/dist/hooks/use-fetch-vector-tile-metadata.d.ts +2 -2
  195. package/dist/hooks/use-legend-position.d.ts +4 -5
  196. package/dist/index.d.ts +14 -0
  197. package/dist/index.js +124 -1
  198. package/dist/injector.d.ts +5 -5
  199. package/dist/kepler-gl.d.ts +70 -67
  200. package/dist/kepler-gl.js +89 -11
  201. package/dist/loading-indicator.d.ts +6 -4
  202. package/dist/loading-indicator.js +6 -3
  203. package/dist/map/annotations/annotation-control.d.ts +16 -0
  204. package/dist/map/annotations/annotation-control.js +56 -0
  205. package/dist/map/effects/effect-control.d.ts +1 -1
  206. package/dist/map/layer-hover-info.d.ts +3 -3
  207. package/dist/map/layer-hover-info.js +69 -36
  208. package/dist/map/layer-selector-panel.d.ts +2 -2
  209. package/dist/map/lazy-tippy.js +3 -3
  210. package/dist/map/locale-panel.d.ts +2 -2
  211. package/dist/map/locale-panel.js +2 -2
  212. package/dist/map/map-control-panel.d.ts +1 -1
  213. package/dist/map/map-control-toolbar.d.ts +7 -8
  214. package/dist/map/map-control-tooltip.d.ts +1 -1
  215. package/dist/map/map-control.d.ts +8 -4
  216. package/dist/map/map-control.js +16 -7
  217. package/dist/map/map-draw-panel.d.ts +2 -2
  218. package/dist/map/map-draw-panel.js +7 -4
  219. package/dist/map/map-legend-panel.d.ts +5 -4
  220. package/dist/map/map-legend-panel.js +10 -8
  221. package/dist/map/map-legend.d.ts +11 -9
  222. package/dist/map/map-legend.js +39 -9
  223. package/dist/map/map-navigation-control.d.ts +13 -0
  224. package/dist/map/map-navigation-control.js +143 -0
  225. package/dist/map/map-popover-content.d.ts +2 -2
  226. package/dist/map/map-popover.d.ts +2 -2
  227. package/dist/map/map-popover.js +2 -2
  228. package/dist/map/split-map-button.d.ts +1 -1
  229. package/dist/map/toggle-3d-button.d.ts +1 -1
  230. package/dist/map-container.d.ts +15 -5
  231. package/dist/map-container.js +286 -73
  232. package/dist/map-view-state-context.d.ts +10 -2
  233. package/dist/map-view-state-context.js +1 -1
  234. package/dist/modal-container.d.ts +6 -8
  235. package/dist/modal-container.js +28 -6
  236. package/dist/modals/add-map-style-modal.js +173 -200
  237. package/dist/modals/cloud-components/cloud-header.d.ts +1 -1
  238. package/dist/modals/cloud-components/provider-select.d.ts +1 -1
  239. package/dist/modals/cloud-tile.d.ts +1 -1
  240. package/dist/modals/data-table-modal.d.ts +2 -2
  241. package/dist/modals/data-table-modal.js +146 -194
  242. package/dist/modals/export-data-modal.js +117 -139
  243. package/dist/modals/export-image-modal.js +1 -1
  244. package/dist/modals/export-map-modal/components.d.ts +1 -1
  245. package/dist/modals/export-map-modal/export-html-map.d.ts +1 -1
  246. package/dist/modals/export-map-modal/export-json-map.d.ts +1 -1
  247. package/dist/modals/export-video-modal.d.ts +25 -0
  248. package/dist/modals/export-video-modal.js +338 -0
  249. package/dist/modals/export-video-modal.spec.d.ts +1 -0
  250. package/dist/modals/export-video-modal.spec.js +686 -0
  251. package/dist/modals/fog-height-animation.d.ts +8 -0
  252. package/dist/modals/fog-height-animation.js +97 -0
  253. package/dist/modals/hubble-utils.d.ts +25 -0
  254. package/dist/modals/hubble-utils.js +197 -0
  255. package/dist/modals/hubble-utils.spec.d.ts +1 -0
  256. package/dist/modals/hubble-utils.spec.js +397 -0
  257. package/dist/modals/image-modal-container.d.ts +1 -1
  258. package/dist/modals/load-data-modal.d.ts +2 -2
  259. package/dist/modals/modal-dialog.d.ts +0 -2
  260. package/dist/modals/overwrite-map-modal.d.ts +1 -1
  261. package/dist/modals/save-map-modal.d.ts +3 -3
  262. package/dist/modals/share-map-modal.d.ts +1 -1
  263. package/dist/modals/tilesets-modals/common.d.ts +3 -3
  264. package/dist/modals/tilesets-modals/common.js +1 -1
  265. package/dist/modals/tilesets-modals/load-data-footer.d.ts +1 -1
  266. package/dist/modals/tilesets-modals/load-data-footer.js +2 -2
  267. package/dist/modals/tilesets-modals/load-tileset.d.ts +1 -1
  268. package/dist/modals/tilesets-modals/load-tileset.js +27 -10
  269. package/dist/modals/tilesets-modals/tileset-bitmap-form.d.ts +14 -0
  270. package/dist/modals/tilesets-modals/tileset-bitmap-form.js +284 -0
  271. package/dist/modals/tilesets-modals/tileset-icon.d.ts +1 -1
  272. package/dist/modals/tilesets-modals/tileset-raster-form.d.ts +2 -2
  273. package/dist/modals/tilesets-modals/tileset-raster-form.js +94 -11
  274. package/dist/modals/tilesets-modals/tileset-tile3d-form.d.ts +12 -0
  275. package/dist/modals/tilesets-modals/tileset-tile3d-form.js +389 -0
  276. package/dist/modals/tilesets-modals/tileset-vector-form.d.ts +3 -3
  277. package/dist/modals/tilesets-modals/tileset-vector-form.js +58 -4
  278. package/dist/modals/tilesets-modals/tileset-wms-form.d.ts +1 -1
  279. package/dist/modals/tilesets-modals/tileset-wms-form.js +55 -11
  280. package/dist/notification-panel/notification-item.d.ts +1 -53
  281. package/dist/notification-panel/notification-item.js +47 -75
  282. package/dist/notification-panel.d.ts +1 -1
  283. package/dist/notification-panel.js +20 -42
  284. package/dist/plot-container.js +55 -14
  285. package/dist/side-panel/add-by-dataset-button.d.ts +1 -1
  286. package/dist/side-panel/add-by-dataset-button.js +3 -3
  287. package/dist/side-panel/common/dataset-info.d.ts +2 -2
  288. package/dist/side-panel/common/dataset-info.js +2 -2
  289. package/dist/side-panel/common/dataset-tag.d.ts +2 -2
  290. package/dist/side-panel/common/dataset-title.d.ts +2 -2
  291. package/dist/side-panel/common/source-data-catalog.d.ts +3 -3
  292. package/dist/side-panel/common/types.d.ts +8 -8
  293. package/dist/side-panel/custom-panel.d.ts +2 -2
  294. package/dist/side-panel/filter-manager.d.ts +3 -3
  295. package/dist/side-panel/filter-panel/add-filter-button.d.ts +1 -1
  296. package/dist/side-panel/filter-panel/filter-panel-header.d.ts +2 -2
  297. package/dist/side-panel/interaction-manager.d.ts +1 -1
  298. package/dist/side-panel/interaction-panel/brush-config.d.ts +1 -1
  299. package/dist/side-panel/interaction-panel/geocoder-config.d.ts +11 -0
  300. package/dist/side-panel/interaction-panel/geocoder-config.js +45 -0
  301. package/dist/side-panel/interaction-panel/interaction-panel.d.ts +3 -2
  302. package/dist/side-panel/interaction-panel/interaction-panel.js +10 -3
  303. package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.d.ts +3 -3
  304. package/dist/side-panel/interaction-panel/tooltip-config.d.ts +1 -1
  305. package/dist/side-panel/layer-manager.d.ts +2 -2
  306. package/dist/side-panel/layer-manager.js +11 -3
  307. package/dist/side-panel/layer-panel/add-layer-button.d.ts +1 -1
  308. package/dist/side-panel/layer-panel/channel-by-value-selector.d.ts +1 -1
  309. package/dist/side-panel/layer-panel/color-breaks-panel.d.ts +4 -4
  310. package/dist/side-panel/layer-panel/color-palette-preset.d.ts +1 -1
  311. package/dist/side-panel/layer-panel/color-palette.d.ts +2 -2
  312. package/dist/side-panel/layer-panel/color-range-selector.d.ts +3 -3
  313. package/dist/side-panel/layer-panel/color-scale-selector.d.ts +5 -5
  314. package/dist/side-panel/layer-panel/color-scale-selector.js +1 -1
  315. package/dist/side-panel/layer-panel/color-selector.d.ts +3 -3
  316. package/dist/side-panel/layer-panel/column-selector.d.ts +1 -1
  317. package/dist/side-panel/layer-panel/custom-palette.d.ts +10 -10
  318. package/dist/side-panel/layer-panel/custom-palette.js +5 -5
  319. package/dist/side-panel/layer-panel/custom-picker.d.ts +1 -1
  320. package/dist/side-panel/layer-panel/dataset-layer-group.d.ts +1 -1
  321. package/dist/side-panel/layer-panel/dataset-layer-section.d.ts +1 -1
  322. package/dist/side-panel/layer-panel/dataset-layer-section.js +19 -3
  323. package/dist/side-panel/layer-panel/dataset-section.d.ts +2 -2
  324. package/dist/side-panel/layer-panel/dimension-scale-selector.d.ts +1 -1
  325. package/dist/side-panel/layer-panel/how-to-button.d.ts +1 -1
  326. package/dist/side-panel/layer-panel/layer-color-selector.d.ts +3 -3
  327. package/dist/side-panel/layer-panel/layer-column-config.d.ts +1 -1
  328. package/dist/side-panel/layer-panel/layer-column-mode-config.d.ts +3 -3
  329. package/dist/side-panel/layer-panel/layer-config-group.d.ts +5 -5
  330. package/dist/side-panel/layer-panel/layer-configurator.d.ts +6 -4
  331. package/dist/side-panel/layer-panel/layer-configurator.js +408 -72
  332. package/dist/side-panel/layer-panel/layer-error-message.d.ts +1 -1
  333. package/dist/side-panel/layer-panel/layer-list.d.ts +2 -2
  334. package/dist/side-panel/layer-panel/layer-panel-header.d.ts +5 -5
  335. package/dist/side-panel/layer-panel/layer-panel-header.js +2 -2
  336. package/dist/side-panel/layer-panel/layer-panel.d.ts +1 -1
  337. package/dist/side-panel/layer-panel/layer-type-dropdown-list.d.ts +2 -2
  338. package/dist/side-panel/layer-panel/layer-type-list-item.d.ts +2 -2
  339. package/dist/side-panel/layer-panel/layer-type-selector.d.ts +1 -1
  340. package/dist/side-panel/layer-panel/radius-by-zoom-input.d.ts +1 -1
  341. package/dist/side-panel/layer-panel/raster-tile-layer-configurator.d.ts +2 -2
  342. package/dist/side-panel/layer-panel/raster-tile-layer-configurator.js +127 -27
  343. package/dist/side-panel/layer-panel/scenegraph-model-selector.d.ts +24 -0
  344. package/dist/side-panel/layer-panel/scenegraph-model-selector.js +123 -0
  345. package/dist/side-panel/layer-panel/single-color-palette.d.ts +1 -1
  346. package/dist/side-panel/layer-panel/text-label-panel.d.ts +2 -2
  347. package/dist/side-panel/layer-panel/text-label-panel.js +11 -2
  348. package/dist/side-panel/layer-panel/vector-tile-layer-configurator.d.ts +3 -3
  349. package/dist/side-panel/layer-panel/vis-config-by-field-selector.d.ts +1 -1
  350. package/dist/side-panel/layer-panel/vis-config-slider.d.ts +3 -1
  351. package/dist/side-panel/layer-panel/vis-config-slider.js +7 -3
  352. package/dist/side-panel/layer-panel/vis-config-switch.d.ts +1 -1
  353. package/dist/side-panel/map-manager.d.ts +1 -1
  354. package/dist/side-panel/map-style-panel/map-layer-group-color-picker.d.ts +1 -1
  355. package/dist/side-panel/map-style-panel/map-layer-group-item.d.ts +2 -2
  356. package/dist/side-panel/map-style-panel/map-layer-selector.d.ts +1 -1
  357. package/dist/side-panel/map-style-panel/map-style-selector.d.ts +1 -1
  358. package/dist/side-panel/panel-header-action.d.ts +1 -1
  359. package/dist/side-panel/panel-header.d.ts +13 -12
  360. package/dist/side-panel/panel-header.js +9 -2
  361. package/dist/side-panel/panel-tab.d.ts +5 -5
  362. package/dist/side-panel/panel-tab.js +4 -4
  363. package/dist/side-panel/panel-title.d.ts +1 -1
  364. package/dist/side-panel/panel-toggle.d.ts +1 -1
  365. package/dist/side-panel/panel-view-list-toggle.d.ts +3 -3
  366. package/dist/side-panel/side-bar.d.ts +2 -2
  367. package/dist/side-panel.d.ts +1 -1
  368. package/dist/side-panel.js +5 -1
  369. package/dist/types.d.ts +3 -3
  370. package/package.json +41 -29
@@ -7,18 +7,14 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports["default"] = void 0;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
13
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
16
12
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
13
  var _react = _interopRequireWildcard(require("react"));
18
- var _reactLifecyclesCompat = require("react-lifecycles-compat");
19
14
  var _classnames = _interopRequireDefault(require("classnames"));
20
15
  var _styledComponents = _interopRequireDefault(require("styled-components"));
21
- var _reactMapGl = require("react-map-gl");
16
+ var _mapboxLegacy = require("react-map-gl/mapbox-legacy");
17
+ var _reactMaplibre = require("@vis.gl/react-maplibre");
22
18
  var _styledComponents2 = require("../common/styled-components");
23
19
  var _styles = require("@kepler.gl/styles");
24
20
  var _utils = require("@kepler.gl/utils");
@@ -32,8 +28,6 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
32
28
  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; }
33
29
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
34
30
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
35
- 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)); }
36
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
37
31
  var MapH = 190;
38
32
  var MapW = 264;
39
33
  var ErrorMsg = {
@@ -50,203 +44,182 @@ var nop = function nop() {
50
44
  return;
51
45
  };
52
46
  function AddMapStyleModalFactory() {
53
- var AddMapStyleModal = /*#__PURE__*/function (_Component) {
54
- function AddMapStyleModal() {
55
- var _this;
56
- (0, _classCallCheck2["default"])(this, AddMapStyleModal);
57
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
58
- args[_key] = arguments[_key];
47
+ function AddMapStyleModal(_ref) {
48
+ var inputMapStyleAction = _ref.inputMapStyle,
49
+ inputStyle = _ref.inputStyle,
50
+ loadCustomMapStyleAction = _ref.loadCustomMapStyle,
51
+ mapboxApiAccessToken = _ref.mapboxApiAccessToken,
52
+ mapboxApiUrl = _ref.mapboxApiUrl,
53
+ customTransformRequest = _ref.transformRequest,
54
+ mapState = _ref.mapState,
55
+ intl = _ref.intl;
56
+ var _useState = (0, _react.useState)(0),
57
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
58
+ reRenderKey = _useState2[0],
59
+ setReRenderKey = _useState2[1];
60
+ var _useState3 = (0, _react.useState)(null),
61
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
62
+ previousToken = _useState4[0],
63
+ setPreviousToken = _useState4[1];
64
+ var mapRef = (0, _react.useRef)(null);
65
+ var loadCustomMapStyleRef = (0, _react.useRef)(loadCustomMapStyleAction);
66
+ loadCustomMapStyleRef.current = loadCustomMapStyleAction;
67
+ (0, _react.useEffect)(function () {
68
+ if (inputStyle !== null && inputStyle !== void 0 && inputStyle.accessToken && inputStyle.accessToken !== previousToken) {
69
+ setReRenderKey(function (prev) {
70
+ return prev + 1;
71
+ });
72
+ setPreviousToken(inputStyle.accessToken);
59
73
  }
60
- _this = _callSuper(this, AddMapStyleModal, [].concat(args));
61
- (0, _defineProperty2["default"])(_this, "state", {
62
- reRenderKey: 0,
63
- previousToken: null
64
- });
65
- (0, _defineProperty2["default"])(_this, "_map", void 0);
66
- (0, _defineProperty2["default"])(_this, "_setMapRef", function (mapRef) {
67
- // Handle change of the basemap library
68
- if (_this._map && mapRef) {
69
- var _map = mapRef.getMap();
70
- if (_map && _this._map !== _map) {
71
- _this._map.off('style.load', nop);
72
- _this._map.off('error', nop);
73
- _this._map = null;
74
- }
74
+ }, [inputStyle === null || inputStyle === void 0 ? void 0 : inputStyle.accessToken, previousToken]);
75
+ var setMapRefCallback = (0, _react.useCallback)(function (mapRefInstance) {
76
+ if (mapRef.current && mapRefInstance) {
77
+ var _map = mapRefInstance.getMap();
78
+ if (_map && mapRef.current !== _map) {
79
+ mapRef.current.off('style.load', nop);
80
+ mapRef.current.off('error', nop);
81
+ mapRef.current = null;
75
82
  }
76
- var map = mapRef && mapRef.getMap();
77
- if (map && _this._map !== map) {
78
- _this._map = map;
79
- map.on('style.load', function () {
80
- var style = map.getStyle();
81
- _this.loadMapStyleJson(style);
82
- });
83
- map.on('error', function () {
84
- _this.loadMapStyleError();
83
+ }
84
+ var map = mapRefInstance && mapRefInstance.getMap();
85
+ if (map && mapRef.current !== map) {
86
+ mapRef.current = map;
87
+ map.on('style.load', function () {
88
+ var style = map.getStyle();
89
+ loadCustomMapStyleRef.current({
90
+ style: style,
91
+ error: false
85
92
  });
86
- }
87
- });
88
- (0, _defineProperty2["default"])(_this, "loadMapStyleJson", function (style) {
89
- _this.props.loadCustomMapStyle({
90
- style: style,
91
- error: false
92
93
  });
93
- });
94
- (0, _defineProperty2["default"])(_this, "loadMapStyleError", function () {
95
- _this.props.loadCustomMapStyle({
96
- error: true
94
+ map.on('error', function () {
95
+ loadCustomMapStyleRef.current({
96
+ error: true
97
+ });
97
98
  });
98
- });
99
- return _this;
99
+ }
100
+ }, []);
101
+ var baseMapLibraryName = (0, _utils.getBaseMapLibrary)(inputStyle);
102
+ var baseMapLibraryConfig = (0, _utils.getApplicationConfig)().baseMapLibraryConfig[baseMapLibraryName];
103
+ var mapboxApiAccessTokenToUse = inputStyle.accessToken || mapboxApiAccessToken;
104
+ var mapProps = _objectSpread(_objectSpread({}, mapState), {}, {
105
+ mapboxAccessToken: mapboxApiAccessTokenToUse,
106
+ preserveDrawingBuffer: true,
107
+ transformRequest: (customTransformRequest === null || customTransformRequest === void 0 ? void 0 : customTransformRequest(mapboxApiAccessTokenToUse)) || (0, _utils.transformRequest)(mapboxApiAccessTokenToUse)
108
+ });
109
+ if (baseMapLibraryName === _constants.MAP_LIB_OPTIONS.MAPBOX) {
110
+ mapProps.mapLib = baseMapLibraryConfig.getMapLib();
100
111
  }
101
- (0, _inherits2["default"])(AddMapStyleModal, _Component);
102
- return (0, _createClass2["default"])(AddMapStyleModal, [{
103
- key: "render",
104
- value: function render() {
105
- var _this$props$transform,
106
- _this$props2,
107
- _this2 = this;
108
- var _this$props = this.props,
109
- inputStyle = _this$props.inputStyle,
110
- mapState = _this$props.mapState,
111
- intl = _this$props.intl;
112
- var baseMapLibraryName = (0, _utils.getBaseMapLibrary)(inputStyle);
113
- var baseMapLibraryConfig = (0, _utils.getApplicationConfig)().baseMapLibraryConfig[baseMapLibraryName];
114
- var mapboxApiAccessToken = inputStyle.accessToken || this.props.mapboxApiAccessToken;
115
- var mapProps = _objectSpread(_objectSpread({}, mapState), {}, {
116
- // TODO baseApiUrl should be taken into account in transformRequest as we use dynamic mapLib import
117
- // baseApiUrl: mapboxApiUrl,
118
- mapboxAccessToken: mapboxApiAccessToken,
119
- mapLib: baseMapLibraryConfig.getMapLib(),
120
- preserveDrawingBuffer: true,
121
- transformRequest: ((_this$props$transform = (_this$props2 = this.props).transformRequest) === null || _this$props$transform === void 0 ? void 0 : _this$props$transform.call(_this$props2, mapboxApiAccessToken)) || (0, _utils.transformRequest)(mapboxApiAccessToken)
112
+ var ResolvedMapComponent = baseMapLibraryName === _constants.MAP_LIB_OPTIONS.MAPBOX ? _mapboxLegacy.Map : _reactMaplibre.Map;
113
+ return /*#__PURE__*/_react["default"].createElement("div", {
114
+ className: "add-map-style-modal"
115
+ }, /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledModalContent, null, /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledModalVerticalPanel, null, /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledModalSection, null, /*#__PURE__*/_react["default"].createElement("div", {
116
+ className: "modal-section-title"
117
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
118
+ id: 'modal.addStyle.pasteTitle'
119
+ })), /*#__PURE__*/_react["default"].createElement("div", {
120
+ className: "modal-section-subtitle"
121
+ }, intl.formatMessage({
122
+ id: 'modal.addStyle.pasteSubtitle0'
123
+ }), /*#__PURE__*/_react["default"].createElement(InlineLink, {
124
+ target: "_blank",
125
+ href: "https://www.mapbox.com/help/studio-manual-publish/#style-url"
126
+ }, ' ', intl.formatMessage({
127
+ id: 'modal.addStyle.pasteSubtitle2'
128
+ })), ' ', intl.formatMessage({
129
+ id: 'modal.addStyle.pasteSubtitle3'
130
+ }), /*#__PURE__*/_react["default"].createElement(InlineLink, {
131
+ target: "_blank",
132
+ href: "https://docs.mapbox.com/mapbox-gl-js/style-spec"
133
+ }, ' ', intl.formatMessage({
134
+ id: 'modal.addStyle.pasteSubtitle4'
135
+ }))), /*#__PURE__*/_react["default"].createElement(_styledComponents2.InputLight, {
136
+ type: "text",
137
+ value: inputStyle.url || '',
138
+ onChange: function onChange(_ref2) {
139
+ var value = _ref2.target.value;
140
+ return inputMapStyleAction({
141
+ url: value,
142
+ id: 'Custom Style',
143
+ icon: "".concat((0, _utils.getApplicationConfig)().cdnUrl, "/").concat(_constants.NO_BASEMAP_ICON)
122
144
  });
123
- return /*#__PURE__*/_react["default"].createElement("div", {
124
- className: "add-map-style-modal"
125
- }, /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledModalContent, null, /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledModalVerticalPanel, null, /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledModalSection, null, /*#__PURE__*/_react["default"].createElement("div", {
126
- className: "modal-section-title"
127
- }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
128
- id: 'modal.addStyle.pasteTitle'
129
- })), /*#__PURE__*/_react["default"].createElement("div", {
130
- className: "modal-section-subtitle"
131
- }, intl.formatMessage({
132
- id: 'modal.addStyle.pasteSubtitle0'
133
- }), /*#__PURE__*/_react["default"].createElement(InlineLink, {
134
- target: "_blank",
135
- href: "https://www.mapbox.com/help/studio-manual-publish/#style-url"
136
- }, ' ', intl.formatMessage({
137
- id: 'modal.addStyle.pasteSubtitle2'
138
- })), ' ', intl.formatMessage({
139
- id: 'modal.addStyle.pasteSubtitle3'
140
- }), /*#__PURE__*/_react["default"].createElement(InlineLink, {
141
- target: "_blank",
142
- href: "https://docs.mapbox.com/mapbox-gl-js/style-spec"
143
- }, ' ', intl.formatMessage({
144
- id: 'modal.addStyle.pasteSubtitle4'
145
- }))), /*#__PURE__*/_react["default"].createElement(_styledComponents2.InputLight, {
146
- type: "text",
147
- value: inputStyle.url || '',
148
- onChange: function onChange(_ref) {
149
- var value = _ref.target.value;
150
- return _this2.props.inputMapStyle({
151
- url: value,
152
- id: 'Custom Style',
153
- icon: "".concat((0, _utils.getApplicationConfig)().cdnUrl, "/").concat(_constants.NO_BASEMAP_ICON)
154
- });
155
- },
156
- placeholder: "e.g. https://basemaps.cartocdn.com/gl/positron-gl-style/style.json"
157
- })), /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledModalSection, null, /*#__PURE__*/_react["default"].createElement("div", {
158
- className: "modal-section-title"
159
- }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
160
- id: 'modal.addStyle.publishTitle'
161
- })), /*#__PURE__*/_react["default"].createElement("div", {
162
- className: "modal-section-subtitle"
163
- }, intl.formatMessage({
164
- id: 'modal.addStyle.publishSubtitle1'
165
- }), /*#__PURE__*/_react["default"].createElement(InlineLink, {
166
- target: "_blank",
167
- href: "https://www.mapbox.com/studio/styles/"
168
- }, ' ', "mapbox"), ' ', intl.formatMessage({
169
- id: 'modal.addStyle.publishSubtitle2'
170
- }), /*#__PURE__*/_react["default"].createElement(InlineLink, {
171
- target: "_blank",
172
- href: "https://www.mapbox.com/help/studio-manual-publish/"
173
- }, ' ', intl.formatMessage({
174
- id: 'modal.addStyle.publishSubtitle3'
175
- })), ' ', intl.formatMessage({
176
- id: 'modal.addStyle.publishSubtitle4'
177
- })), /*#__PURE__*/_react["default"].createElement("div", {
178
- className: "modal-section-subtitle"
179
- }, intl.formatMessage({
180
- id: 'modal.addStyle.publishSubtitle5'
181
- }), /*#__PURE__*/_react["default"].createElement(InlineLink, {
182
- target: "_blank",
183
- href: "https://www.mapbox.com/help/how-access-tokens-work/"
184
- }, ' ', intl.formatMessage({
185
- id: 'modal.addStyle.publishSubtitle6'
186
- })), ' ', intl.formatMessage({
187
- id: 'modal.addStyle.publishSubtitle7'
188
- })), /*#__PURE__*/_react["default"].createElement(_styledComponents2.InputLight, {
189
- type: "text",
190
- value: inputStyle.accessToken || '',
191
- onChange: function onChange(_ref2) {
192
- var value = _ref2.target.value;
193
- return _this2.props.inputMapStyle({
194
- accessToken: value
195
- });
196
- },
197
- placeholder: intl.formatMessage({
198
- id: 'modal.addStyle.exampleToken'
199
- })
200
- })), /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledModalSection, null, /*#__PURE__*/_react["default"].createElement("div", {
201
- className: "modal-section-title"
202
- }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
203
- id: 'modal.addStyle.namingTitle'
204
- })), /*#__PURE__*/_react["default"].createElement(_styledComponents2.InputLight, {
205
- type: "text",
206
- value: inputStyle.label || '',
207
- onChange: function onChange(_ref3) {
208
- var value = _ref3.target.value;
209
- return _this2.props.inputMapStyle({
210
- label: value
211
- });
212
- },
213
- placeholder: "Name your style"
214
- }))), /*#__PURE__*/_react["default"].createElement(PreviewMap, null, /*#__PURE__*/_react["default"].createElement("div", {
215
- className: (0, _classnames["default"])('preview-title', {
216
- error: inputStyle.error
217
- })
218
- }, inputStyle.error ? ErrorMsg.styleError : inputStyle.style && inputStyle.style.name || ''), /*#__PURE__*/_react["default"].createElement(StyledPreviewImage, {
219
- className: "preview-image"
220
- }, !inputStyle.isValid ? /*#__PURE__*/_react["default"].createElement("div", {
221
- className: "preview-image-spinner"
222
- }) : /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledMapContainer, null, /*#__PURE__*/_react["default"].createElement(_reactMapGl.Map, (0, _extends2["default"])({}, mapProps, {
223
- ref: this._setMapRef,
224
- key: "".concat(baseMapLibraryName, "-").concat(this.state.reRenderKey, "-").concat(inputStyle.url, "-").concat(mapboxApiAccessToken),
225
- style: {
226
- width: MapW,
227
- height: MapH
228
- },
229
- mapStyle: inputStyle.url === null ? undefined : inputStyle.url
230
- })))))));
231
- }
232
- }], [{
233
- key: "getDerivedStateFromProps",
234
- value: function getDerivedStateFromProps(props, state) {
235
- if (props.inputStyle && props.inputStyle.accessToken && props.inputStyle.accessToken !== state.previousToken) {
236
- // toke has changed
237
- // ReactMapGl doesn't re-create map when token has changed
238
- // here we force the map to update
239
-
240
- return {
241
- reRenderKey: state.reRenderKey + 1,
242
- previousToken: props.inputStyle.accessToken
243
- };
244
- }
245
- return null;
246
- }
247
- }]);
248
- }(_react.Component);
249
- return (0, _reactIntl.injectIntl)((0, _reactLifecyclesCompat.polyfill)(AddMapStyleModal));
145
+ },
146
+ placeholder: "e.g. https://basemaps.cartocdn.com/gl/positron-gl-style/style.json"
147
+ })), /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledModalSection, null, /*#__PURE__*/_react["default"].createElement("div", {
148
+ className: "modal-section-title"
149
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
150
+ id: 'modal.addStyle.publishTitle'
151
+ })), /*#__PURE__*/_react["default"].createElement("div", {
152
+ className: "modal-section-subtitle"
153
+ }, intl.formatMessage({
154
+ id: 'modal.addStyle.publishSubtitle1'
155
+ }), /*#__PURE__*/_react["default"].createElement(InlineLink, {
156
+ target: "_blank",
157
+ href: "https://www.mapbox.com/studio/styles/"
158
+ }, ' ', "mapbox"), ' ', intl.formatMessage({
159
+ id: 'modal.addStyle.publishSubtitle2'
160
+ }), /*#__PURE__*/_react["default"].createElement(InlineLink, {
161
+ target: "_blank",
162
+ href: "https://www.mapbox.com/help/studio-manual-publish/"
163
+ }, ' ', intl.formatMessage({
164
+ id: 'modal.addStyle.publishSubtitle3'
165
+ })), ' ', intl.formatMessage({
166
+ id: 'modal.addStyle.publishSubtitle4'
167
+ })), /*#__PURE__*/_react["default"].createElement("div", {
168
+ className: "modal-section-subtitle"
169
+ }, intl.formatMessage({
170
+ id: 'modal.addStyle.publishSubtitle5'
171
+ }), /*#__PURE__*/_react["default"].createElement(InlineLink, {
172
+ target: "_blank",
173
+ href: "https://www.mapbox.com/help/how-access-tokens-work/"
174
+ }, ' ', intl.formatMessage({
175
+ id: 'modal.addStyle.publishSubtitle6'
176
+ })), ' ', intl.formatMessage({
177
+ id: 'modal.addStyle.publishSubtitle7'
178
+ })), /*#__PURE__*/_react["default"].createElement(_styledComponents2.InputLight, {
179
+ type: "text",
180
+ value: inputStyle.accessToken || '',
181
+ onChange: function onChange(_ref3) {
182
+ var value = _ref3.target.value;
183
+ return inputMapStyleAction({
184
+ accessToken: value
185
+ });
186
+ },
187
+ placeholder: intl.formatMessage({
188
+ id: 'modal.addStyle.exampleToken'
189
+ })
190
+ })), /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledModalSection, null, /*#__PURE__*/_react["default"].createElement("div", {
191
+ className: "modal-section-title"
192
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
193
+ id: 'modal.addStyle.namingTitle'
194
+ })), /*#__PURE__*/_react["default"].createElement(_styledComponents2.InputLight, {
195
+ type: "text",
196
+ value: inputStyle.label || '',
197
+ onChange: function onChange(_ref4) {
198
+ var value = _ref4.target.value;
199
+ return inputMapStyleAction({
200
+ label: value
201
+ });
202
+ },
203
+ placeholder: "Name your style"
204
+ }))), /*#__PURE__*/_react["default"].createElement(PreviewMap, null, /*#__PURE__*/_react["default"].createElement("div", {
205
+ className: (0, _classnames["default"])('preview-title', {
206
+ error: inputStyle.error
207
+ })
208
+ }, inputStyle.error ? ErrorMsg.styleError : inputStyle.style && inputStyle.style.name || ''), /*#__PURE__*/_react["default"].createElement(StyledPreviewImage, {
209
+ className: "preview-image"
210
+ }, !inputStyle.isValid ? /*#__PURE__*/_react["default"].createElement("div", {
211
+ className: "preview-image-spinner"
212
+ }) : /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledMapContainer, null, /*#__PURE__*/_react["default"].createElement(ResolvedMapComponent, (0, _extends2["default"])({}, mapProps, {
213
+ ref: setMapRefCallback,
214
+ key: "".concat(baseMapLibraryName, "-").concat(reRenderKey, "-").concat(inputStyle.url, "-").concat(mapboxApiAccessTokenToUse),
215
+ style: {
216
+ width: MapW,
217
+ height: MapH
218
+ },
219
+ mapStyle: inputStyle.url === null ? undefined : inputStyle.url
220
+ })))))));
221
+ }
222
+ return (0, _reactIntl.injectIntl)(AddMapStyleModal);
250
223
  }
251
224
  var _default = exports["default"] = AddMapStyleModalFactory;
252
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RMaWZlY3ljbGVzQ29tcGF0IiwiX2NsYXNzbmFtZXMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3N0eWxlZENvbXBvbmVudHMiLCJfcmVhY3RNYXBHbCIsIl9zdHlsZWRDb21wb25lbnRzMiIsIl9zdHlsZXMiLCJfdXRpbHMiLCJfcmVhY3RJbnRsIiwiX2xvY2FsaXphdGlvbiIsIl9jb25zdGFudHMiLCJfdGVtcGxhdGVPYmplY3QiLCJfdGVtcGxhdGVPYmplY3QyIiwiX3RlbXBsYXRlT2JqZWN0MyIsIl90ZW1wbGF0ZU9iamVjdDQiLCJfdGVtcGxhdGVPYmplY3Q1IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiX2NhbGxTdXBlciIsIl9nZXRQcm90b3R5cGVPZjIiLCJfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybjIiLCJfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0IiwiUmVmbGVjdCIsImNvbnN0cnVjdCIsImNvbnN0cnVjdG9yIiwiQm9vbGVhbiIsInByb3RvdHlwZSIsInZhbHVlT2YiLCJNYXBIIiwiTWFwVyIsIkVycm9yTXNnIiwic3R5bGVFcnJvciIsIlByZXZpZXdNYXAiLCJzdHlsZWQiLCJkaXYiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsInByb3BzIiwidGhlbWUiLCJlcnJvckNvbG9yIiwibWVkaWEiLCJwb3J0YWJsZSIsInBhbG0iLCJTdHlsZWRQcmV2aWV3SW1hZ2UiLCJtb2RhbEltYWdlUGxhY2VIb2xkZXIiLCJJbmxpbmVMaW5rIiwibm9wIiwiQWRkTWFwU3R5bGVNb2RhbEZhY3RvcnkiLCJBZGRNYXBTdHlsZU1vZGFsIiwiX0NvbXBvbmVudCIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrMiIsIl9sZW4iLCJhcmdzIiwiQXJyYXkiLCJfa2V5IiwiY29uY2F0IiwicmVSZW5kZXJLZXkiLCJwcmV2aW91c1Rva2VuIiwibWFwUmVmIiwiX21hcCIsIm1hcCIsImdldE1hcCIsIm9mZiIsIm9uIiwic3R5bGUiLCJnZXRTdHlsZSIsImxvYWRNYXBTdHlsZUpzb24iLCJsb2FkTWFwU3R5bGVFcnJvciIsImxvYWRDdXN0b21NYXBTdHlsZSIsImVycm9yIiwiX2luaGVyaXRzMiIsIl9jcmVhdGVDbGFzczIiLCJrZXkiLCJ2YWx1ZSIsInJlbmRlciIsIl90aGlzJHByb3BzJHRyYW5zZm9ybSIsIl90aGlzJHByb3BzMiIsIl90aGlzMiIsIl90aGlzJHByb3BzIiwiaW5wdXRTdHlsZSIsIm1hcFN0YXRlIiwiaW50bCIsImJhc2VNYXBMaWJyYXJ5TmFtZSIsImdldEJhc2VNYXBMaWJyYXJ5IiwiYmFzZU1hcExpYnJhcnlDb25maWciLCJnZXRBcHBsaWNhdGlvbkNvbmZpZyIsIm1hcGJveEFwaUFjY2Vzc1Rva2VuIiwiYWNjZXNzVG9rZW4iLCJtYXBQcm9wcyIsIm1hcGJveEFjY2Vzc1Rva2VuIiwibWFwTGliIiwiZ2V0TWFwTGliIiwicHJlc2VydmVEcmF3aW5nQnVmZmVyIiwidHJhbnNmb3JtUmVxdWVzdCIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJTdHlsZWRNb2RhbENvbnRlbnQiLCJTdHlsZWRNb2RhbFZlcnRpY2FsUGFuZWwiLCJTdHlsZWRNb2RhbFNlY3Rpb24iLCJGb3JtYXR0ZWRNZXNzYWdlIiwiaWQiLCJmb3JtYXRNZXNzYWdlIiwidGFyZ2V0IiwiaHJlZiIsIklucHV0TGlnaHQiLCJ0eXBlIiwidXJsIiwib25DaGFuZ2UiLCJfcmVmIiwiaW5wdXRNYXBTdHlsZSIsImljb24iLCJjZG5VcmwiLCJOT19CQVNFTUFQX0lDT04iLCJwbGFjZWhvbGRlciIsIl9yZWYyIiwibGFiZWwiLCJfcmVmMyIsImNsYXNzbmFtZXMiLCJuYW1lIiwiaXNWYWxpZCIsIlN0eWxlZE1hcENvbnRhaW5lciIsIk1hcCIsIl9leHRlbmRzMiIsInJlZiIsIl9zZXRNYXBSZWYiLCJzdGF0ZSIsIndpZHRoIiwiaGVpZ2h0IiwibWFwU3R5bGUiLCJ1bmRlZmluZWQiLCJnZXREZXJpdmVkU3RhdGVGcm9tUHJvcHMiLCJDb21wb25lbnQiLCJpbmplY3RJbnRsIiwicG9seWZpbGwiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kYWxzL2FkZC1tYXAtc3R5bGUtbW9kYWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHtwb2x5ZmlsbH0gZnJvbSAncmVhY3QtbGlmZWN5Y2xlcy1jb21wYXQnO1xuaW1wb3J0IGNsYXNzbmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7TWFwLCBNYXBib3hNYXAsIE1hcFJlZn0gZnJvbSAncmVhY3QtbWFwLWdsJztcbmltcG9ydCB7XG4gIFN0eWxlZE1vZGFsQ29udGVudCxcbiAgSW5wdXRMaWdodCxcbiAgU3R5bGVkTWFwQ29udGFpbmVyLFxuICBTdHlsZWRNb2RhbFZlcnRpY2FsUGFuZWwsXG4gIFN0eWxlZE1vZGFsU2VjdGlvblxufSBmcm9tICcuLi9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHttZWRpYX0gZnJvbSAnQGtlcGxlci5nbC9zdHlsZXMnO1xuXG4vLyBVdGlsc1xuaW1wb3J0IHtnZXRBcHBsaWNhdGlvbkNvbmZpZywgZ2V0QmFzZU1hcExpYnJhcnksIHRyYW5zZm9ybVJlcXVlc3R9IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuaW1wb3J0IHtpbmplY3RJbnRsLCBJbnRsU2hhcGV9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHtGb3JtYXR0ZWRNZXNzYWdlfSBmcm9tICdAa2VwbGVyLmdsL2xvY2FsaXphdGlvbic7XG5pbXBvcnQge05PX0JBU0VNQVBfSUNPTn0gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuaW1wb3J0IHtJbnB1dFN0eWxlLCBNYXBTdGF0ZX0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge0FjdGlvbkhhbmRsZXIsIGlucHV0TWFwU3R5bGUsIGxvYWRDdXN0b21NYXBTdHlsZX0gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcblxuY29uc3QgTWFwSCA9IDE5MDtcbmNvbnN0IE1hcFcgPSAyNjQ7XG5jb25zdCBFcnJvck1zZyA9IHtcbiAgc3R5bGVFcnJvcjpcbiAgICAnRmFpbGVkIHRvIGxvYWQgbWFwIHN0eWxlLCBtYWtlIHN1cmUgaXQgaXMgcHVibGlzaGVkLiBGb3IgcHJpdmF0ZSBzdHlsZSwgcGFzdGUgaW4geW91ciBhY2Nlc3MgdG9rZW4uJ1xufTtcblxuY29uc3QgUHJldmlld01hcCA9IHN0eWxlZC5kaXZgXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogMTE2cHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuXG4gIC5wcmV2aWV3LXRpdGxlIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBwYWRkaW5nOiA4cHggMHB4O1xuICB9XG5cbiAgLnByZXZpZXctdGl0bGUuZXJyb3Ige1xuICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmVycm9yQ29sb3J9O1xuICAgIG1heC13aWR0aDogMjUwcHg7XG4gIH1cblxuICAke21lZGlhLnBvcnRhYmxlYFxuICAgIG1hcmdpbi1sZWZ0OiAzMnB4O1xuICBgfTtcblxuICAke21lZGlhLnBhbG1gXG4gICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgIC5wcmV2aWV3LXRpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICB9XG4gIGB9O1xuYDtcblxuY29uc3QgU3R5bGVkUHJldmlld0ltYWdlID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5tb2RhbEltYWdlUGxhY2VIb2xkZXJ9O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IDAgOHB4IDE2cHggMCByZ2JhKDAsIDAsIDAsIDAuMTgpO1xuICB3aWR0aDogJHtNYXBXfXB4O1xuICBoZWlnaHQ6ICR7TWFwSH1weDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5wcmV2aWV3LWltYWdlLXBsYWNlaG9sZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAucHJldmlldy1pbWFnZS1zcGlubmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogY2FsYyg1MCUgLSAyNXB4KTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMjVweCk7XG4gIH1cbmA7XG5cbmNvbnN0IElubGluZUxpbmsgPSBzdHlsZWQuYWBcbiAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbmA7XG5cbmNvbnN0IG5vcCA9ICgpID0+IHtcbiAgcmV0dXJuO1xufTtcblxuaW50ZXJmYWNlIEFkZE1hcFN0eWxlTW9kYWxQcm9wcyB7XG4gIGlucHV0TWFwU3R5bGU6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIGlucHV0TWFwU3R5bGU+O1xuICBpbnB1dFN0eWxlOiBJbnB1dFN0eWxlO1xuICBsb2FkQ3VzdG9tTWFwU3R5bGU6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIGxvYWRDdXN0b21NYXBTdHlsZT47XG4gIG1hcGJveEFwaUFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIG1hcGJveEFwaVVybD86IHN0cmluZztcbiAgdHJhbnNmb3JtUmVxdWVzdD86IChtYXBib3hLZXk6IHN0cmluZykgPT4gKFxuICAgIHVybDogc3RyaW5nLFxuICAgIHJlc291cmNlVHlwZTogc3RyaW5nXG4gICkgPT4ge1xuICAgIHVybDogc3RyaW5nO1xuICB9O1xuICBtYXBTdGF0ZTogTWFwU3RhdGU7XG4gIGludGw6IEludGxTaGFwZTtcbn1cblxuZnVuY3Rpb24gQWRkTWFwU3R5bGVNb2RhbEZhY3RvcnkoKSB7XG4gIGNsYXNzIEFkZE1hcFN0eWxlTW9kYWwgZXh0ZW5kcyBDb21wb25lbnQ8QWRkTWFwU3R5bGVNb2RhbFByb3BzPiB7XG4gICAgc3RhdGUgPSB7XG4gICAgICByZVJlbmRlcktleTogMCxcbiAgICAgIHByZXZpb3VzVG9rZW46IG51bGxcbiAgICB9O1xuXG4gICAgc3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhwcm9wcywgc3RhdGUpIHtcbiAgICAgIGlmIChcbiAgICAgICAgcHJvcHMuaW5wdXRTdHlsZSAmJlxuICAgICAgICBwcm9wcy5pbnB1dFN0eWxlLmFjY2Vzc1Rva2VuICYmXG4gICAgICAgIHByb3BzLmlucHV0U3R5bGUuYWNjZXNzVG9rZW4gIT09IHN0YXRlLnByZXZpb3VzVG9rZW5cbiAgICAgICkge1xuICAgICAgICAvLyB0b2tlIGhhcyBjaGFuZ2VkXG4gICAgICAgIC8vIFJlYWN0TWFwR2wgZG9lc24ndCByZS1jcmVhdGUgbWFwIHdoZW4gdG9rZW4gaGFzIGNoYW5nZWRcbiAgICAgICAgLy8gaGVyZSB3ZSBmb3JjZSB0aGUgbWFwIHRvIHVwZGF0ZVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcmVSZW5kZXJLZXk6IHN0YXRlLnJlUmVuZGVyS2V5ICsgMSxcbiAgICAgICAgICBwcmV2aW91c1Rva2VuOiBwcm9wcy5pbnB1dFN0eWxlLmFjY2Vzc1Rva2VuXG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIF9tYXA6IE1hcGJveE1hcCB8IHVuZGVmaW5lZCB8IG51bGw7XG5cbiAgICBfc2V0TWFwUmVmID0gKG1hcFJlZjogTWFwUmVmKSA9PiB7XG4gICAgICAvLyBIYW5kbGUgY2hhbmdlIG9mIHRoZSBiYXNlbWFwIGxpYnJhcnlcbiAgICAgIGlmICh0aGlzLl9tYXAgJiYgbWFwUmVmKSB7XG4gICAgICAgIGNvbnN0IG1hcCA9IG1hcFJlZi5nZXRNYXAoKTtcbiAgICAgICAgaWYgKG1hcCAmJiB0aGlzLl9tYXAgIT09IG1hcCkge1xuICAgICAgICAgIHRoaXMuX21hcC5vZmYoJ3N0eWxlLmxvYWQnLCBub3ApO1xuICAgICAgICAgIHRoaXMuX21hcC5vZmYoJ2Vycm9yJywgbm9wKTtcbiAgICAgICAgICB0aGlzLl9tYXAgPSBudWxsO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1hcCA9IG1hcFJlZiAmJiBtYXBSZWYuZ2V0TWFwKCk7XG4gICAgICBpZiAobWFwICYmIHRoaXMuX21hcCAhPT0gbWFwKSB7XG4gICAgICAgIHRoaXMuX21hcCA9IG1hcDtcblxuICAgICAgICBtYXAub24oJ3N0eWxlLmxvYWQnLCAoKSA9PiB7XG4gICAgICAgICAgY29uc3Qgc3R5bGUgPSBtYXAuZ2V0U3R5bGUoKTtcbiAgICAgICAgICB0aGlzLmxvYWRNYXBTdHlsZUpzb24oc3R5bGUpO1xuICAgICAgICB9KTtcblxuICAgICAgICBtYXAub24oJ2Vycm9yJywgKCkgPT4ge1xuICAgICAgICAgIHRoaXMubG9hZE1hcFN0eWxlRXJyb3IoKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIGxvYWRNYXBTdHlsZUpzb24gPSBzdHlsZSA9PiB7XG4gICAgICB0aGlzLnByb3BzLmxvYWRDdXN0b21NYXBTdHlsZSh7c3R5bGUsIGVycm9yOiBmYWxzZX0pO1xuICAgIH07XG5cbiAgICBsb2FkTWFwU3R5bGVFcnJvciA9ICgpID0+IHtcbiAgICAgIHRoaXMucHJvcHMubG9hZEN1c3RvbU1hcFN0eWxlKHtlcnJvcjogdHJ1ZX0pO1xuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7aW5wdXRTdHlsZSwgbWFwU3RhdGUsIGludGx9ID0gdGhpcy5wcm9wcztcblxuICAgICAgY29uc3QgYmFzZU1hcExpYnJhcnlOYW1lID0gZ2V0QmFzZU1hcExpYnJhcnkoaW5wdXRTdHlsZSk7XG4gICAgICBjb25zdCBiYXNlTWFwTGlicmFyeUNvbmZpZyA9IGdldEFwcGxpY2F0aW9uQ29uZmlnKCkuYmFzZU1hcExpYnJhcnlDb25maWdbYmFzZU1hcExpYnJhcnlOYW1lXTtcblxuICAgICAgY29uc3QgbWFwYm94QXBpQWNjZXNzVG9rZW4gPSBpbnB1dFN0eWxlLmFjY2Vzc1Rva2VuIHx8IHRoaXMucHJvcHMubWFwYm94QXBpQWNjZXNzVG9rZW47XG4gICAgICBjb25zdCBtYXBQcm9wcyA9IHtcbiAgICAgICAgLi4ubWFwU3RhdGUsXG4gICAgICAgIC8vIFRPRE8gYmFzZUFwaVVybCBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IGluIHRyYW5zZm9ybVJlcXVlc3QgYXMgd2UgdXNlIGR5bmFtaWMgbWFwTGliIGltcG9ydFxuICAgICAgICAvLyBiYXNlQXBpVXJsOiBtYXBib3hBcGlVcmwsXG4gICAgICAgIG1hcGJveEFjY2Vzc1Rva2VuOiBtYXBib3hBcGlBY2Nlc3NUb2tlbixcbiAgICAgICAgbWFwTGliOiBiYXNlTWFwTGlicmFyeUNvbmZpZy5nZXRNYXBMaWIoKSxcbiAgICAgICAgcHJlc2VydmVEcmF3aW5nQnVmZmVyOiB0cnVlLFxuICAgICAgICB0cmFuc2Zvcm1SZXF1ZXN0OlxuICAgICAgICAgIHRoaXMucHJvcHMudHJhbnNmb3JtUmVxdWVzdD8uKG1hcGJveEFwaUFjY2Vzc1Rva2VuKSB8fFxuICAgICAgICAgIHRyYW5zZm9ybVJlcXVlc3QobWFwYm94QXBpQWNjZXNzVG9rZW4pXG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImFkZC1tYXAtc3R5bGUtbW9kYWxcIj5cbiAgICAgICAgICA8U3R5bGVkTW9kYWxDb250ZW50PlxuICAgICAgICAgICAgPFN0eWxlZE1vZGFsVmVydGljYWxQYW5lbD5cbiAgICAgICAgICAgICAgPFN0eWxlZE1vZGFsU2VjdGlvbj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1vZGFsLXNlY3Rpb24tdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnbW9kYWwuYWRkU3R5bGUucGFzdGVUaXRsZSd9IC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtb2RhbC1zZWN0aW9uLXN1YnRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnBhc3RlU3VidGl0bGUwJ30pfVxuICAgICAgICAgICAgICAgICAgPElubGluZUxpbmtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgICAgaHJlZj1cImh0dHBzOi8vd3d3Lm1hcGJveC5jb20vaGVscC9zdHVkaW8tbWFudWFsLXB1Ymxpc2gvI3N0eWxlLXVybFwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHsnICd9XG4gICAgICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucGFzdGVTdWJ0aXRsZTInfSl9XG4gICAgICAgICAgICAgICAgICA8L0lubGluZUxpbms+eycgJ31cbiAgICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucGFzdGVTdWJ0aXRsZTMnfSl9XG4gICAgICAgICAgICAgICAgICA8SW5saW5lTGlua1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgICAgICBocmVmPVwiaHR0cHM6Ly9kb2NzLm1hcGJveC5jb20vbWFwYm94LWdsLWpzL3N0eWxlLXNwZWNcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnBhc3RlU3VidGl0bGU0J30pfVxuICAgICAgICAgICAgICAgICAgPC9JbmxpbmVMaW5rPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxJbnB1dExpZ2h0XG4gICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICB2YWx1ZT17aW5wdXRTdHlsZS51cmwgfHwgJyd9XG4gICAgICAgICAgICAgICAgICBvbkNoYW5nZT17KHt0YXJnZXQ6IHt2YWx1ZX19KSA9PlxuICAgICAgICAgICAgICAgICAgICB0aGlzLnByb3BzLmlucHV0TWFwU3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICAgIHVybDogdmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgaWQ6ICdDdXN0b20gU3R5bGUnLFxuICAgICAgICAgICAgICAgICAgICAgIGljb246IGAke2dldEFwcGxpY2F0aW9uQ29uZmlnKCkuY2RuVXJsfS8ke05PX0JBU0VNQVBfSUNPTn1gXG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cImUuZy4gaHR0cHM6Ly9iYXNlbWFwcy5jYXJ0b2Nkbi5jb20vZ2wvcG9zaXRyb24tZ2wtc3R5bGUvc3R5bGUuanNvblwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9TdHlsZWRNb2RhbFNlY3Rpb24+XG5cbiAgICAgICAgICAgICAgPFN0eWxlZE1vZGFsU2VjdGlvbj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1vZGFsLXNlY3Rpb24tdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnbW9kYWwuYWRkU3R5bGUucHVibGlzaFRpdGxlJ30gLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1vZGFsLXNlY3Rpb24tc3VidGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucHVibGlzaFN1YnRpdGxlMSd9KX1cbiAgICAgICAgICAgICAgICAgIDxJbmxpbmVMaW5rIHRhcmdldD1cIl9ibGFua1wiIGhyZWY9XCJodHRwczovL3d3dy5tYXBib3guY29tL3N0dWRpby9zdHlsZXMvXCI+XG4gICAgICAgICAgICAgICAgICAgIHsnICd9XG4gICAgICAgICAgICAgICAgICAgIG1hcGJveFxuICAgICAgICAgICAgICAgICAgPC9JbmxpbmVMaW5rPnsnICd9XG4gICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnB1Ymxpc2hTdWJ0aXRsZTInfSl9XG4gICAgICAgICAgICAgICAgICA8SW5saW5lTGlua1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgICAgICBocmVmPVwiaHR0cHM6Ly93d3cubWFwYm94LmNvbS9oZWxwL3N0dWRpby1tYW51YWwtcHVibGlzaC9cIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnB1Ymxpc2hTdWJ0aXRsZTMnfSl9XG4gICAgICAgICAgICAgICAgICA8L0lubGluZUxpbms+eycgJ31cbiAgICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucHVibGlzaFN1YnRpdGxlNCd9KX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibW9kYWwtc2VjdGlvbi1zdWJ0aXRsZVwiPlxuICAgICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wdWJsaXNoU3VidGl0bGU1J30pfVxuICAgICAgICAgICAgICAgICAgPElubGluZUxpbmtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgICAgaHJlZj1cImh0dHBzOi8vd3d3Lm1hcGJveC5jb20vaGVscC9ob3ctYWNjZXNzLXRva2Vucy13b3JrL1wiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHsnICd9XG4gICAgICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucHVibGlzaFN1YnRpdGxlNid9KX1cbiAgICAgICAgICAgICAgICAgIDwvSW5saW5lTGluaz57JyAnfVxuICAgICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wdWJsaXNoU3VidGl0bGU3J30pfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxJbnB1dExpZ2h0XG4gICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICB2YWx1ZT17aW5wdXRTdHlsZS5hY2Nlc3NUb2tlbiB8fCAnJ31cbiAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXsoe3RhcmdldDoge3ZhbHVlfX0pID0+IHRoaXMucHJvcHMuaW5wdXRNYXBTdHlsZSh7YWNjZXNzVG9rZW46IHZhbHVlfSl9XG4gICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLmV4YW1wbGVUb2tlbid9KX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L1N0eWxlZE1vZGFsU2VjdGlvbj5cblxuICAgICAgICAgICAgICA8U3R5bGVkTW9kYWxTZWN0aW9uPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibW9kYWwtc2VjdGlvbi10aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5hZGRTdHlsZS5uYW1pbmdUaXRsZSd9IC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPElucHV0TGlnaHRcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgIHZhbHVlPXtpbnB1dFN0eWxlLmxhYmVsIHx8ICcnfVxuICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9eyh7dGFyZ2V0OiB7dmFsdWV9fSkgPT4gdGhpcy5wcm9wcy5pbnB1dE1hcFN0eWxlKHtsYWJlbDogdmFsdWV9KX1cbiAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiTmFtZSB5b3VyIHN0eWxlXCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L1N0eWxlZE1vZGFsU2VjdGlvbj5cbiAgICAgICAgICAgIDwvU3R5bGVkTW9kYWxWZXJ0aWNhbFBhbmVsPlxuICAgICAgICAgICAgPFByZXZpZXdNYXA+XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzbmFtZXMoJ3ByZXZpZXctdGl0bGUnLCB7XG4gICAgICAgICAgICAgICAgICBlcnJvcjogaW5wdXRTdHlsZS5lcnJvclxuICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2lucHV0U3R5bGUuZXJyb3JcbiAgICAgICAgICAgICAgICAgID8gRXJyb3JNc2cuc3R5bGVFcnJvclxuICAgICAgICAgICAgICAgICAgOiAoaW5wdXRTdHlsZS5zdHlsZSAmJiBpbnB1dFN0eWxlLnN0eWxlLm5hbWUpIHx8ICcnfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPFN0eWxlZFByZXZpZXdJbWFnZSBjbGFzc05hbWU9XCJwcmV2aWV3LWltYWdlXCI+XG4gICAgICAgICAgICAgICAgey8qKiBOb3RlLCB3ZSBuZWVkIHRoZSBNYXAgdG8gcmVuZGVyIHdpdGggZXJyb3JlZCBwYXJhbXMgdG8gZ2V0IHN0eWxlLmVycm9yIG1lc3NhZ2VzICovfVxuICAgICAgICAgICAgICAgIHshaW5wdXRTdHlsZS5pc1ZhbGlkID8gKFxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJwcmV2aWV3LWltYWdlLXNwaW5uZXJcIiAvPlxuICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkTWFwQ29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8TWFwXG4gICAgICAgICAgICAgICAgICAgICAgey4uLm1hcFByb3BzfVxuICAgICAgICAgICAgICAgICAgICAgIHJlZj17dGhpcy5fc2V0TWFwUmVmfVxuICAgICAgICAgICAgICAgICAgICAgIGtleT17YCR7YmFzZU1hcExpYnJhcnlOYW1lfS0ke3RoaXMuc3RhdGUucmVSZW5kZXJLZXl9LSR7aW5wdXRTdHlsZS51cmx9LSR7bWFwYm94QXBpQWNjZXNzVG9rZW59YH1cbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IE1hcFcsXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IE1hcEhcbiAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgIG1hcFN0eWxlPXtpbnB1dFN0eWxlLnVybCA9PT0gbnVsbCA/IHVuZGVmaW5lZCA6IGlucHV0U3R5bGUudXJsfVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPC9TdHlsZWRNYXBDb250YWluZXI+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9TdHlsZWRQcmV2aWV3SW1hZ2U+XG4gICAgICAgICAgICA8L1ByZXZpZXdNYXA+XG4gICAgICAgICAgPC9TdHlsZWRNb2RhbENvbnRlbnQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gaW5qZWN0SW50bChwb2x5ZmlsbChBZGRNYXBTdHlsZU1vZGFsKSk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IEFkZE1hcFN0eWxlTW9kYWxGYWN0b3J5O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsc0JBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLFdBQUEsR0FBQUMsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLGlCQUFBLEdBQUFELHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSyxXQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxrQkFBQSxHQUFBTixPQUFBO0FBT0EsSUFBQU8sT0FBQSxHQUFBUCxPQUFBO0FBR0EsSUFBQVEsTUFBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsVUFBQSxH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QVUsQ0FBQ3dDLE9BQU8sZ0JBQ2xCM0osTUFBQSxZQUFBa0ksYUFBQTtVQUFLQyxTQUFTLEVBQUM7UUFBdUIsQ0FBRSxDQUFDLGdCQUV6Q25JLE1BQUEsWUFBQWtJLGFBQUEsQ0FBQzFILGtCQUFBLENBQUFvSixrQkFBa0IscUJBQ2pCNUosTUFBQSxZQUFBa0ksYUFBQSxDQUFDM0gsV0FBQSxDQUFBc0osR0FBRyxNQUFBQyxTQUFBLGlCQUNFbEMsUUFBUTtVQUNabUMsR0FBRyxFQUFFLElBQUksQ0FBQ0MsVUFBVztVQUNyQnBELEdBQUcsS0FBQWpCLE1BQUEsQ0FBSzJCLGtCQUFrQixPQUFBM0IsTUFBQSxDQUFJLElBQUksQ0FBQ3NFLEtBQUssQ0FBQ3JFLFdBQVcsT0FBQUQsTUFBQSxDQUFJd0IsVUFBVSxDQUFDMkIsR0FBRyxPQUFBbkQsTUFBQSxDQUFJK0Isb0JBQW9CLENBQUc7VUFDakd0QixLQUFLLEVBQUU7WUFDTDhELEtBQUssRUFBRWpHLElBQUk7WUFDWGtHLE1BQU0sRUFBRW5HO1VBQ1YsQ0FBRTtVQUNGb0csUUFBUSxFQUFFakQsVUFBVSxDQUFDMkIsR0FBRyxLQUFLLElBQUksR0FBR3VCLFNBQVMsR0FBR2xELFVBQVUsQ0FBQzJCO1FBQUksRUFDaEUsQ0FDaUIsQ0FFSixDQUNWLENBQ00sQ0FDakIsQ0FBQztNQUVWO0lBQUM7TUFBQWxDLEdBQUE7TUFBQUMsS0FBQSxFQXZNRCxTQUFPeUQsd0JBQXdCQSxDQUFDOUYsS0FBSyxFQUFFeUYsS0FBSyxFQUFFO1FBQzVDLElBQ0V6RixLQUFLLENBQUMyQyxVQUFVLElBQ2hCM0MsS0FBSyxDQUFDMkMsVUFBVSxDQUFDUSxXQUFXLElBQzVCbkQsS0FBSyxDQUFDMkMsVUFBVSxDQUFDUSxXQUFXLEtBQUtzQyxLQUFLLENBQUNwRSxhQUFhLEVBQ3BEO1VBQ0E7VUFDQTtVQUNBOztVQUVBLE9BQU87WUFDTEQsV0FBVyxFQUFFcUUsS0FBSyxDQUFDckUsV0FBVyxHQUFHLENBQUM7WUFDbENDLGFBQWEsRUFBRXJCLEtBQUssQ0FBQzJDLFVBQVUsQ0FBQ1E7VUFDbEMsQ0FBQztRQUNIO1FBRUEsT0FBTyxJQUFJO01BQ2I7SUFBQztFQUFBLEVBdkI0QjRDLGdCQUFTO0VBZ054QyxPQUFPLElBQUFDLHFCQUFVLEVBQUMsSUFBQUMsK0JBQVEsRUFBQ3RGLGdCQUFnQixDQUFDLENBQUM7QUFDL0M7QUFBQyxJQUFBdUYsUUFBQSxHQUFBQyxPQUFBLGNBRWN6Rix1QkFBdUIiLCJpZ25vcmVMaXN0IjpbXX0=
225
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9tYXBib3hMZWdhY3kiLCJfcmVhY3RNYXBsaWJyZSIsIl9zdHlsZWRDb21wb25lbnRzMiIsIl9zdHlsZXMiLCJfdXRpbHMiLCJfcmVhY3RJbnRsIiwiX2xvY2FsaXphdGlvbiIsIl9jb25zdGFudHMiLCJfdGVtcGxhdGVPYmplY3QiLCJfdGVtcGxhdGVPYmplY3QyIiwiX3RlbXBsYXRlT2JqZWN0MyIsIl90ZW1wbGF0ZU9iamVjdDQiLCJfdGVtcGxhdGVPYmplY3Q1IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiTWFwSCIsIk1hcFciLCJFcnJvck1zZyIsInN0eWxlRXJyb3IiLCJQcmV2aWV3TWFwIiwic3R5bGVkIiwiZGl2IiwiX3RhZ2dlZFRlbXBsYXRlTGl0ZXJhbDIiLCJwcm9wcyIsInRoZW1lIiwiZXJyb3JDb2xvciIsIm1lZGlhIiwicG9ydGFibGUiLCJwYWxtIiwiU3R5bGVkUHJldmlld0ltYWdlIiwibW9kYWxJbWFnZVBsYWNlSG9sZGVyIiwiSW5saW5lTGluayIsIm5vcCIsIkFkZE1hcFN0eWxlTW9kYWxGYWN0b3J5IiwiQWRkTWFwU3R5bGVNb2RhbCIsIl9yZWYiLCJpbnB1dE1hcFN0eWxlQWN0aW9uIiwiaW5wdXRNYXBTdHlsZSIsImlucHV0U3R5bGUiLCJsb2FkQ3VzdG9tTWFwU3R5bGVBY3Rpb24iLCJsb2FkQ3VzdG9tTWFwU3R5bGUiLCJtYXBib3hBcGlBY2Nlc3NUb2tlbiIsIm1hcGJveEFwaVVybCIsImN1c3RvbVRyYW5zZm9ybVJlcXVlc3QiLCJ0cmFuc2Zvcm1SZXF1ZXN0IiwibWFwU3RhdGUiLCJpbnRsIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwicmVSZW5kZXJLZXkiLCJzZXRSZVJlbmRlcktleSIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwicHJldmlvdXNUb2tlbiIsInNldFByZXZpb3VzVG9rZW4iLCJtYXBSZWYiLCJ1c2VSZWYiLCJsb2FkQ3VzdG9tTWFwU3R5bGVSZWYiLCJjdXJyZW50IiwidXNlRWZmZWN0IiwiYWNjZXNzVG9rZW4iLCJwcmV2Iiwic2V0TWFwUmVmQ2FsbGJhY2siLCJ1c2VDYWxsYmFjayIsIm1hcFJlZkluc3RhbmNlIiwibWFwIiwiZ2V0TWFwIiwib2ZmIiwib24iLCJzdHlsZSIsImdldFN0eWxlIiwiZXJyb3IiLCJiYXNlTWFwTGlicmFyeU5hbWUiLCJnZXRCYXNlTWFwTGlicmFyeSIsImJhc2VNYXBMaWJyYXJ5Q29uZmlnIiwiZ2V0QXBwbGljYXRpb25Db25maWciLCJtYXBib3hBcGlBY2Nlc3NUb2tlblRvVXNlIiwibWFwUHJvcHMiLCJtYXBib3hBY2Nlc3NUb2tlbiIsInByZXNlcnZlRHJhd2luZ0J1ZmZlciIsIk1BUF9MSUJfT1BUSU9OUyIsIk1BUEJPWCIsIm1hcExpYiIsImdldE1hcExpYiIsIlJlc29sdmVkTWFwQ29tcG9uZW50IiwiTWFwYm94TGVnYWN5TWFwIiwiTWFwbGlicmVNYXAiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwiU3R5bGVkTW9kYWxDb250ZW50IiwiU3R5bGVkTW9kYWxWZXJ0aWNhbFBhbmVsIiwiU3R5bGVkTW9kYWxTZWN0aW9uIiwiRm9ybWF0dGVkTWVzc2FnZSIsImlkIiwiZm9ybWF0TWVzc2FnZSIsInRhcmdldCIsImhyZWYiLCJJbnB1dExpZ2h0IiwidHlwZSIsInZhbHVlIiwidXJsIiwib25DaGFuZ2UiLCJfcmVmMiIsImljb24iLCJjb25jYXQiLCJjZG5VcmwiLCJOT19CQVNFTUFQX0lDT04iLCJwbGFjZWhvbGRlciIsIl9yZWYzIiwibGFiZWwiLCJfcmVmNCIsImNsYXNzbmFtZXMiLCJuYW1lIiwiaXNWYWxpZCIsIlN0eWxlZE1hcENvbnRhaW5lciIsIl9leHRlbmRzMiIsInJlZiIsImtleSIsIndpZHRoIiwiaGVpZ2h0IiwibWFwU3R5bGUiLCJ1bmRlZmluZWQiLCJpbmplY3RJbnRsIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZGFscy9hZGQtbWFwLXN0eWxlLW1vZGFsLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHt1c2VSZWYsIHVzZVN0YXRlLCB1c2VFZmZlY3QsIHVzZUNhbGxiYWNrfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgY2xhc3NuYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHtNYXAgYXMgTWFwYm94TGVnYWN5TWFwLCBNYXBJbnN0YW5jZSwgTWFwUmVmfSBmcm9tICdyZWFjdC1tYXAtZ2wvbWFwYm94LWxlZ2FjeSc7XG5pbXBvcnQge01hcCBhcyBNYXBsaWJyZU1hcH0gZnJvbSAnQHZpcy5nbC9yZWFjdC1tYXBsaWJyZSc7XG5pbXBvcnQge1xuICBTdHlsZWRNb2RhbENvbnRlbnQsXG4gIElucHV0TGlnaHQsXG4gIFN0eWxlZE1hcENvbnRhaW5lcixcbiAgU3R5bGVkTW9kYWxWZXJ0aWNhbFBhbmVsLFxuICBTdHlsZWRNb2RhbFNlY3Rpb25cbn0gZnJvbSAnLi4vY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7bWVkaWF9IGZyb20gJ0BrZXBsZXIuZ2wvc3R5bGVzJztcblxuLy8gVXRpbHNcbmltcG9ydCB7Z2V0QXBwbGljYXRpb25Db25maWcsIGdldEJhc2VNYXBMaWJyYXJ5LCB0cmFuc2Zvcm1SZXF1ZXN0fSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcbmltcG9ydCB7aW5qZWN0SW50bCwgSW50bFNoYXBlfSBmcm9tICdyZWFjdC1pbnRsJztcbmltcG9ydCB7Rm9ybWF0dGVkTWVzc2FnZX0gZnJvbSAnQGtlcGxlci5nbC9sb2NhbGl6YXRpb24nO1xuaW1wb3J0IHtOT19CQVNFTUFQX0lDT04sIE1BUF9MSUJfT1BUSU9OU30gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuaW1wb3J0IHtJbnB1dFN0eWxlLCBNYXBTdGF0ZX0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge0FjdGlvbkhhbmRsZXIsIGlucHV0TWFwU3R5bGUsIGxvYWRDdXN0b21NYXBTdHlsZX0gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcblxuY29uc3QgTWFwSCA9IDE5MDtcbmNvbnN0IE1hcFcgPSAyNjQ7XG5jb25zdCBFcnJvck1zZyA9IHtcbiAgc3R5bGVFcnJvcjpcbiAgICAnRmFpbGVkIHRvIGxvYWQgbWFwIHN0eWxlLCBtYWtlIHN1cmUgaXQgaXMgcHVibGlzaGVkLiBGb3IgcHJpdmF0ZSBzdHlsZSwgcGFzdGUgaW4geW91ciBhY2Nlc3MgdG9rZW4uJ1xufTtcblxuY29uc3QgUHJldmlld01hcCA9IHN0eWxlZC5kaXZgXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogMTE2cHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuXG4gIC5wcmV2aWV3LXRpdGxlIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBwYWRkaW5nOiA4cHggMHB4O1xuICB9XG5cbiAgLnByZXZpZXctdGl0bGUuZXJyb3Ige1xuICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmVycm9yQ29sb3J9O1xuICAgIG1heC13aWR0aDogMjUwcHg7XG4gIH1cblxuICAke21lZGlhLnBvcnRhYmxlYFxuICAgIG1hcmdpbi1sZWZ0OiAzMnB4O1xuICBgfTtcblxuICAke21lZGlhLnBhbG1gXG4gICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgIC5wcmV2aWV3LXRpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICB9XG4gIGB9O1xuYDtcblxuY29uc3QgU3R5bGVkUHJldmlld0ltYWdlID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5tb2RhbEltYWdlUGxhY2VIb2xkZXJ9O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IDAgOHB4IDE2cHggMCByZ2JhKDAsIDAsIDAsIDAuMTgpO1xuICB3aWR0aDogJHtNYXBXfXB4O1xuICBoZWlnaHQ6ICR7TWFwSH1weDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5wcmV2aWV3LWltYWdlLXBsYWNlaG9sZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAucHJldmlldy1pbWFnZS1zcGlubmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogY2FsYyg1MCUgLSAyNXB4KTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMjVweCk7XG4gIH1cbmA7XG5cbmNvbnN0IElubGluZUxpbmsgPSBzdHlsZWQuYWBcbiAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbmA7XG5cbmNvbnN0IG5vcCA9ICgpID0+IHtcbiAgcmV0dXJuO1xufTtcblxuaW50ZXJmYWNlIEFkZE1hcFN0eWxlTW9kYWxQcm9wcyB7XG4gIGlucHV0TWFwU3R5bGU6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIGlucHV0TWFwU3R5bGU+O1xuICBpbnB1dFN0eWxlOiBJbnB1dFN0eWxlO1xuICBsb2FkQ3VzdG9tTWFwU3R5bGU6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIGxvYWRDdXN0b21NYXBTdHlsZT47XG4gIG1hcGJveEFwaUFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIG1hcGJveEFwaVVybD86IHN0cmluZztcbiAgdHJhbnNmb3JtUmVxdWVzdD86IChtYXBib3hLZXk6IHN0cmluZykgPT4gKFxuICAgIHVybDogc3RyaW5nLFxuICAgIHJlc291cmNlVHlwZTogc3RyaW5nXG4gICkgPT4ge1xuICAgIHVybDogc3RyaW5nO1xuICB9O1xuICBtYXBTdGF0ZTogTWFwU3RhdGU7XG4gIGludGw6IEludGxTaGFwZTtcbn1cblxuZnVuY3Rpb24gQWRkTWFwU3R5bGVNb2RhbEZhY3RvcnkoKSB7XG4gIGZ1bmN0aW9uIEFkZE1hcFN0eWxlTW9kYWwoe1xuICAgIGlucHV0TWFwU3R5bGU6IGlucHV0TWFwU3R5bGVBY3Rpb24sXG4gICAgaW5wdXRTdHlsZSxcbiAgICBsb2FkQ3VzdG9tTWFwU3R5bGU6IGxvYWRDdXN0b21NYXBTdHlsZUFjdGlvbixcbiAgICBtYXBib3hBcGlBY2Nlc3NUb2tlbixcbiAgICBtYXBib3hBcGlVcmwsXG4gICAgdHJhbnNmb3JtUmVxdWVzdDogY3VzdG9tVHJhbnNmb3JtUmVxdWVzdCxcbiAgICBtYXBTdGF0ZSxcbiAgICBpbnRsXG4gIH06IEFkZE1hcFN0eWxlTW9kYWxQcm9wcykge1xuICAgIGNvbnN0IFtyZVJlbmRlcktleSwgc2V0UmVSZW5kZXJLZXldID0gdXNlU3RhdGUoMCk7XG4gICAgY29uc3QgW3ByZXZpb3VzVG9rZW4sIHNldFByZXZpb3VzVG9rZW5dID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG4gICAgY29uc3QgbWFwUmVmID0gdXNlUmVmPE1hcEluc3RhbmNlIHwgbnVsbD4obnVsbCk7XG4gICAgY29uc3QgbG9hZEN1c3RvbU1hcFN0eWxlUmVmID0gdXNlUmVmKGxvYWRDdXN0b21NYXBTdHlsZUFjdGlvbik7XG4gICAgbG9hZEN1c3RvbU1hcFN0eWxlUmVmLmN1cnJlbnQgPSBsb2FkQ3VzdG9tTWFwU3R5bGVBY3Rpb247XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKGlucHV0U3R5bGU/LmFjY2Vzc1Rva2VuICYmIGlucHV0U3R5bGUuYWNjZXNzVG9rZW4gIT09IHByZXZpb3VzVG9rZW4pIHtcbiAgICAgICAgc2V0UmVSZW5kZXJLZXkocHJldiA9PiBwcmV2ICsgMSk7XG4gICAgICAgIHNldFByZXZpb3VzVG9rZW4oaW5wdXRTdHlsZS5hY2Nlc3NUb2tlbik7XG4gICAgICB9XG4gICAgfSwgW2lucHV0U3R5bGU/LmFjY2Vzc1Rva2VuLCBwcmV2aW91c1Rva2VuXSk7XG5cbiAgICBjb25zdCBzZXRNYXBSZWZDYWxsYmFjayA9IHVzZUNhbGxiYWNrKChtYXBSZWZJbnN0YW5jZTogTWFwUmVmIHwgbnVsbCkgPT4ge1xuICAgICAgaWYgKG1hcFJlZi5jdXJyZW50ICYmIG1hcFJlZkluc3RhbmNlKSB7XG4gICAgICAgIGNvbnN0IG1hcCA9IG1hcFJlZkluc3RhbmNlLmdldE1hcCgpO1xuICAgICAgICBpZiAobWFwICYmIG1hcFJlZi5jdXJyZW50ICE9PSBtYXApIHtcbiAgICAgICAgICBtYXBSZWYuY3VycmVudC5vZmYoJ3N0eWxlLmxvYWQnLCBub3ApO1xuICAgICAgICAgIG1hcFJlZi5jdXJyZW50Lm9mZignZXJyb3InLCBub3ApO1xuICAgICAgICAgIG1hcFJlZi5jdXJyZW50ID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBtYXAgPSBtYXBSZWZJbnN0YW5jZSAmJiBtYXBSZWZJbnN0YW5jZS5nZXRNYXAoKTtcbiAgICAgIGlmIChtYXAgJiYgbWFwUmVmLmN1cnJlbnQgIT09IG1hcCkge1xuICAgICAgICBtYXBSZWYuY3VycmVudCA9IG1hcDtcblxuICAgICAgICBtYXAub24oJ3N0eWxlLmxvYWQnLCAoKSA9PiB7XG4gICAgICAgICAgY29uc3Qgc3R5bGUgPSBtYXAuZ2V0U3R5bGUoKTtcbiAgICAgICAgICBsb2FkQ3VzdG9tTWFwU3R5bGVSZWYuY3VycmVudCh7c3R5bGUsIGVycm9yOiBmYWxzZX0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBtYXAub24oJ2Vycm9yJywgKCkgPT4ge1xuICAgICAgICAgIGxvYWRDdXN0b21NYXBTdHlsZVJlZi5jdXJyZW50KHtlcnJvcjogdHJ1ZX0pO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9LCBbXSk7XG5cbiAgICBjb25zdCBiYXNlTWFwTGlicmFyeU5hbWUgPSBnZXRCYXNlTWFwTGlicmFyeShpbnB1dFN0eWxlKTtcbiAgICBjb25zdCBiYXNlTWFwTGlicmFyeUNvbmZpZyA9IGdldEFwcGxpY2F0aW9uQ29uZmlnKCkuYmFzZU1hcExpYnJhcnlDb25maWdbYmFzZU1hcExpYnJhcnlOYW1lXTtcblxuICAgIGNvbnN0IG1hcGJveEFwaUFjY2Vzc1Rva2VuVG9Vc2UgPSBpbnB1dFN0eWxlLmFjY2Vzc1Rva2VuIHx8IG1hcGJveEFwaUFjY2Vzc1Rva2VuO1xuICAgIGNvbnN0IG1hcFByb3BzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge1xuICAgICAgLi4ubWFwU3RhdGUsXG4gICAgICBtYXBib3hBY2Nlc3NUb2tlbjogbWFwYm94QXBpQWNjZXNzVG9rZW5Ub1VzZSxcbiAgICAgIHByZXNlcnZlRHJhd2luZ0J1ZmZlcjogdHJ1ZSxcbiAgICAgIHRyYW5zZm9ybVJlcXVlc3Q6XG4gICAgICAgIGN1c3RvbVRyYW5zZm9ybVJlcXVlc3Q/LihtYXBib3hBcGlBY2Nlc3NUb2tlblRvVXNlKSB8fFxuICAgICAgICB0cmFuc2Zvcm1SZXF1ZXN0KG1hcGJveEFwaUFjY2Vzc1Rva2VuVG9Vc2UpXG4gICAgfTtcblxuICAgIGlmIChiYXNlTWFwTGlicmFyeU5hbWUgPT09IE1BUF9MSUJfT1BUSU9OUy5NQVBCT1gpIHtcbiAgICAgIG1hcFByb3BzLm1hcExpYiA9IGJhc2VNYXBMaWJyYXJ5Q29uZmlnLmdldE1hcExpYigpO1xuICAgIH1cblxuICAgIGNvbnN0IFJlc29sdmVkTWFwQ29tcG9uZW50ID1cbiAgICAgIGJhc2VNYXBMaWJyYXJ5TmFtZSA9PT0gTUFQX0xJQl9PUFRJT05TLk1BUEJPWCA/IE1hcGJveExlZ2FjeU1hcCA6IE1hcGxpYnJlTWFwO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYWRkLW1hcC1zdHlsZS1tb2RhbFwiPlxuICAgICAgICA8U3R5bGVkTW9kYWxDb250ZW50PlxuICAgICAgICAgIDxTdHlsZWRNb2RhbFZlcnRpY2FsUGFuZWw+XG4gICAgICAgICAgICA8U3R5bGVkTW9kYWxTZWN0aW9uPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1vZGFsLXNlY3Rpb24tdGl0bGVcIj5cbiAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J21vZGFsLmFkZFN0eWxlLnBhc3RlVGl0bGUnfSAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtb2RhbC1zZWN0aW9uLXN1YnRpdGxlXCI+XG4gICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wYXN0ZVN1YnRpdGxlMCd9KX1cbiAgICAgICAgICAgICAgICA8SW5saW5lTGlua1xuICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgIGhyZWY9XCJodHRwczovL3d3dy5tYXBib3guY29tL2hlbHAvc3R1ZGlvLW1hbnVhbC1wdWJsaXNoLyNzdHlsZS11cmxcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHsnICd9XG4gICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnBhc3RlU3VidGl0bGUyJ30pfVxuICAgICAgICAgICAgICAgIDwvSW5saW5lTGluaz57JyAnfVxuICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucGFzdGVTdWJ0aXRsZTMnfSl9XG4gICAgICAgICAgICAgICAgPElubGluZUxpbmsgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj1cImh0dHBzOi8vZG9jcy5tYXBib3guY29tL21hcGJveC1nbC1qcy9zdHlsZS1zcGVjXCI+XG4gICAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wYXN0ZVN1YnRpdGxlNCd9KX1cbiAgICAgICAgICAgICAgICA8L0lubGluZUxpbms+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8SW5wdXRMaWdodFxuICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICB2YWx1ZT17aW5wdXRTdHlsZS51cmwgfHwgJyd9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9eyh7dGFyZ2V0OiB7dmFsdWV9fSkgPT5cbiAgICAgICAgICAgICAgICAgIGlucHV0TWFwU3R5bGVBY3Rpb24oe1xuICAgICAgICAgICAgICAgICAgICB1cmw6IHZhbHVlLFxuICAgICAgICAgICAgICAgICAgICBpZDogJ0N1c3RvbSBTdHlsZScsXG4gICAgICAgICAgICAgICAgICAgIGljb246IGAke2dldEFwcGxpY2F0aW9uQ29uZmlnKCkuY2RuVXJsfS8ke05PX0JBU0VNQVBfSUNPTn1gXG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cImUuZy4gaHR0cHM6Ly9iYXNlbWFwcy5jYXJ0b2Nkbi5jb20vZ2wvcG9zaXRyb24tZ2wtc3R5bGUvc3R5bGUuanNvblwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L1N0eWxlZE1vZGFsU2VjdGlvbj5cblxuICAgICAgICAgICAgPFN0eWxlZE1vZGFsU2VjdGlvbj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtb2RhbC1zZWN0aW9uLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5hZGRTdHlsZS5wdWJsaXNoVGl0bGUnfSAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtb2RhbC1zZWN0aW9uLXN1YnRpdGxlXCI+XG4gICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wdWJsaXNoU3VidGl0bGUxJ30pfVxuICAgICAgICAgICAgICAgIDxJbmxpbmVMaW5rIHRhcmdldD1cIl9ibGFua1wiIGhyZWY9XCJodHRwczovL3d3dy5tYXBib3guY29tL3N0dWRpby9zdHlsZXMvXCI+XG4gICAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgICAgbWFwYm94XG4gICAgICAgICAgICAgICAgPC9JbmxpbmVMaW5rPnsnICd9XG4gICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wdWJsaXNoU3VidGl0bGUyJ30pfVxuICAgICAgICAgICAgICAgIDxJbmxpbmVMaW5rXG4gICAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgICAgaHJlZj1cImh0dHBzOi8vd3d3Lm1hcGJveC5jb20vaGVscC9zdHVkaW8tbWFudWFsLXB1Ymxpc2gvXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wdWJsaXNoU3VidGl0bGUzJ30pfVxuICAgICAgICAgICAgICAgIDwvSW5saW5lTGluaz57JyAnfVxuICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucHVibGlzaFN1YnRpdGxlNCd9KX1cbiAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtb2RhbC1zZWN0aW9uLXN1YnRpdGxlXCI+XG4gICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wdWJsaXNoU3VidGl0bGU1J30pfVxuICAgICAgICAgICAgICAgIDxJbmxpbmVMaW5rXG4gICAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgICAgaHJlZj1cImh0dHBzOi8vd3d3Lm1hcGJveC5jb20vaGVscC9ob3ctYWNjZXNzLXRva2Vucy13b3JrL1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgeycgJ31cbiAgICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucHVibGlzaFN1YnRpdGxlNid9KX1cbiAgICAgICAgICAgICAgICA8L0lubGluZUxpbms+eycgJ31cbiAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnB1Ymxpc2hTdWJ0aXRsZTcnfSl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8SW5wdXRMaWdodFxuICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICB2YWx1ZT17aW5wdXRTdHlsZS5hY2Nlc3NUb2tlbiB8fCAnJ31cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT17KHt0YXJnZXQ6IHt2YWx1ZX19KSA9PiBpbnB1dE1hcFN0eWxlQWN0aW9uKHthY2Nlc3NUb2tlbjogdmFsdWV9KX1cbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLmV4YW1wbGVUb2tlbid9KX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkTW9kYWxTZWN0aW9uPlxuXG4gICAgICAgICAgICA8U3R5bGVkTW9kYWxTZWN0aW9uPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1vZGFsLXNlY3Rpb24tdGl0bGVcIj5cbiAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J21vZGFsLmFkZFN0eWxlLm5hbWluZ1RpdGxlJ30gLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxJbnB1dExpZ2h0XG4gICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgIHZhbHVlPXtpbnB1dFN0eWxlLmxhYmVsIHx8ICcnfVxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXsoe3RhcmdldDoge3ZhbHVlfX0pID0+IGlucHV0TWFwU3R5bGVBY3Rpb24oe2xhYmVsOiB2YWx1ZX0pfVxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiTmFtZSB5b3VyIHN0eWxlXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkTW9kYWxTZWN0aW9uPlxuICAgICAgICAgIDwvU3R5bGVkTW9kYWxWZXJ0aWNhbFBhbmVsPlxuICAgICAgICAgIDxQcmV2aWV3TWFwPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzbmFtZXMoJ3ByZXZpZXctdGl0bGUnLCB7XG4gICAgICAgICAgICAgICAgZXJyb3I6IGlucHV0U3R5bGUuZXJyb3JcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpbnB1dFN0eWxlLmVycm9yXG4gICAgICAgICAgICAgICAgPyBFcnJvck1zZy5zdHlsZUVycm9yXG4gICAgICAgICAgICAgICAgOiAoaW5wdXRTdHlsZS5zdHlsZSAmJiBpbnB1dFN0eWxlLnN0eWxlLm5hbWUpIHx8ICcnfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8U3R5bGVkUHJldmlld0ltYWdlIGNsYXNzTmFtZT1cInByZXZpZXctaW1hZ2VcIj5cbiAgICAgICAgICAgICAgeyFpbnB1dFN0eWxlLmlzVmFsaWQgPyAoXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJwcmV2aWV3LWltYWdlLXNwaW5uZXJcIiAvPlxuICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgIDxTdHlsZWRNYXBDb250YWluZXI+XG4gICAgICAgICAgICAgICAgICA8UmVzb2x2ZWRNYXBDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgICAgey4uLm1hcFByb3BzfVxuICAgICAgICAgICAgICAgICAgICByZWY9e3NldE1hcFJlZkNhbGxiYWNrIGFzIGFueX1cbiAgICAgICAgICAgICAgICAgICAga2V5PXtgJHtiYXNlTWFwTGlicmFyeU5hbWV9LSR7cmVSZW5kZXJLZXl9LSR7aW5wdXRTdHlsZS51cmx9LSR7bWFwYm94QXBpQWNjZXNzVG9rZW5Ub1VzZX1gfVxuICAgICAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBNYXBXLFxuICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogTWFwSFxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICBtYXBTdHlsZT17aW5wdXRTdHlsZS51cmwgPT09IG51bGwgPyB1bmRlZmluZWQgOiBpbnB1dFN0eWxlLnVybH1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRNYXBDb250YWluZXI+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L1N0eWxlZFByZXZpZXdJbWFnZT5cbiAgICAgICAgICA8L1ByZXZpZXdNYXA+XG4gICAgICAgIDwvU3R5bGVkTW9kYWxDb250ZW50PlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBpbmplY3RJbnRsKEFkZE1hcFN0eWxlTW9kYWwpO1xufVxuXG5leHBvcnQgZGVmYXVsdCBBZGRNYXBTdHlsZU1vZGFsRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsaUJBQUEsR0FBQUQsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFJLGFBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLGNBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLGtCQUFBLEdBQUFOLE9BQUE7QUFPQSxJQUFBTyxPQUFBLEdBQUFQLE9BQUE7QUFHQSxJQUFBUSxNQUFBLEdBQUFSLE9BQUE7QUFDQSxJQUFBUyxVQUFBLEdBQUFULE9BQUE7QUFDQSxJQUFBVSxhQUFBLEdBQUFWLE9BQUE7QUFDQSxJQUFBVyxVQUFBLEdBQUFYLE9BQUE7QUFBc0UsSUFBQVksZUFBQSxFQUFBQyxnQkFBQSxFQUFBQyxnQkFBQSxFQUFBQyxnQkFBQSxFQUFBQyxnQkFBQSxFQXJCdEU7QUFDQTtBQWdCQTtBQUFBLFNBQUFDLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7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
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import InfoHelperFactory from '../../common/info-helper';
3
3
  import { Provider } from '@kepler.gl/cloud-providers';
4
- declare type CloudHeaderProps = {
4
+ type CloudHeaderProps = {
5
5
  provider: Provider;
6
6
  onBack: () => void;
7
7
  };
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { Provider } from '@kepler.gl/cloud-providers';
3
- declare type ProviderSelectProps = {
3
+ type ProviderSelectProps = {
4
4
  cloudProviders: Provider[];
5
5
  };
6
6
  export declare const ProviderSelect: React.FC<ProviderSelectProps>;
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import { IStyledComponent } from 'styled-components';
3
3
  import { Provider } from '@kepler.gl/cloud-providers';
4
4
  import { BaseComponentProps } from '../types';
5
- export declare type StyledTileWrapperProps = BaseComponentProps & {
5
+ export type StyledTileWrapperProps = BaseComponentProps & {
6
6
  selected?: boolean;
7
7
  };
8
8
  export declare const StyledWarning: IStyledComponent<"web", import("styled-components/dist/types").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>>;
@@ -6,8 +6,8 @@ import { UIStateActions } from '@kepler.gl/actions';
6
6
  import { UiState } from '@kepler.gl/types';
7
7
  import DataTableConfigFactory from '../common/data-table/display-format';
8
8
  import { BaseComponentProps } from '../types';
9
- export declare type DatasetModalTabProps = BaseComponentProps & {
10
- active?: boolean;
9
+ export type DatasetModalTabProps = BaseComponentProps & {
10
+ $active?: boolean;
11
11
  };
12
12
  export declare const DatasetModalTab: IStyledComponent<'web', DatasetModalTabProps>;
13
13
  interface DatasetTabsUnmemoizedProps {