@kepler.gl/components 3.1.0-alpha.1 → 3.1.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 (725) hide show
  1. package/dist/bottom-widget.d.ts +19 -0
  2. package/dist/bottom-widget.js +184 -0
  3. package/dist/common/action-panel.d.ts +29 -0
  4. package/dist/common/action-panel.js +136 -0
  5. package/dist/common/animation-control/animation-control.d.ts +25 -0
  6. package/dist/common/animation-control/animation-control.js +96 -0
  7. package/dist/common/animation-control/animation-controller.d.ts +19 -0
  8. package/dist/common/animation-control/animation-controller.js +269 -0
  9. package/dist/common/animation-control/animation-speed-slider.d.ts +12 -0
  10. package/dist/common/animation-control/animation-speed-slider.js +50 -0
  11. package/dist/common/animation-control/animation-window-control.d.ts +20 -0
  12. package/dist/common/animation-control/animation-window-control.js +60 -0
  13. package/dist/common/animation-control/floating-time-display.d.ts +9 -0
  14. package/dist/common/animation-control/floating-time-display.js +132 -0
  15. package/dist/common/animation-control/play-control.d.ts +12 -0
  16. package/dist/common/animation-control/play-control.js +52 -0
  17. package/dist/common/animation-control/playback-controls.d.ts +48 -0
  18. package/dist/common/animation-control/playback-controls.js +156 -0
  19. package/dist/common/animation-control/reset-control.d.ts +9 -0
  20. package/dist/common/animation-control/reset-control.js +43 -0
  21. package/dist/common/animation-control/speed-control.d.ts +12 -0
  22. package/dist/common/animation-control/speed-control.js +53 -0
  23. package/dist/common/animation-control/window-action-control.d.ts +11 -0
  24. package/dist/common/animation-control/window-action-control.js +58 -0
  25. package/dist/common/checkbox.d.ts +36 -0
  26. package/dist/common/checkbox.js +105 -0
  27. package/dist/common/color-legend.d.ts +57 -0
  28. package/dist/common/color-legend.js +262 -0
  29. package/dist/common/column-stats-chart.d.ts +37 -0
  30. package/dist/common/column-stats-chart.js +359 -0
  31. package/dist/common/data-table/button.d.ts +8 -0
  32. package/dist/common/data-table/button.js +38 -0
  33. package/dist/common/data-table/canvas.d.ts +2 -0
  34. package/dist/common/data-table/canvas.js +26 -0
  35. package/dist/common/data-table/cell-size.d.ts +43 -0
  36. package/dist/common/data-table/cell-size.js +183 -0
  37. package/dist/common/data-table/display-format.d.ts +25 -0
  38. package/dist/common/data-table/display-format.js +126 -0
  39. package/dist/common/data-table/grid.d.ts +10 -0
  40. package/dist/common/data-table/grid.js +107 -0
  41. package/dist/common/data-table/header-cell.d.ts +28 -0
  42. package/dist/common/data-table/header-cell.js +149 -0
  43. package/dist/common/data-table/index.d.ts +101 -0
  44. package/dist/common/data-table/index.js +464 -0
  45. package/dist/common/data-table/option-dropdown.d.ts +28 -0
  46. package/dist/common/data-table/option-dropdown.js +160 -0
  47. package/dist/common/dataset-label.d.ts +10 -0
  48. package/dist/common/dataset-label.js +27 -0
  49. package/dist/common/error-boundary.d.ts +16 -0
  50. package/dist/common/error-boundary.js +59 -0
  51. package/dist/common/field-selector.d.ts +49 -0
  52. package/dist/common/field-selector.js +173 -0
  53. package/dist/common/field-token.d.ts +62 -0
  54. package/dist/common/field-token.js +43 -0
  55. package/dist/common/file-uploader/file-drop.d.ts +54 -0
  56. package/dist/common/file-uploader/file-drop.js +196 -0
  57. package/dist/common/file-uploader/file-upload-progress.d.ts +8 -0
  58. package/dist/common/file-uploader/file-upload-progress.js +86 -0
  59. package/dist/common/file-uploader/file-upload.d.ts +23 -0
  60. package/dist/common/file-uploader/file-upload.js +244 -0
  61. package/dist/common/file-uploader/upload-button.d.ts +8 -0
  62. package/dist/common/file-uploader/upload-button.js +59 -0
  63. package/dist/common/flex-container.d.ts +3 -0
  64. package/dist/common/flex-container.js +15 -0
  65. package/dist/common/histogram-plot.d.ts +13 -0
  66. package/dist/common/histogram-plot.js +232 -0
  67. package/dist/common/icon-button.d.ts +27 -0
  68. package/dist/common/icon-button.js +25 -0
  69. package/dist/common/icons/add.d.ts +9 -0
  70. package/dist/common/icons/add.js +41 -0
  71. package/dist/common/icons/anchor_window.d.ts +11 -0
  72. package/dist/common/icons/anchor_window.js +34 -0
  73. package/dist/common/icons/arrow-down-alt.d.ts +9 -0
  74. package/dist/common/icons/arrow-down-alt.js +41 -0
  75. package/dist/common/icons/arrow-down-full.d.ts +16 -0
  76. package/dist/common/icons/arrow-down-full.js +50 -0
  77. package/dist/common/icons/arrow-down-small.d.ts +14 -0
  78. package/dist/common/icons/arrow-down-small.js +54 -0
  79. package/dist/common/icons/arrow-down-solid.d.ts +9 -0
  80. package/dist/common/icons/arrow-down-solid.js +41 -0
  81. package/dist/common/icons/arrow-down.d.ts +9 -0
  82. package/dist/common/icons/arrow-down.js +41 -0
  83. package/dist/common/icons/arrow-left.d.ts +9 -0
  84. package/dist/common/icons/arrow-left.js +44 -0
  85. package/dist/common/icons/arrow-right.d.ts +9 -0
  86. package/dist/common/icons/arrow-right.js +41 -0
  87. package/dist/common/icons/arrow-up-alt.d.ts +9 -0
  88. package/dist/common/icons/arrow-up-alt.js +42 -0
  89. package/dist/common/icons/arrow-up-solid.d.ts +9 -0
  90. package/dist/common/icons/arrow-up-solid.js +41 -0
  91. package/dist/common/icons/arrow-up.d.ts +9 -0
  92. package/dist/common/icons/arrow-up.js +41 -0
  93. package/dist/common/icons/base.d.ts +29 -0
  94. package/dist/common/icons/base.js +79 -0
  95. package/dist/common/icons/bug.d.ts +9 -0
  96. package/dist/common/icons/bug.js +43 -0
  97. package/dist/common/icons/calendar.d.ts +10 -0
  98. package/dist/common/icons/calendar.js +49 -0
  99. package/dist/common/icons/cancel.d.ts +9 -0
  100. package/dist/common/icons/cancel.js +41 -0
  101. package/dist/common/icons/checkmark.d.ts +10 -0
  102. package/dist/common/icons/checkmark.js +47 -0
  103. package/dist/common/icons/clipboard.d.ts +9 -0
  104. package/dist/common/icons/clipboard.js +42 -0
  105. package/dist/common/icons/clock.d.ts +9 -0
  106. package/dist/common/icons/clock.js +43 -0
  107. package/dist/common/icons/close.d.ts +9 -0
  108. package/dist/common/icons/close.js +46 -0
  109. package/dist/common/icons/code-alt.d.ts +9 -0
  110. package/dist/common/icons/code-alt.js +44 -0
  111. package/dist/common/icons/copy.d.ts +9 -0
  112. package/dist/common/icons/copy.js +46 -0
  113. package/dist/common/icons/crosshairs.d.ts +9 -0
  114. package/dist/common/icons/crosshairs.js +44 -0
  115. package/dist/common/icons/cube-3d.d.ts +9 -0
  116. package/dist/common/icons/cube-3d.js +45 -0
  117. package/dist/common/icons/cursor-click.d.ts +9 -0
  118. package/dist/common/icons/cursor-click.js +45 -0
  119. package/dist/common/icons/cursor-point.d.ts +14 -0
  120. package/dist/common/icons/cursor-point.js +51 -0
  121. package/dist/common/icons/data-table.d.ts +10 -0
  122. package/dist/common/icons/data-table.js +42 -0
  123. package/dist/common/icons/db.d.ts +10 -0
  124. package/dist/common/icons/db.js +42 -0
  125. package/dist/common/icons/delete.d.ts +9 -0
  126. package/dist/common/icons/delete.js +43 -0
  127. package/dist/common/icons/docs.d.ts +9 -0
  128. package/dist/common/icons/docs.js +57 -0
  129. package/dist/common/icons/drag-n-drop.d.ts +9 -0
  130. package/dist/common/icons/drag-n-drop.js +43 -0
  131. package/dist/common/icons/draw-polygon.d.ts +10 -0
  132. package/dist/common/icons/draw-polygon.js +61 -0
  133. package/dist/common/icons/edit.d.ts +14 -0
  134. package/dist/common/icons/edit.js +49 -0
  135. package/dist/common/icons/effects/brightness-contrast.d.ts +14 -0
  136. package/dist/common/icons/effects/brightness-contrast.js +70 -0
  137. package/dist/common/icons/effects/color-halftone.d.ts +14 -0
  138. package/dist/common/icons/effects/color-halftone.js +109 -0
  139. package/dist/common/icons/effects/dot-screen.d.ts +14 -0
  140. package/dist/common/icons/effects/dot-screen.js +104 -0
  141. package/dist/common/icons/effects/edge-work.d.ts +14 -0
  142. package/dist/common/icons/effects/edge-work.js +63 -0
  143. package/dist/common/icons/effects/hexagonal-pixelate.d.ts +14 -0
  144. package/dist/common/icons/effects/hexagonal-pixelate.js +130 -0
  145. package/dist/common/icons/effects/hue-saturation.d.ts +14 -0
  146. package/dist/common/icons/effects/hue-saturation.js +61 -0
  147. package/dist/common/icons/effects/ink.d.ts +14 -0
  148. package/dist/common/icons/effects/ink.js +60 -0
  149. package/dist/common/icons/effects/light-and-shadow.d.ts +14 -0
  150. package/dist/common/icons/effects/light-and-shadow.js +49 -0
  151. package/dist/common/icons/effects/magic-wand.d.ts +14 -0
  152. package/dist/common/icons/effects/magic-wand.js +61 -0
  153. package/dist/common/icons/effects/magnify.d.ts +14 -0
  154. package/dist/common/icons/effects/magnify.js +68 -0
  155. package/dist/common/icons/effects/noise.d.ts +14 -0
  156. package/dist/common/icons/effects/noise.js +114 -0
  157. package/dist/common/icons/effects/sepia.d.ts +14 -0
  158. package/dist/common/icons/effects/sepia.js +61 -0
  159. package/dist/common/icons/effects/tilt-shift.d.ts +14 -0
  160. package/dist/common/icons/effects/tilt-shift.js +70 -0
  161. package/dist/common/icons/effects/triangle-blur.d.ts +14 -0
  162. package/dist/common/icons/effects/triangle-blur.js +65 -0
  163. package/dist/common/icons/effects/vibrance.d.ts +14 -0
  164. package/dist/common/icons/effects/vibrance.js +61 -0
  165. package/dist/common/icons/effects/vignette.d.ts +14 -0
  166. package/dist/common/icons/effects/vignette.js +54 -0
  167. package/dist/common/icons/effects/zoom-blur.d.ts +14 -0
  168. package/dist/common/icons/effects/zoom-blur.js +89 -0
  169. package/dist/common/icons/email.d.ts +9 -0
  170. package/dist/common/icons/email.js +45 -0
  171. package/dist/common/icons/expand.d.ts +9 -0
  172. package/dist/common/icons/expand.js +43 -0
  173. package/dist/common/icons/eye-seen.d.ts +9 -0
  174. package/dist/common/icons/eye-seen.js +43 -0
  175. package/dist/common/icons/eye-unseen.d.ts +9 -0
  176. package/dist/common/icons/eye-unseen.js +43 -0
  177. package/dist/common/icons/file-type.d.ts +8 -0
  178. package/dist/common/icons/file-type.js +35 -0
  179. package/dist/common/icons/file.d.ts +9 -0
  180. package/dist/common/icons/file.js +41 -0
  181. package/dist/common/icons/files.d.ts +9 -0
  182. package/dist/common/icons/files.js +41 -0
  183. package/dist/common/icons/filter-funnel.d.ts +9 -0
  184. package/dist/common/icons/filter-funnel.js +41 -0
  185. package/dist/common/icons/free-window.d.ts +4 -0
  186. package/dist/common/icons/free-window.js +44 -0
  187. package/dist/common/icons/gear.d.ts +9 -0
  188. package/dist/common/icons/gear.js +43 -0
  189. package/dist/common/icons/globe.d.ts +15 -0
  190. package/dist/common/icons/globe.js +54 -0
  191. package/dist/common/icons/hash.d.ts +9 -0
  192. package/dist/common/icons/hash.js +41 -0
  193. package/dist/common/icons/help.d.ts +13 -0
  194. package/dist/common/icons/help.js +51 -0
  195. package/dist/common/icons/histogram.d.ts +9 -0
  196. package/dist/common/icons/histogram.js +41 -0
  197. package/dist/common/icons/index.d.ts +106 -0
  198. package/dist/common/icons/index.js +740 -0
  199. package/dist/common/icons/info.d.ts +12 -0
  200. package/dist/common/icons/info.js +54 -0
  201. package/dist/common/icons/layers.d.ts +9 -0
  202. package/dist/common/icons/layers.js +41 -0
  203. package/dist/common/icons/left-arrow.d.ts +9 -0
  204. package/dist/common/icons/left-arrow.js +44 -0
  205. package/dist/common/icons/legend.d.ts +9 -0
  206. package/dist/common/icons/legend.js +41 -0
  207. package/dist/common/icons/line-chart.d.ts +9 -0
  208. package/dist/common/icons/line-chart.js +41 -0
  209. package/dist/common/icons/location-marker.d.ts +14 -0
  210. package/dist/common/icons/location-marker.js +59 -0
  211. package/dist/common/icons/login.d.ts +9 -0
  212. package/dist/common/icons/login.js +44 -0
  213. package/dist/common/icons/logout.d.ts +9 -0
  214. package/dist/common/icons/logout.js +43 -0
  215. package/dist/common/icons/map-icon.d.ts +11 -0
  216. package/dist/common/icons/map-icon.js +48 -0
  217. package/dist/common/icons/map.d.ts +11 -0
  218. package/dist/common/icons/map.js +48 -0
  219. package/dist/common/icons/messages.d.ts +9 -0
  220. package/dist/common/icons/messages.js +41 -0
  221. package/dist/common/icons/minus.d.ts +9 -0
  222. package/dist/common/icons/minus.js +41 -0
  223. package/dist/common/icons/moon.d.ts +14 -0
  224. package/dist/common/icons/moon.js +59 -0
  225. package/dist/common/icons/order-by-dataset.d.ts +4 -0
  226. package/dist/common/icons/order-by-dataset.js +46 -0
  227. package/dist/common/icons/order-by-list.d.ts +4 -0
  228. package/dist/common/icons/order-by-list.js +38 -0
  229. package/dist/common/icons/pause.d.ts +9 -0
  230. package/dist/common/icons/pause.js +41 -0
  231. package/dist/common/icons/picture.d.ts +9 -0
  232. package/dist/common/icons/picture.js +41 -0
  233. package/dist/common/icons/pin.d.ts +9 -0
  234. package/dist/common/icons/pin.js +45 -0
  235. package/dist/common/icons/play.d.ts +9 -0
  236. package/dist/common/icons/play.js +41 -0
  237. package/dist/common/icons/polygon.d.ts +10 -0
  238. package/dist/common/icons/polygon.js +63 -0
  239. package/dist/common/icons/rectangle.d.ts +10 -0
  240. package/dist/common/icons/rectangle.js +64 -0
  241. package/dist/common/icons/reduce.d.ts +9 -0
  242. package/dist/common/icons/reduce.js +44 -0
  243. package/dist/common/icons/reset.d.ts +9 -0
  244. package/dist/common/icons/reset.js +41 -0
  245. package/dist/common/icons/rocket.d.ts +9 -0
  246. package/dist/common/icons/rocket.js +41 -0
  247. package/dist/common/icons/save.d.ts +9 -0
  248. package/dist/common/icons/save.js +43 -0
  249. package/dist/common/icons/save2.d.ts +9 -0
  250. package/dist/common/icons/save2.js +47 -0
  251. package/dist/common/icons/search.d.ts +9 -0
  252. package/dist/common/icons/search.js +43 -0
  253. package/dist/common/icons/settings.d.ts +9 -0
  254. package/dist/common/icons/settings.js +43 -0
  255. package/dist/common/icons/share.d.ts +9 -0
  256. package/dist/common/icons/share.js +41 -0
  257. package/dist/common/icons/split.d.ts +9 -0
  258. package/dist/common/icons/split.js +69 -0
  259. package/dist/common/icons/square-select.d.ts +9 -0
  260. package/dist/common/icons/square-select.js +43 -0
  261. package/dist/common/icons/sun.d.ts +14 -0
  262. package/dist/common/icons/sun.js +75 -0
  263. package/dist/common/icons/sunrise.d.ts +14 -0
  264. package/dist/common/icons/sunrise.js +71 -0
  265. package/dist/common/icons/sunset.d.ts +14 -0
  266. package/dist/common/icons/sunset.js +71 -0
  267. package/dist/common/icons/timeline-marker.d.ts +17 -0
  268. package/dist/common/icons/timeline-marker.js +56 -0
  269. package/dist/common/icons/trash.d.ts +10 -0
  270. package/dist/common/icons/trash.js +44 -0
  271. package/dist/common/icons/vert-dots.d.ts +9 -0
  272. package/dist/common/icons/vert-dots.js +79 -0
  273. package/dist/common/icons/vert-three-dots.d.ts +9 -0
  274. package/dist/common/icons/vert-three-dots.js +54 -0
  275. package/dist/common/icons/warning-sign.d.ts +15 -0
  276. package/dist/common/icons/warning-sign.js +61 -0
  277. package/dist/common/icons/warning.d.ts +10 -0
  278. package/dist/common/icons/warning.js +55 -0
  279. package/dist/common/image-preview.d.ts +15 -0
  280. package/dist/common/image-preview.js +60 -0
  281. package/dist/common/index.d.ts +4 -0
  282. package/dist/common/index.js +277 -0
  283. package/dist/common/info-helper.d.ts +10 -0
  284. package/dist/common/info-helper.js +61 -0
  285. package/dist/common/item-selector/accessor.d.ts +7 -0
  286. package/dist/common/item-selector/accessor.js +37 -0
  287. package/dist/common/item-selector/chickleted-input.d.ts +23 -0
  288. package/dist/common/item-selector/chickleted-input.js +153 -0
  289. package/dist/common/item-selector/dropdown-list.d.ts +74 -0
  290. package/dist/common/item-selector/dropdown-list.js +260 -0
  291. package/dist/common/item-selector/dropdown-select.d.ts +33 -0
  292. package/dist/common/item-selector/dropdown-select.js +79 -0
  293. package/dist/common/item-selector/item-selector.d.ts +82 -0
  294. package/dist/common/item-selector/item-selector.js +252 -0
  295. package/dist/common/item-selector/typeahead.d.ts +126 -0
  296. package/dist/common/item-selector/typeahead.js +433 -0
  297. package/dist/common/line-chart.d.ts +34 -0
  298. package/dist/common/line-chart.js +120 -0
  299. package/dist/common/loading-spinner.d.ts +10 -0
  300. package/dist/common/loading-spinner.js +51 -0
  301. package/dist/common/logo.d.ts +8 -0
  302. package/dist/common/logo.js +68 -0
  303. package/dist/common/map-layer-selector.d.ts +13 -0
  304. package/dist/common/map-layer-selector.js +38 -0
  305. package/dist/common/modal.d.ts +64 -0
  306. package/dist/common/modal.js +171 -0
  307. package/dist/common/portaled.d.ts +583 -0
  308. package/dist/common/portaled.js +285 -0
  309. package/dist/common/progress-bar.d.ts +12 -0
  310. package/dist/common/progress-bar.js +47 -0
  311. package/dist/common/radius-legend.d.ts +10 -0
  312. package/dist/common/radius-legend.js +132 -0
  313. package/dist/common/range-brush.d.ts +19 -0
  314. package/dist/common/range-brush.js +266 -0
  315. package/dist/common/range-plot.d.ts +41 -0
  316. package/dist/common/range-plot.js +207 -0
  317. package/dist/common/range-slider-timeline-panel.d.ts +11 -0
  318. package/dist/common/range-slider-timeline-panel.js +43 -0
  319. package/dist/common/range-slider-timeline.d.ts +7 -0
  320. package/dist/common/range-slider-timeline.js +114 -0
  321. package/dist/common/range-slider.d.ts +42 -0
  322. package/dist/common/range-slider.js +309 -0
  323. package/dist/common/slider/mouse-event.d.ts +27 -0
  324. package/dist/common/slider/mouse-event.js +105 -0
  325. package/dist/common/slider/slider-bar-handle.d.ts +29 -0
  326. package/dist/common/slider/slider-bar-handle.js +91 -0
  327. package/dist/common/slider/slider-handle.d.ts +33 -0
  328. package/dist/common/slider/slider-handle.js +137 -0
  329. package/dist/common/slider/slider.d.ts +72 -0
  330. package/dist/common/slider/slider.js +209 -0
  331. package/dist/common/styled-components.d.ts +159 -0
  332. package/dist/common/styled-components.js +398 -0
  333. package/dist/common/switch.d.ts +16 -0
  334. package/dist/common/switch.js +21 -0
  335. package/dist/common/sync-timeline-control.d.ts +28 -0
  336. package/dist/common/sync-timeline-control.js +61 -0
  337. package/dist/common/time-range-slider-time-title.d.ts +9 -0
  338. package/dist/common/time-range-slider-time-title.js +62 -0
  339. package/dist/common/time-range-slider.d.ts +42 -0
  340. package/dist/common/time-range-slider.js +132 -0
  341. package/dist/common/time-slider-marker.d.ts +14 -0
  342. package/dist/common/time-slider-marker.js +116 -0
  343. package/dist/common/timeline-slider.d.ts +13 -0
  344. package/dist/common/timeline-slider.js +132 -0
  345. package/dist/common/tippy-tooltip.d.ts +6 -0
  346. package/dist/common/tippy-tooltip.js +135 -0
  347. package/dist/common/toolbar-item.d.ts +14 -0
  348. package/dist/common/toolbar-item.js +60 -0
  349. package/dist/common/toolbar.d.ts +5 -0
  350. package/dist/common/toolbar.js +27 -0
  351. package/dist/common/vertical-toolbar.d.ts +3 -0
  352. package/dist/common/vertical-toolbar.js +16 -0
  353. package/dist/connect/keplergl-connect.d.ts +9 -0
  354. package/dist/connect/keplergl-connect.js +44 -0
  355. package/dist/connect/with-local-selector.d.ts +6 -0
  356. package/dist/connect/with-local-selector.js +86 -0
  357. package/dist/container.d.ts +39 -0
  358. package/dist/container.js +181 -0
  359. package/dist/context.d.ts +27 -0
  360. package/dist/context.js +44 -0
  361. package/dist/dnd-context.d.ts +13 -0
  362. package/dist/dnd-context.js +124 -0
  363. package/dist/editor/editor.d.ts +31 -0
  364. package/dist/editor/editor.js +201 -0
  365. package/dist/editor/feature-action-panel.d.ts +32 -0
  366. package/dist/editor/feature-action-panel.js +148 -0
  367. package/dist/effects/compact-color-picker.d.ts +10 -0
  368. package/dist/effects/compact-color-picker.js +111 -0
  369. package/dist/effects/effect-configurator.d.ts +17 -0
  370. package/dist/effects/effect-configurator.js +275 -0
  371. package/dist/effects/effect-list.d.ts +20 -0
  372. package/dist/effects/effect-list.js +129 -0
  373. package/dist/effects/effect-manager.d.ts +27 -0
  374. package/dist/effects/effect-manager.js +120 -0
  375. package/dist/effects/effect-panel-header.d.ts +45 -0
  376. package/dist/effects/effect-panel-header.js +180 -0
  377. package/dist/effects/effect-panel.d.ts +24 -0
  378. package/dist/effects/effect-panel.js +112 -0
  379. package/dist/effects/effect-time-configurator.d.ts +20 -0
  380. package/dist/effects/effect-time-configurator.js +302 -0
  381. package/dist/effects/effect-time-selector.d.ts +16 -0
  382. package/dist/effects/effect-time-selector.js +153 -0
  383. package/dist/effects/effect-time-slider.d.ts +34 -0
  384. package/dist/effects/effect-time-slider.js +199 -0
  385. package/dist/effects/effect-type-dropdown-list.d.ts +18 -0
  386. package/dist/effects/effect-type-dropdown-list.js +66 -0
  387. package/dist/effects/effect-type-list-item.d.ts +22 -0
  388. package/dist/effects/effect-type-list-item.js +87 -0
  389. package/dist/effects/effect-type-selector.d.ts +30 -0
  390. package/dist/effects/effect-type-selector.js +77 -0
  391. package/dist/effects/side-panel-title.d.ts +7 -0
  392. package/dist/effects/side-panel-title.js +37 -0
  393. package/dist/effects/timezone-selector.d.ts +19 -0
  394. package/dist/effects/timezone-selector.js +58 -0
  395. package/dist/filter-animation-controller.d.ts +17 -0
  396. package/dist/filter-animation-controller.js +77 -0
  397. package/dist/filters/components.d.ts +3 -0
  398. package/dist/filters/components.js +14 -0
  399. package/dist/filters/filter-panels/filter-panel-with-field-select.d.ts +10 -0
  400. package/dist/filters/filter-panels/filter-panel-with-field-select.js +78 -0
  401. package/dist/filters/filter-panels/filter-synced-dataset-panel.d.ts +54 -0
  402. package/dist/filters/filter-panels/filter-synced-dataset-panel.js +261 -0
  403. package/dist/filters/filter-panels/multi-select-filter-panel.d.ts +9 -0
  404. package/dist/filters/filter-panels/multi-select-filter-panel.js +49 -0
  405. package/dist/filters/filter-panels/new-filter-panel.d.ts +12 -0
  406. package/dist/filters/filter-panels/new-filter-panel.js +67 -0
  407. package/dist/filters/filter-panels/polygon-filter-panel.d.ts +9 -0
  408. package/dist/filters/filter-panels/polygon-filter-panel.js +68 -0
  409. package/dist/filters/filter-panels/range-filter-panel.d.ts +9 -0
  410. package/dist/filters/filter-panels/range-filter-panel.js +54 -0
  411. package/dist/filters/filter-panels/single-select-filter-panel.d.ts +9 -0
  412. package/dist/filters/filter-panels/single-select-filter-panel.js +49 -0
  413. package/dist/filters/filter-panels/time-range-filter-panel.d.ts +12 -0
  414. package/dist/filters/filter-panels/time-range-filter-panel.js +130 -0
  415. package/dist/filters/filter-panels/time-synced-field-selector.d.ts +7 -0
  416. package/dist/filters/filter-panels/time-synced-field-selector.js +28 -0
  417. package/dist/filters/filter-panels/types.d.ts +40 -0
  418. package/dist/filters/filter-panels/types.js +6 -0
  419. package/dist/filters/index.d.ts +7 -0
  420. package/dist/filters/index.js +56 -0
  421. package/dist/filters/multi-select-filter.d.ts +3 -0
  422. package/dist/filters/multi-select-filter.js +31 -0
  423. package/dist/filters/polygon-filter.d.ts +4 -0
  424. package/dist/filters/polygon-filter.js +77 -0
  425. package/dist/filters/range-filter.d.ts +8 -0
  426. package/dist/filters/range-filter.js +35 -0
  427. package/dist/filters/single-select-filter.d.ts +3 -0
  428. package/dist/filters/single-select-filter.js +40 -0
  429. package/dist/filters/time-range-filter.d.ts +35 -0
  430. package/dist/filters/time-range-filter.js +67 -0
  431. package/dist/filters/time-widget-top.d.ts +8 -0
  432. package/dist/filters/time-widget-top.js +88 -0
  433. package/dist/filters/time-widget.d.ts +10 -0
  434. package/dist/filters/time-widget.js +101 -0
  435. package/dist/filters/types.d.ts +67 -0
  436. package/dist/filters/types.js +6 -0
  437. package/dist/geocoder/geocoder.d.ts +31 -0
  438. package/dist/geocoder/geocoder.js +269 -0
  439. package/dist/geocoder-panel.d.ts +22 -0
  440. package/dist/geocoder-panel.js +197 -0
  441. package/dist/hooks/use-cloud-list-provider.d.ts +11 -0
  442. package/dist/hooks/use-cloud-list-provider.js +47 -0
  443. package/dist/hooks/use-dnd-effects.d.ts +9 -0
  444. package/dist/hooks/use-dnd-effects.js +69 -0
  445. package/dist/hooks/use-dnd-layers.d.ts +9 -0
  446. package/dist/hooks/use-dnd-layers.js +80 -0
  447. package/dist/hooks/use-feature-flags.d.ts +5 -0
  448. package/dist/hooks/use-feature-flags.js +17 -0
  449. package/dist/hooks/use-fetch-vector-tile-metadata.d.ts +16 -0
  450. package/dist/hooks/use-fetch-vector-tile-metadata.js +109 -0
  451. package/dist/hooks/use-on-click-outside.d.ts +2 -0
  452. package/dist/hooks/use-on-click-outside.js +36 -0
  453. package/dist/index.d.ts +253 -0
  454. package/dist/index.js +2608 -0
  455. package/dist/injector.d.ts +29 -0
  456. package/dist/injector.js +151 -0
  457. package/dist/kepler-gl.d.ts +325 -0
  458. package/dist/kepler-gl.js +504 -0
  459. package/dist/layer-animation-controller.d.ts +13 -0
  460. package/dist/layer-animation-controller.js +54 -0
  461. package/dist/map/coordinate-info.d.ts +7 -0
  462. package/dist/map/coordinate-info.js +42 -0
  463. package/dist/map/effects/effect-control.d.ts +16 -0
  464. package/dist/map/effects/effect-control.js +52 -0
  465. package/dist/map/layer-hover-info.d.ts +29 -0
  466. package/dist/map/layer-hover-info.js +222 -0
  467. package/dist/map/layer-selector-panel.d.ts +21 -0
  468. package/dist/map/layer-selector-panel.js +85 -0
  469. package/dist/map/lazy-tippy.d.ts +8 -0
  470. package/dist/map/lazy-tippy.js +61 -0
  471. package/dist/map/locale-panel.d.ts +16 -0
  472. package/dist/map/locale-panel.js +77 -0
  473. package/dist/map/map-control-panel.d.ts +20 -0
  474. package/dist/map/map-control-panel.js +139 -0
  475. package/dist/map/map-control-toolbar.d.ts +2 -0
  476. package/dist/map/map-control-toolbar.js +18 -0
  477. package/dist/map/map-control-tooltip.d.ts +8 -0
  478. package/dist/map/map-control-tooltip.js +34 -0
  479. package/dist/map/map-control.d.ts +56 -0
  480. package/dist/map/map-control.js +71 -0
  481. package/dist/map/map-draw-panel.d.ts +20 -0
  482. package/dist/map/map-draw-panel.js +98 -0
  483. package/dist/map/map-legend-panel.d.ts +65 -0
  484. package/dist/map/map-legend-panel.js +155 -0
  485. package/dist/map/map-legend.d.ts +90 -0
  486. package/dist/map/map-legend.js +369 -0
  487. package/dist/map/map-popover-content.d.ts +28 -0
  488. package/dist/map/map-popover-content.js +28 -0
  489. package/dist/map/map-popover.d.ts +33 -0
  490. package/dist/map/map-popover.js +185 -0
  491. package/dist/map/split-map-button.d.ts +20 -0
  492. package/dist/map/split-map-button.js +65 -0
  493. package/dist/map/toggle-3d-button.d.ts +17 -0
  494. package/dist/map/toggle-3d-button.js +55 -0
  495. package/dist/map-container.d.ts +73 -0
  496. package/dist/map-container.js +903 -0
  497. package/dist/map-view-state-context.d.ts +17 -0
  498. package/dist/map-view-state-context.js +99 -0
  499. package/dist/maps-layout.d.ts +12 -0
  500. package/dist/maps-layout.js +43 -0
  501. package/dist/modal-container.d.ts +59 -0
  502. package/dist/modal-container.js +434 -0
  503. package/dist/modals/add-map-style-modal.d.ts +17 -0
  504. package/dist/modals/add-map-style-modal.js +198 -0
  505. package/dist/modals/cloud-components/cloud-header.d.ts +12 -0
  506. package/dist/modals/cloud-components/cloud-header.js +60 -0
  507. package/dist/modals/cloud-components/cloud-item.d.ts +5 -0
  508. package/dist/modals/cloud-components/cloud-item.js +59 -0
  509. package/dist/modals/cloud-components/cloud-item.spec.d.ts +1 -0
  510. package/dist/modals/cloud-components/cloud-item.spec.js +92 -0
  511. package/dist/modals/cloud-components/cloud-maps.d.ts +8 -0
  512. package/dist/modals/cloud-components/cloud-maps.js +47 -0
  513. package/dist/modals/cloud-components/cloud-maps.spec.d.ts +1 -0
  514. package/dist/modals/cloud-components/cloud-maps.spec.js +98 -0
  515. package/dist/modals/cloud-components/provider-loading.d.ts +2 -0
  516. package/dist/modals/cloud-components/provider-loading.js +20 -0
  517. package/dist/modals/cloud-components/provider-select.d.ts +7 -0
  518. package/dist/modals/cloud-components/provider-select.js +30 -0
  519. package/dist/modals/cloud-tile.d.ts +15 -0
  520. package/dist/modals/cloud-tile.js +203 -0
  521. package/dist/modals/data-table-modal.d.ts +37 -0
  522. package/dist/modals/data-table-modal.js +264 -0
  523. package/dist/modals/delete-data-modal.d.ts +10 -0
  524. package/dist/modals/delete-data-modal.js +41 -0
  525. package/dist/modals/error-display.d.ts +6 -0
  526. package/dist/modals/error-display.js +33 -0
  527. package/dist/modals/export-data-modal.d.ts +23 -0
  528. package/dist/modals/export-data-modal.js +187 -0
  529. package/dist/modals/export-image-modal.d.ts +16 -0
  530. package/dist/modals/export-image-modal.js +122 -0
  531. package/dist/modals/export-map-modal/components.d.ts +8 -0
  532. package/dist/modals/export-map-modal/components.js +34 -0
  533. package/dist/modals/export-map-modal/export-html-map.d.ts +12 -0
  534. package/dist/modals/export-map-modal/export-html-map.js +126 -0
  535. package/dist/modals/export-map-modal/export-json-map.d.ts +9 -0
  536. package/dist/modals/export-map-modal/export-json-map.js +81 -0
  537. package/dist/modals/export-map-modal/export-map-modal.d.ts +27 -0
  538. package/dist/modals/export-map-modal/export-map-modal.js +84 -0
  539. package/dist/modals/image-modal-container.d.ts +16 -0
  540. package/dist/modals/image-modal-container.js +58 -0
  541. package/dist/modals/load-data-modal.d.ts +44 -0
  542. package/dist/modals/load-data-modal.js +98 -0
  543. package/dist/modals/load-storage-map.d.ts +9 -0
  544. package/dist/modals/load-storage-map.js +80 -0
  545. package/dist/modals/load-storage-map.spec.d.ts +1 -0
  546. package/dist/modals/load-storage-map.spec.js +216 -0
  547. package/dist/modals/loading-dialog.d.ts +7 -0
  548. package/dist/modals/loading-dialog.js +37 -0
  549. package/dist/modals/modal-dialog.d.ts +2 -0
  550. package/dist/modals/modal-dialog.js +16 -0
  551. package/dist/modals/modal-tabs.d.ts +15 -0
  552. package/dist/modals/modal-tabs.js +75 -0
  553. package/dist/modals/overwrite-map-modal.d.ts +16 -0
  554. package/dist/modals/overwrite-map-modal.js +84 -0
  555. package/dist/modals/save-map-modal.d.ts +28 -0
  556. package/dist/modals/save-map-modal.js +179 -0
  557. package/dist/modals/save-map-modal.spec.d.ts +1 -0
  558. package/dist/modals/save-map-modal.spec.js +195 -0
  559. package/dist/modals/share-map-modal.d.ts +26 -0
  560. package/dist/modals/share-map-modal.js +169 -0
  561. package/dist/modals/share-map-modal.spec.d.ts +1 -0
  562. package/dist/modals/share-map-modal.spec.js +173 -0
  563. package/dist/modals/status-panel.d.ts +13 -0
  564. package/dist/modals/status-panel.js +65 -0
  565. package/dist/modals/storage-map-viewer.d.ts +21 -0
  566. package/dist/modals/storage-map-viewer.js +98 -0
  567. package/dist/modals/tilesets-modals/common.d.ts +12 -0
  568. package/dist/modals/tilesets-modals/common.js +6 -0
  569. package/dist/modals/tilesets-modals/load-data-footer.d.ts +11 -0
  570. package/dist/modals/tilesets-modals/load-data-footer.js +41 -0
  571. package/dist/modals/tilesets-modals/load-tileset.d.ts +16 -0
  572. package/dist/modals/tilesets-modals/load-tileset.js +114 -0
  573. package/dist/modals/tilesets-modals/tileset-icon.d.ts +9 -0
  574. package/dist/modals/tilesets-modals/tileset-icon.js +32 -0
  575. package/dist/modals/tilesets-modals/tileset-vector-form.d.ts +13 -0
  576. package/dist/modals/tilesets-modals/tileset-vector-form.js +165 -0
  577. package/dist/notification-panel/notification-item.d.ts +67 -0
  578. package/dist/notification-panel/notification-item.js +150 -0
  579. package/dist/notification-panel.d.ts +13 -0
  580. package/dist/notification-panel.js +61 -0
  581. package/dist/plot-container.d.ts +24 -0
  582. package/dist/plot-container.js +223 -0
  583. package/dist/side-panel/add-by-dataset-button.d.ts +12 -0
  584. package/dist/side-panel/add-by-dataset-button.js +128 -0
  585. package/dist/side-panel/cloud-storage-dropdown.d.ts +6 -0
  586. package/dist/side-panel/cloud-storage-dropdown.js +40 -0
  587. package/dist/side-panel/common/dataset-info.d.ts +11 -0
  588. package/dist/side-panel/common/dataset-info.js +34 -0
  589. package/dist/side-panel/common/dataset-tag.d.ts +17 -0
  590. package/dist/side-panel/common/dataset-tag.js +62 -0
  591. package/dist/side-panel/common/dataset-title.d.ts +22 -0
  592. package/dist/side-panel/common/dataset-title.js +143 -0
  593. package/dist/side-panel/common/source-data-catalog.d.ts +29 -0
  594. package/dist/side-panel/common/source-data-catalog.js +49 -0
  595. package/dist/side-panel/common/source-data-selector-content.d.ts +8 -0
  596. package/dist/side-panel/common/source-data-selector-content.js +65 -0
  597. package/dist/side-panel/common/source-data-selector.d.ts +8 -0
  598. package/dist/side-panel/common/source-data-selector.js +41 -0
  599. package/dist/side-panel/common/source-selector.d.ts +21 -0
  600. package/dist/side-panel/common/source-selector.js +57 -0
  601. package/dist/side-panel/common/types.d.ts +44 -0
  602. package/dist/side-panel/common/types.js +6 -0
  603. package/dist/side-panel/custom-panel.d.ts +13 -0
  604. package/dist/side-panel/custom-panel.js +39 -0
  605. package/dist/side-panel/filter-manager.d.ts +32 -0
  606. package/dist/side-panel/filter-manager.js +203 -0
  607. package/dist/side-panel/filter-panel/add-filter-button.d.ts +8 -0
  608. package/dist/side-panel/filter-panel/add-filter-button.js +28 -0
  609. package/dist/side-panel/filter-panel/filter-panel-header.d.ts +26 -0
  610. package/dist/side-panel/filter-panel/filter-panel-header.js +53 -0
  611. package/dist/side-panel/filter-panel/filter-panel.d.ts +23 -0
  612. package/dist/side-panel/filter-panel/filter-panel.js +93 -0
  613. package/dist/side-panel/interaction-manager.d.ts +18 -0
  614. package/dist/side-panel/interaction-manager.js +45 -0
  615. package/dist/side-panel/interaction-panel/brush-config.d.ts +15 -0
  616. package/dist/side-panel/interaction-panel/brush-config.js +41 -0
  617. package/dist/side-panel/interaction-panel/interaction-panel.d.ts +20 -0
  618. package/dist/side-panel/interaction-panel/interaction-panel.js +115 -0
  619. package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.d.ts +30 -0
  620. package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +162 -0
  621. package/dist/side-panel/interaction-panel/tooltip-config.d.ts +37 -0
  622. package/dist/side-panel/interaction-panel/tooltip-config.js +150 -0
  623. package/dist/side-panel/layer-manager.d.ts +44 -0
  624. package/dist/side-panel/layer-manager.js +200 -0
  625. package/dist/side-panel/layer-panel/add-layer-button.d.ts +8 -0
  626. package/dist/side-panel/layer-panel/add-layer-button.js +28 -0
  627. package/dist/side-panel/layer-panel/aggr-scale-selector.d.ts +13 -0
  628. package/dist/side-panel/layer-panel/aggr-scale-selector.js +35 -0
  629. package/dist/side-panel/layer-panel/channel-by-value-selector.d.ts +26 -0
  630. package/dist/side-panel/layer-panel/channel-by-value-selector.js +68 -0
  631. package/dist/side-panel/layer-panel/color-breaks-panel.d.ts +33 -0
  632. package/dist/side-panel/layer-panel/color-breaks-panel.js +153 -0
  633. package/dist/side-panel/layer-panel/color-palette-preset.d.ts +9 -0
  634. package/dist/side-panel/layer-panel/color-palette-preset.js +45 -0
  635. package/dist/side-panel/layer-panel/color-palette.d.ts +12 -0
  636. package/dist/side-panel/layer-panel/color-palette.js +69 -0
  637. package/dist/side-panel/layer-panel/color-range-selector.d.ts +39 -0
  638. package/dist/side-panel/layer-panel/color-range-selector.js +244 -0
  639. package/dist/side-panel/layer-panel/color-scale-selector.d.ts +36 -0
  640. package/dist/side-panel/layer-panel/color-scale-selector.js +186 -0
  641. package/dist/side-panel/layer-panel/color-selector.d.ts +34 -0
  642. package/dist/side-panel/layer-panel/color-selector.js +167 -0
  643. package/dist/side-panel/layer-panel/column-selector.d.ts +18 -0
  644. package/dist/side-panel/layer-panel/column-selector.js +60 -0
  645. package/dist/side-panel/layer-panel/custom-palette.d.ts +77 -0
  646. package/dist/side-panel/layer-panel/custom-palette.js +427 -0
  647. package/dist/side-panel/layer-panel/custom-picker.d.ts +8 -0
  648. package/dist/side-panel/layer-panel/custom-picker.js +71 -0
  649. package/dist/side-panel/layer-panel/dataset-layer-group.d.ts +23 -0
  650. package/dist/side-panel/layer-panel/dataset-layer-group.js +67 -0
  651. package/dist/side-panel/layer-panel/dataset-layer-section.d.ts +25 -0
  652. package/dist/side-panel/layer-panel/dataset-layer-section.js +60 -0
  653. package/dist/side-panel/layer-panel/dataset-section.d.ts +23 -0
  654. package/dist/side-panel/layer-panel/dataset-section.js +74 -0
  655. package/dist/side-panel/layer-panel/dimension-scale-selector.d.ts +23 -0
  656. package/dist/side-panel/layer-panel/dimension-scale-selector.js +90 -0
  657. package/dist/side-panel/layer-panel/how-to-button.d.ts +6 -0
  658. package/dist/side-panel/layer-panel/how-to-button.js +27 -0
  659. package/dist/side-panel/layer-panel/layer-color-selector.d.ts +42 -0
  660. package/dist/side-panel/layer-panel/layer-color-selector.js +106 -0
  661. package/dist/side-panel/layer-panel/layer-column-config.d.ts +24 -0
  662. package/dist/side-panel/layer-panel/layer-column-config.js +86 -0
  663. package/dist/side-panel/layer-panel/layer-column-mode-config.d.ts +47 -0
  664. package/dist/side-panel/layer-panel/layer-column-mode-config.js +193 -0
  665. package/dist/side-panel/layer-panel/layer-config-group.d.ts +44 -0
  666. package/dist/side-panel/layer-panel/layer-config-group.js +141 -0
  667. package/dist/side-panel/layer-panel/layer-configurator.d.ts +67 -0
  668. package/dist/side-panel/layer-panel/layer-configurator.js +644 -0
  669. package/dist/side-panel/layer-panel/layer-error-message.d.ts +6 -0
  670. package/dist/side-panel/layer-panel/layer-error-message.js +29 -0
  671. package/dist/side-panel/layer-panel/layer-list.d.ts +21 -0
  672. package/dist/side-panel/layer-panel/layer-list.js +170 -0
  673. package/dist/side-panel/layer-panel/layer-panel-header.d.ts +73 -0
  674. package/dist/side-panel/layer-panel/layer-panel-header.js +274 -0
  675. package/dist/side-panel/layer-panel/layer-panel.d.ts +39 -0
  676. package/dist/side-panel/layer-panel/layer-panel.js +162 -0
  677. package/dist/side-panel/layer-panel/layer-type-dropdown-list.d.ts +22 -0
  678. package/dist/side-panel/layer-panel/layer-type-dropdown-list.js +78 -0
  679. package/dist/side-panel/layer-panel/layer-type-list-item.d.ts +22 -0
  680. package/dist/side-panel/layer-panel/layer-type-list-item.js +67 -0
  681. package/dist/side-panel/layer-panel/layer-type-selector.d.ts +22 -0
  682. package/dist/side-panel/layer-panel/layer-type-selector.js +58 -0
  683. package/dist/side-panel/layer-panel/radius-by-zoom-input.d.ts +11 -0
  684. package/dist/side-panel/layer-panel/radius-by-zoom-input.js +220 -0
  685. package/dist/side-panel/layer-panel/single-color-palette.d.ts +9 -0
  686. package/dist/side-panel/layer-panel/single-color-palette.js +86 -0
  687. package/dist/side-panel/layer-panel/text-label-panel.d.ts +17 -0
  688. package/dist/side-panel/layer-panel/text-label-panel.js +165 -0
  689. package/dist/side-panel/layer-panel/vector-tile-layer-configurator.d.ts +22 -0
  690. package/dist/side-panel/layer-panel/vector-tile-layer-configurator.js +86 -0
  691. package/dist/side-panel/layer-panel/vis-config-by-field-selector.d.ts +24 -0
  692. package/dist/side-panel/layer-panel/vis-config-by-field-selector.js +60 -0
  693. package/dist/side-panel/layer-panel/vis-config-slider.d.ts +20 -0
  694. package/dist/side-panel/layer-panel/vis-config-slider.js +159 -0
  695. package/dist/side-panel/layer-panel/vis-config-switch.d.ts +16 -0
  696. package/dist/side-panel/layer-panel/vis-config-switch.js +55 -0
  697. package/dist/side-panel/map-manager.d.ts +27 -0
  698. package/dist/side-panel/map-manager.js +127 -0
  699. package/dist/side-panel/map-style-panel/map-layer-group-color-picker.d.ts +14 -0
  700. package/dist/side-panel/map-style-panel/map-layer-group-color-picker.js +77 -0
  701. package/dist/side-panel/map-style-panel/map-layer-group-item.d.ts +29 -0
  702. package/dist/side-panel/map-style-panel/map-layer-group-item.js +95 -0
  703. package/dist/side-panel/map-style-panel/map-layer-selector.d.ts +23 -0
  704. package/dist/side-panel/map-style-panel/map-layer-selector.js +74 -0
  705. package/dist/side-panel/map-style-panel/map-style-selector.d.ts +23 -0
  706. package/dist/side-panel/map-style-panel/map-style-selector.js +96 -0
  707. package/dist/side-panel/panel-header-action.d.ts +22 -0
  708. package/dist/side-panel/panel-header-action.js +73 -0
  709. package/dist/side-panel/panel-header.d.ts +91 -0
  710. package/dist/side-panel/panel-header.js +303 -0
  711. package/dist/side-panel/panel-tab.d.ts +20 -0
  712. package/dist/side-panel/panel-tab.js +55 -0
  713. package/dist/side-panel/panel-title.d.ts +7 -0
  714. package/dist/side-panel/panel-title.js +40 -0
  715. package/dist/side-panel/panel-toggle.d.ts +13 -0
  716. package/dist/side-panel/panel-toggle.js +48 -0
  717. package/dist/side-panel/panel-view-list-toggle.d.ts +31 -0
  718. package/dist/side-panel/panel-view-list-toggle.js +98 -0
  719. package/dist/side-panel/side-bar.d.ts +78 -0
  720. package/dist/side-panel/side-bar.js +127 -0
  721. package/dist/side-panel.d.ts +21 -0
  722. package/dist/side-panel.js +214 -0
  723. package/dist/types.d.ts +47 -0
  724. package/dist/types.js +6 -0
  725. package/package.json +16 -16
@@ -0,0 +1,274 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.LayerLabelEditor = exports.HeaderWarning = exports.DragHandle = void 0;
9
+ exports.LayerPanelHeaderActionSectionFactory = LayerPanelHeaderActionSectionFactory;
10
+ exports.LayerTitleSectionFactory = LayerTitleSectionFactory;
11
+ exports["default"] = void 0;
12
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+ var _react = _interopRequireWildcard(require("react"));
16
+ var _classnames = _interopRequireDefault(require("classnames"));
17
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
18
+ var _panelHeaderAction = _interopRequireDefault(require("../panel-header-action"));
19
+ var _styledComponents2 = require("../../common/styled-components");
20
+ var _icons = require("../../common/icons");
21
+ var _localization = require("@kepler.gl/localization");
22
+ var _constants = require("@kepler.gl/constants");
23
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8; // SPDX-License-Identifier: MIT
24
+ // Copyright contributors to the kepler.gl project
25
+ 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); }
26
+ 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; }
27
+ var getBorderCss = function getBorderCss(status) {
28
+ return (0, _styledComponents.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n border-top: 2px solid ", ";\n border-bottom: 2px solid ", ";\n border-right: 2px solid ", ";\n "])), function (_ref) {
29
+ var theme = _ref.theme;
30
+ return theme.notificationColors[status];
31
+ }, function (_ref2) {
32
+ var theme = _ref2.theme;
33
+ return theme.notificationColors[status];
34
+ }, function (_ref3) {
35
+ var theme = _ref3.theme;
36
+ return theme.notificationColors[status];
37
+ });
38
+ };
39
+ var StyledLayerPanelHeader = (0, _styledComponents["default"])(_styledComponents2.StyledPanelHeader)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n height: ", "px;\n position: relative;\n align-items: stretch;\n\n .layer__remove-layer {\n opacity: 0;\n }\n\n .layer__drag-handle__placeholder {\n height: 20px;\n padding: 10px;\n }\n\n ", "\n\n :hover {\n cursor: pointer;\n background-color: ", ";\n\n .layer__drag-handle {\n opacity: 1;\n }\n\n .layer__remove-layer {\n opacity: 1;\n }\n }\n"])), function (props) {
40
+ return props.theme.layerPanelHeaderHeight;
41
+ }, function (props) {
42
+ return props.warning ? getBorderCss('warning') : props.isValid ? '' : getBorderCss('error');
43
+ }, function (props) {
44
+ return props.theme.panelBackgroundHover;
45
+ });
46
+ var HeaderLabelSection = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n color: ", ";\n flex-grow: 1;\n align-items: stretch;\n // leave space for eye and collapse icon\n padding-right: 50px;\n"])), function (props) {
47
+ return props.theme.textColor;
48
+ });
49
+ var HeaderActionSection = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n position: absolute;\n height: 100%;\n align-items: stretch;\n right: 10px;\n pointer-events: ", ";\n :hover {\n .layer-panel__header__actions__hidden {\n opacity: 1;\n background-color: ", ";\n }\n }\n"])), function (props) {
50
+ return props.isEditingLabel ? 'none' : 'all';
51
+ }, function (props) {
52
+ return props.theme.panelBackgroundHover;
53
+ });
54
+ // Hiden actions only show up on hover
55
+ var StyledPanelHeaderHiddenActions = _styledComponents["default"].div.attrs({
56
+ className: 'layer-panel__header__actions__hidden'
57
+ })(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n opacity: 0;\n display: flex;\n align-items: center;\n background-color: ", ";\n transition: opacity 0.4s ease, background-color 0.4s ease;\n\n :hover {\n opacity: 1;\n }\n"])), function (props) {
58
+ return props.isConfigActive ? props.theme.panelBackgroundHover : props.theme.panelBackground;
59
+ });
60
+ var StyledDragHandle = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n opacity: 0;\n z-index: 1000;\n\n :hover {\n cursor: move;\n opacity: 1;\n color: ", ";\n }\n"])), function (props) {
61
+ return props.theme.textColorHl;
62
+ });
63
+ var DragHandle = exports.DragHandle = function DragHandle(_ref4) {
64
+ var className = _ref4.className,
65
+ listeners = _ref4.listeners,
66
+ children = _ref4.children;
67
+ return /*#__PURE__*/_react["default"].createElement(StyledDragHandle, (0, _extends2["default"])({
68
+ className: className
69
+ }, listeners ? listeners : {}), children);
70
+ };
71
+ var noOp = function noOp(event) {
72
+ event.stopPropagation();
73
+ event.preventDefault();
74
+ };
75
+ var LayerLabelEditor = exports.LayerLabelEditor = function LayerLabelEditor(_ref5) {
76
+ var layerId = _ref5.layerId,
77
+ label = _ref5.label,
78
+ onEdit = _ref5.onEdit,
79
+ onFocus = _ref5.onFocus,
80
+ onBlur = _ref5.onBlur;
81
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents2.InlineInput, {
82
+ type: "text",
83
+ className: "layer__title__editor",
84
+ "data-testid": _constants.dataTestIds.layerTitleEditor,
85
+ value: label,
86
+ onClick: noOp,
87
+ onChange: onEdit,
88
+ onFocus: onFocus,
89
+ onBlur: onBlur,
90
+ id: "".concat(layerId, ":input-layer-label")
91
+ });
92
+ };
93
+ function LayerTitleSectionFactory() {
94
+ var StyledLayerTitleSection = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: 4px;\n flex-grow: 1;\n align-items: center;\n display: flex;\n .layer__title__inner {\n flex-grow: 1;\n }\n\n .layer__title__type {\n color: ", ";\n font-size: 10px;\n line-height: 12px;\n letter-spacing: 0.37px;\n text-transform: capitalize;\n }\n "])), function (props) {
95
+ return props.theme.subtextColor;
96
+ });
97
+ var LayerTitleSection = function LayerTitleSection(_ref6) {
98
+ var layerType = _ref6.layerType,
99
+ layerId = _ref6.layerId,
100
+ label = _ref6.label,
101
+ onUpdateLayerLabel = _ref6.onUpdateLayerLabel,
102
+ onFocus = _ref6.onFocus,
103
+ onBlur = _ref6.onBlur;
104
+ return /*#__PURE__*/_react["default"].createElement(StyledLayerTitleSection, {
105
+ className: "layer__title"
106
+ }, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(LayerLabelEditor, {
107
+ layerId: layerId,
108
+ label: label,
109
+ onEdit: onUpdateLayerLabel,
110
+ onFocus: onFocus,
111
+ onBlur: onBlur
112
+ }), /*#__PURE__*/_react["default"].createElement("div", {
113
+ className: "layer__title__type"
114
+ }, layerType && /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
115
+ id: "layer.type.".concat(layerType.toLowerCase())
116
+ }))));
117
+ };
118
+ return LayerTitleSection;
119
+ }
120
+ LayerPanelHeaderActionSectionFactory.deps = [_panelHeaderAction["default"]];
121
+ function LayerPanelHeaderActionSectionFactory(PanelHeaderAction) {
122
+ var LayerPanelHeaderActionSection = function LayerPanelHeaderActionSection(props) {
123
+ var isConfigActive = props.isConfigActive,
124
+ allowDuplicate = props.allowDuplicate,
125
+ isVisible = props.isVisible,
126
+ isValid = props.isValid,
127
+ layerId = props.layerId,
128
+ onToggleVisibility = props.onToggleVisibility,
129
+ onResetIsValid = props.onResetIsValid,
130
+ onToggleEnableConfig = props.onToggleEnableConfig,
131
+ onDuplicateLayer = props.onDuplicateLayer,
132
+ onRemoveLayer = props.onRemoveLayer,
133
+ onZoomToLayer = props.onZoomToLayer,
134
+ _props$showRemoveLaye = props.showRemoveLayer,
135
+ showRemoveLayer = _props$showRemoveLaye === void 0 ? true : _props$showRemoveLaye,
136
+ isEditingLabel = props.isEditingLabel,
137
+ _props$actionIcons = props.actionIcons,
138
+ actionIcons = _props$actionIcons === void 0 ? defaultActionIcons : _props$actionIcons;
139
+ return /*#__PURE__*/_react["default"].createElement(HeaderActionSection, {
140
+ className: "layer-panel__header__actions",
141
+ isEditingLabel: isEditingLabel
142
+ }, /*#__PURE__*/_react["default"].createElement(StyledPanelHeaderHiddenActions, {
143
+ isConfigActive: isConfigActive
144
+ }, showRemoveLayer ? /*#__PURE__*/_react["default"].createElement(PanelHeaderAction, {
145
+ className: "layer__remove-layer",
146
+ testId: "remove-layer-action",
147
+ id: layerId,
148
+ tooltip: 'tooltip.removeLayer',
149
+ onClick: onRemoveLayer,
150
+ tooltipType: "error",
151
+ IconComponent: actionIcons.remove
152
+ }) : null, /*#__PURE__*/_react["default"].createElement(PanelHeaderAction, {
153
+ className: "layer__duplicate",
154
+ id: layerId,
155
+ tooltip: 'tooltip.duplicateLayer',
156
+ onClick: onDuplicateLayer,
157
+ IconComponent: actionIcons.duplicate,
158
+ disabled: !allowDuplicate
159
+ }), /*#__PURE__*/_react["default"].createElement(PanelHeaderAction, {
160
+ className: "layer__zoom-to-layer",
161
+ id: layerId,
162
+ tooltip: 'tooltip.zoomToLayer',
163
+ onClick: onZoomToLayer,
164
+ IconComponent: actionIcons.crosshairs
165
+ })), isValid ? /*#__PURE__*/_react["default"].createElement(PanelHeaderAction, {
166
+ className: "layer__visibility-toggle",
167
+ id: layerId,
168
+ tooltip: isVisible ? 'tooltip.hideLayer' : 'tooltip.showLayer',
169
+ onClick: onToggleVisibility,
170
+ IconComponent: isVisible ? actionIcons.visible : actionIcons.hidden
171
+ }) : /*#__PURE__*/_react["default"].createElement(PanelHeaderAction, {
172
+ className: "layer__is-valid-refresh",
173
+ id: layerId,
174
+ tooltip: 'tooltip.resetAfterError',
175
+ onClick: onResetIsValid,
176
+ IconComponent: actionIcons.resetIsValid
177
+ }), /*#__PURE__*/_react["default"].createElement(PanelHeaderAction, {
178
+ className: (0, _classnames["default"])('layer__enable-config ', {
179
+ 'is-open': isConfigActive
180
+ }),
181
+ id: layerId,
182
+ tooltip: 'tooltip.layerSettings',
183
+ onClick: onToggleEnableConfig,
184
+ IconComponent: actionIcons.enableConfig
185
+ }));
186
+ };
187
+ return LayerPanelHeaderActionSection;
188
+ }
189
+ var StyledHeaderWaring = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n right: -9px;\n top: calc(50% - 9px);\n color: ", ";\n"])), function (_ref7) {
190
+ var theme = _ref7.theme;
191
+ return theme.notificationColors.warning;
192
+ });
193
+ var HeaderWarning = exports.HeaderWarning = function HeaderWarning(_ref8) {
194
+ var warning = _ref8.warning,
195
+ id = _ref8.id;
196
+ return /*#__PURE__*/_react["default"].createElement(StyledHeaderWaring, null, /*#__PURE__*/_react["default"].createElement(_icons.WarningSign, {
197
+ "data-tip": true,
198
+ "data-for": "layer-".concat(id, "-warning"),
199
+ height: "16px"
200
+ }), /*#__PURE__*/_react["default"].createElement(_styledComponents2.Tooltip, {
201
+ id: "layer-".concat(id, "-warning"),
202
+ type: "warning",
203
+ effect: "solid",
204
+ textColor: "black"
205
+ }, warning));
206
+ };
207
+ var defaultActionIcons = {
208
+ remove: _icons.Trash,
209
+ visible: _icons.EyeSeen,
210
+ hidden: _icons.EyeUnseen,
211
+ enableConfig: _icons.ArrowDown,
212
+ duplicate: _icons.Copy,
213
+ resetIsValid: _icons.Reset,
214
+ crosshairs: _icons.Crosshairs
215
+ };
216
+ LayerPanelHeaderFactory.deps = [LayerTitleSectionFactory, LayerPanelHeaderActionSectionFactory];
217
+ function LayerPanelHeaderFactory(LayerTitleSection, LayerPanelHeaderActionSection) {
218
+ var LayerPanelHeader = function LayerPanelHeader(props) {
219
+ var isConfigActive = props.isConfigActive,
220
+ _props$isDragNDropEna = props.isDragNDropEnabled,
221
+ isDragNDropEnabled = _props$isDragNDropEna === void 0 ? true : _props$isDragNDropEna,
222
+ isValid = props.isValid,
223
+ warning = props.warning,
224
+ label = props.label,
225
+ layerId = props.layerId,
226
+ layerType = props.layerType,
227
+ labelRCGColorValues = props.labelRCGColorValues,
228
+ onUpdateLayerLabel = props.onUpdateLayerLabel,
229
+ onToggleEnableConfig = props.onToggleEnableConfig,
230
+ listeners = props.listeners;
231
+ var _useState = (0, _react.useState)(false),
232
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
233
+ isEditingLabel = _useState2[0],
234
+ setIsEditingLabel = _useState2[1];
235
+ return /*#__PURE__*/_react["default"].createElement(StyledLayerPanelHeader, {
236
+ className: (0, _classnames["default"])('layer-panel__header', {
237
+ 'sort--handle': !isConfigActive
238
+ }),
239
+ isValid: isValid,
240
+ warning: warning,
241
+ active: isConfigActive,
242
+ labelRCGColorValues: labelRCGColorValues,
243
+ onClick: onToggleEnableConfig
244
+ }, warning ? /*#__PURE__*/_react["default"].createElement(HeaderWarning, {
245
+ warning: warning,
246
+ id: layerId
247
+ }) : null, /*#__PURE__*/_react["default"].createElement(HeaderLabelSection, {
248
+ className: "layer-panel__header__content"
249
+ }, isDragNDropEnabled ? /*#__PURE__*/_react["default"].createElement(DragHandle, {
250
+ className: "layer__drag-handle",
251
+ listeners: listeners
252
+ }, /*#__PURE__*/_react["default"].createElement(_icons.VertDots, {
253
+ height: "20px"
254
+ })) : /*#__PURE__*/_react["default"].createElement("div", {
255
+ className: "layer__drag-handle__placeholder"
256
+ }), /*#__PURE__*/_react["default"].createElement(LayerTitleSection, {
257
+ layerId: layerId,
258
+ label: label,
259
+ onUpdateLayerLabel: onUpdateLayerLabel,
260
+ layerType: layerType,
261
+ onFocus: function onFocus() {
262
+ setIsEditingLabel(true);
263
+ },
264
+ onBlur: function onBlur() {
265
+ setIsEditingLabel(false);
266
+ }
267
+ })), /*#__PURE__*/_react["default"].createElement(LayerPanelHeaderActionSection, (0, _extends2["default"])({}, props, {
268
+ isEditingLabel: isEditingLabel
269
+ })));
270
+ };
271
+ return LayerPanelHeader;
272
+ }
273
+ var _default = exports["default"] = LayerPanelHeaderFactory;
274
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9wYW5lbEhlYWRlckFjdGlvbiIsIl9zdHlsZWRDb21wb25lbnRzMiIsIl9pY29ucyIsIl9sb2NhbGl6YXRpb24iLCJfY29uc3RhbnRzIiwiX3RlbXBsYXRlT2JqZWN0IiwiX3RlbXBsYXRlT2JqZWN0MiIsIl90ZW1wbGF0ZU9iamVjdDMiLCJfdGVtcGxhdGVPYmplY3Q0IiwiX3RlbXBsYXRlT2JqZWN0NSIsIl90ZW1wbGF0ZU9iamVjdDYiLCJfdGVtcGxhdGVPYmplY3Q3IiwiX3RlbXBsYXRlT2JqZWN0OCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsImdldEJvcmRlckNzcyIsInN0YXR1cyIsImNzcyIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwiX3JlZiIsInRoZW1lIiwibm90aWZpY2F0aW9uQ29sb3JzIiwiX3JlZjIiLCJfcmVmMyIsIlN0eWxlZExheWVyUGFuZWxIZWFkZXIiLCJzdHlsZWQiLCJTdHlsZWRQYW5lbEhlYWRlciIsInByb3BzIiwibGF5ZXJQYW5lbEhlYWRlckhlaWdodCIsIndhcm5pbmciLCJpc1ZhbGlkIiwicGFuZWxCYWNrZ3JvdW5kSG92ZXIiLCJIZWFkZXJMYWJlbFNlY3Rpb24iLCJkaXYiLCJ0ZXh0Q29sb3IiLCJIZWFkZXJBY3Rpb25TZWN0aW9uIiwiaXNFZGl0aW5nTGFiZWwiLCJTdHlsZWRQYW5lbEhlYWRlckhpZGRlbkFjdGlvbnMiLCJhdHRycyIsImNsYXNzTmFtZSIsImlzQ29uZmlnQWN0aXZlIiwicGFuZWxCYWNrZ3JvdW5kIiwiU3R5bGVkRHJhZ0hhbmRsZSIsInRleHRDb2xvckhsIiwiRHJhZ0hhbmRsZSIsImV4cG9ydHMiLCJfcmVmNCIsImxpc3RlbmVycyIsImNoaWxkcmVuIiwiY3JlYXRlRWxlbWVudCIsIl9leHRlbmRzMiIsIm5vT3AiLCJldmVudCIsInN0b3BQcm9wYWdhdGlvbiIsInByZXZlbnREZWZhdWx0IiwiTGF5ZXJMYWJlbEVkaXRvciIsIl9yZWY1IiwibGF5ZXJJZCIsImxhYmVsIiwib25FZGl0Iiwib25Gb2N1cyIsIm9uQmx1ciIsIklubGluZUlucHV0IiwidHlwZSIsImRhdGFUZXN0SWRzIiwibGF5ZXJUaXRsZUVkaXRvciIsInZhbHVlIiwib25DbGljayIsIm9uQ2hhbmdlIiwiaWQiLCJjb25jYXQiLCJMYXllclRpdGxlU2VjdGlvbkZhY3RvcnkiLCJTdHlsZWRMYXllclRpdGxlU2VjdGlvbiIsInN1YnRleHRDb2xvciIsIkxheWVyVGl0bGVTZWN0aW9uIiwiX3JlZjYiLCJsYXllclR5cGUiLCJvblVwZGF0ZUxheWVyTGFiZWwiLCJGb3JtYXR0ZWRNZXNzYWdlIiwidG9Mb3dlckNhc2UiLCJMYXllclBhbmVsSGVhZGVyQWN0aW9uU2VjdGlvbkZhY3RvcnkiLCJkZXBzIiwiUGFuZWxIZWFkZXJBY3Rpb25GYWN0b3J5IiwiUGFuZWxIZWFkZXJBY3Rpb24iLCJMYXllclBhbmVsSGVhZGVyQWN0aW9uU2VjdGlvbiIsImFsbG93RHVwbGljYXRlIiwiaXNWaXNpYmxlIiwib25Ub2dnbGVWaXNpYmlsaXR5Iiwib25SZXNldElzVmFsaWQiLCJvblRvZ2dsZUVuYWJsZUNvbmZpZyIsIm9uRHVwbGljYXRlTGF5ZXIiLCJvblJlbW92ZUxheWVyIiwib25ab29tVG9MYXllciIsIl9wcm9wcyRzaG93UmVtb3ZlTGF5ZSIsInNob3dSZW1vdmVMYXllciIsIl9wcm9wcyRhY3Rpb25JY29ucyIsImFjdGlvbkljb25zIiwiZGVmYXVsdEFjdGlvbkljb25zIiwidGVzdElkIiwidG9vbHRpcCIsInRvb2x0aXBUeXBlIiwiSWNvbkNvbXBvbmVudCIsInJlbW92ZSIsImR1cGxpY2F0ZSIsImRpc2FibGVkIiwiY3Jvc3NoYWlycyIsInZpc2libGUiLCJoaWRkZW4iLCJyZXNldElzVmFsaWQiLCJjbGFzc25hbWVzIiwiZW5hYmxlQ29uZmlnIiwiU3R5bGVkSGVhZGVyV2FyaW5nIiwiX3JlZjciLCJIZWFkZXJXYXJuaW5nIiwiX3JlZjgiLCJXYXJuaW5nU2lnbiIsImhlaWdodCIsIlRvb2x0aXAiLCJlZmZlY3QiLCJUcmFzaCIsIkV5ZVNlZW4iLCJFeWVVbnNlZW4iLCJBcnJvd0Rvd24iLCJDb3B5IiwiUmVzZXQiLCJDcm9zc2hhaXJzIiwiTGF5ZXJQYW5lbEhlYWRlckZhY3RvcnkiLCJMYXllclBhbmVsSGVhZGVyIiwiX3Byb3BzJGlzRHJhZ05Ecm9wRW5hIiwiaXNEcmFnTkRyb3BFbmFibGVkIiwibGFiZWxSQ0dDb2xvclZhbHVlcyIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsInNldElzRWRpdGluZ0xhYmVsIiwiYWN0aXZlIiwiVmVydERvdHMiLCJfZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zaWRlLXBhbmVsL2xheWVyLXBhbmVsL2xheWVyLXBhbmVsLWhlYWRlci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IFJlYWN0LCB7XG4gIHVzZVN0YXRlLFxuICBDb21wb25lbnRUeXBlLFxuICBNb3VzZUV2ZW50SGFuZGxlcixcbiAgTW91c2VFdmVudCxcbiAgQ2hhbmdlRXZlbnRIYW5kbGVyXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IHN0eWxlZCwge2Nzc30gZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IFBhbmVsSGVhZGVyQWN0aW9uRmFjdG9yeSBmcm9tICcuLi9wYW5lbC1oZWFkZXItYWN0aW9uJztcbmltcG9ydCB7VG9vbHRpcH0gZnJvbSAnLi4vLi4vY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7XG4gIENvcHksXG4gIEFycm93RG93bixcbiAgRXllU2VlbixcbiAgRXllVW5zZWVuLFxuICBUcmFzaCxcbiAgVmVydERvdHMsXG4gIFdhcm5pbmdTaWduLFxuICBSZXNldCxcbiAgQ3Jvc3NoYWlyc1xufSBmcm9tICcuLi8uLi9jb21tb24vaWNvbnMnO1xuXG5pbXBvcnQge0lubGluZUlucHV0LCBTdHlsZWRQYW5lbEhlYWRlcn0gZnJvbSAnLi4vLi4vY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7Rm9ybWF0dGVkTWVzc2FnZX0gZnJvbSAnQGtlcGxlci5nbC9sb2NhbGl6YXRpb24nO1xuaW1wb3J0IHtkYXRhVGVzdElkc30gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuaW1wb3J0IHtSR0JDb2xvcn0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge0Jhc2VQcm9wc30gZnJvbSAnLi4vLi4vY29tbW9uL2ljb25zJztcblxuZXhwb3J0IHR5cGUgTGF5ZXJMYWJlbEVkaXRvclByb3BzID0ge1xuICBsYXllcklkOiBzdHJpbmc7XG4gIGxhYmVsPzogc3RyaW5nO1xuICBvbkVkaXQ6IENoYW5nZUV2ZW50SGFuZGxlcjtcbiAgb25Gb2N1czogQ2hhbmdlRXZlbnRIYW5kbGVyO1xuICBvbkJsdXI6IENoYW5nZUV2ZW50SGFuZGxlcjtcbn07XG5cbmV4cG9ydCB0eXBlIExheWVyVGl0bGVTZWN0aW9uUHJvcHMgPSB7XG4gIGxheWVyVHlwZT86IHN0cmluZyB8IG51bGw7XG4gIGxheWVySWQ6IHN0cmluZztcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIG9uVXBkYXRlTGF5ZXJMYWJlbDogQ2hhbmdlRXZlbnRIYW5kbGVyO1xuICBvbkZvY3VzOiBDaGFuZ2VFdmVudEhhbmRsZXI7XG4gIG9uQmx1cjogQ2hhbmdlRXZlbnRIYW5kbGVyO1xufTtcblxuZXhwb3J0IHR5cGUgTGF5ZXJQYW5lbEhlYWRlclByb3BzID0ge1xuICBsYXllcklkOiBzdHJpbmc7XG4gIGlzVmlzaWJsZTogYm9vbGVhbjtcbiAgaXNWYWxpZDogYm9vbGVhbjtcbiAgb25Ub2dnbGVWaXNpYmlsaXR5OiBNb3VzZUV2ZW50SGFuZGxlcjtcbiAgb25VcGRhdGVMYXllckxhYmVsOiBDaGFuZ2VFdmVudEhhbmRsZXI7XG4gIG9uVG9nZ2xlRW5hYmxlQ29uZmlnOiBNb3VzZUV2ZW50SGFuZGxlcjtcbiAgb25SZW1vdmVMYXllcjogTW91c2VFdmVudEhhbmRsZXI7XG4gIG9uWm9vbVRvTGF5ZXI6IE1vdXNlRXZlbnRIYW5kbGVyO1xuICBvbkR1cGxpY2F0ZUxheWVyOiBNb3VzZUV2ZW50SGFuZGxlcjtcbiAgb25SZXNldElzVmFsaWQ6IE1vdXNlRXZlbnRIYW5kbGVyO1xuICBpc0NvbmZpZ0FjdGl2ZTogYm9vbGVhbjtcbiAgc2hvd1JlbW92ZUxheWVyPzogYm9vbGVhbjtcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIGxheWVyVHlwZT86IHN0cmluZyB8IG51bGw7XG4gIGFsbG93RHVwbGljYXRlPzogYm9vbGVhbjtcbiAgaXNEcmFnTkRyb3BFbmFibGVkPzogYm9vbGVhbjtcbiAgd2FybmluZz86IGJvb2xlYW47XG4gIGxhYmVsUkNHQ29sb3JWYWx1ZXM/OiBSR0JDb2xvciB8IG51bGw7XG4gIGFjdGlvbkljb25zPzoge1xuICAgIHJlbW92ZTogQ29tcG9uZW50VHlwZTxQYXJ0aWFsPEJhc2VQcm9wcz4+O1xuICAgIHZpc2libGU6IENvbXBvbmVudFR5cGU8UGFydGlhbDxCYXNlUHJvcHM+PjtcbiAgICBoaWRkZW46IENvbXBvbmVudFR5cGU8UGFydGlhbDxCYXNlUHJvcHM+PjtcbiAgICBlbmFibGVDb25maWc6IENvbXBvbmVudFR5cGU8UGFydGlhbDxCYXNlUHJvcHM+PjtcbiAgICByZXNldElzVmFsaWQ6IENvbXBvbmVudFR5cGU8UGFydGlhbDxCYXNlUHJvcHM+PjtcbiAgICBkdXBsaWNhdGU6IENvbXBvbmVudFR5cGU8UGFydGlhbDxCYXNlUHJvcHM+PjtcbiAgICBjcm9zc2hhaXJzOiBDb21wb25lbnRUeXBlPFBhcnRpYWw8QmFzZVByb3BzPj47XG4gIH07XG4gIGxpc3RlbmVycz86IFJlYWN0LkVsZW1lbnRUeXBlO1xufTtcblxudHlwZSBIZWFkZXJBY3Rpb25TZWN0aW9uUHJvcHMgPSB7XG4gIGlzRWRpdGluZ0xhYmVsOiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgTGF5ZXJQYW5lbEhlYWRlckFjdGlvblNlY3Rpb25Qcm9wcyA9IExheWVyUGFuZWxIZWFkZXJQcm9wcyAmIEhlYWRlckFjdGlvblNlY3Rpb25Qcm9wcztcblxuY29uc3QgZ2V0Qm9yZGVyQ3NzID0gc3RhdHVzID0+XG4gIGNzc2BcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgJHsoe3RoZW1lfSkgPT4gdGhlbWUubm90aWZpY2F0aW9uQ29sb3JzW3N0YXR1c119O1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkeyh7dGhlbWV9KSA9PiB0aGVtZS5ub3RpZmljYXRpb25Db2xvcnNbc3RhdHVzXX07XG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJHsoe3RoZW1lfSkgPT4gdGhlbWUubm90aWZpY2F0aW9uQ29sb3JzW3N0YXR1c119O1xuICBgO1xuXG5jb25zdCBTdHlsZWRMYXllclBhbmVsSGVhZGVyID0gc3R5bGVkKFN0eWxlZFBhbmVsSGVhZGVyKWBcbiAgaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxheWVyUGFuZWxIZWFkZXJIZWlnaHR9cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgLmxheWVyX19yZW1vdmUtbGF5ZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAubGF5ZXJfX2RyYWctaGFuZGxlX19wbGFjZWhvbGRlciB7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gIH1cblxuICAke3Byb3BzID0+IChwcm9wcy53YXJuaW5nID8gZ2V0Qm9yZGVyQ3NzKCd3YXJuaW5nJykgOiBwcm9wcy5pc1ZhbGlkID8gJycgOiBnZXRCb3JkZXJDc3MoJ2Vycm9yJykpfVxuXG4gIDpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kSG92ZXJ9O1xuXG4gICAgLmxheWVyX19kcmFnLWhhbmRsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIC5sYXllcl9fcmVtb3ZlLWxheWVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5gO1xuXG5jb25zdCBIZWFkZXJMYWJlbFNlY3Rpb24gPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3J9O1xuICBmbGV4LWdyb3c6IDE7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAvLyBsZWF2ZSBzcGFjZSBmb3IgZXllIGFuZCBjb2xsYXBzZSBpY29uXG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG5gO1xuXG5jb25zdCBIZWFkZXJBY3Rpb25TZWN0aW9uID0gc3R5bGVkLmRpdjxIZWFkZXJBY3Rpb25TZWN0aW9uUHJvcHM+YFxuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMTAwJTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHJpZ2h0OiAxMHB4O1xuICBwb2ludGVyLWV2ZW50czogJHtwcm9wcyA9PiAocHJvcHMuaXNFZGl0aW5nTGFiZWwgPyAnbm9uZScgOiAnYWxsJyl9O1xuICA6aG92ZXIge1xuICAgIC5sYXllci1wYW5lbF9faGVhZGVyX19hY3Rpb25zX19oaWRkZW4ge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kSG92ZXJ9O1xuICAgIH1cbiAgfVxuYDtcblxudHlwZSBTdHlsZWRQYW5lbEhlYWRlckhpZGRlbkFjdGlvbnNQcm9wcyA9IHtcbiAgaXNDb25maWdBY3RpdmU6IExheWVyUGFuZWxIZWFkZXJQcm9wc1snaXNDb25maWdBY3RpdmUnXTtcbn07XG5cbi8vIEhpZGVuIGFjdGlvbnMgb25seSBzaG93IHVwIG9uIGhvdmVyXG5jb25zdCBTdHlsZWRQYW5lbEhlYWRlckhpZGRlbkFjdGlvbnMgPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnbGF5ZXItcGFuZWxfX2hlYWRlcl9fYWN0aW9uc19faGlkZGVuJ1xufSk8U3R5bGVkUGFuZWxIZWFkZXJIaWRkZW5BY3Rpb25zUHJvcHM+YFxuICBvcGFjaXR5OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+XG4gICAgcHJvcHMuaXNDb25maWdBY3RpdmUgPyBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmRIb3ZlciA6IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZH07XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuNHMgZWFzZTtcblxuICA6aG92ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbmA7XG5cbmNvbnN0IFN0eWxlZERyYWdIYW5kbGUgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAxMDAwO1xuXG4gIDpob3ZlciB7XG4gICAgY3Vyc29yOiBtb3ZlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9ySGx9O1xuICB9XG5gO1xuXG5leHBvcnQgY29uc3QgRHJhZ0hhbmRsZTogUmVhY3QuRkM8e1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG4gIGxpc3RlbmVycz86IGFueTtcbiAgY2hpbGRyZW4/OiBSZWFjdC5SZWFjdE5vZGU7XG59PiA9ICh7Y2xhc3NOYW1lLCBsaXN0ZW5lcnMsIGNoaWxkcmVufSkgPT4gKFxuICA8U3R5bGVkRHJhZ0hhbmRsZSBjbGFzc05hbWU9e2NsYXNzTmFtZX0gey4uLihsaXN0ZW5lcnMgPyBsaXN0ZW5lcnMgOiB7fSl9PlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdHlsZWREcmFnSGFuZGxlPlxuKTtcblxuY29uc3Qgbm9PcCA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbn07XG5cbmV4cG9ydCBjb25zdCBMYXllckxhYmVsRWRpdG9yOiBSZWFjdC5GQzxMYXllckxhYmVsRWRpdG9yUHJvcHM+ID0gKHtcbiAgbGF5ZXJJZCxcbiAgbGFiZWwsXG4gIG9uRWRpdCxcbiAgb25Gb2N1cyxcbiAgb25CbHVyXG59KSA9PiAoXG4gIDxJbmxpbmVJbnB1dFxuICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICBjbGFzc05hbWU9XCJsYXllcl9fdGl0bGVfX2VkaXRvclwiXG4gICAgZGF0YS10ZXN0aWQ9e2RhdGFUZXN0SWRzLmxheWVyVGl0bGVFZGl0b3J9XG4gICAgdmFsdWU9e2xhYmVsfVxuICAgIG9uQ2xpY2s9e25vT3B9XG4gICAgb25DaGFuZ2U9e29uRWRpdH1cbiAgICBvbkZvY3VzPXtvbkZvY3VzfVxuICAgIG9uQmx1cj17b25CbHVyfVxuICAgIGlkPXtgJHtsYXllcklkfTppbnB1dC1sYXllci1sYWJlbGB9XG4gIC8+XG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gTGF5ZXJUaXRsZVNlY3Rpb25GYWN0b3J5KCkge1xuICBjb25zdCBTdHlsZWRMYXllclRpdGxlU2VjdGlvbiA9IHN0eWxlZC5kaXZgXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC5sYXllcl9fdGl0bGVfX2lubmVyIHtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICB9XG5cbiAgICAubGF5ZXJfX3RpdGxlX190eXBlIHtcbiAgICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN1YnRleHRDb2xvcn07XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMTJweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjM3cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICB9XG4gIGA7XG4gIGNvbnN0IExheWVyVGl0bGVTZWN0aW9uOiBSZWFjdC5GQzxMYXllclRpdGxlU2VjdGlvblByb3BzPiA9ICh7XG4gICAgbGF5ZXJUeXBlLFxuICAgIGxheWVySWQsXG4gICAgbGFiZWwsXG4gICAgb25VcGRhdGVMYXllckxhYmVsLFxuICAgIG9uRm9jdXMsXG4gICAgb25CbHVyXG4gIH0pID0+IChcbiAgICA8U3R5bGVkTGF5ZXJUaXRsZVNlY3Rpb24gY2xhc3NOYW1lPVwibGF5ZXJfX3RpdGxlXCI+XG4gICAgICA8ZGl2PlxuICAgICAgICA8TGF5ZXJMYWJlbEVkaXRvclxuICAgICAgICAgIGxheWVySWQ9e2xheWVySWR9XG4gICAgICAgICAgbGFiZWw9e2xhYmVsfVxuICAgICAgICAgIG9uRWRpdD17b25VcGRhdGVMYXllckxhYmVsfVxuICAgICAgICAgIG9uRm9jdXM9e29uRm9jdXN9XG4gICAgICAgICAgb25CbHVyPXtvbkJsdXJ9XG4gICAgICAgIC8+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGF5ZXJfX3RpdGxlX190eXBlXCI+XG4gICAgICAgICAge2xheWVyVHlwZSAmJiA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17YGxheWVyLnR5cGUuJHtsYXllclR5cGUudG9Mb3dlckNhc2UoKX1gfSAvPn1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L1N0eWxlZExheWVyVGl0bGVTZWN0aW9uPlxuICApO1xuICByZXR1cm4gTGF5ZXJUaXRsZVNlY3Rpb247XG59XG5cbkxheWVyUGFuZWxIZWFkZXJBY3Rpb25TZWN0aW9uRmFjdG9yeS5kZXBzID0gW1BhbmVsSGVhZGVyQWN0aW9uRmFjdG9yeV07XG5cbmV4cG9ydCBmdW5jdGlvbiBMYXllclBhbmVsSGVhZGVyQWN0aW9uU2VjdGlvbkZhY3RvcnkoXG4gIFBhbmVsSGVhZGVyQWN0aW9uOiBSZXR1cm5UeXBlPHR5cGVvZiBQYW5lbEhlYWRlckFjdGlvbkZhY3Rvcnk+XG4pIHtcbiAgY29uc3QgTGF5ZXJQYW5lbEhlYWRlckFjdGlvblNlY3Rpb246IFJlYWN0LkZDPExheWVyUGFuZWxIZWFkZXJBY3Rpb25TZWN0aW9uUHJvcHM+ID0gKFxuICAgIHByb3BzOiBMYXllclBhbmVsSGVhZGVyQWN0aW9uU2VjdGlvblByb3BzXG4gICkgPT4ge1xuICAgIGNvbnN0IHtcbiAgICAgIGlzQ29uZmlnQWN0aXZlLFxuICAgICAgYWxsb3dEdXBsaWNhdGUsXG4gICAgICBpc1Zpc2libGUsXG4gICAgICBpc1ZhbGlkLFxuICAgICAgbGF5ZXJJZCxcbiAgICAgIG9uVG9nZ2xlVmlzaWJpbGl0eSxcbiAgICAgIG9uUmVzZXRJc1ZhbGlkLFxuICAgICAgb25Ub2dnbGVFbmFibGVDb25maWcsXG4gICAgICBvbkR1cGxpY2F0ZUxheWVyLFxuICAgICAgb25SZW1vdmVMYXllcixcbiAgICAgIG9uWm9vbVRvTGF5ZXIsXG4gICAgICBzaG93UmVtb3ZlTGF5ZXIgPSB0cnVlLFxuICAgICAgaXNFZGl0aW5nTGFiZWwsXG4gICAgICAvLyBUT0RPOiBtYXkgbm90IGNvbnRhaW4gYWxsIG5lY2Vzc2FyeSBpY29ucyBmb3IgYWxsIGFjdGlvbnMsIGUuZy4gYWN0aW9uSWNvbnMuZHVwbGljYXRlLiBOZWVkIHRvIHRvIG1lcmdlIHJhdGhlciB0aGFuIHJlcGxhY2VcbiAgICAgIGFjdGlvbkljb25zID0gZGVmYXVsdEFjdGlvbkljb25zXG4gICAgfSA9IHByb3BzO1xuICAgIHJldHVybiAoXG4gICAgICA8SGVhZGVyQWN0aW9uU2VjdGlvbiBjbGFzc05hbWU9XCJsYXllci1wYW5lbF9faGVhZGVyX19hY3Rpb25zXCIgaXNFZGl0aW5nTGFiZWw9e2lzRWRpdGluZ0xhYmVsfT5cbiAgICAgICAgPFN0eWxlZFBhbmVsSGVhZGVySGlkZGVuQWN0aW9ucyBpc0NvbmZpZ0FjdGl2ZT17aXNDb25maWdBY3RpdmV9PlxuICAgICAgICAgIHtzaG93UmVtb3ZlTGF5ZXIgPyAoXG4gICAgICAgICAgICA8UGFuZWxIZWFkZXJBY3Rpb25cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwibGF5ZXJfX3JlbW92ZS1sYXllclwiXG4gICAgICAgICAgICAgIHRlc3RJZD1cInJlbW92ZS1sYXllci1hY3Rpb25cIlxuICAgICAgICAgICAgICBpZD17bGF5ZXJJZH1cbiAgICAgICAgICAgICAgdG9vbHRpcD17J3Rvb2x0aXAucmVtb3ZlTGF5ZXInfVxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblJlbW92ZUxheWVyfVxuICAgICAgICAgICAgICB0b29sdGlwVHlwZT1cImVycm9yXCJcbiAgICAgICAgICAgICAgSWNvbkNvbXBvbmVudD17YWN0aW9uSWNvbnMucmVtb3ZlfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICA8UGFuZWxIZWFkZXJBY3Rpb25cbiAgICAgICAgICAgIGNsYXNzTmFtZT1cImxheWVyX19kdXBsaWNhdGVcIlxuICAgICAgICAgICAgaWQ9e2xheWVySWR9XG4gICAgICAgICAgICB0b29sdGlwPXsndG9vbHRpcC5kdXBsaWNhdGVMYXllcid9XG4gICAgICAgICAgICBvbkNsaWNrPXtvbkR1cGxpY2F0ZUxheWVyfVxuICAgICAgICAgICAgSWNvbkNvbXBvbmVudD17YWN0aW9uSWNvbnMuZHVwbGljYXRlfVxuICAgICAgICAgICAgZGlzYWJsZWQ9eyFhbGxvd0R1cGxpY2F0ZX1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxQYW5lbEhlYWRlckFjdGlvblxuICAgICAgICAgICAgY2xhc3NOYW1lPVwibGF5ZXJfX3pvb20tdG8tbGF5ZXJcIlxuICAgICAgICAgICAgaWQ9e2xheWVySWR9XG4gICAgICAgICAgICB0b29sdGlwPXsndG9vbHRpcC56b29tVG9MYXllcid9XG4gICAgICAgICAgICBvbkNsaWNrPXtvblpvb21Ub0xheWVyfVxuICAgICAgICAgICAgSWNvbkNvbXBvbmVudD17YWN0aW9uSWNvbnMuY3Jvc3NoYWlyc31cbiAgICAgICAgICAvPlxuICAgICAgICA8L1N0eWxlZFBhbmVsSGVhZGVySGlkZGVuQWN0aW9ucz5cbiAgICAgICAge2lzVmFsaWQgPyAoXG4gICAgICAgICAgPFBhbmVsSGVhZGVyQWN0aW9uXG4gICAgICAgICAgICBjbGFzc05hbWU9XCJsYXllcl9fdmlzaWJpbGl0eS10b2dnbGVcIlxuICAgICAgICAgICAgaWQ9e2xheWVySWR9XG4gICAgICAgICAgICB0b29sdGlwPXtpc1Zpc2libGUgPyAndG9vbHRpcC5oaWRlTGF5ZXInIDogJ3Rvb2x0aXAuc2hvd0xheWVyJ31cbiAgICAgICAgICAgIG9uQ2xpY2s9e29uVG9nZ2xlVmlzaWJpbGl0eX1cbiAgICAgICAgICAgIEljb25Db21wb25lbnQ9e2lzVmlzaWJsZSA/IGFjdGlvbkljb25zLnZpc2libGUgOiBhY3Rpb25JY29ucy5oaWRkZW59XG4gICAgICAgICAgLz5cbiAgICAgICAgKSA6IChcbiAgICAgICAgICA8UGFuZWxIZWFkZXJBY3Rpb25cbiAgICAgICAgICAgIGNsYXNzTmFtZT1cImxheWVyX19pcy12YWxpZC1yZWZyZXNoXCJcbiAgICAgICAgICAgIGlkPXtsYXllcklkfVxuICAgICAgICAgICAgdG9vbHRpcD17J3Rvb2x0aXAucmVzZXRBZnRlckVycm9yJ31cbiAgICAgICAgICAgIG9uQ2xpY2s9e29uUmVzZXRJc1ZhbGlkfVxuICAgICAgICAgICAgSWNvbkNvbXBvbmVudD17YWN0aW9uSWNvbnMucmVzZXRJc1ZhbGlkfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG5cbiAgICAgICAgPFBhbmVsSGVhZGVyQWN0aW9uXG4gICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc25hbWVzKCdsYXllcl9fZW5hYmxlLWNvbmZpZyAnLCB7XG4gICAgICAgICAgICAnaXMtb3Blbic6IGlzQ29uZmlnQWN0aXZlXG4gICAgICAgICAgfSl9XG4gICAgICAgICAgaWQ9e2xheWVySWR9XG4gICAgICAgICAgdG9vbHRpcD17J3Rvb2x0aXAubGF5ZXJTZXR0aW5ncyd9XG4gICAgICAgICAgb25DbGljaz17b25Ub2dnbGVFbmFibGVDb25maWd9XG4gICAgICAgICAgSWNvbkNvbXBvbmVudD17YWN0aW9uSWNvbnMuZW5hYmxlQ29uZmlnfVxuICAgICAgICAvPlxuICAgICAgPC9IZWFkZXJBY3Rpb25TZWN0aW9uPlxuICAgICk7XG4gIH07XG5cbiAgcmV0dXJuIExheWVyUGFuZWxIZWFkZXJBY3Rpb25TZWN0aW9uO1xufVxuXG5jb25zdCBTdHlsZWRIZWFkZXJXYXJpbmcgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtOXB4O1xuICB0b3A6IGNhbGMoNTAlIC0gOXB4KTtcbiAgY29sb3I6ICR7KHt0aGVtZX0pID0+IHRoZW1lLm5vdGlmaWNhdGlvbkNvbG9ycy53YXJuaW5nfTtcbmA7XG5cbmV4cG9ydCBjb25zdCBIZWFkZXJXYXJuaW5nID0gKHt3YXJuaW5nLCBpZH0pID0+IChcbiAgPFN0eWxlZEhlYWRlcldhcmluZz5cbiAgICA8V2FybmluZ1NpZ24gZGF0YS10aXAgZGF0YS1mb3I9e2BsYXllci0ke2lkfS13YXJuaW5nYH0gaGVpZ2h0PVwiMTZweFwiIC8+XG4gICAgPFRvb2x0aXAgaWQ9e2BsYXllci0ke2lkfS13YXJuaW5nYH0gdHlwZT1cIndhcm5pbmdcIiBlZmZlY3Q9XCJzb2xpZFwiIHRleHRDb2xvcj1cImJsYWNrXCI+XG4gICAgICB7d2FybmluZ31cbiAgICA8L1Rvb2x0aXA+XG4gIDwvU3R5bGVkSGVhZGVyV2FyaW5nPlxuKTtcblxuY29uc3QgZGVmYXVsdEFjdGlvbkljb25zID0ge1xuICByZW1vdmU6IFRyYXNoLFxuICB2aXNpYmxlOiBFeWVTZWVuLFxuICBoaWRkZW46IEV5ZVVuc2VlbixcbiAgZW5hYmxlQ29uZmlnOiBBcnJvd0Rvd24sXG4gIGR1cGxpY2F0ZTogQ29weSxcbiAgcmVzZXRJc1ZhbGlkOiBSZXNldCxcbiAgY3Jvc3NoYWlyczogQ3Jvc3NoYWlyc1xufTtcblxuTGF5ZXJQYW5lbEhlYWRlckZhY3RvcnkuZGVwcyA9IFtMYXllclRpdGxlU2VjdGlvbkZhY3RvcnksIExheWVyUGFuZWxIZWFkZXJBY3Rpb25TZWN0aW9uRmFjdG9yeV07XG5cbmZ1bmN0aW9uIExheWVyUGFuZWxIZWFkZXJGYWN0b3J5KFxuICBMYXllclRpdGxlU2VjdGlvbjogUmV0dXJuVHlwZTx0eXBlb2YgTGF5ZXJUaXRsZVNlY3Rpb25GYWN0b3J5PixcbiAgTGF5ZXJQYW5lbEhlYWRlckFjdGlvblNlY3Rpb246IFJldHVyblR5cGU8dHlwZW9mIExheWVyUGFuZWxIZWFkZXJBY3Rpb25TZWN0aW9uRmFjdG9yeT5cbikge1xuICBjb25zdCBMYXllclBhbmVsSGVhZGVyOiBSZWFjdC5GQzxMYXllclBhbmVsSGVhZGVyUHJvcHM+ID0gcHJvcHMgPT4ge1xuICAgIGNvbnN0IHtcbiAgICAgIGlzQ29uZmlnQWN0aXZlLFxuICAgICAgaXNEcmFnTkRyb3BFbmFibGVkID0gdHJ1ZSxcbiAgICAgIGlzVmFsaWQsXG4gICAgICB3YXJuaW5nLFxuICAgICAgbGFiZWwsXG4gICAgICBsYXllcklkLFxuICAgICAgbGF5ZXJUeXBlLFxuICAgICAgbGFiZWxSQ0dDb2xvclZhbHVlcyxcbiAgICAgIG9uVXBkYXRlTGF5ZXJMYWJlbCxcbiAgICAgIG9uVG9nZ2xlRW5hYmxlQ29uZmlnLFxuICAgICAgbGlzdGVuZXJzXG4gICAgfSA9IHByb3BzO1xuICAgIGNvbnN0IFtpc0VkaXRpbmdMYWJlbCwgc2V0SXNFZGl0aW5nTGFiZWxdID0gdXNlU3RhdGUoZmFsc2UpO1xuICAgIHJldHVybiAoXG4gICAgICA8U3R5bGVkTGF5ZXJQYW5lbEhlYWRlclxuICAgICAgICBjbGFzc05hbWU9e2NsYXNzbmFtZXMoJ2xheWVyLXBhbmVsX19oZWFkZXInLCB7XG4gICAgICAgICAgJ3NvcnQtLWhhbmRsZSc6ICFpc0NvbmZpZ0FjdGl2ZVxuICAgICAgICB9KX1cbiAgICAgICAgaXNWYWxpZD17aXNWYWxpZH1cbiAgICAgICAgd2FybmluZz17d2FybmluZ31cbiAgICAgICAgYWN0aXZlPXtpc0NvbmZpZ0FjdGl2ZX1cbiAgICAgICAgbGFiZWxSQ0dDb2xvclZhbHVlcz17bGFiZWxSQ0dDb2xvclZhbHVlc31cbiAgICAgICAgb25DbGljaz17b25Ub2dnbGVFbmFibGVDb25maWd9XG4gICAgICA+XG4gICAgICAgIHt3YXJuaW5nID8gPEhlYWRlcldhcm5pbmcgd2FybmluZz17d2FybmluZ30gaWQ9e2xheWVySWR9IC8+IDogbnVsbH1cbiAgICAgICAgPEhlYWRlckxhYmVsU2VjdGlvbiBjbGFzc05hbWU9XCJsYXllci1wYW5lbF9faGVhZGVyX19jb250ZW50XCI+XG4gICAgICAgICAge2lzRHJhZ05Ecm9wRW5hYmxlZCA/IChcbiAgICAgICAgICAgIDxEcmFnSGFuZGxlIGNsYXNzTmFtZT1cImxheWVyX19kcmFnLWhhbmRsZVwiIGxpc3RlbmVycz17bGlzdGVuZXJzfT5cbiAgICAgICAgICAgICAgPFZlcnREb3RzIGhlaWdodD1cIjIwcHhcIiAvPlxuICAgICAgICAgICAgPC9EcmFnSGFuZGxlPlxuICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxheWVyX19kcmFnLWhhbmRsZV9fcGxhY2Vob2xkZXJcIiAvPlxuICAgICAgICAgICl9XG4gICAgICAgICAgPExheWVyVGl0bGVTZWN0aW9uXG4gICAgICAgICAgICBsYXllcklkPXtsYXllcklkfVxuICAgICAgICAgICAgbGFiZWw9e2xhYmVsfVxuICAgICAgICAgICAgb25VcGRhdGVMYXllckxhYmVsPXtvblVwZGF0ZUxheWVyTGFiZWx9XG4gICAgICAgICAgICBsYXllclR5cGU9e2xheWVyVHlwZX1cbiAgICAgICAgICAgIG9uRm9jdXM9eygpID0+IHtcbiAgICAgICAgICAgICAgc2V0SXNFZGl0aW5nTGFiZWwodHJ1ZSk7XG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgb25CbHVyPXsoKSA9PiB7XG4gICAgICAgICAgICAgIHNldElzRWRpdGluZ0xhYmVsKGZhbHNlKTtcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9IZWFkZXJMYWJlbFNlY3Rpb24+XG4gICAgICAgIDxMYXllclBhbmVsSGVhZGVyQWN0aW9uU2VjdGlvbiB7Li4ucHJvcHN9IGlzRWRpdGluZ0xhYmVsPXtpc0VkaXRpbmdMYWJlbH0gLz5cbiAgICAgIDwvU3R5bGVkTGF5ZXJQYW5lbEhlYWRlcj5cbiAgICApO1xuICB9O1xuXG4gIHJldHVybiBMYXllclBhbmVsSGVhZGVyO1xufVxuXG5leHBvcnQgZGVmYXVsdCBMYXllclBhbmVsSGVhZGVyRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFPQSxJQUFBQyxXQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxpQkFBQSxHQUFBSix1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUksa0JBQUEsR0FBQUYsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFLLGtCQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxNQUFBLEdBQUFOLE9BQUE7QUFhQSxJQUFBTyxhQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxVQUFBLEdBQUFS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
@@ -0,0 +1,39 @@
1
+ import React, { CSSProperties, MouseEventHandler, TouchEventHandler } from 'react';
2
+ import { ActionHandler, MapStateActions, VisStateActions, toggleModal } from '@kepler.gl/actions';
3
+ import { Layer } from '@kepler.gl/layers';
4
+ import { Datasets } from '@kepler.gl/table';
5
+ import LayerConfiguratorFactory from './layer-configurator';
6
+ import LayerPanelHeaderFactory from './layer-panel-header';
7
+ declare type LayerPanelProps = {
8
+ className?: string;
9
+ style?: CSSProperties;
10
+ onMouseDown?: MouseEventHandler;
11
+ onTouchStart?: TouchEventHandler;
12
+ layer: Layer;
13
+ datasets: Datasets;
14
+ layerTypeOptions: {
15
+ id: string;
16
+ label: string;
17
+ icon: any;
18
+ requireData: any;
19
+ }[];
20
+ isDraggable?: boolean;
21
+ idx: number;
22
+ openModal: ActionHandler<typeof toggleModal>;
23
+ layerColorUIChange: ActionHandler<typeof VisStateActions.layerColorUIChange>;
24
+ layerConfigChange: ActionHandler<typeof VisStateActions.layerConfigChange>;
25
+ layerVisualChannelConfigChange: ActionHandler<typeof VisStateActions.layerVisualChannelConfigChange>;
26
+ layerSetIsValid: ActionHandler<typeof VisStateActions.layerSetIsValid>;
27
+ layerTypeChange: ActionHandler<typeof VisStateActions.layerTypeChange>;
28
+ layerVisConfigChange: ActionHandler<typeof VisStateActions.layerVisConfigChange>;
29
+ layerTextLabelChange: ActionHandler<typeof VisStateActions.layerTextLabelChange>;
30
+ removeLayer: ActionHandler<typeof VisStateActions.removeLayer>;
31
+ zoomToLayer: ActionHandler<typeof MapStateActions.fitBounds>;
32
+ duplicateLayer: ActionHandler<typeof VisStateActions.duplicateLayer>;
33
+ listeners?: React.ElementType;
34
+ };
35
+ declare function LayerPanelFactory(LayerConfigurator: ReturnType<typeof LayerConfiguratorFactory>, LayerPanelHeader: ReturnType<typeof LayerPanelHeaderFactory>): React.ComponentType<LayerPanelProps>;
36
+ declare namespace LayerPanelFactory {
37
+ var deps: (typeof LayerPanelHeaderFactory | typeof LayerConfiguratorFactory)[];
38
+ }
39
+ export default LayerPanelFactory;
@@ -0,0 +1,162 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ 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
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
16
+ var _react = _interopRequireWildcard(require("react"));
17
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
18
+ var _constants = require("@kepler.gl/constants");
19
+ var _layerConfigurator = _interopRequireDefault(require("./layer-configurator"));
20
+ var _layerPanelHeader = _interopRequireDefault(require("./layer-panel-header"));
21
+ var _templateObject; // SPDX-License-Identifier: MIT
22
+ // Copyright contributors to the kepler.gl project
23
+ 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); }
24
+ 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; }
25
+ 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)); }
26
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
27
+ var PanelWrapper = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n font-size: 12px;\n border-radius: 1px;\n z-index: 1000;\n &.dragging {\n cursor: move;\n }\n"])));
28
+ LayerPanelFactory.deps = [_layerConfigurator["default"], _layerPanelHeader["default"]];
29
+ function LayerPanelFactory(LayerConfigurator, LayerPanelHeader) {
30
+ var LayerPanel = /*#__PURE__*/function (_Component) {
31
+ function LayerPanel() {
32
+ var _this;
33
+ (0, _classCallCheck2["default"])(this, LayerPanel);
34
+ for (var _len = arguments.length, _args = new Array(_len), _key = 0; _key < _len; _key++) {
35
+ _args[_key] = arguments[_key];
36
+ }
37
+ _this = _callSuper(this, LayerPanel, [].concat(_args));
38
+ (0, _defineProperty2["default"])(_this, "updateLayerConfig", function (newProp) {
39
+ _this.props.layerConfigChange(_this.props.layer, newProp);
40
+ });
41
+ (0, _defineProperty2["default"])(_this, "updateLayerType", function (newType) {
42
+ _this.props.layerTypeChange(_this.props.layer, newType);
43
+ });
44
+ (0, _defineProperty2["default"])(_this, "updateLayerVisConfig", function (newVisConfig) {
45
+ _this.props.layerVisConfigChange(_this.props.layer, newVisConfig);
46
+ });
47
+ (0, _defineProperty2["default"])(_this, "updateLayerColorUI", function () {
48
+ var _this$props;
49
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
50
+ args[_key2] = arguments[_key2];
51
+ }
52
+ (_this$props = _this.props).layerColorUIChange.apply(_this$props, [_this.props.layer].concat(args));
53
+ });
54
+ (0, _defineProperty2["default"])(_this, "updateLayerTextLabel", function () {
55
+ var _this$props2;
56
+ for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
57
+ args[_key3] = arguments[_key3];
58
+ }
59
+ (_this$props2 = _this.props).layerTextLabelChange.apply(_this$props2, [_this.props.layer].concat(args));
60
+ });
61
+ (0, _defineProperty2["default"])(_this, "updateLayerVisualChannelConfig", function (newConfig, channel, newVisConfig) {
62
+ _this.props.layerVisualChannelConfigChange(_this.props.layer, newConfig, channel, newVisConfig);
63
+ });
64
+ (0, _defineProperty2["default"])(_this, "_updateLayerLabel", function (_ref) {
65
+ var value = _ref.target.value;
66
+ _this.updateLayerConfig({
67
+ label: value
68
+ });
69
+ });
70
+ (0, _defineProperty2["default"])(_this, "_toggleVisibility", function (e) {
71
+ e.stopPropagation();
72
+ var isVisible = !_this.props.layer.config.isVisible;
73
+ _this.updateLayerConfig({
74
+ isVisible: isVisible
75
+ });
76
+ });
77
+ (0, _defineProperty2["default"])(_this, "_resetIsValid", function (e) {
78
+ e === null || e === void 0 || e.stopPropagation();
79
+ // Make the layer valid and visible again after an error
80
+ _this.props.layerSetIsValid(_this.props.layer, true);
81
+ });
82
+ (0, _defineProperty2["default"])(_this, "_toggleEnableConfig", function (e) {
83
+ e === null || e === void 0 || e.stopPropagation();
84
+ var isConfigActive = _this.props.layer.config.isConfigActive;
85
+ _this.updateLayerConfig({
86
+ isConfigActive: !isConfigActive
87
+ });
88
+ });
89
+ (0, _defineProperty2["default"])(_this, "_removeLayer", function (e) {
90
+ e === null || e === void 0 || e.stopPropagation();
91
+ _this.props.removeLayer(_this.props.layer.id);
92
+ });
93
+ (0, _defineProperty2["default"])(_this, "_zoomToLayer", function (e) {
94
+ var _this$props$layer;
95
+ e === null || e === void 0 || e.stopPropagation();
96
+ var bounds = (_this$props$layer = _this.props.layer) === null || _this$props$layer === void 0 || (_this$props$layer = _this$props$layer.meta) === null || _this$props$layer === void 0 ? void 0 : _this$props$layer.bounds;
97
+ bounds && _this.props.zoomToLayer(bounds);
98
+ });
99
+ (0, _defineProperty2["default"])(_this, "_duplicateLayer", function (e) {
100
+ e === null || e === void 0 || e.stopPropagation();
101
+ _this.props.duplicateLayer(_this.props.layer.id);
102
+ });
103
+ return _this;
104
+ }
105
+ (0, _inherits2["default"])(LayerPanel, _Component);
106
+ return (0, _createClass2["default"])(LayerPanel, [{
107
+ key: "render",
108
+ value: function render() {
109
+ var _this$props3 = this.props,
110
+ layer = _this$props3.layer,
111
+ datasets = _this$props3.datasets,
112
+ isDraggable = _this$props3.isDraggable,
113
+ layerTypeOptions = _this$props3.layerTypeOptions,
114
+ listeners = _this$props3.listeners;
115
+ var config = layer.config,
116
+ isValid = layer.isValid;
117
+ var isConfigActive = config.isConfigActive;
118
+ var allowDuplicate = typeof layer.isValidToSave === 'function' && layer.isValidToSave();
119
+ return /*#__PURE__*/_react["default"].createElement(PanelWrapper, {
120
+ active: isConfigActive,
121
+ className: "layer-panel ".concat(this.props.className),
122
+ "data-testid": _constants.dataTestIds.layerPanel,
123
+ style: this.props.style,
124
+ onMouseDown: this.props.onMouseDown,
125
+ onTouchStart: this.props.onTouchStart
126
+ }, /*#__PURE__*/_react["default"].createElement(LayerPanelHeader, {
127
+ isConfigActive: isConfigActive,
128
+ layerId: layer.id,
129
+ isVisible: config.isVisible,
130
+ isValid: isValid,
131
+ label: config.label,
132
+ labelRCGColorValues: config.dataId ? datasets[config.dataId].color : null,
133
+ layerType: layer.type,
134
+ allowDuplicate: allowDuplicate,
135
+ onToggleEnableConfig: this._toggleEnableConfig,
136
+ onToggleVisibility: this._toggleVisibility,
137
+ onResetIsValid: this._resetIsValid,
138
+ onUpdateLayerLabel: this._updateLayerLabel,
139
+ onRemoveLayer: this._removeLayer,
140
+ onZoomToLayer: this._zoomToLayer,
141
+ onDuplicateLayer: this._duplicateLayer,
142
+ isDragNDropEnabled: isDraggable,
143
+ listeners: listeners
144
+ }), isConfigActive && /*#__PURE__*/_react["default"].createElement(LayerConfigurator, {
145
+ layer: layer,
146
+ datasets: datasets,
147
+ layerTypeOptions: layerTypeOptions,
148
+ openModal: this.props.openModal,
149
+ updateLayerColorUI: this.updateLayerColorUI,
150
+ updateLayerConfig: this.updateLayerConfig,
151
+ updateLayerVisualChannelConfig: this.updateLayerVisualChannelConfig,
152
+ updateLayerType: this.updateLayerType,
153
+ updateLayerTextLabel: this.updateLayerTextLabel,
154
+ updateLayerVisConfig: this.updateLayerVisConfig
155
+ }));
156
+ }
157
+ }]);
158
+ }(_react.Component);
159
+ return LayerPanel;
160
+ }
161
+ var _default = exports["default"] = LayerPanelFactory;
162
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY29uc3RhbnRzIiwiX2xheWVyQ29uZmlndXJhdG9yIiwiX2xheWVyUGFuZWxIZWFkZXIiLCJfdGVtcGxhdGVPYmplY3QiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJfY2FsbFN1cGVyIiwibyIsIl9nZXRQcm90b3R5cGVPZjIiLCJfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybjIiLCJfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0IiwiUmVmbGVjdCIsImNvbnN0cnVjdCIsImNvbnN0cnVjdG9yIiwiYXBwbHkiLCJCb29sZWFuIiwicHJvdG90eXBlIiwidmFsdWVPZiIsIlBhbmVsV3JhcHBlciIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwiTGF5ZXJQYW5lbEZhY3RvcnkiLCJkZXBzIiwiTGF5ZXJDb25maWd1cmF0b3JGYWN0b3J5IiwiTGF5ZXJQYW5lbEhlYWRlckZhY3RvcnkiLCJMYXllckNvbmZpZ3VyYXRvciIsIkxheWVyUGFuZWxIZWFkZXIiLCJMYXllclBhbmVsIiwiX0NvbXBvbmVudCIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrMiIsIl9sZW4iLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJfYXJncyIsIkFycmF5IiwiX2tleSIsImNvbmNhdCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJuZXdQcm9wIiwicHJvcHMiLCJsYXllckNvbmZpZ0NoYW5nZSIsImxheWVyIiwibmV3VHlwZSIsImxheWVyVHlwZUNoYW5nZSIsIm5ld1Zpc0NvbmZpZyIsImxheWVyVmlzQ29uZmlnQ2hhbmdlIiwiX3RoaXMkcHJvcHMiLCJfbGVuMiIsImFyZ3MiLCJfa2V5MiIsImxheWVyQ29sb3JVSUNoYW5nZSIsIl90aGlzJHByb3BzMiIsIl9sZW4zIiwiX2tleTMiLCJsYXllclRleHRMYWJlbENoYW5nZSIsIm5ld0NvbmZpZyIsImNoYW5uZWwiLCJsYXllclZpc3VhbENoYW5uZWxDb25maWdDaGFuZ2UiLCJfcmVmIiwidmFsdWUiLCJ0YXJnZXQiLCJ1cGRhdGVMYXllckNvbmZpZyIsImxhYmVsIiwic3RvcFByb3BhZ2F0aW9uIiwiaXNWaXNpYmxlIiwiY29uZmlnIiwibGF5ZXJTZXRJc1ZhbGlkIiwiaXNDb25maWdBY3RpdmUiLCJyZW1vdmVMYXllciIsImlkIiwiX3RoaXMkcHJvcHMkbGF5ZXIiLCJib3VuZHMiLCJtZXRhIiwiem9vbVRvTGF5ZXIiLCJkdXBsaWNhdGVMYXllciIsIl9pbmhlcml0czIiLCJfY3JlYXRlQ2xhc3MyIiwia2V5IiwicmVuZGVyIiwiX3RoaXMkcHJvcHMzIiwiZGF0YXNldHMiLCJpc0RyYWdnYWJsZSIsImxheWVyVHlwZU9wdGlvbnMiLCJsaXN0ZW5lcnMiLCJpc1ZhbGlkIiwiYWxsb3dEdXBsaWNhdGUiLCJpc1ZhbGlkVG9TYXZlIiwiY3JlYXRlRWxlbWVudCIsImFjdGl2ZSIsImNsYXNzTmFtZSIsImRhdGFUZXN0SWRzIiwibGF5ZXJQYW5lbCIsInN0eWxlIiwib25Nb3VzZURvd24iLCJvblRvdWNoU3RhcnQiLCJsYXllcklkIiwibGFiZWxSQ0dDb2xvclZhbHVlcyIsImRhdGFJZCIsImNvbG9yIiwibGF5ZXJUeXBlIiwidHlwZSIsIm9uVG9nZ2xlRW5hYmxlQ29uZmlnIiwiX3RvZ2dsZUVuYWJsZUNvbmZpZyIsIm9uVG9nZ2xlVmlzaWJpbGl0eSIsIl90b2dnbGVWaXNpYmlsaXR5Iiwib25SZXNldElzVmFsaWQiLCJfcmVzZXRJc1ZhbGlkIiwib25VcGRhdGVMYXllckxhYmVsIiwiX3VwZGF0ZUxheWVyTGFiZWwiLCJvblJlbW92ZUxheWVyIiwiX3JlbW92ZUxheWVyIiwib25ab29tVG9MYXllciIsIl96b29tVG9MYXllciIsIm9uRHVwbGljYXRlTGF5ZXIiLCJfZHVwbGljYXRlTGF5ZXIiLCJpc0RyYWdORHJvcEVuYWJsZWQiLCJvcGVuTW9kYWwiLCJ1cGRhdGVMYXllckNvbG9yVUkiLCJ1cGRhdGVMYXllclZpc3VhbENoYW5uZWxDb25maWciLCJ1cGRhdGVMYXllclR5cGUiLCJ1cGRhdGVMYXllclRleHRMYWJlbCIsInVwZGF0ZUxheWVyVmlzQ29uZmlnIiwiQ29tcG9uZW50IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvbGF5ZXItcGFuZWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge1xuICBDU1NQcm9wZXJ0aWVzLFxuICBDaGFuZ2VFdmVudEhhbmRsZXIsXG4gIENvbXBvbmVudCxcbiAgTW91c2VFdmVudEhhbmRsZXIsXG4gIFRvdWNoRXZlbnRIYW5kbGVyXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuXG5pbXBvcnQge0FjdGlvbkhhbmRsZXIsIE1hcFN0YXRlQWN0aW9ucywgVmlzU3RhdGVBY3Rpb25zLCB0b2dnbGVNb2RhbH0gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcbmltcG9ydCB7ZGF0YVRlc3RJZHN9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7TGF5ZXIsIExheWVyQmFzZUNvbmZpZ30gZnJvbSAnQGtlcGxlci5nbC9sYXllcnMnO1xuaW1wb3J0IHtEYXRhc2V0c30gZnJvbSAnQGtlcGxlci5nbC90YWJsZSc7XG5pbXBvcnQge0NvbG9yVUksIExheWVyVmlzQ29uZmlnLCBOZXN0ZWRQYXJ0aWFsfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcbmltcG9ydCBMYXllckNvbmZpZ3VyYXRvckZhY3RvcnkgZnJvbSAnLi9sYXllci1jb25maWd1cmF0b3InO1xuaW1wb3J0IExheWVyUGFuZWxIZWFkZXJGYWN0b3J5IGZyb20gJy4vbGF5ZXItcGFuZWwtaGVhZGVyJztcblxudHlwZSBMYXllclBhbmVsUHJvcHMgPSB7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgc3R5bGU/OiBDU1NQcm9wZXJ0aWVzO1xuICBvbk1vdXNlRG93bj86IE1vdXNlRXZlbnRIYW5kbGVyO1xuICBvblRvdWNoU3RhcnQ/OiBUb3VjaEV2ZW50SGFuZGxlcjtcbiAgbGF5ZXI6IExheWVyO1xuICBkYXRhc2V0czogRGF0YXNldHM7XG4gIGxheWVyVHlwZU9wdGlvbnM6IHtcbiAgICBpZDogc3RyaW5nO1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gICAgaWNvbjogYW55OyAvL1xuICAgIHJlcXVpcmVEYXRhOiBhbnk7IC8vXG4gIH1bXTtcbiAgaXNEcmFnZ2FibGU/OiBib29sZWFuO1xuICBpZHg6IG51bWJlcjtcbiAgb3Blbk1vZGFsOiBBY3Rpb25IYW5kbGVyPHR5cGVvZiB0b2dnbGVNb2RhbD47XG4gIGxheWVyQ29sb3JVSUNoYW5nZTogQWN0aW9uSGFuZGxlcjx0eXBlb2YgVmlzU3RhdGVBY3Rpb25zLmxheWVyQ29sb3JVSUNoYW5nZT47XG4gIGxheWVyQ29uZmlnQ2hhbmdlOiBBY3Rpb25IYW5kbGVyPHR5cGVvZiBWaXNTdGF0ZUFjdGlvbnMubGF5ZXJDb25maWdDaGFuZ2U+O1xuICBsYXllclZpc3VhbENoYW5uZWxDb25maWdDaGFuZ2U6IEFjdGlvbkhhbmRsZXI8XG4gICAgdHlwZW9mIFZpc1N0YXRlQWN0aW9ucy5sYXllclZpc3VhbENoYW5uZWxDb25maWdDaGFuZ2VcbiAgPjtcbiAgbGF5ZXJTZXRJc1ZhbGlkOiBBY3Rpb25IYW5kbGVyPHR5cGVvZiBWaXNTdGF0ZUFjdGlvbnMubGF5ZXJTZXRJc1ZhbGlkPjtcbiAgbGF5ZXJUeXBlQ2hhbmdlOiBBY3Rpb25IYW5kbGVyPHR5cGVvZiBWaXNTdGF0ZUFjdGlvbnMubGF5ZXJUeXBlQ2hhbmdlPjtcbiAgbGF5ZXJWaXNDb25maWdDaGFuZ2U6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIFZpc1N0YXRlQWN0aW9ucy5sYXllclZpc0NvbmZpZ0NoYW5nZT47XG4gIGxheWVyVGV4dExhYmVsQ2hhbmdlOiBBY3Rpb25IYW5kbGVyPHR5cGVvZiBWaXNTdGF0ZUFjdGlvbnMubGF5ZXJUZXh0TGFiZWxDaGFuZ2U+O1xuICByZW1vdmVMYXllcjogQWN0aW9uSGFuZGxlcjx0eXBlb2YgVmlzU3RhdGVBY3Rpb25zLnJlbW92ZUxheWVyPjtcbiAgem9vbVRvTGF5ZXI6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIE1hcFN0YXRlQWN0aW9ucy5maXRCb3VuZHM+O1xuICBkdXBsaWNhdGVMYXllcjogQWN0aW9uSGFuZGxlcjx0eXBlb2YgVmlzU3RhdGVBY3Rpb25zLmR1cGxpY2F0ZUxheWVyPjtcbiAgbGlzdGVuZXJzPzogUmVhY3QuRWxlbWVudFR5cGU7XG59O1xuXG5jb25zdCBQYW5lbFdyYXBwZXIgPSBzdHlsZWQuZGl2PHthY3RpdmU6IGJvb2xlYW59PmBcbiAgZm9udC1zaXplOiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIHotaW5kZXg6IDEwMDA7XG4gICYuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogbW92ZTtcbiAgfVxuYDtcblxuTGF5ZXJQYW5lbEZhY3RvcnkuZGVwcyA9IFtMYXllckNvbmZpZ3VyYXRvckZhY3RvcnksIExheWVyUGFuZWxIZWFkZXJGYWN0b3J5XTtcblxuZnVuY3Rpb24gTGF5ZXJQYW5lbEZhY3RvcnkoXG4gIExheWVyQ29uZmlndXJhdG9yOiBSZXR1cm5UeXBlPHR5cGVvZiBMYXllckNvbmZpZ3VyYXRvckZhY3Rvcnk+LFxuICBMYXllclBhbmVsSGVhZGVyOiBSZXR1cm5UeXBlPHR5cGVvZiBMYXllclBhbmVsSGVhZGVyRmFjdG9yeT5cbik6IFJlYWN0LkNvbXBvbmVudFR5cGU8TGF5ZXJQYW5lbFByb3BzPiB7XG4gIGNsYXNzIExheWVyUGFuZWwgZXh0ZW5kcyBDb21wb25lbnQ8TGF5ZXJQYW5lbFByb3BzPiB7XG4gICAgdXBkYXRlTGF5ZXJDb25maWcgPSAobmV3UHJvcDogUGFydGlhbDxMYXllckJhc2VDb25maWc+KSA9PiB7XG4gICAgICB0aGlzLnByb3BzLmxheWVyQ29uZmlnQ2hhbmdlKHRoaXMucHJvcHMubGF5ZXIsIG5ld1Byb3ApO1xuICAgIH07XG5cbiAgICB1cGRhdGVMYXllclR5cGUgPSAobmV3VHlwZTogc3RyaW5nKSA9PiB7XG4gICAgICB0aGlzLnByb3BzLmxheWVyVHlwZUNoYW5nZSh0aGlzLnByb3BzLmxheWVyLCBuZXdUeXBlKTtcbiAgICB9O1xuXG4gICAgdXBkYXRlTGF5ZXJWaXNDb25maWcgPSAobmV3VmlzQ29uZmlnOiBQYXJ0aWFsPExheWVyVmlzQ29uZmlnPikgPT4ge1xuICAgICAgdGhpcy5wcm9wcy5sYXllclZpc0NvbmZpZ0NoYW5nZSh0aGlzLnByb3BzLmxheWVyLCBuZXdWaXNDb25maWcpO1xuICAgIH07XG5cbiAgICB1cGRhdGVMYXllckNvbG9yVUkgPSAoLi4uYXJnczogW3N0cmluZywgTmVzdGVkUGFydGlhbDxDb2xvclVJPl0pID0+IHtcbiAgICAgIHRoaXMucHJvcHMubGF5ZXJDb2xvclVJQ2hhbmdlKHRoaXMucHJvcHMubGF5ZXIsIC4uLmFyZ3MpO1xuICAgIH07XG5cbiAgICB1cGRhdGVMYXllclRleHRMYWJlbCA9ICguLi5hcmdzOiBbbnVtYmVyIHwgJ2FsbCcsIHN0cmluZywgYW55XSkgPT4ge1xuICAgICAgdGhpcy5wcm9wcy5sYXllclRleHRMYWJlbENoYW5nZSh0aGlzLnByb3BzLmxheWVyLCAuLi5hcmdzKTtcbiAgICB9O1xuXG4gICAgdXBkYXRlTGF5ZXJWaXN1YWxDaGFubmVsQ29uZmlnID0gKFxuICAgICAgbmV3Q29uZmlnOiBQYXJ0aWFsPExheWVyQmFzZUNvbmZpZz4sXG4gICAgICBjaGFubmVsOiBzdHJpbmcsXG4gICAgICBuZXdWaXNDb25maWc/OiBQYXJ0aWFsPExheWVyVmlzQ29uZmlnPlxuICAgICkgPT4ge1xuICAgICAgdGhpcy5wcm9wcy5sYXllclZpc3VhbENoYW5uZWxDb25maWdDaGFuZ2UodGhpcy5wcm9wcy5sYXllciwgbmV3Q29uZmlnLCBjaGFubmVsLCBuZXdWaXNDb25maWcpO1xuICAgIH07XG5cbiAgICBfdXBkYXRlTGF5ZXJMYWJlbDogQ2hhbmdlRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQ+ID0gKHt0YXJnZXQ6IHt2YWx1ZX19KSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZUxheWVyQ29uZmlnKHtsYWJlbDogdmFsdWV9KTtcbiAgICB9O1xuXG4gICAgX3RvZ2dsZVZpc2liaWxpdHk6IE1vdXNlRXZlbnRIYW5kbGVyID0gZSA9PiB7XG4gICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgY29uc3QgaXNWaXNpYmxlID0gIXRoaXMucHJvcHMubGF5ZXIuY29uZmlnLmlzVmlzaWJsZTtcbiAgICAgIHRoaXMudXBkYXRlTGF5ZXJDb25maWcoe2lzVmlzaWJsZX0pO1xuICAgIH07XG5cbiAgICBfcmVzZXRJc1ZhbGlkOiBNb3VzZUV2ZW50SGFuZGxlciA9IGUgPT4ge1xuICAgICAgZT8uc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAvLyBNYWtlIHRoZSBsYXllciB2YWxpZCBhbmQgdmlzaWJsZSBhZ2FpbiBhZnRlciBhbiBlcnJvclxuICAgICAgdGhpcy5wcm9wcy5sYXllclNldElzVmFsaWQodGhpcy5wcm9wcy5sYXllciwgdHJ1ZSk7XG4gICAgfTtcblxuICAgIF90b2dnbGVFbmFibGVDb25maWc6IE1vdXNlRXZlbnRIYW5kbGVyID0gZSA9PiB7XG4gICAgICBlPy5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgbGF5ZXI6IHtcbiAgICAgICAgICBjb25maWc6IHtpc0NvbmZpZ0FjdGl2ZX1cbiAgICAgICAgfVxuICAgICAgfSA9IHRoaXMucHJvcHM7XG4gICAgICB0aGlzLnVwZGF0ZUxheWVyQ29uZmlnKHtpc0NvbmZpZ0FjdGl2ZTogIWlzQ29uZmlnQWN0aXZlfSk7XG4gICAgfTtcblxuICAgIF9yZW1vdmVMYXllcjogTW91c2VFdmVudEhhbmRsZXIgPSBlID0+IHtcbiAgICAgIGU/LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgdGhpcy5wcm9wcy5yZW1vdmVMYXllcih0aGlzLnByb3BzLmxheWVyLmlkKTtcbiAgICB9O1xuXG4gICAgX3pvb21Ub0xheWVyOiBNb3VzZUV2ZW50SGFuZGxlciA9IGUgPT4ge1xuICAgICAgZT8uc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBjb25zdCBib3VuZHMgPSB0aGlzLnByb3BzLmxheWVyPy5tZXRhPy5ib3VuZHM7XG4gICAgICBib3VuZHMgJiYgdGhpcy5wcm9wcy56b29tVG9MYXllcihib3VuZHMpO1xuICAgIH07XG5cbiAgICBfZHVwbGljYXRlTGF5ZXI6IE1vdXNlRXZlbnRIYW5kbGVyID0gZSA9PiB7XG4gICAgICBlPy5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIHRoaXMucHJvcHMuZHVwbGljYXRlTGF5ZXIodGhpcy5wcm9wcy5sYXllci5pZCk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHtsYXllciwgZGF0YXNldHMsIGlzRHJhZ2dhYmxlLCBsYXllclR5cGVPcHRpb25zLCBsaXN0ZW5lcnN9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IHtjb25maWcsIGlzVmFsaWR9ID0gbGF5ZXI7XG4gICAgICBjb25zdCB7aXNDb25maWdBY3RpdmV9ID0gY29uZmlnO1xuICAgICAgY29uc3QgYWxsb3dEdXBsaWNhdGUgPSB0eXBlb2YgbGF5ZXIuaXNWYWxpZFRvU2F2ZSA9PT0gJ2Z1bmN0aW9uJyAmJiBsYXllci5pc1ZhbGlkVG9TYXZlKCk7XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxQYW5lbFdyYXBwZXJcbiAgICAgICAgICBhY3RpdmU9e2lzQ29uZmlnQWN0aXZlfVxuICAgICAgICAgIGNsYXNzTmFtZT17YGxheWVyLXBhbmVsICR7dGhpcy5wcm9wcy5jbGFzc05hbWV9YH1cbiAgICAgICAgICBkYXRhLXRlc3RpZD17ZGF0YVRlc3RJZHMubGF5ZXJQYW5lbH1cbiAgICAgICAgICBzdHlsZT17dGhpcy5wcm9wcy5zdHlsZX1cbiAgICAgICAgICBvbk1vdXNlRG93bj17dGhpcy5wcm9wcy5vbk1vdXNlRG93bn1cbiAgICAgICAgICBvblRvdWNoU3RhcnQ9e3RoaXMucHJvcHMub25Ub3VjaFN0YXJ0fVxuICAgICAgICA+XG4gICAgICAgICAgPExheWVyUGFuZWxIZWFkZXJcbiAgICAgICAgICAgIGlzQ29uZmlnQWN0aXZlPXtpc0NvbmZpZ0FjdGl2ZX1cbiAgICAgICAgICAgIGxheWVySWQ9e2xheWVyLmlkfVxuICAgICAgICAgICAgaXNWaXNpYmxlPXtjb25maWcuaXNWaXNpYmxlfVxuICAgICAgICAgICAgaXNWYWxpZD17aXNWYWxpZH1cbiAgICAgICAgICAgIGxhYmVsPXtjb25maWcubGFiZWx9XG4gICAgICAgICAgICBsYWJlbFJDR0NvbG9yVmFsdWVzPXtjb25maWcuZGF0YUlkID8gZGF0YXNldHNbY29uZmlnLmRhdGFJZF0uY29sb3IgOiBudWxsfVxuICAgICAgICAgICAgbGF5ZXJUeXBlPXtsYXllci50eXBlfVxuICAgICAgICAgICAgYWxsb3dEdXBsaWNhdGU9e2FsbG93RHVwbGljYXRlfVxuICAgICAgICAgICAgb25Ub2dnbGVFbmFibGVDb25maWc9e3RoaXMuX3RvZ2dsZUVuYWJsZUNvbmZpZ31cbiAgICAgICAgICAgIG9uVG9nZ2xlVmlzaWJpbGl0eT17dGhpcy5fdG9nZ2xlVmlzaWJpbGl0eX1cbiAgICAgICAgICAgIG9uUmVzZXRJc1ZhbGlkPXt0aGlzLl9yZXNldElzVmFsaWR9XG4gICAgICAgICAgICBvblVwZGF0ZUxheWVyTGFiZWw9e3RoaXMuX3VwZGF0ZUxheWVyTGFiZWx9XG4gICAgICAgICAgICBvblJlbW92ZUxheWVyPXt0aGlzLl9yZW1vdmVMYXllcn1cbiAgICAgICAgICAgIG9uWm9vbVRvTGF5ZXI9e3RoaXMuX3pvb21Ub0xheWVyfVxuICAgICAgICAgICAgb25EdXBsaWNhdGVMYXllcj17dGhpcy5fZHVwbGljYXRlTGF5ZXJ9XG4gICAgICAgICAgICBpc0RyYWdORHJvcEVuYWJsZWQ9e2lzRHJhZ2dhYmxlfVxuICAgICAgICAgICAgbGlzdGVuZXJzPXtsaXN0ZW5lcnN9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7aXNDb25maWdBY3RpdmUgJiYgKFxuICAgICAgICAgICAgPExheWVyQ29uZmlndXJhdG9yXG4gICAgICAgICAgICAgIGxheWVyPXtsYXllcn1cbiAgICAgICAgICAgICAgZGF0YXNldHM9e2RhdGFzZXRzfVxuICAgICAgICAgICAgICBsYXllclR5cGVPcHRpb25zPXtsYXllclR5cGVPcHRpb25zfVxuICAgICAgICAgICAgICBvcGVuTW9kYWw9e3RoaXMucHJvcHMub3Blbk1vZGFsfVxuICAgICAgICAgICAgICB1cGRhdGVMYXllckNvbG9yVUk9e3RoaXMudXBkYXRlTGF5ZXJDb2xvclVJfVxuICAgICAgICAgICAgICB1cGRhdGVMYXllckNvbmZpZz17dGhpcy51cGRhdGVMYXllckNvbmZpZ31cbiAgICAgICAgICAgICAgdXBkYXRlTGF5ZXJWaXN1YWxDaGFubmVsQ29uZmlnPXt0aGlzLnVwZGF0ZUxheWVyVmlzdWFsQ2hhbm5lbENvbmZpZ31cbiAgICAgICAgICAgICAgdXBkYXRlTGF5ZXJUeXBlPXt0aGlzLnVwZGF0ZUxheWVyVHlwZX1cbiAgICAgICAgICAgICAgdXBkYXRlTGF5ZXJUZXh0TGFiZWw9e3RoaXMudXBkYXRlTGF5ZXJUZXh0TGFiZWx9XG4gICAgICAgICAgICAgIHVwZGF0ZUxheWVyVmlzQ29uZmlnPXt0aGlzLnVwZGF0ZUxheWVyVmlzQ29uZmlnfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L1BhbmVsV3JhcHBlcj5cbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIExheWVyUGFuZWw7XG59XG5cbmV4cG9ydCBkZWZhdWx0IExheWVyUGFuZWxGYWN0b3J5O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFPQSxJQUFBQyxpQkFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBR0EsSUFBQUcsVUFBQSxHQUFBSCxPQUFBO0FBSUEsSUFBQUksa0JBQUEsR0FBQUYsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFLLGlCQUFBLEdBQUFILHNCQUFBLENBQUFGLE9BQUE7QUFBMkQsSUFBQU0sZUFBQSxFQWxCM0Q7QUFDQTtBQUFBLFNBQUFDLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBVCx3QkFBQVMsQ0FBQSxFQUFBRSxDQUFBLFNBQUFBLENBQUEsSUFBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFVBQUEsU0FBQUosQ0FBQSxlQUFBQSxDQUFBLGdCQUFBSyxPQUFBLENBQUFMLENBQUEsMEJBQUFBLENBQUEsc0JBQUFBLENBQUEsUUFBQUcsQ0FBQSxHQUFBSix3QkFBQSxDQUFBRyxDQUFBLE9BQUFDLENBQUEsSUFBQUEsQ0FBQSxDQUFBRyxHQUFBLENBQUFOLENBQUEsVUFBQUcsQ0FBQSxDQUFBSSxHQUFBLENBQUFQLENBQUEsT0FBQVEsQ0FBQSxLQUFBQyxTQUFBLFVBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxjQUFBLElBQUFELE1BQUEsQ0FBQUUsd0JBQUEsV0FBQUMsQ0FBQSxJQUFBZCxDQUFBLG9CQUFBYyxDQUFBLE9B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
@@ -0,0 +1,22 @@
1
+ import React, { MouseEvent } from 'react';
2
+ export declare type LayerTypeOption = {
3
+ disabled?: boolean;
4
+ id: string;
5
+ label: string;
6
+ icon: React.ElementType;
7
+ };
8
+ declare type LayerTypeDropdownListProps = {
9
+ onOptionSelected: (value: {
10
+ icon: React.ElementType;
11
+ label: string;
12
+ }, e: MouseEvent) => void;
13
+ options: LayerTypeOption[];
14
+ selectedItems: LayerTypeOption[];
15
+ selectionIndex: number | null;
16
+ customListItemComponent: React.FC<{
17
+ value: LayerTypeOption;
18
+ isTile?: boolean;
19
+ }>;
20
+ };
21
+ export declare function LayerTypeDropdownListFactory(): React.FC<LayerTypeDropdownListProps>;
22
+ export default LayerTypeDropdownListFactory;