@kepler.gl/components 3.1.0-alpha.1 → 3.1.0-alpha.3

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 +35 -0
  640. package/dist/side-panel/layer-panel/color-scale-selector.js +191 -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 +8 -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 +19 -16
@@ -0,0 +1,244 @@
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"] = exports.PaletteConfig = exports.ColorPaletteItem = exports.ALL_TYPES = void 0;
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+ var _react = _interopRequireWildcard(require("react"));
12
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
13
+ var _constants = require("@kepler.gl/constants");
14
+ var _localization = require("@kepler.gl/localization");
15
+ var _utils = require("@kepler.gl/utils");
16
+ var _itemSelector = _interopRequireDefault(require("../../common/item-selector/item-selector"));
17
+ var _styledComponents2 = require("../../common/styled-components");
18
+ var _switch = _interopRequireDefault(require("../../common/switch"));
19
+ var _colorPalette = _interopRequireDefault(require("./color-palette"));
20
+ var _customPalette = _interopRequireDefault(require("./custom-palette"));
21
+ var _d3Array = require("d3-array");
22
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5; // SPDX-License-Identifier: MIT
23
+ // Copyright contributors to the kepler.gl project
24
+ 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); }
25
+ 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; }
26
+ // @ts-ignore cant concat 'all' to PALETTE_TYPES values
27
+ var ALL_TYPES = exports.ALL_TYPES = Object.values(_constants.PALETTE_TYPES).concat(['all']);
28
+ var MAX_STEPS = 20;
29
+ var ALL_STEPS = (0, _d3Array.range)(2, MAX_STEPS + 1, 1);
30
+ var StyledColorConfig = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n padding: 12px 12px 0 12px;\n"])));
31
+ var StyledColorRangeSelector = _styledComponents["default"].div.attrs({
32
+ className: 'color-range-selector'
33
+ })(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n padding-bottom: 12px;\n"])));
34
+ var StyledColorPalette = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0 8px 8px 8px;\n"])));
35
+ var StyledPaletteConfig = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n margin-bottom: 8px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n .color-palette__config__select {\n width: 40%;\n display: flex;\n flex-direction: row-reverse;\n\n .item-selector {\n width: 100%;\n }\n }\n"])));
36
+ var CONFIG_SETTINGS = {
37
+ type: {
38
+ type: 'select',
39
+ options: ALL_TYPES
40
+ },
41
+ steps: {
42
+ type: 'select',
43
+ options: ALL_STEPS,
44
+ disabled: function disabled(colorRange) {
45
+ return (0, _utils.hasColorMap)(colorRange);
46
+ },
47
+ reason: 'color.disableStepReason'
48
+ },
49
+ reversed: {
50
+ type: 'switch',
51
+ options: [true, false]
52
+ },
53
+ colorBlindSafe: {
54
+ type: 'switch',
55
+ options: [true, false]
56
+ },
57
+ custom: {
58
+ label: 'customPalette',
59
+ type: 'switch',
60
+ options: [true, false]
61
+ }
62
+ };
63
+ var displayOption = function displayOption(d) {
64
+ return (0, _utils.capitalizeFirstLetter)(d);
65
+ };
66
+ var getOptionValue = function getOptionValue(d) {
67
+ return d;
68
+ };
69
+ ColorRangeSelectorFactory.deps = [_customPalette["default"]];
70
+ function ColorRangeSelectorFactory(CustomPalette) {
71
+ var ColorRangeSelector = function ColorRangeSelector(_ref) {
72
+ var colorPalettes = _ref.colorPalettes,
73
+ colorPaletteUI = _ref.colorPaletteUI,
74
+ setColorPaletteUI = _ref.setColorPaletteUI,
75
+ onSelectColorRange = _ref.onSelectColorRange,
76
+ selectedColorRange = _ref.selectedColorRange;
77
+ var customPalette = colorPaletteUI.customPalette,
78
+ showSketcher = colorPaletteUI.showSketcher,
79
+ colorRangeConfig = colorPaletteUI.colorRangeConfig;
80
+ var type = colorRangeConfig.type,
81
+ steps = colorRangeConfig.steps,
82
+ colorBlindSafe = colorRangeConfig.colorBlindSafe,
83
+ reversed = colorRangeConfig.reversed;
84
+ var filteredColorPalettes = (0, _react.useMemo)(function () {
85
+ var _colorPalettes$filter;
86
+ return (_colorPalettes$filter = colorPalettes === null || colorPalettes === void 0 ? void 0 : colorPalettes.filter(function (palette) {
87
+ return (0, _utils.paletteIsType)(palette, type) && (0, _utils.paletteIsSteps)(palette, steps) && (0, _utils.paletteIsColorBlindSafe)(palette, colorBlindSafe);
88
+ })) !== null && _colorPalettes$filter !== void 0 ? _colorPalettes$filter : [];
89
+ }, [colorPalettes, colorBlindSafe, steps, type]);
90
+ var _updateConfig = (0, _react.useCallback)(function (_ref2) {
91
+ var key = _ref2.key,
92
+ value = _ref2.value;
93
+ setColorPaletteUI({
94
+ colorRangeConfig: (0, _defineProperty2["default"])({}, key, value)
95
+ });
96
+ }, [setColorPaletteUI]);
97
+ var _onCustomPaletteCancel = (0, _react.useCallback)(function () {
98
+ setColorPaletteUI({
99
+ showSketcher: false,
100
+ colorRangeConfig: {
101
+ custom: false
102
+ }
103
+ });
104
+ }, [setColorPaletteUI]);
105
+ var _onApply = (0, _react.useCallback)(function (e) {
106
+ return onSelectColorRange(customPalette, e);
107
+ }, [customPalette, onSelectColorRange]);
108
+ var _onSelectPalette = (0, _react.useCallback)(function (colorPalette, e) {
109
+ var newColorRange = (0, _utils.updateColorRangeBySelectedPalette)(selectedColorRange, colorPalette, {
110
+ steps: steps,
111
+ reversed: reversed
112
+ });
113
+ onSelectColorRange(newColorRange, e);
114
+ }, [selectedColorRange, reversed, steps, onSelectColorRange]);
115
+ return /*#__PURE__*/_react["default"].createElement(StyledColorRangeSelector, null, /*#__PURE__*/_react["default"].createElement(StyledColorConfig, null, (colorRangeConfig.custom ? ['custom'] : Object.keys(colorRangeConfig)).map(function (key) {
116
+ return CONFIG_SETTINGS[key] ? /*#__PURE__*/_react["default"].createElement(PaletteConfig, {
117
+ key: key,
118
+ prop: key,
119
+ label: CONFIG_SETTINGS[key].label || key,
120
+ config: CONFIG_SETTINGS[key],
121
+ value: colorRangeConfig[key],
122
+ onChange: _updateConfig,
123
+ disabled: CONFIG_SETTINGS[key].disabled ? CONFIG_SETTINGS[key].disabled(selectedColorRange) : false,
124
+ reason: CONFIG_SETTINGS[key].reason
125
+ }) : null;
126
+ })), colorRangeConfig.custom ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(StyledColorPalette, null, /*#__PURE__*/_react["default"].createElement(_colorPalette["default"], {
127
+ colors: customPalette.colors
128
+ })), /*#__PURE__*/_react["default"].createElement(CustomPalette, {
129
+ customPalette: customPalette,
130
+ showSketcher: showSketcher,
131
+ onApply: _onApply,
132
+ setColorPaletteUI: setColorPaletteUI,
133
+ onCancel: _onCustomPaletteCancel
134
+ })) : /*#__PURE__*/_react["default"].createElement("div", {
135
+ className: "color-palette__group"
136
+ }, filteredColorPalettes.map(function (colorPalette, i) {
137
+ return /*#__PURE__*/_react["default"].createElement(ColorPaletteItem, {
138
+ key: "".concat(colorPalette.name, "-").concat(i),
139
+ colorPalette: colorPalette,
140
+ selectedColorRange: selectedColorRange,
141
+ onSelect: _onSelectPalette,
142
+ reversed: reversed,
143
+ steps: steps
144
+ });
145
+ })));
146
+ };
147
+ ColorRangeSelector.defaultProps = {
148
+ colorPalettes: _constants.KEPLER_COLOR_PALETTES,
149
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
150
+ onSelectColorRange: function onSelectColorRange() {},
151
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
152
+ setColorPaletteUI: function setColorPaletteUI() {}
153
+ };
154
+ return ColorRangeSelector;
155
+ }
156
+ var PaletteConfig = exports.PaletteConfig = function PaletteConfig(_ref3) {
157
+ var prop = _ref3.prop,
158
+ label = _ref3.label,
159
+ value = _ref3.value,
160
+ _ref3$config = _ref3.config,
161
+ type = _ref3$config.type,
162
+ options = _ref3$config.options,
163
+ onChange = _ref3.onChange,
164
+ disabled = _ref3.disabled,
165
+ reason = _ref3.reason;
166
+ var updateSelect = (0, _react.useCallback)(function (val) {
167
+ return onChange({
168
+ key: prop,
169
+ value: val
170
+ });
171
+ }, [onChange, prop]);
172
+ var updateSwitch = (0, _react.useCallback)(function () {
173
+ return onChange({
174
+ key: prop,
175
+ value: !value
176
+ });
177
+ }, [onChange, prop, value]);
178
+ return /*#__PURE__*/_react["default"].createElement(StyledPaletteConfig, {
179
+ className: "color-palette__config",
180
+ onClick: function onClick(e) {
181
+ return e.stopPropagation();
182
+ }
183
+ }, /*#__PURE__*/_react["default"].createElement("div", {
184
+ className: "color-palette__config__label"
185
+ }, /*#__PURE__*/_react["default"].createElement(_styledComponents2.PanelLabel, null, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
186
+ id: "color.".concat(label)
187
+ }))), /*#__PURE__*/_react["default"].createElement("div", {
188
+ className: "color-palette__config__select",
189
+ "data-tip": true,
190
+ "data-for": "color-range-config-".concat(prop)
191
+ }, type === 'select' && /*#__PURE__*/_react["default"].createElement(_itemSelector["default"], {
192
+ selectedItems: value,
193
+ options: options,
194
+ multiSelect: false,
195
+ searchable: false,
196
+ onChange: updateSelect,
197
+ disabled: disabled,
198
+ inputTheme: "secondary",
199
+ displayOption: displayOption,
200
+ getOptionValue: getOptionValue
201
+ }), type === 'switch' && /*#__PURE__*/_react["default"].createElement(_switch["default"], {
202
+ checked: Boolean(value),
203
+ id: "".concat(label, "-toggle"),
204
+ onChange: updateSwitch,
205
+ disabled: disabled,
206
+ secondary: true
207
+ }), disabled && reason ? /*#__PURE__*/_react["default"].createElement(_styledComponents2.Tooltip, {
208
+ id: "color-range-config-".concat(prop),
209
+ place: "right"
210
+ }, /*#__PURE__*/_react["default"].createElement("div", {
211
+ style: {
212
+ maxWidth: '214px'
213
+ }
214
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
215
+ id: reason
216
+ }))) : null));
217
+ };
218
+ var StyledColorRange = _styledComponents["default"].div.attrs({
219
+ className: 'color-palette-outer'
220
+ })(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0 8px;\n :hover {\n background-color: ", ";\n cursor: pointer;\n }\n"])), function (props) {
221
+ return props.theme.panelBackgroundHover;
222
+ });
223
+ var ColorPaletteItem = exports.ColorPaletteItem = function ColorPaletteItem(_ref4) {
224
+ var colorPalette = _ref4.colorPalette,
225
+ steps = _ref4.steps,
226
+ selectedColorRange = _ref4.selectedColorRange,
227
+ onSelect = _ref4.onSelect,
228
+ reversed = _ref4.reversed;
229
+ var colors = (0, _react.useMemo)(function () {
230
+ return colorPalette.colors(steps);
231
+ }, [colorPalette, steps]);
232
+ var onClick = (0, _react.useCallback)(function (e) {
233
+ return onSelect(colorPalette, e);
234
+ }, [colorPalette, onSelect]);
235
+ return /*#__PURE__*/_react["default"].createElement(StyledColorRange, {
236
+ onClick: onClick
237
+ }, /*#__PURE__*/_react["default"].createElement(_colorPalette["default"], {
238
+ colors: colors,
239
+ isReversed: reversed,
240
+ isSelected: colorPalette.name === selectedColorRange.name
241
+ }));
242
+ };
243
+ var _default = exports["default"] = ColorRangeSelectorFactory;
244
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY29uc3RhbnRzIiwiX2xvY2FsaXphdGlvbiIsIl91dGlscyIsIl9pdGVtU2VsZWN0b3IiLCJfc3R5bGVkQ29tcG9uZW50czIiLCJfc3dpdGNoIiwiX2NvbG9yUGFsZXR0ZSIsIl9jdXN0b21QYWxldHRlIiwiX2QzQXJyYXkiLCJfdGVtcGxhdGVPYmplY3QiLCJfdGVtcGxhdGVPYmplY3QyIiwiX3RlbXBsYXRlT2JqZWN0MyIsIl90ZW1wbGF0ZU9iamVjdDQiLCJfdGVtcGxhdGVPYmplY3Q1IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiQUxMX1RZUEVTIiwiZXhwb3J0cyIsInZhbHVlcyIsIlBBTEVUVEVfVFlQRVMiLCJjb25jYXQiLCJNQVhfU1RFUFMiLCJBTExfU1RFUFMiLCJyYW5nZSIsIlN0eWxlZENvbG9yQ29uZmlnIiwic3R5bGVkIiwiZGl2IiwiX3RhZ2dlZFRlbXBsYXRlTGl0ZXJhbDIiLCJTdHlsZWRDb2xvclJhbmdlU2VsZWN0b3IiLCJhdHRycyIsImNsYXNzTmFtZSIsIlN0eWxlZENvbG9yUGFsZXR0ZSIsIlN0eWxlZFBhbGV0dGVDb25maWciLCJDT05GSUdfU0VUVElOR1MiLCJ0eXBlIiwib3B0aW9ucyIsInN0ZXBzIiwiZGlzYWJsZWQiLCJjb2xvclJhbmdlIiwiaGFzQ29sb3JNYXAiLCJyZWFzb24iLCJyZXZlcnNlZCIsImNvbG9yQmxpbmRTYWZlIiwiY3VzdG9tIiwibGFiZWwiLCJkaXNwbGF5T3B0aW9uIiwiZCIsImNhcGl0YWxpemVGaXJzdExldHRlciIsImdldE9wdGlvblZhbHVlIiwiQ29sb3JSYW5nZVNlbGVjdG9yRmFjdG9yeSIsImRlcHMiLCJDdXN0b21QYWxldHRlRmFjdG9yeSIsIkN1c3RvbVBhbGV0dGUiLCJDb2xvclJhbmdlU2VsZWN0b3IiLCJfcmVmIiwiY29sb3JQYWxldHRlcyIsImNvbG9yUGFsZXR0ZVVJIiwic2V0Q29sb3JQYWxldHRlVUkiLCJvblNlbGVjdENvbG9yUmFuZ2UiLCJzZWxlY3RlZENvbG9yUmFuZ2UiLCJjdXN0b21QYWxldHRlIiwic2hvd1NrZXRjaGVyIiwiY29sb3JSYW5nZUNvbmZpZyIsImZpbHRlcmVkQ29sb3JQYWxldHRlcyIsInVzZU1lbW8iLCJfY29sb3JQYWxldHRlcyRmaWx0ZXIiLCJmaWx0ZXIiLCJwYWxldHRlIiwicGFsZXR0ZUlzVHlwZSIsInBhbGV0dGVJc1N0ZXBzIiwicGFsZXR0ZUlzQ29sb3JCbGluZFNhZmUiLCJfdXBkYXRlQ29uZmlnIiwidXNlQ2FsbGJhY2siLCJfcmVmMiIsImtleSIsInZhbHVlIiwiX2RlZmluZVByb3BlcnR5MiIsIl9vbkN1c3RvbVBhbGV0dGVDYW5jZWwiLCJfb25BcHBseSIsIl9vblNlbGVjdFBhbGV0dGUiLCJjb2xvclBhbGV0dGUiLCJuZXdDb2xvclJhbmdlIiwidXBkYXRlQ29sb3JSYW5nZUJ5U2VsZWN0ZWRQYWxldHRlIiwiY3JlYXRlRWxlbWVudCIsImtleXMiLCJtYXAiLCJQYWxldHRlQ29uZmlnIiwicHJvcCIsImNvbmZpZyIsIm9uQ2hhbmdlIiwiRnJhZ21lbnQiLCJjb2xvcnMiLCJvbkFwcGx5Iiwib25DYW5jZWwiLCJDb2xvclBhbGV0dGVJdGVtIiwibmFtZSIsIm9uU2VsZWN0IiwiZGVmYXVsdFByb3BzIiwiS0VQTEVSX0NPTE9SX1BBTEVUVEVTIiwiX3JlZjMiLCJfcmVmMyRjb25maWciLCJ1cGRhdGVTZWxlY3QiLCJ2YWwiLCJ1cGRhdGVTd2l0Y2giLCJvbkNsaWNrIiwic3RvcFByb3BhZ2F0aW9uIiwiUGFuZWxMYWJlbCIsIkZvcm1hdHRlZE1lc3NhZ2UiLCJpZCIsInNlbGVjdGVkSXRlbXMiLCJtdWx0aVNlbGVjdCIsInNlYXJjaGFibGUiLCJpbnB1dFRoZW1lIiwiY2hlY2tlZCIsIkJvb2xlYW4iLCJzZWNvbmRhcnkiLCJUb29sdGlwIiwicGxhY2UiLCJzdHlsZSIsIm1heFdpZHRoIiwiU3R5bGVkQ29sb3JSYW5nZSIsInByb3BzIiwidGhlbWUiLCJwYW5lbEJhY2tncm91bmRIb3ZlciIsIl9yZWY0IiwiaXNSZXZlcnNlZCIsImlzU2VsZWN0ZWQiLCJfZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zaWRlLXBhbmVsL2xheWVyLXBhbmVsL2NvbG9yLXJhbmdlLXNlbGVjdG9yLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHtNb3VzZUV2ZW50LCB1c2VDYWxsYmFjaywgdXNlTWVtb30gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge0tFUExFUl9DT0xPUl9QQUxFVFRFUywgUEFMRVRURV9UWVBFUywgQ29sb3JQYWxldHRlfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5pbXBvcnQge0Zvcm1hdHRlZE1lc3NhZ2V9IGZyb20gJ0BrZXBsZXIuZ2wvbG9jYWxpemF0aW9uJztcbmltcG9ydCB7Q29sb3JSYW5nZSwgQ29sb3JVSSwgTmVzdGVkUGFydGlhbH0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge1xuICBoYXNDb2xvck1hcCxcbiAgdXBkYXRlQ29sb3JSYW5nZUJ5U2VsZWN0ZWRQYWxldHRlLFxuICBwYWxldHRlSXNTdGVwcyxcbiAgcGFsZXR0ZUlzVHlwZSxcbiAgcGFsZXR0ZUlzQ29sb3JCbGluZFNhZmVcbn0gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5pbXBvcnQgSXRlbVNlbGVjdG9yIGZyb20gJy4uLy4uL2NvbW1vbi9pdGVtLXNlbGVjdG9yL2l0ZW0tc2VsZWN0b3InO1xuaW1wb3J0IHtQYW5lbExhYmVsLCBUb29sdGlwfSBmcm9tICcuLi8uLi9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IFN3aXRjaCBmcm9tICcuLi8uLi9jb21tb24vc3dpdGNoJztcbmltcG9ydCBDb2xvclBhbGV0dGVQYW5lbCBmcm9tICcuL2NvbG9yLXBhbGV0dGUnO1xuaW1wb3J0IEN1c3RvbVBhbGV0dGVGYWN0b3J5IGZyb20gJy4vY3VzdG9tLXBhbGV0dGUnO1xuXG5pbXBvcnQge2NhcGl0YWxpemVGaXJzdExldHRlcn0gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5pbXBvcnQge3JhbmdlfSBmcm9tICdkMy1hcnJheSc7XG5cbnR5cGUgQ29sb3JSYW5nZVNlbGVjdG9yUHJvcHMgPSB7XG4gIGNvbG9yUGFsZXR0ZXM/OiBDb2xvclBhbGV0dGVbXTtcbiAgY29sb3JQYWxldHRlVUk6IENvbG9yVUk7XG4gIHNlbGVjdGVkQ29sb3JSYW5nZTogQ29sb3JSYW5nZTtcbiAgb25TZWxlY3RDb2xvclJhbmdlOiAocDogQ29sb3JSYW5nZSwgZTogTW91c2VFdmVudCkgPT4gdm9pZDtcbiAgc2V0Q29sb3JQYWxldHRlVUk6IChuZXdDb25maWc6IE5lc3RlZFBhcnRpYWw8Q29sb3JVST4pID0+IHZvaWQ7XG59O1xuXG50eXBlIFBhbGV0dGVDb25maWdQcm9wcyA9IHtcbiAgbGFiZWw6IHN0cmluZztcbiAgdmFsdWU6IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW47XG4gIGNvbmZpZzoge1xuICAgIHR5cGU6IHN0cmluZztcbiAgICBvcHRpb25zOiAoc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbilbXTtcbiAgfTtcbiAgb25DaGFuZ2U6ICh2OiBhbnkpID0+IHZvaWQ7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgcHJvcDogc3RyaW5nO1xuICByZWFzb24/OiBzdHJpbmc7XG59O1xuXG4vLyBAdHMtaWdub3JlIGNhbnQgY29uY2F0ICdhbGwnIHRvIFBBTEVUVEVfVFlQRVMgdmFsdWVzXG5leHBvcnQgY29uc3QgQUxMX1RZUEVTID0gT2JqZWN0LnZhbHVlcyhQQUxFVFRFX1RZUEVTKS5jb25jYXQoWydhbGwnXSk7XG5jb25zdCBNQVhfU1RFUFMgPSAyMDtcbmNvbnN0IEFMTF9TVEVQUyA9IHJhbmdlKDIsIE1BWF9TVEVQUyArIDEsIDEpO1xuXG5jb25zdCBTdHlsZWRDb2xvckNvbmZpZyA9IHN0eWxlZC5kaXZgXG4gIHBhZGRpbmc6IDEycHggMTJweCAwIDEycHg7XG5gO1xuXG5jb25zdCBTdHlsZWRDb2xvclJhbmdlU2VsZWN0b3IgPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnY29sb3ItcmFuZ2Utc2VsZWN0b3InXG59KWBcbiAgcGFkZGluZy1ib3R0b206IDEycHg7XG5gO1xuY29uc3QgU3R5bGVkQ29sb3JQYWxldHRlID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzogMCA4cHggOHB4IDhweDtcbmA7XG5cbmNvbnN0IFN0eWxlZFBhbGV0dGVDb25maWcgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAuY29sb3ItcGFsZXR0ZV9fY29uZmlnX19zZWxlY3Qge1xuICAgIHdpZHRoOiA0MCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgICAuaXRlbS1zZWxlY3RvciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IENPTkZJR19TRVRUSU5HUyA9IHtcbiAgdHlwZToge1xuICAgIHR5cGU6ICdzZWxlY3QnLFxuICAgIG9wdGlvbnM6IEFMTF9UWVBFU1xuICB9LFxuICBzdGVwczoge1xuICAgIHR5cGU6ICdzZWxlY3QnLFxuICAgIG9wdGlvbnM6IEFMTF9TVEVQUyxcbiAgICBkaXNhYmxlZDogY29sb3JSYW5nZSA9PiBoYXNDb2xvck1hcChjb2xvclJhbmdlKSxcbiAgICByZWFzb246ICdjb2xvci5kaXNhYmxlU3RlcFJlYXNvbidcbiAgfSxcbiAgcmV2ZXJzZWQ6IHtcbiAgICB0eXBlOiAnc3dpdGNoJyxcbiAgICBvcHRpb25zOiBbdHJ1ZSwgZmFsc2VdXG4gIH0sXG4gIGNvbG9yQmxpbmRTYWZlOiB7XG4gICAgdHlwZTogJ3N3aXRjaCcsXG4gICAgb3B0aW9uczogW3RydWUsIGZhbHNlXVxuICB9LFxuICBjdXN0b206IHtcbiAgICBsYWJlbDogJ2N1c3RvbVBhbGV0dGUnLFxuICAgIHR5cGU6ICdzd2l0Y2gnLFxuICAgIG9wdGlvbnM6IFt0cnVlLCBmYWxzZV1cbiAgfVxufTtcbmNvbnN0IGRpc3BsYXlPcHRpb24gPSBkID0+IGNhcGl0YWxpemVGaXJzdExldHRlcihkKTtcbmNvbnN0IGdldE9wdGlvblZhbHVlID0gZCA9PiBkO1xuXG5Db2xvclJhbmdlU2VsZWN0b3JGYWN0b3J5LmRlcHMgPSBbQ3VzdG9tUGFsZXR0ZUZhY3RvcnldO1xuZnVuY3Rpb24gQ29sb3JSYW5nZVNlbGVjdG9yRmFjdG9yeShcbiAgQ3VzdG9tUGFsZXR0ZTogUmV0dXJuVHlwZTx0eXBlb2YgQ3VzdG9tUGFsZXR0ZUZhY3Rvcnk+XG4pOiBSZWFjdC5GQzxDb2xvclJhbmdlU2VsZWN0b3JQcm9wcz4ge1xuICBjb25zdCBDb2xvclJhbmdlU2VsZWN0b3I6IFJlYWN0LkZDPENvbG9yUmFuZ2VTZWxlY3RvclByb3BzPiA9ICh7XG4gICAgY29sb3JQYWxldHRlcyxcbiAgICBjb2xvclBhbGV0dGVVSSxcbiAgICBzZXRDb2xvclBhbGV0dGVVSSxcbiAgICBvblNlbGVjdENvbG9yUmFuZ2UsXG4gICAgc2VsZWN0ZWRDb2xvclJhbmdlXG4gIH0pID0+IHtcbiAgICBjb25zdCB7Y3VzdG9tUGFsZXR0ZSwgc2hvd1NrZXRjaGVyLCBjb2xvclJhbmdlQ29uZmlnfSA9IGNvbG9yUGFsZXR0ZVVJO1xuICAgIGNvbnN0IHt0eXBlLCBzdGVwcywgY29sb3JCbGluZFNhZmUsIHJldmVyc2VkfSA9IGNvbG9yUmFuZ2VDb25maWc7XG5cbiAgICBjb25zdCBmaWx0ZXJlZENvbG9yUGFsZXR0ZXMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIGNvbG9yUGFsZXR0ZXM/LmZpbHRlcihcbiAgICAgICAgICBwYWxldHRlID0+XG4gICAgICAgICAgICBwYWxldHRlSXNUeXBlKHBhbGV0dGUsIHR5cGUpICYmXG4gICAgICAgICAgICBwYWxldHRlSXNTdGVwcyhwYWxldHRlLCBzdGVwcykgJiZcbiAgICAgICAgICAgIHBhbGV0dGVJc0NvbG9yQmxpbmRTYWZlKHBhbGV0dGUsIGNvbG9yQmxpbmRTYWZlKVxuICAgICAgICApID8/IFtdXG4gICAgICApO1xuICAgIH0sIFtjb2xvclBhbGV0dGVzLCBjb2xvckJsaW5kU2FmZSwgc3RlcHMsIHR5cGVdKTtcblxuICAgIGNvbnN0IF91cGRhdGVDb25maWcgPSB1c2VDYWxsYmFjayhcbiAgICAgICh7a2V5LCB2YWx1ZX0pID0+IHtcbiAgICAgICAgc2V0Q29sb3JQYWxldHRlVUkoe2NvbG9yUmFuZ2VDb25maWc6IHtba2V5XTogdmFsdWV9fSk7XG4gICAgICB9LFxuICAgICAgW3NldENvbG9yUGFsZXR0ZVVJXVxuICAgICk7XG5cbiAgICBjb25zdCBfb25DdXN0b21QYWxldHRlQ2FuY2VsID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgc2V0Q29sb3JQYWxldHRlVUkoe1xuICAgICAgICBzaG93U2tldGNoZXI6IGZhbHNlLFxuICAgICAgICBjb2xvclJhbmdlQ29uZmlnOiB7Y3VzdG9tOiBmYWxzZX1cbiAgICAgIH0pO1xuICAgIH0sIFtzZXRDb2xvclBhbGV0dGVVSV0pO1xuXG4gICAgY29uc3QgX29uQXBwbHkgPSB1c2VDYWxsYmFjayhcbiAgICAgIGUgPT4gb25TZWxlY3RDb2xvclJhbmdlKGN1c3RvbVBhbGV0dGUsIGUpLFxuICAgICAgW2N1c3RvbVBhbGV0dGUsIG9uU2VsZWN0Q29sb3JSYW5nZV1cbiAgICApO1xuXG4gICAgY29uc3QgX29uU2VsZWN0UGFsZXR0ZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGNvbG9yUGFsZXR0ZSwgZSkgPT4ge1xuICAgICAgICBjb25zdCBuZXdDb2xvclJhbmdlID0gdXBkYXRlQ29sb3JSYW5nZUJ5U2VsZWN0ZWRQYWxldHRlKHNlbGVjdGVkQ29sb3JSYW5nZSwgY29sb3JQYWxldHRlLCB7XG4gICAgICAgICAgc3RlcHMsXG4gICAgICAgICAgcmV2ZXJzZWRcbiAgICAgICAgfSk7XG5cbiAgICAgICAgb25TZWxlY3RDb2xvclJhbmdlKG5ld0NvbG9yUmFuZ2UsIGUpO1xuICAgICAgfSxcbiAgICAgIFtzZWxlY3RlZENvbG9yUmFuZ2UsIHJldmVyc2VkLCBzdGVwcywgb25TZWxlY3RDb2xvclJhbmdlXVxuICAgICk7XG4gICAgcmV0dXJuIChcbiAgICAgIDxTdHlsZWRDb2xvclJhbmdlU2VsZWN0b3I+XG4gICAgICAgIDxTdHlsZWRDb2xvckNvbmZpZz5cbiAgICAgICAgICB7KGNvbG9yUmFuZ2VDb25maWcuY3VzdG9tID8gWydjdXN0b20nXSA6IE9iamVjdC5rZXlzKGNvbG9yUmFuZ2VDb25maWcpKS5tYXAoa2V5ID0+XG4gICAgICAgICAgICBDT05GSUdfU0VUVElOR1Nba2V5XSA/IChcbiAgICAgICAgICAgICAgPFBhbGV0dGVDb25maWdcbiAgICAgICAgICAgICAgICBrZXk9e2tleX1cbiAgICAgICAgICAgICAgICBwcm9wPXtrZXl9XG4gICAgICAgICAgICAgICAgbGFiZWw9e0NPTkZJR19TRVRUSU5HU1trZXldLmxhYmVsIHx8IGtleX1cbiAgICAgICAgICAgICAgICBjb25maWc9e0NPTkZJR19TRVRUSU5HU1trZXldfVxuICAgICAgICAgICAgICAgIHZhbHVlPXtjb2xvclJhbmdlQ29uZmlnW2tleV19XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e191cGRhdGVDb25maWd9XG4gICAgICAgICAgICAgICAgZGlzYWJsZWQ9e1xuICAgICAgICAgICAgICAgICAgQ09ORklHX1NFVFRJTkdTW2tleV0uZGlzYWJsZWRcbiAgICAgICAgICAgICAgICAgICAgPyBDT05GSUdfU0VUVElOR1Nba2V5XS5kaXNhYmxlZChzZWxlY3RlZENvbG9yUmFuZ2UpXG4gICAgICAgICAgICAgICAgICAgIDogZmFsc2VcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmVhc29uPXtDT05GSUdfU0VUVElOR1Nba2V5XS5yZWFzb259XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApIDogbnVsbFxuICAgICAgICAgICl9XG4gICAgICAgIDwvU3R5bGVkQ29sb3JDb25maWc+XG4gICAgICAgIHtjb2xvclJhbmdlQ29uZmlnLmN1c3RvbSA/IChcbiAgICAgICAgICA8PlxuICAgICAgICAgICAgPFN0eWxlZENvbG9yUGFsZXR0ZT5cbiAgICAgICAgICAgICAgPENvbG9yUGFsZXR0ZVBhbmVsIGNvbG9ycz17Y3VzdG9tUGFsZXR0ZS5jb2xvcnN9IC8+XG4gICAgICAgICAgICA8L1N0eWxlZENvbG9yUGFsZXR0ZT5cbiAgICAgICAgICAgIDxDdXN0b21QYWxldHRlXG4gICAgICAgICAgICAgIGN1c3RvbVBhbGV0dGU9e2N1c3RvbVBhbGV0dGV9XG4gICAgICAgICAgICAgIHNob3dTa2V0Y2hlcj17c2hvd1NrZXRjaGVyfVxuICAgICAgICAgICAgICBvbkFwcGx5PXtfb25BcHBseX1cbiAgICAgICAgICAgICAgc2V0Q29sb3JQYWxldHRlVUk9e3NldENvbG9yUGFsZXR0ZVVJfVxuICAgICAgICAgICAgICBvbkNhbmNlbD17X29uQ3VzdG9tUGFsZXR0ZUNhbmNlbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC8+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xvci1wYWxldHRlX19ncm91cFwiPlxuICAgICAgICAgICAge2ZpbHRlcmVkQ29sb3JQYWxldHRlcy5tYXAoKGNvbG9yUGFsZXR0ZSwgaSkgPT4gKFxuICAgICAgICAgICAgICA8Q29sb3JQYWxldHRlSXRlbVxuICAgICAgICAgICAgICAgIGtleT17YCR7Y29sb3JQYWxldHRlLm5hbWV9LSR7aX1gfVxuICAgICAgICAgICAgICAgIGNvbG9yUGFsZXR0ZT17Y29sb3JQYWxldHRlfVxuICAgICAgICAgICAgICAgIHNlbGVjdGVkQ29sb3JSYW5nZT17c2VsZWN0ZWRDb2xvclJhbmdlfVxuICAgICAgICAgICAgICAgIG9uU2VsZWN0PXtfb25TZWxlY3RQYWxldHRlfVxuICAgICAgICAgICAgICAgIHJldmVyc2VkPXtyZXZlcnNlZH1cbiAgICAgICAgICAgICAgICBzdGVwcz17c3RlcHN9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgIDwvU3R5bGVkQ29sb3JSYW5nZVNlbGVjdG9yPlxuICAgICk7XG4gIH07XG5cbiAgQ29sb3JSYW5nZVNlbGVjdG9yLmRlZmF1bHRQcm9wcyA9IHtcbiAgICBjb2xvclBhbGV0dGVzOiBLRVBMRVJfQ09MT1JfUEFMRVRURVMsXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICAgIG9uU2VsZWN0Q29sb3JSYW5nZTogKCkgPT4ge30sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICAgIHNldENvbG9yUGFsZXR0ZVVJOiAoKSA9PiB7fVxuICB9O1xuXG4gIHJldHVybiBDb2xvclJhbmdlU2VsZWN0b3I7XG59XG5cbmV4cG9ydCBjb25zdCBQYWxldHRlQ29uZmlnOiBSZWFjdC5GQzxQYWxldHRlQ29uZmlnUHJvcHM+ID0gKHtcbiAgcHJvcCxcbiAgbGFiZWwsXG4gIHZhbHVlLFxuICBjb25maWc6IHt0eXBlLCBvcHRpb25zfSxcbiAgb25DaGFuZ2UsXG4gIGRpc2FibGVkLFxuICByZWFzb25cbn0pID0+IHtcbiAgY29uc3QgdXBkYXRlU2VsZWN0ID0gdXNlQ2FsbGJhY2sodmFsID0+IG9uQ2hhbmdlKHtrZXk6IHByb3AsIHZhbHVlOiB2YWx9KSwgW29uQ2hhbmdlLCBwcm9wXSk7XG4gIGNvbnN0IHVwZGF0ZVN3aXRjaCA9IHVzZUNhbGxiYWNrKFxuICAgICgpID0+IG9uQ2hhbmdlKHtrZXk6IHByb3AsIHZhbHVlOiAhdmFsdWV9KSxcbiAgICBbb25DaGFuZ2UsIHByb3AsIHZhbHVlXVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPFN0eWxlZFBhbGV0dGVDb25maWcgY2xhc3NOYW1lPVwiY29sb3ItcGFsZXR0ZV9fY29uZmlnXCIgb25DbGljaz17ZSA9PiBlLnN0b3BQcm9wYWdhdGlvbigpfT5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sb3ItcGFsZXR0ZV9fY29uZmlnX19sYWJlbFwiPlxuICAgICAgICA8UGFuZWxMYWJlbD5cbiAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17YGNvbG9yLiR7bGFiZWx9YH0gLz5cbiAgICAgICAgPC9QYW5lbExhYmVsPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT1cImNvbG9yLXBhbGV0dGVfX2NvbmZpZ19fc2VsZWN0XCJcbiAgICAgICAgZGF0YS10aXBcbiAgICAgICAgZGF0YS1mb3I9e2Bjb2xvci1yYW5nZS1jb25maWctJHtwcm9wfWB9XG4gICAgICA+XG4gICAgICAgIHt0eXBlID09PSAnc2VsZWN0JyAmJiAoXG4gICAgICAgICAgPEl0ZW1TZWxlY3RvclxuICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcz17dmFsdWV9XG4gICAgICAgICAgICBvcHRpb25zPXtvcHRpb25zfVxuICAgICAgICAgICAgbXVsdGlTZWxlY3Q9e2ZhbHNlfVxuICAgICAgICAgICAgc2VhcmNoYWJsZT17ZmFsc2V9XG4gICAgICAgICAgICBvbkNoYW5nZT17dXBkYXRlU2VsZWN0fVxuICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgaW5wdXRUaGVtZT1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICBkaXNwbGF5T3B0aW9uPXtkaXNwbGF5T3B0aW9ufVxuICAgICAgICAgICAgZ2V0T3B0aW9uVmFsdWU9e2dldE9wdGlvblZhbHVlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICAgIHt0eXBlID09PSAnc3dpdGNoJyAmJiAoXG4gICAgICAgICAgPFN3aXRjaFxuICAgICAgICAgICAgY2hlY2tlZD17Qm9vbGVhbih2YWx1ZSl9XG4gICAgICAgICAgICBpZD17YCR7bGFiZWx9LXRvZ2dsZWB9XG4gICAgICAgICAgICBvbkNoYW5nZT17dXBkYXRlU3dpdGNofVxuICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgc2Vjb25kYXJ5XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgICAge2Rpc2FibGVkICYmIHJlYXNvbiA/IChcbiAgICAgICAgICA8VG9vbHRpcCBpZD17YGNvbG9yLXJhbmdlLWNvbmZpZy0ke3Byb3B9YH0gcGxhY2U9XCJyaWdodFwiPlxuICAgICAgICAgICAgPGRpdiBzdHlsZT17e21heFdpZHRoOiAnMjE0cHgnfX0+XG4gICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXtyZWFzb259IC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9kaXY+XG4gICAgPC9TdHlsZWRQYWxldHRlQ29uZmlnPlxuICApO1xufTtcbmNvbnN0IFN0eWxlZENvbG9yUmFuZ2UgPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnY29sb3ItcGFsZXR0ZS1vdXRlcidcbn0pYFxuICBwYWRkaW5nOiAwIDhweDtcbiAgOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZEhvdmVyfTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbmA7XG5cbnR5cGUgQ29sb3JQYWxldHRlSXRlbVByb3BzID0ge1xuICByZXZlcnNlZD86IGJvb2xlYW47XG4gIHNlbGVjdGVkPzogQ29sb3JSYW5nZTtcbiAgY29sb3JQYWxldHRlOiBDb2xvclBhbGV0dGU7XG4gIHNlbGVjdGVkQ29sb3JSYW5nZTogQ29sb3JSYW5nZTtcbiAgb25TZWxlY3Q6IChjb2xvclBhbGV0dGU6IENvbG9yUGFsZXR0ZSwgZTogTW91c2VFdmVudCkgPT4gdm9pZDtcbiAgc3RlcHM6IG51bWJlcjtcbn07XG5cbmV4cG9ydCBjb25zdCBDb2xvclBhbGV0dGVJdGVtOiBSZWFjdC5GQzxDb2xvclBhbGV0dGVJdGVtUHJvcHM+ID0gKHtcbiAgY29sb3JQYWxldHRlLFxuICBzdGVwcyxcbiAgc2VsZWN0ZWRDb2xvclJhbmdlLFxuICBvblNlbGVjdCxcbiAgcmV2ZXJzZWRcbn0pID0+IHtcbiAgY29uc3QgY29sb3JzID0gdXNlTWVtbygoKSA9PiBjb2xvclBhbGV0dGUuY29sb3JzKHN0ZXBzKSwgW2NvbG9yUGFsZXR0ZSwgc3RlcHNdKTtcbiAgY29uc3Qgb25DbGljayA9IHVzZUNhbGxiYWNrKGUgPT4gb25TZWxlY3QoY29sb3JQYWxldHRlLCBlKSwgW2NvbG9yUGFsZXR0ZSwgb25TZWxlY3RdKTtcbiAgcmV0dXJuIChcbiAgICA8U3R5bGVkQ29sb3JSYW5nZSBvbkNsaWNrPXtvbkNsaWNrfT5cbiAgICAgIDxDb2xvclBhbGV0dGVQYW5lbFxuICAgICAgICBjb2xvcnM9e2NvbG9yc31cbiAgICAgICAgaXNSZXZlcnNlZD17cmV2ZXJzZWR9XG4gICAgICAgIGlzU2VsZWN0ZWQ9e2NvbG9yUGFsZXR0ZS5uYW1lID09PSBzZWxlY3RlZENvbG9yUmFuZ2UubmFtZX1cbiAgICAgIC8+XG4gICAgPC9TdHlsZWRDb2xvclJhbmdlPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgQ29sb3JSYW5nZVNlbGVjdG9yRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGlCQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxVQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxhQUFBLEdBQUFKLE9BQUE7QUFFQSxJQUFBSyxNQUFBLEdBQUFMLE9BQUE7QUFPQSxJQUFBTSxhQUFBLEdBQUFKLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBTyxrQkFBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsT0FBQSxHQUFBTixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQVMsYUFBQSxHQUFBUCxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQVUsY0FBQSxHQUFBUixzQkFBQSxDQUFBRixPQUFBO0FBR0EsSUFBQVcsUUFBQSxHQUFBWCxPQUFBO0FBQStCLElBQUFZLGVBQUEsRUFBQUMsZ0JBQUEsRUFBQUMsZ0JBQUEsRUFBQUMsZ0JBQUEsRUFBQUMsZ0JBQUEsRUF0Qi9CO0FBQ0E7QUFBQSxTQUFBQyx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQW5CLHdCQUFBbUIsQ0FBQSxFQUFBRSxDQUFBLFNBQUFBLENBQUEsSUFBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFVBQUEsU0FBQUosQ0FBQSxlQUFBQSxDQUFBLGdCQUFBSyxPQUFBLENBQUFMLENBQUEsMEJBQUFBLENBQUEsc0JBQUFBLENBQUEsUUFBQUcsQ0FBQSxH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
@@ -0,0 +1,35 @@
1
+ import React from 'react';
2
+ import { Layer, VisualChannelDomain } from '@kepler.gl/layers';
3
+ import { KeplerTable } from '@kepler.gl/table';
4
+ import { ColorRange, ColorUI, Field } from '@kepler.gl/types';
5
+ import ColorBreaksPanelFactory, { ColorBreaksPanelProps } from './color-breaks-panel';
6
+ import { SetColorUIFunc } from './custom-palette';
7
+ export declare type ScaleOption = {
8
+ label: string;
9
+ value: string;
10
+ };
11
+ export declare type OnSelectFunc = (v: string, visConfg?: Record<string, any>) => void;
12
+ export declare type ContextProps = ColorBreaksPanelProps;
13
+ export declare type ColorScaleSelectorProps = {
14
+ layer: Layer;
15
+ field: Field;
16
+ dataset: KeplerTable;
17
+ scaleType: string;
18
+ domain: VisualChannelDomain;
19
+ range: ColorRange;
20
+ onSelect: OnSelectFunc;
21
+ setColorUI: SetColorUIFunc;
22
+ colorUIConfig: ColorUI;
23
+ options: ScaleOption[];
24
+ disabled?: boolean;
25
+ selectedItems: ScaleOption[];
26
+ multiSelect: boolean;
27
+ searchable: boolean;
28
+ displayOption: string;
29
+ getOptionValue: string;
30
+ };
31
+ declare function ColorScaleSelectorFactory(ColorBreaksPanel: ReturnType<typeof ColorBreaksPanelFactory>): React.FC<ColorScaleSelectorProps>;
32
+ declare namespace ColorScaleSelectorFactory {
33
+ var deps: (typeof ColorBreaksPanelFactory)[];
34
+ }
35
+ export default ColorScaleSelectorFactory;
@@ -0,0 +1,191 @@
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 _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+ var _react = _interopRequireWildcard(require("react"));
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
15
+ var _constants = require("@kepler.gl/constants");
16
+ var _utils = require("@kepler.gl/utils");
17
+ var _colorBreaksPanel = _interopRequireDefault(require("./color-breaks-panel"));
18
+ var _dropdownSelect = _interopRequireDefault(require("../../common/item-selector/dropdown-select"));
19
+ var _accessor = _interopRequireDefault(require("../../common/item-selector/accessor"));
20
+ var _dropdownList = _interopRequireDefault(require("../../common/item-selector/dropdown-list"));
21
+ var _lazyTippy = _interopRequireDefault(require("../../map/lazy-tippy"));
22
+ var _typeahead = _interopRequireDefault(require("../../common/item-selector/typeahead"));
23
+ var _excluded = ["layer", "field", "dataset", "onSelect", "scaleType", "domain", "range", "setColorUI", "colorUIConfig"],
24
+ _excluded2 = ["colorMap"];
25
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4; // SPDX-License-Identifier: MIT
26
+ // Copyright contributors to the kepler.gl project
27
+ 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); }
28
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
29
+ // 'tippy-js'
30
+
31
+ var DropdownPropContext = /*#__PURE__*/_react["default"].createContext({});
32
+ var POPPER_OPTIONS = {
33
+ modifiers: [
34
+ // zero offsets since they are already added in VerticalToolbar
35
+ {
36
+ name: 'offset',
37
+ options: {
38
+ offset: [0, 0]
39
+ }
40
+ }]
41
+ };
42
+ var DropdownBottom = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n border-top: 1px solid\n ", ";\n"])), function (props) {
43
+ return props.light ? props.theme.dropdownListBorderTopLT : props.theme.dropdownListBorderTop;
44
+ });
45
+ var StyledScaleSelectDropdown = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n box-shadow: ", ";\n .list-selector {\n box-shadow: none;\n border-top: 0;\n }\n .list__item {\n padding: 4px 9px;\n }\n"])), function (props) {
46
+ return props.theme.dropdownListShadow;
47
+ });
48
+ var DropdownWrapper = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n border: 0;\n width: 100%;\n left: 0;\n z-index: ", ";\n position: absolute;\n margin-top: ", "px;\n"])), function (props) {
49
+ return props.theme.dropdownWrapperZ;
50
+ }, function (props) {
51
+ return props.theme.dropdownWapperMargin;
52
+ });
53
+ var StyledColorScaleSelector = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n .typeahead {\n // adds padding to bottom of dropdown\n margin-bottom: 40px;\n }\n [data-tippy-root] {\n width: 100%;\n }\n"])));
54
+ function hideTippy(tippyInstance) {
55
+ if (tippyInstance) {
56
+ tippyInstance.hide();
57
+ }
58
+ }
59
+ ColorScaleSelectorFactory.deps = [_colorBreaksPanel["default"]];
60
+ function ColorScaleSelectorFactory(ColorBreaksPanel) {
61
+ var ColorScaleSelectDropdown = function ColorScaleSelectDropdown(props) {
62
+ return /*#__PURE__*/_react["default"].createElement(StyledScaleSelectDropdown, null, /*#__PURE__*/_react["default"].createElement(_dropdownList["default"], props), /*#__PURE__*/_react["default"].createElement(DropdownPropContext.Consumer, null, function (context) {
63
+ return /*#__PURE__*/_react["default"].createElement(DropdownBottom, null, /*#__PURE__*/_react["default"].createElement(ColorBreaksPanel, context));
64
+ }));
65
+ };
66
+ var ColorScaleSelector = function ColorScaleSelector(_ref) {
67
+ var _colorUIConfig$colorR;
68
+ var layer = _ref.layer,
69
+ field = _ref.field,
70
+ dataset = _ref.dataset,
71
+ onSelect = _ref.onSelect,
72
+ scaleType = _ref.scaleType,
73
+ domain = _ref.domain,
74
+ range = _ref.range,
75
+ setColorUI = _ref.setColorUI,
76
+ colorUIConfig = _ref.colorUIConfig,
77
+ dropdownSelectProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
78
+ var displayOption = _accessor["default"].generateOptionToStringFor(dropdownSelectProps.displayOption);
79
+ var getOptionValue = (0, _react.useMemo)(function () {
80
+ return _accessor["default"].generateOptionToStringFor(dropdownSelectProps.getOptionValue);
81
+ }, [dropdownSelectProps.getOptionValue]);
82
+ var _useState = (0, _react.useState)(),
83
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
84
+ tippyInstance = _useState2[0],
85
+ setTippyInstance = _useState2[1];
86
+ var isEditingColorBreaks = colorUIConfig === null || colorUIConfig === void 0 || (_colorUIConfig$colorR = colorUIConfig.colorRangeConfig) === null || _colorUIConfig$colorR === void 0 ? void 0 : _colorUIConfig$colorR.customBreaks;
87
+ var colorScale = (0, _react.useMemo)(function () {
88
+ return (0, _utils.getLayerColorScale)({
89
+ range: range,
90
+ domain: domain,
91
+ scaleType: scaleType,
92
+ layer: layer
93
+ });
94
+ }, [range, domain, scaleType, layer]);
95
+ var colorBreaks = (0, _react.useMemo)(function () {
96
+ return colorScale ? (0, _utils.getLegendOfScale)({
97
+ scale: colorScale,
98
+ scaleType: scaleType,
99
+ fieldType: field.type
100
+ }) : null;
101
+ }, [colorScale, scaleType, field.type]);
102
+ var onSelectScale = (0, _react.useCallback)(function (val) {
103
+ // highlight selected option
104
+ if (getOptionValue(val) === _constants.SCALE_TYPES.custom) {
105
+ // update custom breaks
106
+ var customPalette = {
107
+ name: 'color.customPalette',
108
+ type: 'custom',
109
+ category: 'Custom',
110
+ colors: range.colors,
111
+ colorMap: range.colorMap ? range.colorMap : colorBreaks ? (0, _utils.colorBreaksToColorMap)(colorBreaks) : undefined
112
+ };
113
+ setColorUI({
114
+ showColorChart: true,
115
+ colorRangeConfig: {
116
+ customBreaks: true
117
+ },
118
+ customPalette: customPalette
119
+ });
120
+ onSelect(_constants.SCALE_TYPES.custom, customPalette);
121
+ } else {
122
+ // not custom
123
+ if (isEditingColorBreaks) {
124
+ setColorUI({
125
+ colorRangeConfig: {
126
+ customBreaks: false
127
+ }
128
+ });
129
+ }
130
+ if ((0, _utils.hasColorMap)(range)) {
131
+ // remove custom breaks
132
+ // eslint-disable-next-line no-unused-vars
133
+ var _ = range.colorMap,
134
+ newRange = (0, _objectWithoutProperties2["default"])(range, _excluded2);
135
+ onSelect(getOptionValue(val), newRange);
136
+ } else {
137
+ onSelect(getOptionValue(val));
138
+ }
139
+ }
140
+ }, [setColorUI, onSelect, range, getOptionValue, isEditingColorBreaks, colorBreaks]);
141
+ var onApply = (0, _react.useCallback)(function () {
142
+ onSelect(_constants.SCALE_TYPES.custom, colorUIConfig.customPalette);
143
+ hideTippy(tippyInstance);
144
+ }, [onSelect, colorUIConfig.customPalette, tippyInstance]);
145
+ var onCancel = (0, _react.useCallback)(function () {
146
+ hideTippy(tippyInstance);
147
+ }, [tippyInstance]);
148
+ var isCustomBreaks = scaleType === _constants.SCALE_TYPES.custom;
149
+ return /*#__PURE__*/_react["default"].createElement(DropdownPropContext.Provider, {
150
+ value: {
151
+ setColorUI: setColorUI,
152
+ colorField: field,
153
+ dataset: dataset,
154
+ colorUIConfig: colorUIConfig,
155
+ colorBreaks: colorBreaks,
156
+ isCustomBreaks: isCustomBreaks,
157
+ onScaleChange: onSelect,
158
+ onApply: onApply,
159
+ onCancel: onCancel
160
+ }
161
+ }, /*#__PURE__*/_react["default"].createElement(StyledColorScaleSelector, null, /*#__PURE__*/_react["default"].createElement(_lazyTippy["default"], {
162
+ trigger: "click",
163
+ placement: "bottom-start",
164
+ appendTo: "parent",
165
+ interactive: true,
166
+ hideOnClick: !isEditingColorBreaks,
167
+ onCreate: setTippyInstance,
168
+ popperOptions: POPPER_OPTIONS,
169
+ render: function render(attrs) {
170
+ return /*#__PURE__*/_react["default"].createElement(DropdownWrapper, attrs, !dropdownSelectProps.disabled && /*#__PURE__*/_react["default"].createElement(_typeahead["default"], (0, _extends2["default"])({}, dropdownSelectProps, {
171
+ displayOption: displayOption
172
+ // @ts-ignore
173
+ ,
174
+ getOptionValue: getOptionValue,
175
+ onOptionSelected: onSelectScale,
176
+ customListComponent: ColorScaleSelectDropdown,
177
+ searchable: false,
178
+ showOptionsWhenEmpty: true
179
+ })));
180
+ }
181
+ }, /*#__PURE__*/_react["default"].createElement("div", {
182
+ className: "dropdown-select"
183
+ }, /*#__PURE__*/_react["default"].createElement(_dropdownSelect["default"], (0, _extends2["default"])({}, dropdownSelectProps, {
184
+ displayOption: displayOption,
185
+ value: dropdownSelectProps.selectedItems[0]
186
+ }))))));
187
+ };
188
+ return ColorScaleSelector;
189
+ }
190
+ var _default = exports["default"] = ColorScaleSelectorFactory;
191
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY29uc3RhbnRzIiwiX3V0aWxzIiwiX2NvbG9yQnJlYWtzUGFuZWwiLCJfZHJvcGRvd25TZWxlY3QiLCJfYWNjZXNzb3IiLCJfZHJvcGRvd25MaXN0IiwiX2xhenlUaXBweSIsIl90eXBlYWhlYWQiLCJfZXhjbHVkZWQiLCJfZXhjbHVkZWQyIiwiX3RlbXBsYXRlT2JqZWN0IiwiX3RlbXBsYXRlT2JqZWN0MiIsIl90ZW1wbGF0ZU9iamVjdDMiLCJfdGVtcGxhdGVPYmplY3Q0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiRHJvcGRvd25Qcm9wQ29udGV4dCIsIlJlYWN0IiwiY3JlYXRlQ29udGV4dCIsIlBPUFBFUl9PUFRJT05TIiwibW9kaWZpZXJzIiwibmFtZSIsIm9wdGlvbnMiLCJvZmZzZXQiLCJEcm9wZG93bkJvdHRvbSIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCJsaWdodCIsInRoZW1lIiwiZHJvcGRvd25MaXN0Qm9yZGVyVG9wTFQiLCJkcm9wZG93bkxpc3RCb3JkZXJUb3AiLCJTdHlsZWRTY2FsZVNlbGVjdERyb3Bkb3duIiwiZHJvcGRvd25MaXN0U2hhZG93IiwiRHJvcGRvd25XcmFwcGVyIiwiZHJvcGRvd25XcmFwcGVyWiIsImRyb3Bkb3duV2FwcGVyTWFyZ2luIiwiU3R5bGVkQ29sb3JTY2FsZVNlbGVjdG9yIiwiaGlkZVRpcHB5IiwidGlwcHlJbnN0YW5jZSIsImhpZGUiLCJDb2xvclNjYWxlU2VsZWN0b3JGYWN0b3J5IiwiZGVwcyIsIkNvbG9yQnJlYWtzUGFuZWxGYWN0b3J5IiwiQ29sb3JCcmVha3NQYW5lbCIsIkNvbG9yU2NhbGVTZWxlY3REcm9wZG93biIsImNyZWF0ZUVsZW1lbnQiLCJDb25zdW1lciIsImNvbnRleHQiLCJDb2xvclNjYWxlU2VsZWN0b3IiLCJfcmVmIiwiX2NvbG9yVUlDb25maWckY29sb3JSIiwibGF5ZXIiLCJmaWVsZCIsImRhdGFzZXQiLCJvblNlbGVjdCIsInNjYWxlVHlwZSIsImRvbWFpbiIsInJhbmdlIiwic2V0Q29sb3JVSSIsImNvbG9yVUlDb25maWciLCJkcm9wZG93blNlbGVjdFByb3BzIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzMiIsImRpc3BsYXlPcHRpb24iLCJBY2Nlc3NvciIsImdlbmVyYXRlT3B0aW9uVG9TdHJpbmdGb3IiLCJnZXRPcHRpb25WYWx1ZSIsInVzZU1lbW8iLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJzZXRUaXBweUluc3RhbmNlIiwiaXNFZGl0aW5nQ29sb3JCcmVha3MiLCJjb2xvclJhbmdlQ29uZmlnIiwiY3VzdG9tQnJlYWtzIiwiY29sb3JTY2FsZSIsImdldExheWVyQ29sb3JTY2FsZSIsImNvbG9yQnJlYWtzIiwiZ2V0TGVnZW5kT2ZTY2FsZSIsInNjYWxlIiwiZmllbGRUeXBlIiwidHlwZSIsIm9uU2VsZWN0U2NhbGUiLCJ1c2VDYWxsYmFjayIsInZhbCIsIlNDQUxFX1RZUEVTIiwiY3VzdG9tIiwiY3VzdG9tUGFsZXR0ZSIsImNhdGVnb3J5IiwiY29sb3JzIiwiY29sb3JNYXAiLCJjb2xvckJyZWFrc1RvQ29sb3JNYXAiLCJ1bmRlZmluZWQiLCJzaG93Q29sb3JDaGFydCIsImhhc0NvbG9yTWFwIiwiXyIsIm5ld1JhbmdlIiwib25BcHBseSIsIm9uQ2FuY2VsIiwiaXNDdXN0b21CcmVha3MiLCJQcm92aWRlciIsInZhbHVlIiwiY29sb3JGaWVsZCIsIm9uU2NhbGVDaGFuZ2UiLCJ0cmlnZ2VyIiwicGxhY2VtZW50IiwiYXBwZW5kVG8iLCJpbnRlcmFjdGl2ZSIsImhpZGVPbkNsaWNrIiwib25DcmVhdGUiLCJwb3BwZXJPcHRpb25zIiwicmVuZGVyIiwiYXR0cnMiLCJkaXNhYmxlZCIsIl9leHRlbmRzMiIsIm9uT3B0aW9uU2VsZWN0ZWQiLCJjdXN0b21MaXN0Q29tcG9uZW50Iiwic2VhcmNoYWJsZSIsInNob3dPcHRpb25zV2hlbkVtcHR5IiwiY2xhc3NOYW1lIiwic2VsZWN0ZWRJdGVtcyIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zaWRlLXBhbmVsL2xheWVyLXBhbmVsL2NvbG9yLXNjYWxlLXNlbGVjdG9yLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHt1c2VDYWxsYmFjaywgdXNlTWVtbywgdXNlU3RhdGV9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuXG5pbXBvcnQge1NDQUxFX1RZUEVTfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5pbXBvcnQge0xheWVyLCBWaXN1YWxDaGFubmVsRG9tYWlufSBmcm9tICdAa2VwbGVyLmdsL2xheWVycyc7XG5pbXBvcnQge0tlcGxlclRhYmxlfSBmcm9tICdAa2VwbGVyLmdsL3RhYmxlJztcbmltcG9ydCB7Q29sb3JSYW5nZSwgQ29sb3JVSSwgRmllbGQsIE5lc3RlZFBhcnRpYWx9IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuaW1wb3J0IHtcbiAgY29sb3JCcmVha3NUb0NvbG9yTWFwLFxuICBnZXRMYXllckNvbG9yU2NhbGUsXG4gIGdldExlZ2VuZE9mU2NhbGUsXG4gIGhhc0NvbG9yTWFwXG59IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuXG5pbXBvcnQgQ29sb3JCcmVha3NQYW5lbEZhY3RvcnksIHtDb2xvckJyZWFrc1BhbmVsUHJvcHN9IGZyb20gJy4vY29sb3ItYnJlYWtzLXBhbmVsJztcbmltcG9ydCB7U2V0Q29sb3JVSUZ1bmN9IGZyb20gJy4vY3VzdG9tLXBhbGV0dGUnO1xuaW1wb3J0IERyb3Bkb3duU2VsZWN0IGZyb20gJy4uLy4uL2NvbW1vbi9pdGVtLXNlbGVjdG9yL2Ryb3Bkb3duLXNlbGVjdCc7XG5pbXBvcnQgQWNjZXNzb3IgZnJvbSAnLi4vLi4vY29tbW9uL2l0ZW0tc2VsZWN0b3IvYWNjZXNzb3InO1xuaW1wb3J0IERyb3Bkb3duTGlzdCBmcm9tICcuLi8uLi9jb21tb24vaXRlbS1zZWxlY3Rvci9kcm9wZG93bi1saXN0JztcbmltcG9ydCBMYXp5VGlwcHkgZnJvbSAnLi4vLi4vbWFwL2xhenktdGlwcHknO1xuaW1wb3J0IFR5cGVhaGVhZCBmcm9tICcuLi8uLi9jb21tb24vaXRlbS1zZWxlY3Rvci90eXBlYWhlYWQnO1xuXG50eXBlIFRpcHB5SW5zdGFuY2UgPSBhbnk7IC8vICd0aXBweS1qcydcblxuZXhwb3J0IHR5cGUgU2NhbGVPcHRpb24gPSB7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgT25TZWxlY3RGdW5jID0gKHY6IHN0cmluZywgdmlzQ29uZmc/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+KSA9PiB2b2lkO1xuXG5leHBvcnQgdHlwZSBDb250ZXh0UHJvcHMgPSBDb2xvckJyZWFrc1BhbmVsUHJvcHM7XG5cbmV4cG9ydCB0eXBlIENvbG9yU2NhbGVTZWxlY3RvclByb3BzID0ge1xuICBsYXllcjogTGF5ZXI7XG4gIGZpZWxkOiBGaWVsZDtcbiAgZGF0YXNldDogS2VwbGVyVGFibGU7XG4gIHNjYWxlVHlwZTogc3RyaW5nO1xuICBkb21haW46IFZpc3VhbENoYW5uZWxEb21haW47XG4gIHJhbmdlOiBDb2xvclJhbmdlO1xuICBvblNlbGVjdDogT25TZWxlY3RGdW5jO1xuICBzZXRDb2xvclVJOiBTZXRDb2xvclVJRnVuYztcbiAgY29sb3JVSUNvbmZpZzogQ29sb3JVSTtcbiAgb3B0aW9uczogU2NhbGVPcHRpb25bXTtcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICBzZWxlY3RlZEl0ZW1zOiBTY2FsZU9wdGlvbltdO1xuICBtdWx0aVNlbGVjdDogYm9vbGVhbjtcbiAgc2VhcmNoYWJsZTogYm9vbGVhbjtcbiAgZGlzcGxheU9wdGlvbjogc3RyaW5nO1xuICBnZXRPcHRpb25WYWx1ZTogc3RyaW5nO1xufTtcblxuY29uc3QgRHJvcGRvd25Qcm9wQ29udGV4dCA9IFJlYWN0LmNyZWF0ZUNvbnRleHQoe30pO1xuY29uc3QgUE9QUEVSX09QVElPTlMgPSB7XG4gIG1vZGlmaWVyczogW1xuICAgIC8vIHplcm8gb2Zmc2V0cyBzaW5jZSB0aGV5IGFyZSBhbHJlYWR5IGFkZGVkIGluIFZlcnRpY2FsVG9vbGJhclxuICAgIHtuYW1lOiAnb2Zmc2V0Jywgb3B0aW9uczoge29mZnNldDogWzAsIDBdfX1cbiAgXVxufTtcblxuY29uc3QgRHJvcGRvd25Cb3R0b20gPSBzdHlsZWQuZGl2PHtsaWdodD86IGJvb2xlYW59PmBcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkXG4gICAgJHtwcm9wcyA9PlxuICAgICAgcHJvcHMubGlnaHQgPyBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RCb3JkZXJUb3BMVCA6IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEJvcmRlclRvcH07XG5gO1xuXG5jb25zdCBTdHlsZWRTY2FsZVNlbGVjdERyb3Bkb3duID0gc3R5bGVkLmRpdmBcbiAgYm94LXNoYWRvdzogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RTaGFkb3d9O1xuICAubGlzdC1zZWxlY3RvciB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG4gIC5saXN0X19pdGVtIHtcbiAgICBwYWRkaW5nOiA0cHggOXB4O1xuICB9XG5gO1xuY29uc3QgRHJvcGRvd25XcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgYm9yZGVyOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bldyYXBwZXJafTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duV2FwcGVyTWFyZ2lufXB4O1xuYDtcblxuY29uc3QgU3R5bGVkQ29sb3JTY2FsZVNlbGVjdG9yID0gc3R5bGVkLmRpdmBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAudHlwZWFoZWFkIHtcbiAgICAvLyBhZGRzIHBhZGRpbmcgdG8gYm90dG9tIG9mIGRyb3Bkb3duXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuICBbZGF0YS10aXBweS1yb290XSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbmA7XG5cbmZ1bmN0aW9uIGhpZGVUaXBweSh0aXBweUluc3RhbmNlKSB7XG4gIGlmICh0aXBweUluc3RhbmNlKSB7XG4gICAgdGlwcHlJbnN0YW5jZS5oaWRlKCk7XG4gIH1cbn1cbkNvbG9yU2NhbGVTZWxlY3RvckZhY3RvcnkuZGVwcyA9IFtDb2xvckJyZWFrc1BhbmVsRmFjdG9yeV07XG5cbmZ1bmN0aW9uIENvbG9yU2NhbGVTZWxlY3RvckZhY3RvcnkoXG4gIENvbG9yQnJlYWtzUGFuZWw6IFJldHVyblR5cGU8dHlwZW9mIENvbG9yQnJlYWtzUGFuZWxGYWN0b3J5PlxuKTogUmVhY3QuRkM8Q29sb3JTY2FsZVNlbGVjdG9yUHJvcHM+IHtcbiAgY29uc3QgQ29sb3JTY2FsZVNlbGVjdERyb3Bkb3duID0gcHJvcHMgPT4gKFxuICAgIDxTdHlsZWRTY2FsZVNlbGVjdERyb3Bkb3duPlxuICAgICAgPERyb3Bkb3duTGlzdCB7Li4ucHJvcHN9IC8+XG4gICAgICA8RHJvcGRvd25Qcm9wQ29udGV4dC5Db25zdW1lcj5cbiAgICAgICAgeyhjb250ZXh0OiBhbnkpID0+IChcbiAgICAgICAgICA8RHJvcGRvd25Cb3R0b20+XG4gICAgICAgICAgICA8Q29sb3JCcmVha3NQYW5lbCB7Li4uY29udGV4dH0gLz5cbiAgICAgICAgICA8L0Ryb3Bkb3duQm90dG9tPlxuICAgICAgICApfVxuICAgICAgPC9Ecm9wZG93blByb3BDb250ZXh0LkNvbnN1bWVyPlxuICAgIDwvU3R5bGVkU2NhbGVTZWxlY3REcm9wZG93bj5cbiAgKTtcblxuICBjb25zdCBDb2xvclNjYWxlU2VsZWN0b3I6IFJlYWN0LkZDPENvbG9yU2NhbGVTZWxlY3RvclByb3BzPiA9ICh7XG4gICAgbGF5ZXIsXG4gICAgZmllbGQsXG4gICAgZGF0YXNldCxcbiAgICBvblNlbGVjdCxcbiAgICBzY2FsZVR5cGUsXG4gICAgZG9tYWluLFxuICAgIHJhbmdlLFxuICAgIHNldENvbG9yVUksXG4gICAgY29sb3JVSUNvbmZpZyxcbiAgICAuLi5kcm9wZG93blNlbGVjdFByb3BzXG4gIH0pID0+IHtcbiAgICBjb25zdCBkaXNwbGF5T3B0aW9uID0gQWNjZXNzb3IuZ2VuZXJhdGVPcHRpb25Ub1N0cmluZ0Zvcihkcm9wZG93blNlbGVjdFByb3BzLmRpc3BsYXlPcHRpb24pO1xuICAgIGNvbnN0IGdldE9wdGlvblZhbHVlID0gdXNlTWVtbyhcbiAgICAgICgpID0+IEFjY2Vzc29yLmdlbmVyYXRlT3B0aW9uVG9TdHJpbmdGb3IoZHJvcGRvd25TZWxlY3RQcm9wcy5nZXRPcHRpb25WYWx1ZSksXG4gICAgICBbZHJvcGRvd25TZWxlY3RQcm9wcy5nZXRPcHRpb25WYWx1ZV1cbiAgICApO1xuICAgIGNvbnN0IFt0aXBweUluc3RhbmNlLCBzZXRUaXBweUluc3RhbmNlXSA9IHVzZVN0YXRlPFRpcHB5SW5zdGFuY2U+KCk7XG4gICAgY29uc3QgaXNFZGl0aW5nQ29sb3JCcmVha3MgPSBjb2xvclVJQ29uZmlnPy5jb2xvclJhbmdlQ29uZmlnPy5jdXN0b21CcmVha3M7XG4gICAgY29uc3QgY29sb3JTY2FsZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBnZXRMYXllckNvbG9yU2NhbGUoe1xuICAgICAgICAgIHJhbmdlLFxuICAgICAgICAgIGRvbWFpbixcbiAgICAgICAgICBzY2FsZVR5cGUsXG4gICAgICAgICAgbGF5ZXJcbiAgICAgICAgfSksXG4gICAgICBbcmFuZ2UsIGRvbWFpbiwgc2NhbGVUeXBlLCBsYXllcl1cbiAgICApO1xuXG4gICAgY29uc3QgY29sb3JCcmVha3MgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAgY29sb3JTY2FsZSA/IGdldExlZ2VuZE9mU2NhbGUoe3NjYWxlOiBjb2xvclNjYWxlLCBzY2FsZVR5cGUsIGZpZWxkVHlwZTogZmllbGQudHlwZX0pIDogbnVsbCxcbiAgICAgIFtjb2xvclNjYWxlLCBzY2FsZVR5cGUsIGZpZWxkLnR5cGVdXG4gICAgKTtcblxuICAgIGNvbnN0IG9uU2VsZWN0U2NhbGUgPSB1c2VDYWxsYmFjayhcbiAgICAgIHZhbCA9PiB7XG4gICAgICAgIC8vIGhpZ2hsaWdodCBzZWxlY3RlZCBvcHRpb25cbiAgICAgICAgaWYgKGdldE9wdGlvblZhbHVlKHZhbCkgPT09IFNDQUxFX1RZUEVTLmN1c3RvbSkge1xuICAgICAgICAgIC8vIHVwZGF0ZSBjdXN0b20gYnJlYWtzXG4gICAgICAgICAgY29uc3QgY3VzdG9tUGFsZXR0ZTogTmVzdGVkUGFydGlhbDxDb2xvclJhbmdlPiA9IHtcbiAgICAgICAgICAgIG5hbWU6ICdjb2xvci5jdXN0b21QYWxldHRlJyxcbiAgICAgICAgICAgIHR5cGU6ICdjdXN0b20nLFxuICAgICAgICAgICAgY2F0ZWdvcnk6ICdDdXN0b20nLFxuICAgICAgICAgICAgY29sb3JzOiByYW5nZS5jb2xvcnMsXG4gICAgICAgICAgICBjb2xvck1hcDogcmFuZ2UuY29sb3JNYXBcbiAgICAgICAgICAgICAgPyByYW5nZS5jb2xvck1hcFxuICAgICAgICAgICAgICA6IGNvbG9yQnJlYWtzXG4gICAgICAgICAgICAgID8gY29sb3JCcmVha3NUb0NvbG9yTWFwKGNvbG9yQnJlYWtzKVxuICAgICAgICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgICAgIH07XG4gICAgICAgICAgc2V0Q29sb3JVSSh7XG4gICAgICAgICAgICBzaG93Q29sb3JDaGFydDogdHJ1ZSxcbiAgICAgICAgICAgIGNvbG9yUmFuZ2VDb25maWc6IHtcbiAgICAgICAgICAgICAgY3VzdG9tQnJlYWtzOiB0cnVlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY3VzdG9tUGFsZXR0ZVxuICAgICAgICAgIH0pO1xuICAgICAgICAgIG9uU2VsZWN0KFNDQUxFX1RZUEVTLmN1c3RvbSwgY3VzdG9tUGFsZXR0ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gbm90IGN1c3RvbVxuICAgICAgICAgIGlmIChpc0VkaXRpbmdDb2xvckJyZWFrcykge1xuICAgICAgICAgICAgc2V0Q29sb3JVSSh7XG4gICAgICAgICAgICAgIGNvbG9yUmFuZ2VDb25maWc6IHtcbiAgICAgICAgICAgICAgICBjdXN0b21CcmVha3M6IGZhbHNlXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoaGFzQ29sb3JNYXAocmFuZ2UpKSB7XG4gICAgICAgICAgICAvLyByZW1vdmUgY3VzdG9tIGJyZWFrc1xuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXG4gICAgICAgICAgICBjb25zdCB7Y29sb3JNYXA6IF8sIC4uLm5ld1JhbmdlfSA9IHJhbmdlO1xuICAgICAgICAgICAgb25TZWxlY3QoZ2V0T3B0aW9uVmFsdWUodmFsKSwgbmV3UmFuZ2UpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvblNlbGVjdChnZXRPcHRpb25WYWx1ZSh2YWwpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbc2V0Q29sb3JVSSwgb25TZWxlY3QsIHJhbmdlLCBnZXRPcHRpb25WYWx1ZSwgaXNFZGl0aW5nQ29sb3JCcmVha3MsIGNvbG9yQnJlYWtzXVxuICAgICk7XG5cbiAgICBjb25zdCBvbkFwcGx5ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgb25TZWxlY3QoU0NBTEVfVFlQRVMuY3VzdG9tLCBjb2xvclVJQ29uZmlnLmN1c3RvbVBhbGV0dGUpO1xuICAgICAgaGlkZVRpcHB5KHRpcHB5SW5zdGFuY2UpO1xuICAgIH0sIFtvblNlbGVjdCwgY29sb3JVSUNvbmZpZy5jdXN0b21QYWxldHRlLCB0aXBweUluc3RhbmNlXSk7XG5cbiAgICBjb25zdCBvbkNhbmNlbCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgIGhpZGVUaXBweSh0aXBweUluc3RhbmNlKTtcbiAgICB9LCBbdGlwcHlJbnN0YW5jZV0pO1xuXG4gICAgY29uc3QgaXNDdXN0b21CcmVha3MgPSBzY2FsZVR5cGUgPT09IFNDQUxFX1RZUEVTLmN1c3RvbTtcblxuICAgIHJldHVybiAoXG4gICAgICA8RHJvcGRvd25Qcm9wQ29udGV4dC5Qcm92aWRlclxuICAgICAgICB2YWx1ZT17e1xuICAgICAgICAgIHNldENvbG9yVUksXG4gICAgICAgICAgY29sb3JGaWVsZDogZmllbGQsXG4gICAgICAgICAgZGF0YXNldCxcbiAgICAgICAgICBjb2xvclVJQ29uZmlnLFxuICAgICAgICAgIGNvbG9yQnJlYWtzLFxuICAgICAgICAgIGlzQ3VzdG9tQnJlYWtzLFxuICAgICAgICAgIG9uU2NhbGVDaGFuZ2U6IG9uU2VsZWN0LFxuICAgICAgICAgIG9uQXBwbHksXG4gICAgICAgICAgb25DYW5jZWxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZENvbG9yU2NhbGVTZWxlY3Rvcj5cbiAgICAgICAgICA8TGF6eVRpcHB5XG4gICAgICAgICAgICB0cmlnZ2VyPVwiY2xpY2tcIlxuICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tLXN0YXJ0XCJcbiAgICAgICAgICAgIGFwcGVuZFRvPVwicGFyZW50XCJcbiAgICAgICAgICAgIGludGVyYWN0aXZlPXt0cnVlfVxuICAgICAgICAgICAgaGlkZU9uQ2xpY2s9eyFpc0VkaXRpbmdDb2xvckJyZWFrc31cbiAgICAgICAgICAgIG9uQ3JlYXRlPXtzZXRUaXBweUluc3RhbmNlfVxuICAgICAgICAgICAgcG9wcGVyT3B0aW9ucz17UE9QUEVSX09QVElPTlN9XG4gICAgICAgICAgICByZW5kZXI9e2F0dHJzID0+IChcbiAgICAgICAgICAgICAgPERyb3Bkb3duV3JhcHBlciB7Li4uYXR0cnN9PlxuICAgICAgICAgICAgICAgIHsvKkB0cy1pZ25vcmUqL31cbiAgICAgICAgICAgICAgICB7IWRyb3Bkb3duU2VsZWN0UHJvcHMuZGlzYWJsZWQgJiYgKFxuICAgICAgICAgICAgICAgICAgPFR5cGVhaGVhZFxuICAgICAgICAgICAgICAgICAgICB7Li4uZHJvcGRvd25TZWxlY3RQcm9wc31cbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheU9wdGlvbj17ZGlzcGxheU9wdGlvbn1cbiAgICAgICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICAgICAgICBnZXRPcHRpb25WYWx1ZT17Z2V0T3B0aW9uVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgIG9uT3B0aW9uU2VsZWN0ZWQ9e29uU2VsZWN0U2NhbGV9XG4gICAgICAgICAgICAgICAgICAgIGN1c3RvbUxpc3RDb21wb25lbnQ9e0NvbG9yU2NhbGVTZWxlY3REcm9wZG93bn1cbiAgICAgICAgICAgICAgICAgICAgc2VhcmNoYWJsZT17ZmFsc2V9XG4gICAgICAgICAgICAgICAgICAgIHNob3dPcHRpb25zV2hlbkVtcHR5XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvRHJvcGRvd25XcmFwcGVyPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRyb3Bkb3duLXNlbGVjdFwiPlxuICAgICAgICAgICAgICB7LypAdHMtaWdub3JlKi99XG4gICAgICAgICAgICAgIDxEcm9wZG93blNlbGVjdFxuICAgICAgICAgICAgICAgIHsuLi5kcm9wZG93blNlbGVjdFByb3BzfVxuICAgICAgICAgICAgICAgIGRpc3BsYXlPcHRpb249e2Rpc3BsYXlPcHRpb259XG4gICAgICAgICAgICAgICAgdmFsdWU9e2Ryb3Bkb3duU2VsZWN0UHJvcHMuc2VsZWN0ZWRJdGVtc1swXX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvTGF6eVRpcHB5PlxuICAgICAgICA8L1N0eWxlZENvbG9yU2NhbGVTZWxlY3Rvcj5cbiAgICAgIDwvRHJvcGRvd25Qcm9wQ29udGV4dC5Qcm92aWRlcj5cbiAgICApO1xuICB9O1xuICByZXR1cm4gQ29sb3JTY2FsZVNlbGVjdG9yO1xufVxuZXhwb3J0IGRlZmF1bHQgQ29sb3JTY2FsZVNlbGVjdG9yRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsaUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUVBLElBQUFHLFVBQUEsR0FBQUgsT0FBQTtBQUlBLElBQUFJLE1BQUEsR0FBQUosT0FBQTtBQU9BLElBQUFLLGlCQUFBLEdBQUFILHNCQUFBLENBQUFGLE9BQUE7QUFFQSxJQUFBTSxlQUFBLEdBQUFKLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBTyxTQUFBLEdBQUFMLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBUSxhQUFBLEdBQUFOLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBUyxVQUFBLEdBQUFQLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBVSxVQUFBLEdB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
@@ -0,0 +1,34 @@
1
+ import { ColorRange } from '@kepler.gl/types';
2
+ import { ColorUI, NestedPartial, RGBAColor, RGBColor } from '@kepler.gl/types';
3
+ import { ComponentType } from 'react';
4
+ import RangeSliderFactory from '../../common/range-slider';
5
+ import ColorRangeSelectorFactory from './color-range-selector';
6
+ declare type ColorSelectorInputProps = {
7
+ active: boolean;
8
+ disabled?: boolean;
9
+ inputTheme?: string;
10
+ };
11
+ export declare type ColorSet = {
12
+ selectedColor: RGBColor | RGBAColor | ColorRange;
13
+ setColor: (v: RGBColor | RGBAColor | ColorRange) => void;
14
+ isRange?: boolean;
15
+ label?: string;
16
+ };
17
+ declare type ColorSelectorProps = {
18
+ colorSets: ColorSet[];
19
+ colorUI?: ColorUI;
20
+ inputTheme?: string;
21
+ disabled?: boolean;
22
+ useOpacity?: boolean;
23
+ setColorUI?: (newConfig: NestedPartial<ColorUI>) => void;
24
+ };
25
+ export declare const ColorBlock: import("styled-components").StyledComponent<"div", any, {
26
+ backgroundcolor: RGBColor;
27
+ }, never>;
28
+ export declare const ColorSelectorInput: import("styled-components").StyledComponent<"div", any, ColorSelectorInputProps, never>;
29
+ export declare const InputBoxContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
30
+ declare function ColorSelectorFactory(ColorRangeSelector: any, RangeSlider: any): ComponentType<ColorSelectorProps>;
31
+ declare namespace ColorSelectorFactory {
32
+ var deps: (typeof RangeSliderFactory | typeof ColorRangeSelectorFactory)[];
33
+ }
34
+ export default ColorSelectorFactory;