@kepler.gl/components 3.0.0-alpha.0 → 3.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (530) hide show
  1. package/dist/bottom-widget.d.ts +11 -38
  2. package/dist/bottom-widget.js +43 -99
  3. package/dist/common/action-panel.d.ts +2 -2
  4. package/dist/common/action-panel.js +4 -4
  5. package/dist/common/animation-control/animation-control.d.ts +19 -18
  6. package/dist/common/animation-control/animation-control.js +59 -81
  7. package/dist/common/animation-control/animation-controller.d.ts +6 -2
  8. package/dist/common/animation-control/animation-controller.js +50 -36
  9. package/dist/common/animation-control/animation-speed-slider.js +2 -2
  10. package/dist/common/animation-control/animation-window-control.js +1 -1
  11. package/dist/common/animation-control/floating-time-display.d.ts +2 -2
  12. package/dist/common/animation-control/floating-time-display.js +2 -2
  13. package/dist/common/animation-control/play-control.d.ts +2 -2
  14. package/dist/common/animation-control/play-control.js +1 -1
  15. package/dist/common/animation-control/playback-controls.d.ts +7 -7
  16. package/dist/common/animation-control/playback-controls.js +6 -6
  17. package/dist/common/animation-control/reset-control.d.ts +2 -2
  18. package/dist/common/animation-control/reset-control.js +1 -1
  19. package/dist/common/animation-control/speed-control.d.ts +2 -2
  20. package/dist/common/animation-control/speed-control.js +2 -2
  21. package/dist/common/animation-control/window-action-control.d.ts +2 -2
  22. package/dist/common/animation-control/window-action-control.js +1 -1
  23. package/dist/common/checkbox.d.ts +2 -2
  24. package/dist/common/checkbox.js +3 -3
  25. package/dist/common/color-legend.d.ts +3 -3
  26. package/dist/common/color-legend.js +11 -17
  27. package/dist/common/data-table/button.d.ts +1 -1
  28. package/dist/common/data-table/button.js +2 -2
  29. package/dist/common/data-table/canvas.js +2 -2
  30. package/dist/common/data-table/cell-size.js +44 -13
  31. package/dist/common/data-table/display-format.d.ts +25 -0
  32. package/dist/common/data-table/display-format.js +169 -0
  33. package/dist/common/data-table/grid.d.ts +5 -2
  34. package/dist/common/data-table/grid.js +45 -5
  35. package/dist/common/data-table/header-cell.d.ts +4 -1
  36. package/dist/common/data-table/header-cell.js +66 -29
  37. package/dist/common/data-table/index.d.ts +27 -34
  38. package/dist/common/data-table/index.js +148 -62
  39. package/dist/common/data-table/option-dropdown.d.ts +17 -3
  40. package/dist/common/data-table/option-dropdown.js +86 -13
  41. package/dist/common/dataset-label.d.ts +2 -2
  42. package/dist/common/dataset-label.js +3 -3
  43. package/dist/common/error-boundary.d.ts +6 -2
  44. package/dist/common/error-boundary.js +2 -2
  45. package/dist/common/field-selector.d.ts +9 -3
  46. package/dist/common/field-selector.js +3 -3
  47. package/dist/common/field-token.d.ts +8 -0
  48. package/dist/common/field-token.js +7 -3
  49. package/dist/common/file-uploader/file-drop.d.ts +3 -2
  50. package/dist/common/file-uploader/file-drop.js +2 -2
  51. package/dist/common/file-uploader/file-upload-progress.js +2 -2
  52. package/dist/common/file-uploader/file-upload.d.ts +2 -6
  53. package/dist/common/file-uploader/file-upload.js +2 -2
  54. package/dist/common/file-uploader/upload-button.d.ts +1 -0
  55. package/dist/common/file-uploader/upload-button.js +2 -2
  56. package/dist/common/histogram-plot.d.ts +2 -2
  57. package/dist/common/histogram-plot.js +18 -12
  58. package/dist/common/icon-button.d.ts +2 -1
  59. package/dist/common/icon-button.js +2 -2
  60. package/dist/common/icons/add.d.ts +2 -2
  61. package/dist/common/icons/add.js +2 -2
  62. package/dist/common/icons/anchor_window.d.ts +2 -2
  63. package/dist/common/icons/anchor_window.js +2 -2
  64. package/dist/common/icons/arrow-down-alt.d.ts +2 -2
  65. package/dist/common/icons/arrow-down-alt.js +2 -2
  66. package/dist/common/icons/arrow-down-solid.d.ts +2 -2
  67. package/dist/common/icons/arrow-down-solid.js +2 -2
  68. package/dist/common/icons/arrow-down.d.ts +2 -2
  69. package/dist/common/icons/arrow-down.js +2 -2
  70. package/dist/common/icons/arrow-left.d.ts +2 -2
  71. package/dist/common/icons/arrow-left.js +2 -2
  72. package/dist/common/icons/arrow-right.d.ts +2 -2
  73. package/dist/common/icons/arrow-right.js +2 -2
  74. package/dist/common/icons/arrow-up-alt.d.ts +2 -2
  75. package/dist/common/icons/arrow-up-alt.js +2 -2
  76. package/dist/common/icons/arrow-up-solid.d.ts +2 -2
  77. package/dist/common/icons/arrow-up-solid.js +2 -2
  78. package/dist/common/icons/arrow-up.d.ts +2 -2
  79. package/dist/common/icons/arrow-up.js +2 -2
  80. package/dist/common/icons/base.d.ts +1 -1
  81. package/dist/common/icons/base.js +2 -2
  82. package/dist/common/icons/bug.d.ts +2 -2
  83. package/dist/common/icons/bug.js +2 -2
  84. package/dist/common/icons/cancel.d.ts +2 -2
  85. package/dist/common/icons/cancel.js +2 -2
  86. package/dist/common/icons/checkmark.d.ts +2 -2
  87. package/dist/common/icons/checkmark.js +2 -2
  88. package/dist/common/icons/clipboard.d.ts +2 -2
  89. package/dist/common/icons/clipboard.js +2 -2
  90. package/dist/common/icons/clock.d.ts +2 -2
  91. package/dist/common/icons/clock.js +2 -2
  92. package/dist/common/icons/close.d.ts +2 -2
  93. package/dist/common/icons/close.js +2 -2
  94. package/dist/common/icons/code-alt.d.ts +2 -2
  95. package/dist/common/icons/code-alt.js +2 -2
  96. package/dist/common/icons/copy.d.ts +2 -2
  97. package/dist/common/icons/copy.js +2 -2
  98. package/dist/common/icons/crosshairs.d.ts +2 -2
  99. package/dist/common/icons/crosshairs.js +2 -2
  100. package/dist/common/icons/cube-3d.d.ts +2 -2
  101. package/dist/common/icons/cube-3d.js +2 -2
  102. package/dist/common/icons/cursor-click.d.ts +2 -2
  103. package/dist/common/icons/cursor-click.js +2 -2
  104. package/dist/common/icons/cursor-point.d.ts +14 -0
  105. package/dist/common/icons/cursor-point.js +89 -0
  106. package/dist/common/icons/data-table.d.ts +2 -2
  107. package/dist/common/icons/data-table.js +2 -2
  108. package/dist/common/icons/db.d.ts +2 -2
  109. package/dist/common/icons/db.js +2 -2
  110. package/dist/common/icons/delete.d.ts +2 -2
  111. package/dist/common/icons/delete.js +2 -2
  112. package/dist/common/icons/docs.d.ts +2 -2
  113. package/dist/common/icons/docs.js +2 -2
  114. package/dist/common/icons/drag-n-drop.d.ts +2 -2
  115. package/dist/common/icons/drag-n-drop.js +2 -2
  116. package/dist/common/icons/draw-polygon.d.ts +2 -2
  117. package/dist/common/icons/draw-polygon.js +2 -2
  118. package/dist/common/icons/email.d.ts +2 -2
  119. package/dist/common/icons/email.js +2 -2
  120. package/dist/common/icons/expand.d.ts +2 -2
  121. package/dist/common/icons/expand.js +2 -2
  122. package/dist/common/icons/eye-seen.d.ts +2 -2
  123. package/dist/common/icons/eye-seen.js +2 -2
  124. package/dist/common/icons/eye-unseen.d.ts +2 -2
  125. package/dist/common/icons/eye-unseen.js +2 -2
  126. package/dist/common/icons/file-type.d.ts +2 -2
  127. package/dist/common/icons/file-type.js +2 -2
  128. package/dist/common/icons/file.d.ts +2 -2
  129. package/dist/common/icons/file.js +2 -2
  130. package/dist/common/icons/files.d.ts +1 -1
  131. package/dist/common/icons/files.js +2 -2
  132. package/dist/common/icons/filter-funnel.d.ts +2 -2
  133. package/dist/common/icons/filter-funnel.js +2 -2
  134. package/dist/common/icons/free-window.d.ts +2 -2
  135. package/dist/common/icons/free-window.js +2 -2
  136. package/dist/common/icons/gear.d.ts +2 -2
  137. package/dist/common/icons/gear.js +2 -2
  138. package/dist/common/icons/hash.d.ts +2 -2
  139. package/dist/common/icons/hash.js +2 -2
  140. package/dist/common/icons/histogram.d.ts +1 -1
  141. package/dist/common/icons/histogram.js +2 -2
  142. package/dist/common/icons/index.d.ts +1 -0
  143. package/dist/common/icons/index.js +10 -2
  144. package/dist/common/icons/info.d.ts +2 -2
  145. package/dist/common/icons/info.js +2 -2
  146. package/dist/common/icons/layers.d.ts +2 -2
  147. package/dist/common/icons/layers.js +2 -2
  148. package/dist/common/icons/left-arrow.d.ts +2 -2
  149. package/dist/common/icons/left-arrow.js +2 -2
  150. package/dist/common/icons/legend.d.ts +2 -2
  151. package/dist/common/icons/legend.js +2 -2
  152. package/dist/common/icons/line-chart.d.ts +2 -2
  153. package/dist/common/icons/line-chart.js +2 -2
  154. package/dist/common/icons/login.d.ts +2 -2
  155. package/dist/common/icons/login.js +2 -2
  156. package/dist/common/icons/logout.d.ts +2 -2
  157. package/dist/common/icons/logout.js +2 -2
  158. package/dist/common/icons/map-icon.d.ts +2 -2
  159. package/dist/common/icons/map-icon.js +2 -2
  160. package/dist/common/icons/map.d.ts +2 -2
  161. package/dist/common/icons/map.js +2 -2
  162. package/dist/common/icons/messages.d.ts +2 -2
  163. package/dist/common/icons/messages.js +2 -2
  164. package/dist/common/icons/minus.d.ts +2 -2
  165. package/dist/common/icons/minus.js +2 -2
  166. package/dist/common/icons/order-by-dataset.d.ts +2 -2
  167. package/dist/common/icons/order-by-dataset.js +2 -2
  168. package/dist/common/icons/order-by-list.d.ts +2 -2
  169. package/dist/common/icons/order-by-list.js +2 -2
  170. package/dist/common/icons/pause.d.ts +2 -2
  171. package/dist/common/icons/pause.js +2 -2
  172. package/dist/common/icons/picture.d.ts +1 -1
  173. package/dist/common/icons/picture.js +2 -2
  174. package/dist/common/icons/pin.d.ts +2 -2
  175. package/dist/common/icons/pin.js +2 -2
  176. package/dist/common/icons/play.d.ts +2 -2
  177. package/dist/common/icons/play.js +2 -2
  178. package/dist/common/icons/polygon.d.ts +2 -2
  179. package/dist/common/icons/polygon.js +2 -2
  180. package/dist/common/icons/rectangle.d.ts +2 -2
  181. package/dist/common/icons/rectangle.js +2 -2
  182. package/dist/common/icons/reduce.d.ts +2 -2
  183. package/dist/common/icons/reduce.js +2 -2
  184. package/dist/common/icons/reset.d.ts +2 -2
  185. package/dist/common/icons/reset.js +2 -2
  186. package/dist/common/icons/rocket.d.ts +2 -2
  187. package/dist/common/icons/rocket.js +2 -2
  188. package/dist/common/icons/save.d.ts +2 -2
  189. package/dist/common/icons/save.js +2 -2
  190. package/dist/common/icons/save2.d.ts +2 -2
  191. package/dist/common/icons/save2.js +2 -2
  192. package/dist/common/icons/search.d.ts +2 -2
  193. package/dist/common/icons/search.js +2 -2
  194. package/dist/common/icons/settings.d.ts +2 -2
  195. package/dist/common/icons/settings.js +2 -2
  196. package/dist/common/icons/share.d.ts +2 -2
  197. package/dist/common/icons/share.js +2 -2
  198. package/dist/common/icons/split.d.ts +2 -2
  199. package/dist/common/icons/split.js +2 -2
  200. package/dist/common/icons/square-select.d.ts +2 -2
  201. package/dist/common/icons/square-select.js +2 -2
  202. package/dist/common/icons/trash.d.ts +2 -2
  203. package/dist/common/icons/trash.js +2 -2
  204. package/dist/common/icons/vert-dots.d.ts +2 -2
  205. package/dist/common/icons/vert-dots.js +2 -2
  206. package/dist/common/icons/vert-three-dots.d.ts +2 -2
  207. package/dist/common/icons/vert-three-dots.js +2 -2
  208. package/dist/common/icons/warning-sign.d.ts +2 -2
  209. package/dist/common/icons/warning-sign.js +2 -2
  210. package/dist/common/icons/warning.d.ts +2 -2
  211. package/dist/common/icons/warning.js +2 -2
  212. package/dist/common/image-preview.d.ts +2 -2
  213. package/dist/common/image-preview.js +2 -2
  214. package/dist/common/index.d.ts +1 -1
  215. package/dist/common/index.js +8 -2
  216. package/dist/common/info-helper.d.ts +2 -2
  217. package/dist/common/info-helper.js +2 -2
  218. package/dist/common/item-selector/accessor.js +2 -2
  219. package/dist/common/item-selector/chickleted-input.js +2 -2
  220. package/dist/common/item-selector/dropdown-list.d.ts +28 -8
  221. package/dist/common/item-selector/dropdown-list.js +144 -25
  222. package/dist/common/item-selector/item-selector.d.ts +2 -3
  223. package/dist/common/item-selector/item-selector.js +7 -3
  224. package/dist/common/item-selector/typeahead.d.ts +16 -12
  225. package/dist/common/item-selector/typeahead.js +24 -13
  226. package/dist/common/line-chart.d.ts +2 -2
  227. package/dist/common/line-chart.js +2 -2
  228. package/dist/common/loading-spinner.js +2 -2
  229. package/dist/common/logo.d.ts +2 -2
  230. package/dist/common/logo.js +2 -2
  231. package/dist/common/map-layer-selector.d.ts +2 -2
  232. package/dist/common/map-layer-selector.js +3 -4
  233. package/dist/common/modal.d.ts +24 -11
  234. package/dist/common/modal.js +2 -2
  235. package/dist/common/portaled.d.ts +513 -2
  236. package/dist/common/portaled.js +2 -2
  237. package/dist/common/progress-bar.d.ts +2 -2
  238. package/dist/common/progress-bar.js +2 -2
  239. package/dist/common/range-brush.js +2 -2
  240. package/dist/common/range-plot.d.ts +6 -2
  241. package/dist/common/range-plot.js +4 -3
  242. package/dist/common/range-slider.d.ts +5 -1
  243. package/dist/common/range-slider.js +9 -3
  244. package/dist/common/slider/mouse-event.js +2 -2
  245. package/dist/common/slider/slider-bar-handle.d.ts +2 -2
  246. package/dist/common/slider/slider-bar-handle.js +2 -2
  247. package/dist/common/slider/slider-handle.d.ts +1 -1
  248. package/dist/common/slider/slider-handle.js +2 -2
  249. package/dist/common/slider/slider.d.ts +7 -5
  250. package/dist/common/slider/slider.js +8 -5
  251. package/dist/common/styled-components.d.ts +5 -0
  252. package/dist/common/styled-components.js +161 -47
  253. package/dist/common/switch.d.ts +3 -2
  254. package/dist/common/switch.js +2 -2
  255. package/dist/common/time-range-slider-time-title.d.ts +2 -2
  256. package/dist/common/time-range-slider-time-title.js +2 -2
  257. package/dist/common/time-range-slider.d.ts +6 -3
  258. package/dist/common/time-range-slider.js +33 -14
  259. package/dist/common/time-slider-marker.d.ts +1 -1
  260. package/dist/common/time-slider-marker.js +3 -3
  261. package/dist/common/timeline-slider.d.ts +13 -0
  262. package/dist/common/timeline-slider.js +173 -0
  263. package/dist/common/tippy-tooltip.d.ts +4 -2
  264. package/dist/common/tippy-tooltip.js +23 -11
  265. package/dist/common/toolbar-item.d.ts +1 -1
  266. package/dist/common/toolbar-item.js +6 -4
  267. package/dist/common/toolbar.js +2 -2
  268. package/dist/common/vertical-toolbar.js +2 -2
  269. package/dist/connect/keplergl-connect.d.ts +5 -1
  270. package/dist/connect/keplergl-connect.js +2 -2
  271. package/dist/connect/with-local-selector.js +2 -2
  272. package/dist/container.js +2 -2
  273. package/dist/context.js +4 -3
  274. package/dist/dnd-context.d.ts +13 -0
  275. package/dist/dnd-context.js +252 -0
  276. package/dist/editor/editor.d.ts +11 -10
  277. package/dist/editor/editor.js +97 -103
  278. package/dist/editor/feature-action-panel.d.ts +8 -6
  279. package/dist/editor/feature-action-panel.js +75 -22
  280. package/dist/effects/effect-configurator.d.ts +18 -0
  281. package/dist/effects/effect-configurator.js +237 -0
  282. package/dist/effects/effect-list.d.ts +15 -0
  283. package/dist/effects/effect-list.js +173 -0
  284. package/dist/effects/effect-manager.d.ts +21 -0
  285. package/dist/effects/effect-manager.js +129 -0
  286. package/dist/effects/effect-panel-header.d.ts +33 -0
  287. package/dist/effects/effect-panel-header.js +174 -0
  288. package/dist/effects/effect-panel.d.ts +24 -0
  289. package/dist/effects/effect-panel.js +162 -0
  290. package/dist/effects/effect-time-configurator.d.ts +13 -0
  291. package/dist/effects/effect-time-configurator.js +191 -0
  292. package/dist/effects/effect-type-selector.d.ts +11 -0
  293. package/dist/effects/effect-type-selector.js +117 -0
  294. package/dist/effects/side-panel-title.d.ts +7 -0
  295. package/dist/effects/side-panel-title.js +67 -0
  296. package/dist/filter-animation-controller.d.ts +17 -0
  297. package/dist/filter-animation-controller.js +91 -0
  298. package/dist/filters/components.js +2 -2
  299. package/dist/filters/filter-panels/filter-panel-with-field-select.js +3 -3
  300. package/dist/filters/filter-panels/multi-select-filter-panel.js +3 -3
  301. package/dist/filters/filter-panels/new-filter-panel.js +2 -2
  302. package/dist/filters/filter-panels/polygon-filter-panel.js +3 -3
  303. package/dist/filters/filter-panels/range-filter-panel.js +3 -3
  304. package/dist/filters/filter-panels/single-select-filter-panel.js +3 -3
  305. package/dist/filters/filter-panels/time-range-filter-panel.js +25 -8
  306. package/dist/filters/filter-panels/types.d.ts +2 -1
  307. package/dist/filters/filter-panels/types.js +1 -1
  308. package/dist/filters/index.d.ts +2 -0
  309. package/dist/filters/index.js +18 -2
  310. package/dist/filters/multi-select-filter.js +2 -2
  311. package/dist/filters/polygon-filter.js +14 -4
  312. package/dist/filters/range-filter.js +6 -4
  313. package/dist/filters/single-select-filter.js +2 -2
  314. package/dist/filters/time-range-filter.d.ts +2 -1
  315. package/dist/filters/time-range-filter.js +10 -7
  316. package/dist/filters/time-widget-top.d.ts +8 -0
  317. package/dist/filters/time-widget-top.js +123 -0
  318. package/dist/filters/time-widget.d.ts +3 -7
  319. package/dist/filters/time-widget.js +35 -92
  320. package/dist/filters/types.d.ts +7 -3
  321. package/dist/filters/types.js +1 -1
  322. package/dist/geocoder/geocoder.d.ts +1 -3
  323. package/dist/geocoder/geocoder.js +2 -2
  324. package/dist/geocoder-panel.d.ts +9 -3
  325. package/dist/geocoder-panel.js +30 -19
  326. package/dist/hooks/useFeatureFlags.js +1 -1
  327. package/dist/index.d.ts +68 -20
  328. package/dist/index.js +599 -99
  329. package/dist/injector.d.ts +4 -4
  330. package/dist/injector.js +2 -2
  331. package/dist/kepler-gl.d.ts +58 -17
  332. package/dist/kepler-gl.js +78 -31
  333. package/dist/layer-animation-controller.d.ts +13 -0
  334. package/dist/layer-animation-controller.js +76 -0
  335. package/dist/map/coordinate-info.js +2 -2
  336. package/dist/map/effects/effect-control.d.ts +16 -0
  337. package/dist/map/effects/effect-control.js +81 -0
  338. package/dist/map/layer-hover-info.d.ts +2 -2
  339. package/dist/map/layer-hover-info.js +26 -10
  340. package/dist/map/layer-selector-panel.js +2 -2
  341. package/dist/map/lazy-tippy.js +1 -1
  342. package/dist/map/locale-panel.d.ts +1 -1
  343. package/dist/map/locale-panel.js +2 -2
  344. package/dist/map/map-control-panel.d.ts +6 -0
  345. package/dist/map/map-control-panel.js +65 -9
  346. package/dist/map/map-control-toolbar.js +3 -3
  347. package/dist/map/map-control-tooltip.js +2 -2
  348. package/dist/map/map-control.d.ts +15 -7
  349. package/dist/map/map-control.js +6 -7
  350. package/dist/map/map-draw-panel.d.ts +2 -2
  351. package/dist/map/map-draw-panel.js +2 -9
  352. package/dist/map/map-legend-panel.d.ts +12 -1
  353. package/dist/map/map-legend-panel.js +27 -14
  354. package/dist/map/map-legend.d.ts +1 -1
  355. package/dist/map/map-legend.js +2 -2
  356. package/dist/map/map-popover-content.d.ts +28 -0
  357. package/dist/map/map-popover-content.js +51 -0
  358. package/dist/map/map-popover.d.ts +11 -14
  359. package/dist/map/map-popover.js +94 -15
  360. package/dist/map/split-map-button.js +2 -2
  361. package/dist/map/toggle-3d-button.js +2 -2
  362. package/dist/map-container.d.ts +33 -9
  363. package/dist/map-container.js +530 -161
  364. package/dist/map-view-state-context.d.ts +12 -0
  365. package/dist/map-view-state-context.js +116 -0
  366. package/dist/maps-layout.d.ts +5 -2
  367. package/dist/maps-layout.js +7 -3
  368. package/dist/modal-container.d.ts +2 -6
  369. package/dist/modal-container.js +8 -6
  370. package/dist/modals/add-map-style-modal.d.ts +1 -3
  371. package/dist/modals/add-map-style-modal.js +12 -6
  372. package/dist/modals/cloud-tile.js +2 -2
  373. package/dist/modals/data-table-modal.d.ts +11 -2
  374. package/dist/modals/data-table-modal.js +75 -24
  375. package/dist/modals/delete-data-modal.js +2 -2
  376. package/dist/modals/error-display.js +2 -2
  377. package/dist/modals/export-data-modal.d.ts +1 -3
  378. package/dist/modals/export-data-modal.js +2 -2
  379. package/dist/modals/export-image-modal.d.ts +1 -3
  380. package/dist/modals/export-image-modal.js +2 -2
  381. package/dist/modals/export-map-modal/components.d.ts +2 -2
  382. package/dist/modals/export-map-modal/components.js +2 -2
  383. package/dist/modals/export-map-modal/export-html-map.js +2 -2
  384. package/dist/modals/export-map-modal/export-json-map.d.ts +1 -1
  385. package/dist/modals/export-map-modal/export-json-map.js +2 -2
  386. package/dist/modals/export-map-modal/export-map-modal.d.ts +2 -2
  387. package/dist/modals/export-map-modal/export-map-modal.js +2 -2
  388. package/dist/modals/image-modal-container.d.ts +1 -0
  389. package/dist/modals/image-modal-container.js +2 -2
  390. package/dist/modals/load-data-modal.js +2 -2
  391. package/dist/modals/load-storage-map.js +2 -2
  392. package/dist/modals/loading-dialog.js +2 -2
  393. package/dist/modals/modal-dialog.js +2 -2
  394. package/dist/modals/modal-tabs.d.ts +1 -1
  395. package/dist/modals/modal-tabs.js +2 -2
  396. package/dist/modals/overwrite-map-modal.js +2 -2
  397. package/dist/modals/provider-modal-container.d.ts +3 -2
  398. package/dist/modals/provider-modal-container.js +2 -2
  399. package/dist/modals/save-map-modal.js +2 -2
  400. package/dist/modals/share-map-modal.js +2 -2
  401. package/dist/modals/status-panel.js +2 -2
  402. package/dist/modals/storage-map-viewer.d.ts +1 -1
  403. package/dist/modals/storage-map-viewer.js +2 -2
  404. package/dist/notification-panel/notification-item.d.ts +7 -10
  405. package/dist/notification-panel/notification-item.js +45 -13
  406. package/dist/notification-panel.js +2 -2
  407. package/dist/plot-container.js +20 -8
  408. package/dist/side-panel/add-by-dataset-button.d.ts +12 -0
  409. package/dist/side-panel/add-by-dataset-button.js +173 -0
  410. package/dist/side-panel/cloud-storage-dropdown.d.ts +2 -2
  411. package/dist/side-panel/cloud-storage-dropdown.js +2 -2
  412. package/dist/side-panel/common/dataset-info.d.ts +10 -3
  413. package/dist/side-panel/common/dataset-info.js +2 -2
  414. package/dist/side-panel/common/dataset-tag.d.ts +15 -1
  415. package/dist/side-panel/common/dataset-tag.js +14 -11
  416. package/dist/side-panel/common/dataset-title.d.ts +16 -2
  417. package/dist/side-panel/common/dataset-title.js +71 -105
  418. package/dist/side-panel/common/source-data-catalog.d.ts +22 -3
  419. package/dist/side-panel/common/source-data-catalog.js +2 -2
  420. package/dist/side-panel/common/source-data-selector.js +2 -2
  421. package/dist/side-panel/common/types.d.ts +7 -27
  422. package/dist/side-panel/common/types.js +1 -1
  423. package/dist/side-panel/custom-panel.d.ts +6 -7
  424. package/dist/side-panel/custom-panel.js +2 -2
  425. package/dist/side-panel/filter-manager.d.ts +18 -6
  426. package/dist/side-panel/filter-manager.js +176 -65
  427. package/dist/side-panel/filter-panel/add-filter-button.d.ts +8 -0
  428. package/dist/side-panel/filter-panel/add-filter-button.js +50 -0
  429. package/dist/side-panel/filter-panel/filter-panel-header.d.ts +6 -3
  430. package/dist/side-panel/filter-panel/filter-panel-header.js +4 -4
  431. package/dist/side-panel/filter-panel/filter-panel.js +2 -2
  432. package/dist/side-panel/interaction-manager.d.ts +6 -3
  433. package/dist/side-panel/interaction-manager.js +21 -8
  434. package/dist/side-panel/interaction-panel/brush-config.d.ts +2 -2
  435. package/dist/side-panel/interaction-panel/brush-config.js +2 -2
  436. package/dist/side-panel/interaction-panel/interaction-panel.d.ts +5 -2
  437. package/dist/side-panel/interaction-panel/interaction-panel.js +12 -5
  438. package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.d.ts +3 -9
  439. package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +25 -42
  440. package/dist/side-panel/interaction-panel/tooltip-config.d.ts +2 -3
  441. package/dist/side-panel/interaction-panel/tooltip-config.js +9 -7
  442. package/dist/side-panel/layer-manager.d.ts +8 -10
  443. package/dist/side-panel/layer-manager.js +71 -37
  444. package/dist/side-panel/layer-panel/add-layer-button.d.ts +3 -5
  445. package/dist/side-panel/layer-panel/add-layer-button.js +13 -139
  446. package/dist/side-panel/layer-panel/color-palette.js +2 -2
  447. package/dist/side-panel/layer-panel/color-range-selector.d.ts +1 -1
  448. package/dist/side-panel/layer-panel/color-range-selector.js +2 -2
  449. package/dist/side-panel/layer-panel/color-selector.d.ts +15 -24
  450. package/dist/side-panel/layer-panel/color-selector.js +175 -127
  451. package/dist/side-panel/layer-panel/column-selector.js +2 -2
  452. package/dist/side-panel/layer-panel/custom-palette.d.ts +7 -2
  453. package/dist/side-panel/layer-panel/custom-palette.js +6 -5
  454. package/dist/side-panel/layer-panel/custom-picker.d.ts +9 -36
  455. package/dist/side-panel/layer-panel/custom-picker.js +2 -2
  456. package/dist/side-panel/layer-panel/dataset-layer-group.d.ts +1 -1
  457. package/dist/side-panel/layer-panel/dataset-layer-group.js +3 -2
  458. package/dist/side-panel/layer-panel/dataset-layer-section.d.ts +3 -2
  459. package/dist/side-panel/layer-panel/dataset-layer-section.js +5 -4
  460. package/dist/side-panel/layer-panel/dataset-section.d.ts +2 -3
  461. package/dist/side-panel/layer-panel/dataset-section.js +6 -7
  462. package/dist/side-panel/layer-panel/dimension-scale-selector.js +2 -2
  463. package/dist/side-panel/layer-panel/how-to-button.js +2 -2
  464. package/dist/side-panel/layer-panel/layer-color-selector.d.ts +42 -0
  465. package/dist/side-panel/layer-panel/layer-color-selector.js +134 -0
  466. package/dist/side-panel/layer-panel/layer-column-config.d.ts +15 -9
  467. package/dist/side-panel/layer-panel/layer-column-config.js +35 -13
  468. package/dist/side-panel/layer-panel/layer-config-group.d.ts +11 -2
  469. package/dist/side-panel/layer-panel/layer-config-group.js +19 -11
  470. package/dist/side-panel/layer-panel/layer-configurator.d.ts +10 -35
  471. package/dist/side-panel/layer-panel/layer-configurator.js +61 -110
  472. package/dist/side-panel/layer-panel/layer-error-message.d.ts +6 -0
  473. package/dist/side-panel/layer-panel/layer-error-message.js +58 -0
  474. package/dist/side-panel/layer-panel/layer-list.d.ts +4 -3
  475. package/dist/side-panel/layer-panel/layer-list.js +112 -89
  476. package/dist/side-panel/layer-panel/layer-panel-header.d.ts +22 -10
  477. package/dist/side-panel/layer-panel/layer-panel-header.js +106 -67
  478. package/dist/side-panel/layer-panel/layer-panel.d.ts +3 -1
  479. package/dist/side-panel/layer-panel/layer-panel.js +24 -11
  480. package/dist/side-panel/layer-panel/layer-type-dropdown-list.js +2 -2
  481. package/dist/side-panel/layer-panel/layer-type-list-item.d.ts +12 -3
  482. package/dist/side-panel/layer-panel/layer-type-list-item.js +12 -4
  483. package/dist/side-panel/layer-panel/layer-type-selector.d.ts +2 -1
  484. package/dist/side-panel/layer-panel/layer-type-selector.js +5 -3
  485. package/dist/side-panel/layer-panel/single-color-palette.d.ts +1 -1
  486. package/dist/side-panel/layer-panel/single-color-palette.js +2 -2
  487. package/dist/side-panel/layer-panel/text-label-panel.d.ts +4 -2
  488. package/dist/side-panel/layer-panel/text-label-panel.js +62 -15
  489. package/dist/side-panel/layer-panel/vis-config-by-field-selector.d.ts +1 -3
  490. package/dist/side-panel/layer-panel/vis-config-by-field-selector.js +2 -2
  491. package/dist/side-panel/layer-panel/vis-config-slider.js +2 -2
  492. package/dist/side-panel/layer-panel/vis-config-switch.js +2 -2
  493. package/dist/side-panel/map-manager.d.ts +13 -6
  494. package/dist/side-panel/map-manager.js +56 -45
  495. package/dist/side-panel/map-style-panel/map-layer-group-color-picker.d.ts +14 -0
  496. package/dist/side-panel/map-style-panel/map-layer-group-color-picker.js +116 -0
  497. package/dist/side-panel/map-style-panel/map-layer-group-item.d.ts +29 -0
  498. package/dist/side-panel/map-style-panel/map-layer-group-item.js +131 -0
  499. package/dist/side-panel/map-style-panel/map-layer-selector.d.ts +16 -12
  500. package/dist/side-panel/map-style-panel/map-layer-selector.js +34 -51
  501. package/dist/side-panel/map-style-panel/map-style-selector.d.ts +11 -4
  502. package/dist/side-panel/map-style-panel/map-style-selector.js +54 -20
  503. package/dist/side-panel/panel-dropdown.d.ts +3 -2
  504. package/dist/side-panel/panel-dropdown.js +2 -2
  505. package/dist/side-panel/panel-header-action.d.ts +4 -2
  506. package/dist/side-panel/panel-header-action.js +11 -4
  507. package/dist/side-panel/panel-header.d.ts +13 -8
  508. package/dist/side-panel/panel-header.js +2 -2
  509. package/dist/side-panel/panel-tab.d.ts +2 -2
  510. package/dist/side-panel/panel-tab.js +2 -2
  511. package/dist/side-panel/panel-title.d.ts +6 -3
  512. package/dist/side-panel/panel-title.js +31 -14
  513. package/dist/side-panel/panel-toggle.d.ts +1 -1
  514. package/dist/side-panel/panel-toggle.js +2 -2
  515. package/dist/side-panel/{layer-panel/panel-view-list-toggle.d.ts → panel-view-list-toggle.d.ts} +19 -8
  516. package/dist/side-panel/panel-view-list-toggle.js +143 -0
  517. package/dist/side-panel/side-bar.d.ts +15 -16
  518. package/dist/side-panel/side-bar.js +8 -6
  519. package/dist/side-panel.d.ts +2 -117
  520. package/dist/side-panel.js +14 -20
  521. package/dist/types.d.ts +16 -9
  522. package/dist/types.js +1 -1
  523. package/package.json +41 -34
  524. package/dist/editor/constants.d.ts +0 -17
  525. package/dist/editor/constants.js +0 -47
  526. package/dist/editor/feature-styles.d.ts +0 -37
  527. package/dist/editor/feature-styles.js +0 -92
  528. package/dist/editor/handle-style.d.ts +0 -42
  529. package/dist/editor/handle-style.js +0 -100
  530. package/dist/side-panel/layer-panel/panel-view-list-toggle.js +0 -143
@@ -0,0 +1,191 @@
1
+ // Copyright (c) 2023 Uber Technologies, Inc.
2
+ //
3
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ // of this software and associated documentation files (the "Software"), to deal
5
+ // in the Software without restriction, including without limitation the rights
6
+ // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ // copies of the Software, and to permit persons to whom the Software is
8
+ // furnished to do so, subject to the following conditions:
9
+ //
10
+ // The above copyright notice and this permission notice shall be included in
11
+ // all copies or substantial portions of the Software.
12
+ //
13
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ // THE SOFTWARE.
20
+
21
+ "use strict";
22
+
23
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
24
+
25
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
26
+
27
+ Object.defineProperty(exports, "__esModule", {
28
+ value: true
29
+ });
30
+ exports["default"] = EffectTimeConfiguratorFactory;
31
+
32
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
33
+
34
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
35
+
36
+ var _react = _interopRequireWildcard(require("react"));
37
+
38
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
39
+
40
+ var _localization = require("@kepler.gl/localization");
41
+
42
+ var _utils = require("@kepler.gl/utils");
43
+
44
+ var _styledComponents2 = require("../common/styled-components");
45
+
46
+ var _rangeSlider = _interopRequireDefault(require("../common/range-slider"));
47
+
48
+ var _checkbox = _interopRequireDefault(require("../common/checkbox"));
49
+
50
+ var _button = _interopRequireDefault(require("../common/data-table/button"));
51
+
52
+ var _icons = require("../common/icons");
53
+
54
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
55
+
56
+ var DAY_SLIDER_RANGE = 1000 * 60 * 60 * 24;
57
+
58
+ var StyledWrapper = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-left: 5px;\n padding-right: 5px;\n margin-bottom: 9px;\n opacity: ", ";\n ", "\n"])), function (props) {
59
+ return props.disabled ? 0.3 : 1;
60
+ }, function (props) {
61
+ return props.disabled ? 'pointer-events: none;' : '';
62
+ });
63
+
64
+ var SliderWrapper = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: 13px;\n margin-right: 8px;\n margin-bottom: 17px;\n\n opacity: ", ";\n ", "\n"])), function (props) {
65
+ return props.disabled ? 0.3 : 1;
66
+ }, function (props) {
67
+ return props.disabled ? 'pointer-events: none;' : '';
68
+ });
69
+
70
+ var StyledButton = (0, _styledComponents["default"])(_button["default"])(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n background-color: ", ";\n height: 31px;\n padding: 5px;\n border-radius: 2px;\n :hover {\n background-color: ", ";\n }\n"])), function (props) {
71
+ return props.theme.textColor;
72
+ }, function (props) {
73
+ return props.theme.inputBgd;
74
+ }, function (props) {
75
+ return props.theme.inputBgdHover;
76
+ });
77
+ var StyledRadio = (0, _styledComponents["default"])(_checkbox["default"])(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n .kg-checkbox__label {\n font-family: ", ";\n font-size: ", ";\n }\n .kg-checkbox__label:before {\n background-color: ", ";\n }\n"])), function (props) {
78
+ return props.theme.fontFamily;
79
+ }, function (props) {
80
+ return props.theme.inputFontSize;
81
+ }, function (props) {
82
+ return props.theme.inputBgdHover;
83
+ });
84
+
85
+ var StyledLabelWrapper = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n margin-right: 10px;\n"])), function (props) {
86
+ return props.theme.textColor;
87
+ });
88
+
89
+ var StyledEffectTimeConfigurator = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n border-left: 3px solid ", ";\n margin-bottom: 8px;\n margin-top: 3px;\n margin-left: 3px;\n"])), function (props) {
90
+ return props.theme.panelBorderColor;
91
+ });
92
+
93
+ EffectTimeConfiguratorFactory.deps = [_rangeSlider["default"]];
94
+
95
+ function EffectTimeConfiguratorFactory(RangeSlider) {
96
+ var EffectTimeConfigurator = function EffectTimeConfigurator(_ref) {
97
+ var timestamp = _ref.timestamp,
98
+ useCurrentTime = _ref.useCurrentTime,
99
+ onDateTimeChange = _ref.onDateTimeChange,
100
+ onUseCurrentTimeChange = _ref.onUseCurrentTimeChange;
101
+
102
+ var _useMemo = (0, _react.useMemo)(function () {
103
+ var date = new Date(timestamp);
104
+ var h = date.getHours();
105
+ var m = date.getMinutes();
106
+ var timeString = "".concat(h < 10 ? "0".concat(h) : "".concat(h), ":").concat(m < 10 ? "0".concat(m) : "".concat(m));
107
+ return [date, timeString];
108
+ }, [timestamp]),
109
+ _useMemo2 = (0, _slicedToArray2["default"])(_useMemo, 2),
110
+ selectedDate = _useMemo2[0],
111
+ selectedTimeString = _useMemo2[1];
112
+
113
+ var timeSliderValue = (0, _react.useMemo)(function () {
114
+ var base = new Date(timestamp).setHours(0, 0, 0).valueOf();
115
+ return (0, _utils.clamp)([0, 1], (parseInt(timestamp) - base) / DAY_SLIDER_RANGE);
116
+ }, [timestamp, selectedDate]);
117
+ var timeSliderProps = (0, _react.useMemo)(function () {
118
+ return {
119
+ label: 'value',
120
+ value1: timeSliderValue,
121
+ step: 0.001,
122
+ range: [0, 1],
123
+ value0: 0,
124
+ onChange: function onChange(value) {
125
+ var start = new Date(timestamp).setHours(0, 0, 0).valueOf();
126
+ onDateTimeChange(Math.floor(start + DAY_SLIDER_RANGE * (0, _utils.clamp)([0, 0.9999], value[1])));
127
+ },
128
+ showInput: false,
129
+ isRanged: false
130
+ };
131
+ }, [timeSliderValue, timestamp, onDateTimeChange]);
132
+ var setDate = (0, _react.useCallback)(function (newDate) {
133
+ onDateTimeChange(Math.floor(newDate.valueOf() + DAY_SLIDER_RANGE * timeSliderValue));
134
+ }, [timeSliderValue, onDateTimeChange]);
135
+ var setTime = (0, _react.useCallback)(function (time) {
136
+ var conf = time.split(':');
137
+ var start = new Date(timestamp).setHours(conf[0], conf[1]).valueOf();
138
+ onDateTimeChange(start);
139
+ }, [timestamp, onDateTimeChange]);
140
+ var setCurrentDateTime = (0, _react.useCallback)(function () {
141
+ onDateTimeChange(new Date().valueOf());
142
+ }, [onDateTimeChange]);
143
+ return /*#__PURE__*/_react["default"].createElement(StyledEffectTimeConfigurator, null, /*#__PURE__*/_react["default"].createElement(StyledWrapper, null, /*#__PURE__*/_react["default"].createElement(StyledRadio, {
144
+ type: "radio",
145
+ checked: !useCurrentTime,
146
+ id: "effect-time-toggle-use-pick",
147
+ label: 'Pick date/time',
148
+ onChange: function onChange() {
149
+ onUseCurrentTimeChange(false);
150
+ }
151
+ })), /*#__PURE__*/_react["default"].createElement(StyledWrapper, {
152
+ disabled: useCurrentTime
153
+ }, /*#__PURE__*/_react["default"].createElement(StyledButton, {
154
+ onClick: setCurrentDateTime,
155
+ "data-for": "pick-time-button",
156
+ "data-tip": true
157
+ }, /*#__PURE__*/_react["default"].createElement(_icons.Pin, {
158
+ height: "15px"
159
+ }), /*#__PURE__*/_react["default"].createElement(_styledComponents2.Tooltip, {
160
+ id: "pick-time-button",
161
+ effect: "solid",
162
+ place: "top",
163
+ delayShow: 500
164
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
165
+ id: 'Pick current time'
166
+ }))), /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledDatePicker, {
167
+ value: selectedDate,
168
+ onChange: setDate
169
+ }), /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledTimePicker, {
170
+ value: selectedTimeString,
171
+ onChange: setTime,
172
+ disableClock: true,
173
+ format: 'hh:mm a'
174
+ }), /*#__PURE__*/_react["default"].createElement(StyledLabelWrapper, null, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
175
+ id: 'UTC'
176
+ }))), /*#__PURE__*/_react["default"].createElement(SliderWrapper, {
177
+ disabled: useCurrentTime
178
+ }, /*#__PURE__*/_react["default"].createElement(RangeSlider, timeSliderProps)), /*#__PURE__*/_react["default"].createElement(StyledWrapper, null, /*#__PURE__*/_react["default"].createElement(StyledRadio, {
179
+ type: "radio",
180
+ checked: useCurrentTime,
181
+ id: "effect-time-toggle-use-current",
182
+ label: 'Current time',
183
+ onChange: function onChange() {
184
+ onUseCurrentTimeChange(true);
185
+ }
186
+ })));
187
+ };
188
+
189
+ return EffectTimeConfigurator;
190
+ }
191
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lZmZlY3RzL2VmZmVjdC10aW1lLWNvbmZpZ3VyYXRvci50c3giXSwibmFtZXMiOlsiREFZX1NMSURFUl9SQU5HRSIsIlN0eWxlZFdyYXBwZXIiLCJzdHlsZWQiLCJkaXYiLCJwcm9wcyIsImRpc2FibGVkIiwiU2xpZGVyV3JhcHBlciIsIlN0eWxlZEJ1dHRvbiIsIkJ1dHRvbiIsInRoZW1lIiwidGV4dENvbG9yIiwiaW5wdXRCZ2QiLCJpbnB1dEJnZEhvdmVyIiwiU3R5bGVkUmFkaW8iLCJDaGVja2JveCIsImZvbnRGYW1pbHkiLCJpbnB1dEZvbnRTaXplIiwiU3R5bGVkTGFiZWxXcmFwcGVyIiwiU3R5bGVkRWZmZWN0VGltZUNvbmZpZ3VyYXRvciIsInBhbmVsQm9yZGVyQ29sb3IiLCJFZmZlY3RUaW1lQ29uZmlndXJhdG9yRmFjdG9yeSIsImRlcHMiLCJSYW5nZVNsaWRlckZhY3RvcnkiLCJSYW5nZVNsaWRlciIsIkVmZmVjdFRpbWVDb25maWd1cmF0b3IiLCJ0aW1lc3RhbXAiLCJ1c2VDdXJyZW50VGltZSIsIm9uRGF0ZVRpbWVDaGFuZ2UiLCJvblVzZUN1cnJlbnRUaW1lQ2hhbmdlIiwiZGF0ZSIsIkRhdGUiLCJoIiwiZ2V0SG91cnMiLCJtIiwiZ2V0TWludXRlcyIsInRpbWVTdHJpbmciLCJzZWxlY3RlZERhdGUiLCJzZWxlY3RlZFRpbWVTdHJpbmciLCJ0aW1lU2xpZGVyVmFsdWUiLCJiYXNlIiwic2V0SG91cnMiLCJ2YWx1ZU9mIiwicGFyc2VJbnQiLCJ0aW1lU2xpZGVyUHJvcHMiLCJsYWJlbCIsInZhbHVlMSIsInN0ZXAiLCJyYW5nZSIsInZhbHVlMCIsIm9uQ2hhbmdlIiwidmFsdWUiLCJzdGFydCIsIk1hdGgiLCJmbG9vciIsInNob3dJbnB1dCIsImlzUmFuZ2VkIiwic2V0RGF0ZSIsIm5ld0RhdGUiLCJzZXRUaW1lIiwidGltZSIsImNvbmYiLCJzcGxpdCIsInNldEN1cnJlbnREYXRlVGltZSJdLCJtYXBwaW5ncyI6Ijs7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LE9BQU8sRUFBRWpCLGNBRlg7QUFHRSxNQUFBLEVBQUUsa0NBSEo7QUFJRSxNQUFBLEtBQUssRUFBRSxjQUpUO0FBS0UsTUFBQSxRQUFRLEVBQUUsb0JBQU07QUFDZEUsUUFBQUEsc0JBQXNCLENBQUMsSUFBRCxDQUF0QjtBQUNEO0FBUEgsTUFERixDQW5DRixDQURGO0FBaURELEdBMUdEOztBQTRHQSxTQUFPSixzQkFBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7dXNlQ2FsbGJhY2ssIHVzZU1lbW99IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuXG5pbXBvcnQge0Zvcm1hdHRlZE1lc3NhZ2V9IGZyb20gJ0BrZXBsZXIuZ2wvbG9jYWxpemF0aW9uJztcbmltcG9ydCB7Y2xhbXB9IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuXG5pbXBvcnQge1N0eWxlZFRpbWVQaWNrZXIsIFN0eWxlZERhdGVQaWNrZXIsIFRvb2x0aXB9IGZyb20gJy4uL2NvbW1vbi9zdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgUmFuZ2VTbGlkZXJGYWN0b3J5IGZyb20gJy4uL2NvbW1vbi9yYW5nZS1zbGlkZXInO1xuaW1wb3J0IENoZWNrYm94IGZyb20gJy4uL2NvbW1vbi9jaGVja2JveCc7XG5pbXBvcnQgQnV0dG9uIGZyb20gJy4uL2NvbW1vbi9kYXRhLXRhYmxlL2J1dHRvbic7XG5pbXBvcnQge1Bpbn0gZnJvbSAnLi4vY29tbW9uL2ljb25zJztcblxuY29uc3QgREFZX1NMSURFUl9SQU5HRSA9IDEwMDAgKiA2MCAqIDYwICogMjQ7XG5cbmV4cG9ydCB0eXBlIEVmZmVjdFRpbWVDb25maWd1cmF0b3JQcm9wcyA9IHtcbiAgdGltZXN0YW1wOiBzdHJpbmc7XG4gIG9uRGF0ZVRpbWVDaGFuZ2U6ICh0aW1lOiBudW1iZXIpID0+IHZvaWQ7XG4gIHVzZUN1cnJlbnRUaW1lOiBib29sZWFuO1xuICBvblVzZUN1cnJlbnRUaW1lQ2hhbmdlOiAodmFsdWU6IGJvb2xlYW4pID0+IHZvaWQ7XG59O1xuXG50eXBlIFN0eWxlZFdyYXBwZXJQcm9wcyA9IHtkaXNhYmxlZD86IGJvb2xlYW59O1xuY29uc3QgU3R5bGVkV3JhcHBlciA9IHN0eWxlZC5kaXY8U3R5bGVkV3JhcHBlclByb3BzPmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiA5cHg7XG4gIG9wYWNpdHk6ICR7cHJvcHMgPT4gKHByb3BzLmRpc2FibGVkID8gMC4zIDogMSl9O1xuICAke3Byb3BzID0+IChwcm9wcy5kaXNhYmxlZCA/ICdwb2ludGVyLWV2ZW50czogbm9uZTsnIDogJycpfVxuYDtcblxudHlwZSBTbGlkZXJXcmFwcGVyUHJvcHMgPSB7ZGlzYWJsZWQ/OiBib29sZWFufTtcbmNvbnN0IFNsaWRlcldyYXBwZXIgPSBzdHlsZWQuZGl2PFNsaWRlcldyYXBwZXJQcm9wcz5gXG4gIG1hcmdpbi10b3A6IDEzcHg7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xuICBtYXJnaW4tYm90dG9tOiAxN3B4O1xuXG4gIG9wYWNpdHk6ICR7cHJvcHMgPT4gKHByb3BzLmRpc2FibGVkID8gMC4zIDogMSl9O1xuICAke3Byb3BzID0+IChwcm9wcy5kaXNhYmxlZCA/ICdwb2ludGVyLWV2ZW50czogbm9uZTsnIDogJycpfVxuYDtcblxuY29uc3QgU3R5bGVkQnV0dG9uID0gc3R5bGVkKEJ1dHRvbilgXG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvcn07XG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRCZ2R9O1xuICBoZWlnaHQ6IDMxcHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICA6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRCZ2RIb3Zlcn07XG4gIH1cbmA7XG5cbmNvbnN0IFN0eWxlZFJhZGlvID0gc3R5bGVkKENoZWNrYm94KWBcbiAgLmtnLWNoZWNrYm94X19sYWJlbCB7XG4gICAgZm9udC1mYW1pbHk6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZm9udEZhbWlseX07XG4gICAgZm9udC1zaXplOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0Rm9udFNpemV9O1xuICB9XG4gIC5rZy1jaGVja2JveF9fbGFiZWw6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0QmdkSG92ZXJ9O1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWRMYWJlbFdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3J9O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5gO1xuXG5jb25zdCBTdHlsZWRFZmZlY3RUaW1lQ29uZmlndXJhdG9yID0gc3R5bGVkLmRpdmBcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQm9yZGVyQ29sb3J9O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIG1hcmdpbi10b3A6IDNweDtcbiAgbWFyZ2luLWxlZnQ6IDNweDtcbmA7XG5cbkVmZmVjdFRpbWVDb25maWd1cmF0b3JGYWN0b3J5LmRlcHMgPSBbUmFuZ2VTbGlkZXJGYWN0b3J5XTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRWZmZWN0VGltZUNvbmZpZ3VyYXRvckZhY3RvcnkoXG4gIFJhbmdlU2xpZGVyOiBSZXR1cm5UeXBlPHR5cGVvZiBSYW5nZVNsaWRlckZhY3Rvcnk+XG4pOiBSZWFjdC5GQzxFZmZlY3RUaW1lQ29uZmlndXJhdG9yUHJvcHM+IHtcbiAgY29uc3QgRWZmZWN0VGltZUNvbmZpZ3VyYXRvciA9ICh7XG4gICAgdGltZXN0YW1wLFxuICAgIHVzZUN1cnJlbnRUaW1lLFxuICAgIG9uRGF0ZVRpbWVDaGFuZ2UsXG4gICAgb25Vc2VDdXJyZW50VGltZUNoYW5nZVxuICB9OiBFZmZlY3RUaW1lQ29uZmlndXJhdG9yUHJvcHMpID0+IHtcbiAgICBjb25zdCBbc2VsZWN0ZWREYXRlLCBzZWxlY3RlZFRpbWVTdHJpbmddID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUodGltZXN0YW1wKTtcblxuICAgICAgY29uc3QgaCA9IGRhdGUuZ2V0SG91cnMoKTtcbiAgICAgIGNvbnN0IG0gPSBkYXRlLmdldE1pbnV0ZXMoKTtcbiAgICAgIGNvbnN0IHRpbWVTdHJpbmcgPSBgJHtoIDwgMTAgPyBgMCR7aH1gIDogYCR7aH1gfToke20gPCAxMCA/IGAwJHttfWAgOiBgJHttfWB9YDtcblxuICAgICAgcmV0dXJuIFtkYXRlLCB0aW1lU3RyaW5nXTtcbiAgICB9LCBbdGltZXN0YW1wXSk7XG5cbiAgICBjb25zdCB0aW1lU2xpZGVyVmFsdWUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGNvbnN0IGJhc2UgPSBuZXcgRGF0ZSh0aW1lc3RhbXApLnNldEhvdXJzKDAsIDAsIDApLnZhbHVlT2YoKTtcbiAgICAgIHJldHVybiBjbGFtcChbMCwgMV0sIChwYXJzZUludCh0aW1lc3RhbXApIC0gYmFzZSkgLyBEQVlfU0xJREVSX1JBTkdFKTtcbiAgICB9LCBbdGltZXN0YW1wLCBzZWxlY3RlZERhdGVdKTtcblxuICAgIGNvbnN0IHRpbWVTbGlkZXJQcm9wcyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbGFiZWw6ICd2YWx1ZScsXG4gICAgICAgIHZhbHVlMTogdGltZVNsaWRlclZhbHVlLFxuICAgICAgICBzdGVwOiAwLjAwMSxcbiAgICAgICAgcmFuZ2U6IFswLCAxXSxcbiAgICAgICAgdmFsdWUwOiAwLFxuICAgICAgICBvbkNoYW5nZTogdmFsdWUgPT4ge1xuICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gbmV3IERhdGUodGltZXN0YW1wKS5zZXRIb3VycygwLCAwLCAwKS52YWx1ZU9mKCk7XG4gICAgICAgICAgb25EYXRlVGltZUNoYW5nZShNYXRoLmZsb29yKHN0YXJ0ICsgREFZX1NMSURFUl9SQU5HRSAqIGNsYW1wKFswLCAwLjk5OTldLCB2YWx1ZVsxXSkpKTtcbiAgICAgICAgfSxcbiAgICAgICAgc2hvd0lucHV0OiBmYWxzZSxcbiAgICAgICAgaXNSYW5nZWQ6IGZhbHNlXG4gICAgICB9O1xuICAgIH0sIFt0aW1lU2xpZGVyVmFsdWUsIHRpbWVzdGFtcCwgb25EYXRlVGltZUNoYW5nZV0pO1xuXG4gICAgY29uc3Qgc2V0RGF0ZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgbmV3RGF0ZSA9PiB7XG4gICAgICAgIG9uRGF0ZVRpbWVDaGFuZ2UoTWF0aC5mbG9vcihuZXdEYXRlLnZhbHVlT2YoKSArIERBWV9TTElERVJfUkFOR0UgKiB0aW1lU2xpZGVyVmFsdWUpKTtcbiAgICAgIH0sXG4gICAgICBbdGltZVNsaWRlclZhbHVlLCBvbkRhdGVUaW1lQ2hhbmdlXVxuICAgICk7XG5cbiAgICBjb25zdCBzZXRUaW1lID0gdXNlQ2FsbGJhY2soXG4gICAgICB0aW1lID0+IHtcbiAgICAgICAgY29uc3QgY29uZiA9IHRpbWUuc3BsaXQoJzonKTtcbiAgICAgICAgY29uc3Qgc3RhcnQgPSBuZXcgRGF0ZSh0aW1lc3RhbXApLnNldEhvdXJzKGNvbmZbMF0sIGNvbmZbMV0pLnZhbHVlT2YoKTtcbiAgICAgICAgb25EYXRlVGltZUNoYW5nZShzdGFydCk7XG4gICAgICB9LFxuICAgICAgW3RpbWVzdGFtcCwgb25EYXRlVGltZUNoYW5nZV1cbiAgICApO1xuXG4gICAgY29uc3Qgc2V0Q3VycmVudERhdGVUaW1lID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgb25EYXRlVGltZUNoYW5nZShuZXcgRGF0ZSgpLnZhbHVlT2YoKSk7XG4gICAgfSwgW29uRGF0ZVRpbWVDaGFuZ2VdKTtcblxuICAgIHJldHVybiAoXG4gICAgICA8U3R5bGVkRWZmZWN0VGltZUNvbmZpZ3VyYXRvcj5cbiAgICAgICAgPFN0eWxlZFdyYXBwZXI+XG4gICAgICAgICAgPFN0eWxlZFJhZGlvXG4gICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgY2hlY2tlZD17IXVzZUN1cnJlbnRUaW1lfVxuICAgICAgICAgICAgaWQ9e2BlZmZlY3QtdGltZS10b2dnbGUtdXNlLXBpY2tgfVxuICAgICAgICAgICAgbGFiZWw9eydQaWNrIGRhdGUvdGltZSd9XG4gICAgICAgICAgICBvbkNoYW5nZT17KCkgPT4ge1xuICAgICAgICAgICAgICBvblVzZUN1cnJlbnRUaW1lQ2hhbmdlKGZhbHNlKTtcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9TdHlsZWRXcmFwcGVyPlxuICAgICAgICA8U3R5bGVkV3JhcHBlciBkaXNhYmxlZD17dXNlQ3VycmVudFRpbWV9PlxuICAgICAgICAgIDxTdHlsZWRCdXR0b24gb25DbGljaz17c2V0Q3VycmVudERhdGVUaW1lfSBkYXRhLWZvcj1cInBpY2stdGltZS1idXR0b25cIiBkYXRhLXRpcD5cbiAgICAgICAgICAgIDxQaW4gaGVpZ2h0PVwiMTVweFwiIC8+XG4gICAgICAgICAgICA8VG9vbHRpcCBpZD1cInBpY2stdGltZS1idXR0b25cIiBlZmZlY3Q9XCJzb2xpZFwiIHBsYWNlPVwidG9wXCIgZGVsYXlTaG93PXs1MDB9PlxuICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J1BpY2sgY3VycmVudCB0aW1lJ30gLz5cbiAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICA8L1N0eWxlZEJ1dHRvbj5cbiAgICAgICAgICA8U3R5bGVkRGF0ZVBpY2tlciB2YWx1ZT17c2VsZWN0ZWREYXRlfSBvbkNoYW5nZT17c2V0RGF0ZX0gLz5cbiAgICAgICAgICA8U3R5bGVkVGltZVBpY2tlclxuICAgICAgICAgICAgdmFsdWU9e3NlbGVjdGVkVGltZVN0cmluZ31cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtzZXRUaW1lfVxuICAgICAgICAgICAgZGlzYWJsZUNsb2NrPXt0cnVlfVxuICAgICAgICAgICAgZm9ybWF0PXsnaGg6bW0gYSd9XG4gICAgICAgICAgLz5cbiAgICAgICAgICA8U3R5bGVkTGFiZWxXcmFwcGVyPlxuICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydVVEMnfSAvPlxuICAgICAgICAgIDwvU3R5bGVkTGFiZWxXcmFwcGVyPlxuICAgICAgICA8L1N0eWxlZFdyYXBwZXI+XG5cbiAgICAgICAgPFNsaWRlcldyYXBwZXIgZGlzYWJsZWQ9e3VzZUN1cnJlbnRUaW1lfT5cbiAgICAgICAgICA8UmFuZ2VTbGlkZXIgey4uLnRpbWVTbGlkZXJQcm9wc30gLz5cbiAgICAgICAgPC9TbGlkZXJXcmFwcGVyPlxuXG4gICAgICAgIDxTdHlsZWRXcmFwcGVyPlxuICAgICAgICAgIDxTdHlsZWRSYWRpb1xuICAgICAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgICAgIGNoZWNrZWQ9e3VzZUN1cnJlbnRUaW1lfVxuICAgICAgICAgICAgaWQ9e2BlZmZlY3QtdGltZS10b2dnbGUtdXNlLWN1cnJlbnRgfVxuICAgICAgICAgICAgbGFiZWw9eydDdXJyZW50IHRpbWUnfVxuICAgICAgICAgICAgb25DaGFuZ2U9eygpID0+IHtcbiAgICAgICAgICAgICAgb25Vc2VDdXJyZW50VGltZUNoYW5nZSh0cnVlKTtcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9TdHlsZWRXcmFwcGVyPlxuICAgICAgPC9TdHlsZWRFZmZlY3RUaW1lQ29uZmlndXJhdG9yPlxuICAgICk7XG4gIH07XG5cbiAgcmV0dXJuIEVmZmVjdFRpbWVDb25maWd1cmF0b3I7XG59XG4iXX0=
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import { addEffect } from '@kepler.gl/actions';
3
+ export declare type EffectTypeSelectorProps = {
4
+ options: {
5
+ type: string;
6
+ name: string;
7
+ }[];
8
+ onSelect: typeof addEffect;
9
+ };
10
+ declare function EffectTypeSelectorFactory(): React.FC<EffectTypeSelectorProps>;
11
+ export default EffectTypeSelectorFactory;
@@ -0,0 +1,117 @@
1
+ // Copyright (c) 2023 Uber Technologies, Inc.
2
+ //
3
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ // of this software and associated documentation files (the "Software"), to deal
5
+ // in the Software without restriction, including without limitation the rights
6
+ // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ // copies of the Software, and to permit persons to whom the Software is
8
+ // furnished to do so, subject to the following conditions:
9
+ //
10
+ // The above copyright notice and this permission notice shall be included in
11
+ // all copies or substantial portions of the Software.
12
+ //
13
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ // THE SOFTWARE.
20
+
21
+ "use strict";
22
+
23
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
24
+
25
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
26
+
27
+ Object.defineProperty(exports, "__esModule", {
28
+ value: true
29
+ });
30
+ exports["default"] = void 0;
31
+
32
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
33
+
34
+ var _react = _interopRequireWildcard(require("react"));
35
+
36
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
37
+
38
+ var _localization = require("@kepler.gl/localization");
39
+
40
+ var _styledComponents2 = require("../common/styled-components");
41
+
42
+ var _icons = require("../common/icons");
43
+
44
+ var _tippyTooltip = _interopRequireDefault(require("../common/tippy-tooltip"));
45
+
46
+ var _templateObject;
47
+
48
+ var StyledTippyTooltipContentContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n display: flex;\n flex-direction: column;\n align-items: start;\n margin: -7px -18px; /* compensate for kepler tippy parent padding */\n border-radius: 2px;\n .button {\n width: 100%;\n justify-content: start;\n color: ", ";\n }\n"])), function (props) {
49
+ return props.theme.panelBackgroundHover;
50
+ }, function (props) {
51
+ return props.theme.WHITE;
52
+ });
53
+ /** @type [number, number] */
54
+
55
+
56
+ var TIPPY_DURATION = [300, 0];
57
+ /** @type [number, number] */
58
+
59
+ var TIPPY_OFFSET = [0, 4];
60
+
61
+ function EffectTypeSelectorFactory() {
62
+ var EffectTypeSelector = function EffectTypeSelector(_ref) {
63
+ var onSelect = _ref.onSelect,
64
+ options = _ref.options;
65
+
66
+ /** @type any */
67
+ var tippyInstance = (0, _react.useRef)(null);
68
+ var render = (0, _react.useCallback)(function () {
69
+ return /*#__PURE__*/_react["default"].createElement(StyledTippyTooltipContentContainer, null, options.map(function (effectDesc, idx) {
70
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents2.Button, {
71
+ key: "".concat(effectDesc.type, "-").concat(idx),
72
+ onClick: function onClick() {
73
+ var _tippyInstance$curren;
74
+
75
+ onSelect({
76
+ config: {
77
+ type: effectDesc.type
78
+ }
79
+ }); // @ts-expect-error type current
80
+
81
+ (_tippyInstance$curren = tippyInstance.current) === null || _tippyInstance$curren === void 0 ? void 0 : _tippyInstance$curren.hide();
82
+ },
83
+ secondary: true
84
+ }, effectDesc.name);
85
+ }));
86
+ }, [options, tippyInstance, tippyInstance.current, onSelect]);
87
+ return /*#__PURE__*/_react["default"].createElement(_tippyTooltip["default"], {
88
+ placement: "bottom-start",
89
+ offset: TIPPY_OFFSET,
90
+ duration: TIPPY_DURATION,
91
+ trigger: "click",
92
+ interactive: true,
93
+ arrow: false,
94
+ hideOnClick: true,
95
+ onTrigger: function onTrigger(instance) {
96
+ // @ts-expect-error type current
97
+ tippyInstance.current = instance;
98
+ },
99
+ zIndex: 999 // defaults to 9999; keep it below modals (1000)
100
+ ,
101
+ render: render
102
+ }, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_styledComponents2.Button, {
103
+ className: "add-effect-button",
104
+ secondary: true
105
+ }, /*#__PURE__*/_react["default"].createElement(_icons.Add, {
106
+ height: "12px"
107
+ }), /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
108
+ id: 'effectManager.addEffect'
109
+ }))));
110
+ };
111
+
112
+ return EffectTypeSelector;
113
+ }
114
+
115
+ var _default = EffectTypeSelectorFactory;
116
+ exports["default"] = _default;
117
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lZmZlY3RzL2VmZmVjdC10eXBlLXNlbGVjdG9yLnRzeCJdLCJuYW1lcyI6WyJTdHlsZWRUaXBweVRvb2x0aXBDb250ZW50Q29udGFpbmVyIiwic3R5bGVkIiwiZGl2IiwicHJvcHMiLCJ0aGVtZSIsInBhbmVsQmFja2dyb3VuZEhvdmVyIiwiV0hJVEUiLCJUSVBQWV9EVVJBVElPTiIsIlRJUFBZX09GRlNFVCIsIkVmZmVjdFR5cGVTZWxlY3RvckZhY3RvcnkiLCJFZmZlY3RUeXBlU2VsZWN0b3IiLCJvblNlbGVjdCIsIm9wdGlvbnMiLCJ0aXBweUluc3RhbmNlIiwicmVuZGVyIiwibWFwIiwiZWZmZWN0RGVzYyIsImlkeCIsInR5cGUiLCJjb25maWciLCJjdXJyZW50IiwiaGlkZSIsIm5hbWUiLCJpbnN0YW5jZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUVBOztBQUdBOztBQUNBOztBQUNBOzs7O0FBT0EsSUFBTUEsa0NBQWtDLEdBQUdDLDZCQUFPQyxHQUFWLDBXQUNsQixVQUFBQyxLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDQyxLQUFOLENBQVlDLG9CQUFoQjtBQUFBLENBRGEsRUFVM0IsVUFBQUYsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZRSxLQUFoQjtBQUFBLENBVnNCLENBQXhDO0FBY0E7OztBQUNBLElBQU1DLGNBQWdDLEdBQUcsQ0FBQyxHQUFELEVBQU0sQ0FBTixDQUF6QztBQUNBOztBQUNBLElBQU1DLFlBQThCLEdBQUcsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUF2Qzs7QUFFQSxTQUFTQyx5QkFBVCxHQUF3RTtBQUN0RSxNQUFNQyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQXFCLE9BQWtEO0FBQUEsUUFBaERDLFFBQWdELFFBQWhEQSxRQUFnRDtBQUFBLFFBQXRDQyxPQUFzQyxRQUF0Q0EsT0FBc0M7O0FBQzNFO0FBQ0EsUUFBTUMsYUFBYSxHQUFHLG1CQUFPLElBQVAsQ0FBdEI7QUFFQSxRQUFNQyxNQUFNLEdBQUcsd0JBQ2I7QUFBQSwwQkFDRSxnQ0FBQyxrQ0FBRCxRQUNHRixPQUFPLENBQUNHLEdBQVIsQ0FBWSxVQUFDQyxVQUFELEVBQWFDLEdBQWIsRUFBcUI7QUFDaEMsNEJBQ0UsZ0NBQUMseUJBQUQ7QUFDRSxVQUFBLEdBQUcsWUFBS0QsVUFBVSxDQUFDRSxJQUFoQixjQUF3QkQsR0FBeEIsQ0FETDtBQUVFLFVBQUEsT0FBTyxFQUFFLG1CQUFNO0FBQUE7O0FBQ2JOLFlBQUFBLFFBQVEsQ0FBQztBQUFDUSxjQUFBQSxNQUFNLEVBQUU7QUFBQ0QsZ0JBQUFBLElBQUksRUFBRUYsVUFBVSxDQUFDRTtBQUFsQjtBQUFULGFBQUQsQ0FBUixDQURhLENBRWI7O0FBQ0EscUNBQUFMLGFBQWEsQ0FBQ08sT0FBZCxnRkFBdUJDLElBQXZCO0FBQ0QsV0FOSDtBQU9FLFVBQUEsU0FBUztBQVBYLFdBU0dMLFVBQVUsQ0FBQ00sSUFUZCxDQURGO0FBYUQsT0FkQSxDQURILENBREY7QUFBQSxLQURhLEVBb0JiLENBQUNWLE9BQUQsRUFBVUMsYUFBVixFQUF5QkEsYUFBYSxDQUFDTyxPQUF2QyxFQUFnRFQsUUFBaEQsQ0FwQmEsQ0FBZjtBQXVCQSx3QkFDRSxnQ0FBQyx3QkFBRDtBQUNFLE1BQUEsU0FBUyxFQUFDLGNBRFo7QUFFRSxNQUFBLE1BQU0sRUFBRUgsWUFGVjtBQUdFLE1BQUEsUUFBUSxFQUFFRCxjQUhaO0FBSUUsTUFBQSxPQUFPLEVBQUMsT0FKVjtBQUtFLE1BQUEsV0FBVyxFQUFFLElBTGY7QUFNRSxNQUFBLEtBQUssRUFBRSxLQU5UO0FBT0UsTUFBQSxXQUFXLEVBQUUsSUFQZjtBQVFFLE1BQUEsU0FBUyxFQUFFLG1CQUFBZ0IsUUFBUSxFQUFJO0FBQ3JCO0FBQ0FWLFFBQUFBLGFBQWEsQ0FBQ08sT0FBZCxHQUF3QkcsUUFBeEI7QUFDRCxPQVhIO0FBWUUsTUFBQSxNQUFNLEVBQUUsR0FaVixDQVllO0FBWmY7QUFhRSxNQUFBLE1BQU0sRUFBRVQ7QUFiVixvQkFlRSwwREFDRSxnQ0FBQyx5QkFBRDtBQUFRLE1BQUEsU0FBUyxFQUFDLG1CQUFsQjtBQUFzQyxNQUFBLFNBQVM7QUFBL0Msb0JBQ0UsZ0NBQUMsVUFBRDtBQUFLLE1BQUEsTUFBTSxFQUFDO0FBQVosTUFERixlQUVFLGdDQUFDLDhCQUFEO0FBQWtCLE1BQUEsRUFBRSxFQUFFO0FBQXRCLE1BRkYsQ0FERixDQWZGLENBREY7QUF3QkQsR0FuREQ7O0FBb0RBLFNBQU9KLGtCQUFQO0FBQ0Q7O2VBRWNELHlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7dXNlUmVmLCB1c2VDYWxsYmFja30gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5cbmltcG9ydCB7Rm9ybWF0dGVkTWVzc2FnZX0gZnJvbSAnQGtlcGxlci5nbC9sb2NhbGl6YXRpb24nO1xuaW1wb3J0IHthZGRFZmZlY3R9IGZyb20gJ0BrZXBsZXIuZ2wvYWN0aW9ucyc7XG5cbmltcG9ydCB7QnV0dG9ufSBmcm9tICcuLi9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHtBZGR9IGZyb20gJy4uL2NvbW1vbi9pY29ucyc7XG5pbXBvcnQgVGlwcHlUb29sdGlwIGZyb20gJy4uL2NvbW1vbi90aXBweS10b29sdGlwJztcblxuZXhwb3J0IHR5cGUgRWZmZWN0VHlwZVNlbGVjdG9yUHJvcHMgPSB7XG4gIG9wdGlvbnM6IHt0eXBlOiBzdHJpbmc7IG5hbWU6IHN0cmluZ31bXTtcbiAgb25TZWxlY3Q6IHR5cGVvZiBhZGRFZmZlY3Q7XG59O1xuXG5jb25zdCBTdHlsZWRUaXBweVRvb2x0aXBDb250ZW50Q29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmRIb3Zlcn07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgbWFyZ2luOiAtN3B4IC0xOHB4OyAvKiBjb21wZW5zYXRlIGZvciBrZXBsZXIgdGlwcHkgcGFyZW50IHBhZGRpbmcgKi9cbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAuYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLldISVRFfTtcbiAgfVxuYDtcblxuLyoqIEB0eXBlIFtudW1iZXIsIG51bWJlcl0gKi9cbmNvbnN0IFRJUFBZX0RVUkFUSU9OOiBbbnVtYmVyLCBudW1iZXJdID0gWzMwMCwgMF07XG4vKiogQHR5cGUgW251bWJlciwgbnVtYmVyXSAqL1xuY29uc3QgVElQUFlfT0ZGU0VUOiBbbnVtYmVyLCBudW1iZXJdID0gWzAsIDRdO1xuXG5mdW5jdGlvbiBFZmZlY3RUeXBlU2VsZWN0b3JGYWN0b3J5KCk6IFJlYWN0LkZDPEVmZmVjdFR5cGVTZWxlY3RvclByb3BzPiB7XG4gIGNvbnN0IEVmZmVjdFR5cGVTZWxlY3RvciA9ICh7b25TZWxlY3QsIG9wdGlvbnN9OiBFZmZlY3RUeXBlU2VsZWN0b3JQcm9wcykgPT4ge1xuICAgIC8qKiBAdHlwZSBhbnkgKi9cbiAgICBjb25zdCB0aXBweUluc3RhbmNlID0gdXNlUmVmKG51bGwpO1xuXG4gICAgY29uc3QgcmVuZGVyID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiAoXG4gICAgICAgIDxTdHlsZWRUaXBweVRvb2x0aXBDb250ZW50Q29udGFpbmVyPlxuICAgICAgICAgIHtvcHRpb25zLm1hcCgoZWZmZWN0RGVzYywgaWR4KSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICAgICAga2V5PXtgJHtlZmZlY3REZXNjLnR5cGV9LSR7aWR4fWB9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgb25TZWxlY3Qoe2NvbmZpZzoge3R5cGU6IGVmZmVjdERlc2MudHlwZX19KTtcbiAgICAgICAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgdHlwZSBjdXJyZW50XG4gICAgICAgICAgICAgICAgICB0aXBweUluc3RhbmNlLmN1cnJlbnQ/LmhpZGUoKTtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHNlY29uZGFyeVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2VmZmVjdERlc2MubmFtZX1cbiAgICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pfVxuICAgICAgICA8L1N0eWxlZFRpcHB5VG9vbHRpcENvbnRlbnRDb250YWluZXI+XG4gICAgICApLFxuICAgICAgW29wdGlvbnMsIHRpcHB5SW5zdGFuY2UsIHRpcHB5SW5zdGFuY2UuY3VycmVudCwgb25TZWxlY3RdXG4gICAgKTtcblxuICAgIHJldHVybiAoXG4gICAgICA8VGlwcHlUb29sdGlwXG4gICAgICAgIHBsYWNlbWVudD1cImJvdHRvbS1zdGFydFwiXG4gICAgICAgIG9mZnNldD17VElQUFlfT0ZGU0VUfVxuICAgICAgICBkdXJhdGlvbj17VElQUFlfRFVSQVRJT059XG4gICAgICAgIHRyaWdnZXI9XCJjbGlja1wiXG4gICAgICAgIGludGVyYWN0aXZlPXt0cnVlfVxuICAgICAgICBhcnJvdz17ZmFsc2V9XG4gICAgICAgIGhpZGVPbkNsaWNrPXt0cnVlfVxuICAgICAgICBvblRyaWdnZXI9e2luc3RhbmNlID0+IHtcbiAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIHR5cGUgY3VycmVudFxuICAgICAgICAgIHRpcHB5SW5zdGFuY2UuY3VycmVudCA9IGluc3RhbmNlO1xuICAgICAgICB9fVxuICAgICAgICB6SW5kZXg9ezk5OX0gLy8gZGVmYXVsdHMgdG8gOTk5OTsga2VlcCBpdCBiZWxvdyBtb2RhbHMgKDEwMDApXG4gICAgICAgIHJlbmRlcj17cmVuZGVyfVxuICAgICAgPlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxCdXR0b24gY2xhc3NOYW1lPVwiYWRkLWVmZmVjdC1idXR0b25cIiBzZWNvbmRhcnk+XG4gICAgICAgICAgICA8QWRkIGhlaWdodD1cIjEycHhcIiAvPlxuICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydlZmZlY3RNYW5hZ2VyLmFkZEVmZmVjdCd9IC8+XG4gICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9UaXBweVRvb2x0aXA+XG4gICAgKTtcbiAgfTtcbiAgcmV0dXJuIEVmZmVjdFR5cGVTZWxlY3Rvcjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgRWZmZWN0VHlwZVNlbGVjdG9yRmFjdG9yeTtcbiJdfQ==
@@ -0,0 +1,7 @@
1
+ import React, { PropsWithChildren } from 'react';
2
+ export declare type PanelTitleProps = PropsWithChildren<{
3
+ title: string;
4
+ className?: string;
5
+ }>;
6
+ declare const SidePanelTitleFactory: () => React.FC<PanelTitleProps>;
7
+ export default SidePanelTitleFactory;
@@ -0,0 +1,67 @@
1
+ // Copyright (c) 2023 Uber Technologies, Inc.
2
+ //
3
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ // of this software and associated documentation files (the "Software"), to deal
5
+ // in the Software without restriction, including without limitation the rights
6
+ // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ // copies of the Software, and to permit persons to whom the Software is
8
+ // furnished to do so, subject to the following conditions:
9
+ //
10
+ // The above copyright notice and this permission notice shall be included in
11
+ // all copies or substantial portions of the Software.
12
+ //
13
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ // THE SOFTWARE.
20
+
21
+ "use strict";
22
+
23
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
24
+
25
+ Object.defineProperty(exports, "__esModule", {
26
+ value: true
27
+ });
28
+ exports["default"] = void 0;
29
+
30
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
31
+
32
+ var _react = _interopRequireDefault(require("react"));
33
+
34
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
35
+
36
+ var _templateObject, _templateObject2;
37
+
38
+ var StyledSidePanelTitle = _styledComponents["default"].div.attrs({
39
+ className: 'panel-title'
40
+ })(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: 400;\n letter-spacing: 1.25px;\n"])), function (props) {
41
+ return props.theme.titleTextColor;
42
+ }, function (props) {
43
+ return props.theme.sidePanelTitleFontsize;
44
+ }, function (props) {
45
+ return props.theme.sidePanelTitleLineHeight;
46
+ });
47
+
48
+ var PanelHeaderRow = _styledComponents["default"].div.attrs({
49
+ className: 'side-panel-header-row'
50
+ })(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-top: 0px;\n margin-bottom: 8px;\n"])));
51
+
52
+ var SidePanelTitleFactory = function SidePanelTitleFactory() {
53
+ var SidePanelTitle = function SidePanelTitle(_ref) {
54
+ var title = _ref.title,
55
+ className = _ref.className,
56
+ children = _ref.children;
57
+ return /*#__PURE__*/_react["default"].createElement(PanelHeaderRow, null, /*#__PURE__*/_react["default"].createElement(StyledSidePanelTitle, {
58
+ className: className || 'side-panel-title'
59
+ }, title), children);
60
+ };
61
+
62
+ return SidePanelTitle;
63
+ };
64
+
65
+ var _default = SidePanelTitleFactory;
66
+ exports["default"] = _default;
67
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lZmZlY3RzL3NpZGUtcGFuZWwtdGl0bGUudHN4Il0sIm5hbWVzIjpbIlN0eWxlZFNpZGVQYW5lbFRpdGxlIiwic3R5bGVkIiwiZGl2IiwiYXR0cnMiLCJjbGFzc05hbWUiLCJwcm9wcyIsInRoZW1lIiwidGl0bGVUZXh0Q29sb3IiLCJzaWRlUGFuZWxUaXRsZUZvbnRzaXplIiwic2lkZVBhbmVsVGl0bGVMaW5lSGVpZ2h0IiwiUGFuZWxIZWFkZXJSb3ciLCJTaWRlUGFuZWxUaXRsZUZhY3RvcnkiLCJTaWRlUGFuZWxUaXRsZSIsInRpdGxlIiwiY2hpbGRyZW4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7Ozs7QUFRQSxJQUFNQSxvQkFBb0IsR0FBR0MsNkJBQU9DLEdBQVAsQ0FBV0MsS0FBWCxDQUE0QztBQUN2RUMsRUFBQUEsU0FBUyxFQUFFO0FBRDRELENBQTVDLENBQUgsbU1BR2YsVUFBQUMsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZQyxjQUFoQjtBQUFBLENBSFUsRUFJWCxVQUFBRixLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDQyxLQUFOLENBQVlFLHNCQUFoQjtBQUFBLENBSk0sRUFLVCxVQUFBSCxLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDQyxLQUFOLENBQVlHLHdCQUFoQjtBQUFBLENBTEksQ0FBMUI7O0FBVUEsSUFBTUMsY0FBYyxHQUFHVCw2QkFBT0MsR0FBUCxDQUFXQyxLQUFYLENBQWlCO0FBQ3RDQyxFQUFBQSxTQUFTLEVBQUU7QUFEMkIsQ0FBakIsQ0FBSCxrTkFBcEI7O0FBVUEsSUFBTU8scUJBQXFCLEdBQUcsU0FBeEJBLHFCQUF3QixHQUFpQztBQUM3RCxNQUFNQyxjQUFjLEdBQUcsU0FBakJBLGNBQWlCO0FBQUEsUUFBRUMsS0FBRixRQUFFQSxLQUFGO0FBQUEsUUFBU1QsU0FBVCxRQUFTQSxTQUFUO0FBQUEsUUFBb0JVLFFBQXBCLFFBQW9CQSxRQUFwQjtBQUFBLHdCQUNyQixnQ0FBQyxjQUFELHFCQUNFLGdDQUFDLG9CQUFEO0FBQXNCLE1BQUEsU0FBUyxFQUFFVixTQUFTLElBQUk7QUFBOUMsT0FDR1MsS0FESCxDQURGLEVBSUdDLFFBSkgsQ0FEcUI7QUFBQSxHQUF2Qjs7QUFTQSxTQUFPRixjQUFQO0FBQ0QsQ0FYRDs7ZUFhZUQscUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHtQcm9wc1dpdGhDaGlsZHJlbn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5cbmV4cG9ydCB0eXBlIFBhbmVsVGl0bGVQcm9wcyA9IFByb3BzV2l0aENoaWxkcmVuPHtcbiAgdGl0bGU6IHN0cmluZztcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xufT47XG5cbnR5cGUgU3R5bGVkU2lkZVBhbmVsVGl0bGVQcm9wcyA9IHtjbGFzc05hbWU6IHN0cmluZ307XG5jb25zdCBTdHlsZWRTaWRlUGFuZWxUaXRsZSA9IHN0eWxlZC5kaXYuYXR0cnM8U3R5bGVkU2lkZVBhbmVsVGl0bGVQcm9wcz4oe1xuICBjbGFzc05hbWU6ICdwYW5lbC10aXRsZSdcbn0pYFxuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50aXRsZVRleHRDb2xvcn07XG4gIGZvbnQtc2l6ZTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zaWRlUGFuZWxUaXRsZUZvbnRzaXplfTtcbiAgbGluZS1oZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2lkZVBhbmVsVGl0bGVMaW5lSGVpZ2h0fTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuMjVweDtcbmA7XG5cbmNvbnN0IFBhbmVsSGVhZGVyUm93ID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ3NpZGUtcGFuZWwtaGVhZGVyLXJvdydcbn0pYFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuYDtcblxuY29uc3QgU2lkZVBhbmVsVGl0bGVGYWN0b3J5ID0gKCk6IFJlYWN0LkZDPFBhbmVsVGl0bGVQcm9wcz4gPT4ge1xuICBjb25zdCBTaWRlUGFuZWxUaXRsZSA9ICh7dGl0bGUsIGNsYXNzTmFtZSwgY2hpbGRyZW59OiBQYW5lbFRpdGxlUHJvcHMpID0+IChcbiAgICA8UGFuZWxIZWFkZXJSb3c+XG4gICAgICA8U3R5bGVkU2lkZVBhbmVsVGl0bGUgY2xhc3NOYW1lPXtjbGFzc05hbWUgfHwgJ3NpZGUtcGFuZWwtdGl0bGUnfT5cbiAgICAgICAge3RpdGxlfVxuICAgICAgPC9TdHlsZWRTaWRlUGFuZWxUaXRsZT5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L1BhbmVsSGVhZGVyUm93PlxuICApO1xuXG4gIHJldHVybiBTaWRlUGFuZWxUaXRsZTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFNpZGVQYW5lbFRpdGxlRmFjdG9yeTtcbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import { TimeRangeFilter } from '@kepler.gl/types';
3
+ import AnimationControllerFactory from './common/animation-control/animation-controller';
4
+ import { Timeline } from '@kepler.gl/types';
5
+ interface FilterAnimationControllerProps {
6
+ filter: TimeRangeFilter & {
7
+ animationWindow?: string;
8
+ };
9
+ filterIdx: number;
10
+ setFilterAnimationTime: (idx: number, value: string, a: any[]) => void;
11
+ children?: (isAnimating: boolean | undefined, startAnimation: () => void, pauseAnimation: () => void, resetAnimation: () => void, timeline: Timeline | undefined, setTimelineValue: (x: any) => void) => React.ReactElement | null;
12
+ }
13
+ declare function FilterAnimationControllerFactory(AnimationController: ReturnType<typeof AnimationControllerFactory>): React.FC<FilterAnimationControllerProps>;
14
+ declare namespace FilterAnimationControllerFactory {
15
+ var deps: (typeof AnimationControllerFactory)[];
16
+ }
17
+ export default FilterAnimationControllerFactory;
@@ -0,0 +1,91 @@
1
+ // Copyright (c) 2023 Uber Technologies, Inc.
2
+ //
3
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ // of this software and associated documentation files (the "Software"), to deal
5
+ // in the Software without restriction, including without limitation the rights
6
+ // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ // copies of the Software, and to permit persons to whom the Software is
8
+ // furnished to do so, subject to the following conditions:
9
+ //
10
+ // The above copyright notice and this permission notice shall be included in
11
+ // all copies or substantial portions of the Software.
12
+ //
13
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ // THE SOFTWARE.
20
+
21
+ "use strict";
22
+
23
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
24
+
25
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
26
+
27
+ Object.defineProperty(exports, "__esModule", {
28
+ value: true
29
+ });
30
+ exports["default"] = void 0;
31
+
32
+ var _react = _interopRequireWildcard(require("react"));
33
+
34
+ var _utils = require("@kepler.gl/utils");
35
+
36
+ var _constants = require("@kepler.gl/constants");
37
+
38
+ var _animationController = _interopRequireDefault(require("./common/animation-control/animation-controller"));
39
+
40
+ FilterAnimationControllerFactory.deps = [_animationController["default"]];
41
+
42
+ function FilterAnimationControllerFactory(AnimationController) {
43
+ var FilterAnimationController = function FilterAnimationController(_ref) {
44
+ var filter = _ref.filter,
45
+ filterIdx = _ref.filterIdx,
46
+ setFilterAnimationTime = _ref.setFilterAnimationTime,
47
+ children = _ref.children;
48
+ var intervalBins = (0, _react.useMemo)(function () {
49
+ return (0, _utils.getIntervalBins)(filter);
50
+ }, [filter]);
51
+ var steps = (0, _react.useMemo)(function () {
52
+ return intervalBins ? intervalBins.map(function (x) {
53
+ return x.x0;
54
+ }) : null;
55
+ }, [intervalBins]);
56
+ var updateAnimation = (0, _react.useCallback)(function (value) {
57
+ switch (filter.animationWindow) {
58
+ case _constants.ANIMATION_WINDOW.interval:
59
+ var _idx = value[1];
60
+ setFilterAnimationTime(filterIdx, 'value', [intervalBins[_idx].x0, intervalBins[_idx].x1 - 1]);
61
+ break;
62
+
63
+ default:
64
+ setFilterAnimationTime(filterIdx, 'value', value);
65
+ break;
66
+ }
67
+ }, [filterIdx, intervalBins, filter.animationWindow, setFilterAnimationTime]); // if filter is synced merge the filter and animation config
68
+
69
+ var timeline = (0, _utils.getTimelineFromFilter)(filter);
70
+ return /*#__PURE__*/_react["default"].createElement(AnimationController, {
71
+ key: "filter-control",
72
+ value: filter.value,
73
+ domain: filter.domain,
74
+ speed: filter.speed,
75
+ isAnimating: filter.isAnimating,
76
+ animationWindow: filter.animationWindow,
77
+ steps: steps,
78
+ updateAnimation: updateAnimation // @ts-expect-error different function type, goes to TimeWidget setFilterAnimationTime()
79
+ ,
80
+ setTimelineValue: setFilterAnimationTime,
81
+ timeline: timeline,
82
+ children: children
83
+ });
84
+ };
85
+
86
+ return FilterAnimationController;
87
+ }
88
+
89
+ var _default = FilterAnimationControllerFactory;
90
+ exports["default"] = _default;
91
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9maWx0ZXItYW5pbWF0aW9uLWNvbnRyb2xsZXIudHN4Il0sIm5hbWVzIjpbIkZpbHRlckFuaW1hdGlvbkNvbnRyb2xsZXJGYWN0b3J5IiwiZGVwcyIsIkFuaW1hdGlvbkNvbnRyb2xsZXJGYWN0b3J5IiwiQW5pbWF0aW9uQ29udHJvbGxlciIsIkZpbHRlckFuaW1hdGlvbkNvbnRyb2xsZXIiLCJmaWx0ZXIiLCJmaWx0ZXJJZHgiLCJzZXRGaWx0ZXJBbmltYXRpb25UaW1lIiwiY2hpbGRyZW4iLCJpbnRlcnZhbEJpbnMiLCJzdGVwcyIsIm1hcCIsIngiLCJ4MCIsInVwZGF0ZUFuaW1hdGlvbiIsInZhbHVlIiwiYW5pbWF0aW9uV2luZG93IiwiQU5JTUFUSU9OX1dJTkRPVyIsImludGVydmFsIiwiaWR4IiwieDEiLCJ0aW1lbGluZSIsImRvbWFpbiIsInNwZWVkIiwiaXNBbmltYXRpbmciXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBaUJBQSxnQ0FBZ0MsQ0FBQ0MsSUFBakMsR0FBd0MsQ0FBQ0MsK0JBQUQsQ0FBeEM7O0FBQ0EsU0FBU0YsZ0NBQVQsQ0FDRUcsbUJBREYsRUFFRTtBQUNBLE1BQU1DLHlCQUFtRSxHQUFHLFNBQXRFQSx5QkFBc0UsT0FLdEU7QUFBQSxRQUpKQyxNQUlJLFFBSkpBLE1BSUk7QUFBQSxRQUhKQyxTQUdJLFFBSEpBLFNBR0k7QUFBQSxRQUZKQyxzQkFFSSxRQUZKQSxzQkFFSTtBQUFBLFFBREpDLFFBQ0ksUUFESkEsUUFDSTtBQUNKLFFBQU1DLFlBQVksR0FBRyxvQkFBUTtBQUFBLGFBQU0sNEJBQWdCSixNQUFoQixDQUFOO0FBQUEsS0FBUixFQUF1QyxDQUFDQSxNQUFELENBQXZDLENBQXJCO0FBRUEsUUFBTUssS0FBSyxHQUFHLG9CQUFRO0FBQUEsYUFBT0QsWUFBWSxHQUFHQSxZQUFZLENBQUNFLEdBQWIsQ0FBaUIsVUFBQUMsQ0FBQztBQUFBLGVBQUlBLENBQUMsQ0FBQ0MsRUFBTjtBQUFBLE9BQWxCLENBQUgsR0FBaUMsSUFBcEQ7QUFBQSxLQUFSLEVBQW1FLENBQy9FSixZQUQrRSxDQUFuRSxDQUFkO0FBSUEsUUFBTUssZUFBZSxHQUFHLHdCQUN0QixVQUFBQyxLQUFLLEVBQUk7QUFDUCxjQUFRVixNQUFNLENBQUNXLGVBQWY7QUFDRSxhQUFLQyw0QkFBaUJDLFFBQXRCO0FBQ0UsY0FBTUMsSUFBRyxHQUFHSixLQUFLLENBQUMsQ0FBRCxDQUFqQjtBQUNBUixVQUFBQSxzQkFBc0IsQ0FBQ0QsU0FBRCxFQUFZLE9BQVosRUFBcUIsQ0FDekNHLFlBQVksQ0FBQ1UsSUFBRCxDQUFaLENBQWtCTixFQUR1QixFQUV6Q0osWUFBWSxDQUFDVSxJQUFELENBQVosQ0FBa0JDLEVBQWxCLEdBQXVCLENBRmtCLENBQXJCLENBQXRCO0FBSUE7O0FBQ0Y7QUFDRWIsVUFBQUEsc0JBQXNCLENBQUNELFNBQUQsRUFBWSxPQUFaLEVBQXFCUyxLQUFyQixDQUF0QjtBQUNBO0FBVko7QUFZRCxLQWRxQixFQWV0QixDQUFDVCxTQUFELEVBQVlHLFlBQVosRUFBMEJKLE1BQU0sQ0FBQ1csZUFBakMsRUFBa0RULHNCQUFsRCxDQWZzQixDQUF4QixDQVBJLENBeUJKOztBQUNBLFFBQU1jLFFBQVEsR0FBRyxrQ0FBc0JoQixNQUF0QixDQUFqQjtBQUVBLHdCQUNFLGdDQUFDLG1CQUFEO0FBQ0UsTUFBQSxHQUFHLEVBQUMsZ0JBRE47QUFFRSxNQUFBLEtBQUssRUFBRUEsTUFBTSxDQUFDVSxLQUZoQjtBQUdFLE1BQUEsTUFBTSxFQUFFVixNQUFNLENBQUNpQixNQUhqQjtBQUlFLE1BQUEsS0FBSyxFQUFFakIsTUFBTSxDQUFDa0IsS0FKaEI7QUFLRSxNQUFBLFdBQVcsRUFBRWxCLE1BQU0sQ0FBQ21CLFdBTHRCO0FBTUUsTUFBQSxlQUFlLEVBQUVuQixNQUFNLENBQUNXLGVBTjFCO0FBT0UsTUFBQSxLQUFLLEVBQUVOLEtBUFQ7QUFRRSxNQUFBLGVBQWUsRUFBRUksZUFSbkIsQ0FTRTtBQVRGO0FBVUUsTUFBQSxnQkFBZ0IsRUFBRVAsc0JBVnBCO0FBV0UsTUFBQSxRQUFRLEVBQUVjLFFBWFo7QUFZRSxNQUFBLFFBQVEsRUFBRWI7QUFaWixNQURGO0FBZ0JELEdBakREOztBQWtEQSxTQUFPSix5QkFBUDtBQUNEOztlQUVjSixnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge3VzZUNhbGxiYWNrLCB1c2VNZW1vfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQge2dldEludGVydmFsQmlucywgZ2V0VGltZWxpbmVGcm9tRmlsdGVyfSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcbmltcG9ydCB7VGltZVJhbmdlRmlsdGVyfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcbmltcG9ydCB7QU5JTUFUSU9OX1dJTkRPV30gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuaW1wb3J0IEFuaW1hdGlvbkNvbnRyb2xsZXJGYWN0b3J5IGZyb20gJy4vY29tbW9uL2FuaW1hdGlvbi1jb250cm9sL2FuaW1hdGlvbi1jb250cm9sbGVyJztcbmltcG9ydCB7VGltZWxpbmV9IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuXG5pbnRlcmZhY2UgRmlsdGVyQW5pbWF0aW9uQ29udHJvbGxlclByb3BzIHtcbiAgZmlsdGVyOiBUaW1lUmFuZ2VGaWx0ZXIgJiB7YW5pbWF0aW9uV2luZG93Pzogc3RyaW5nfTtcbiAgZmlsdGVySWR4OiBudW1iZXI7XG4gIHNldEZpbHRlckFuaW1hdGlvblRpbWU6IChpZHg6IG51bWJlciwgdmFsdWU6IHN0cmluZywgYTogYW55W10pID0+IHZvaWQ7XG4gIGNoaWxkcmVuPzogKFxuICAgIGlzQW5pbWF0aW5nOiBib29sZWFuIHwgdW5kZWZpbmVkLFxuICAgIHN0YXJ0QW5pbWF0aW9uOiAoKSA9PiB2b2lkLFxuICAgIHBhdXNlQW5pbWF0aW9uOiAoKSA9PiB2b2lkLFxuICAgIHJlc2V0QW5pbWF0aW9uOiAoKSA9PiB2b2lkLFxuICAgIHRpbWVsaW5lOiBUaW1lbGluZSB8IHVuZGVmaW5lZCxcbiAgICBzZXRUaW1lbGluZVZhbHVlOiAoeDogYW55KSA9PiB2b2lkXG4gICkgPT4gUmVhY3QuUmVhY3RFbGVtZW50IHwgbnVsbDtcbn1cblxuRmlsdGVyQW5pbWF0aW9uQ29udHJvbGxlckZhY3RvcnkuZGVwcyA9IFtBbmltYXRpb25Db250cm9sbGVyRmFjdG9yeV07XG5mdW5jdGlvbiBGaWx0ZXJBbmltYXRpb25Db250cm9sbGVyRmFjdG9yeShcbiAgQW5pbWF0aW9uQ29udHJvbGxlcjogUmV0dXJuVHlwZTx0eXBlb2YgQW5pbWF0aW9uQ29udHJvbGxlckZhY3Rvcnk+XG4pIHtcbiAgY29uc3QgRmlsdGVyQW5pbWF0aW9uQ29udHJvbGxlcjogUmVhY3QuRkM8RmlsdGVyQW5pbWF0aW9uQ29udHJvbGxlclByb3BzPiA9ICh7XG4gICAgZmlsdGVyLFxuICAgIGZpbHRlcklkeCxcbiAgICBzZXRGaWx0ZXJBbmltYXRpb25UaW1lLFxuICAgIGNoaWxkcmVuXG4gIH0pID0+IHtcbiAgICBjb25zdCBpbnRlcnZhbEJpbnMgPSB1c2VNZW1vKCgpID0+IGdldEludGVydmFsQmlucyhmaWx0ZXIpLCBbZmlsdGVyXSk7XG5cbiAgICBjb25zdCBzdGVwcyA9IHVzZU1lbW8oKCkgPT4gKGludGVydmFsQmlucyA/IGludGVydmFsQmlucy5tYXAoeCA9PiB4LngwKSA6IG51bGwpLCBbXG4gICAgICBpbnRlcnZhbEJpbnNcbiAgICBdKTtcblxuICAgIGNvbnN0IHVwZGF0ZUFuaW1hdGlvbiA9IHVzZUNhbGxiYWNrKFxuICAgICAgdmFsdWUgPT4ge1xuICAgICAgICBzd2l0Y2ggKGZpbHRlci5hbmltYXRpb25XaW5kb3cpIHtcbiAgICAgICAgICBjYXNlIEFOSU1BVElPTl9XSU5ET1cuaW50ZXJ2YWw6XG4gICAgICAgICAgICBjb25zdCBpZHggPSB2YWx1ZVsxXTtcbiAgICAgICAgICAgIHNldEZpbHRlckFuaW1hdGlvblRpbWUoZmlsdGVySWR4LCAndmFsdWUnLCBbXG4gICAgICAgICAgICAgIGludGVydmFsQmluc1tpZHhdLngwLFxuICAgICAgICAgICAgICBpbnRlcnZhbEJpbnNbaWR4XS54MSAtIDFcbiAgICAgICAgICAgIF0pO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHNldEZpbHRlckFuaW1hdGlvblRpbWUoZmlsdGVySWR4LCAndmFsdWUnLCB2YWx1ZSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFtmaWx0ZXJJZHgsIGludGVydmFsQmlucywgZmlsdGVyLmFuaW1hdGlvbldpbmRvdywgc2V0RmlsdGVyQW5pbWF0aW9uVGltZV1cbiAgICApO1xuXG4gICAgLy8gaWYgZmlsdGVyIGlzIHN5bmNlZCBtZXJnZSB0aGUgZmlsdGVyIGFuZCBhbmltYXRpb24gY29uZmlnXG4gICAgY29uc3QgdGltZWxpbmUgPSBnZXRUaW1lbGluZUZyb21GaWx0ZXIoZmlsdGVyKTtcblxuICAgIHJldHVybiAoXG4gICAgICA8QW5pbWF0aW9uQ29udHJvbGxlclxuICAgICAgICBrZXk9XCJmaWx0ZXItY29udHJvbFwiXG4gICAgICAgIHZhbHVlPXtmaWx0ZXIudmFsdWV9XG4gICAgICAgIGRvbWFpbj17ZmlsdGVyLmRvbWFpbn1cbiAgICAgICAgc3BlZWQ9e2ZpbHRlci5zcGVlZH1cbiAgICAgICAgaXNBbmltYXRpbmc9e2ZpbHRlci5pc0FuaW1hdGluZ31cbiAgICAgICAgYW5pbWF0aW9uV2luZG93PXtmaWx0ZXIuYW5pbWF0aW9uV2luZG93fVxuICAgICAgICBzdGVwcz17c3RlcHN9XG4gICAgICAgIHVwZGF0ZUFuaW1hdGlvbj17dXBkYXRlQW5pbWF0aW9ufVxuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIGRpZmZlcmVudCBmdW5jdGlvbiB0eXBlLCBnb2VzIHRvIFRpbWVXaWRnZXQgc2V0RmlsdGVyQW5pbWF0aW9uVGltZSgpXG4gICAgICAgIHNldFRpbWVsaW5lVmFsdWU9e3NldEZpbHRlckFuaW1hdGlvblRpbWV9XG4gICAgICAgIHRpbWVsaW5lPXt0aW1lbGluZX1cbiAgICAgICAgY2hpbGRyZW49e2NoaWxkcmVufVxuICAgICAgLz5cbiAgICApO1xuICB9O1xuICByZXR1cm4gRmlsdGVyQW5pbWF0aW9uQ29udHJvbGxlcjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgRmlsdGVyQW5pbWF0aW9uQ29udHJvbGxlckZhY3Rvcnk7XG4iXX0=
@@ -1,4 +1,4 @@
1
- // Copyright (c) 2022 Uber Technologies, Inc.
1
+ // Copyright (c) 2023 Uber Technologies, Inc.
2
2
  //
3
3
  // Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  // of this software and associated documentation files (the "Software"), to deal
@@ -37,4 +37,4 @@ var _templateObject;
37
37
 
38
38
  var StyledFilterPanel = (0, _styledComponents["default"])(_styledComponents2.PanelLabel)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: 500;\n color: white;\n flex: 1;\n"])));
39
39
  exports.StyledFilterPanel = StyledFilterPanel;
40
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maWx0ZXJzL2NvbXBvbmVudHMudHMiXSwibmFtZXMiOlsiU3R5bGVkRmlsdGVyUGFuZWwiLCJQYW5lbExhYmVsIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7OztBQUVPLElBQU1BLGlCQUFpQixHQUFHLGtDQUFPQyw2QkFBUCxDQUFILDBJQUF2QiIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHtQYW5lbExhYmVsfSBmcm9tICcuLi9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkRmlsdGVyUGFuZWwgPSBzdHlsZWQoUGFuZWxMYWJlbClgXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZmxleDogMTtcbmA7XG4iXX0=
40
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maWx0ZXJzL2NvbXBvbmVudHMudHMiXSwibmFtZXMiOlsiU3R5bGVkRmlsdGVyUGFuZWwiLCJQYW5lbExhYmVsIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7OztBQUVPLElBQU1BLGlCQUFpQixHQUFHLGtDQUFPQyw2QkFBUCxDQUFILDBJQUF2QiIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMyBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHtQYW5lbExhYmVsfSBmcm9tICcuLi9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkRmlsdGVyUGFuZWwgPSBzdHlsZWQoUGFuZWxMYWJlbClgXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZmxleDogMTtcbmA7XG4iXX0=