@kepler.gl/components 3.0.0-alpha.0

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 (539) hide show
  1. package/dist/bottom-widget.d.ts +46 -0
  2. package/dist/bottom-widget.js +242 -0
  3. package/dist/common/action-panel.d.ts +27 -0
  4. package/dist/common/action-panel.js +152 -0
  5. package/dist/common/animation-control/animation-control.d.ts +24 -0
  6. package/dist/common/animation-control/animation-control.js +155 -0
  7. package/dist/common/animation-control/animation-controller.d.ts +15 -0
  8. package/dist/common/animation-control/animation-controller.js +324 -0
  9. package/dist/common/animation-control/animation-speed-slider.d.ts +12 -0
  10. package/dist/common/animation-control/animation-speed-slider.js +120 -0
  11. package/dist/common/animation-control/animation-window-control.d.ts +20 -0
  12. package/dist/common/animation-control/animation-window-control.js +86 -0
  13. package/dist/common/animation-control/floating-time-display.d.ts +9 -0
  14. package/dist/common/animation-control/floating-time-display.js +181 -0
  15. package/dist/common/animation-control/play-control.d.ts +12 -0
  16. package/dist/common/animation-control/play-control.js +81 -0
  17. package/dist/common/animation-control/playback-controls.d.ts +55 -0
  18. package/dist/common/animation-control/playback-controls.js +202 -0
  19. package/dist/common/animation-control/reset-control.d.ts +9 -0
  20. package/dist/common/animation-control/reset-control.js +71 -0
  21. package/dist/common/animation-control/speed-control.d.ts +12 -0
  22. package/dist/common/animation-control/speed-control.js +88 -0
  23. package/dist/common/animation-control/window-action-control.d.ts +11 -0
  24. package/dist/common/animation-control/window-action-control.js +87 -0
  25. package/dist/common/checkbox.d.ts +35 -0
  26. package/dist/common/checkbox.js +159 -0
  27. package/dist/common/color-legend.d.ts +39 -0
  28. package/dist/common/color-legend.js +257 -0
  29. package/dist/common/data-table/button.d.ts +8 -0
  30. package/dist/common/data-table/button.js +66 -0
  31. package/dist/common/data-table/canvas.d.ts +2 -0
  32. package/dist/common/data-table/canvas.js +52 -0
  33. package/dist/common/data-table/cell-size.d.ts +43 -0
  34. package/dist/common/data-table/cell-size.js +195 -0
  35. package/dist/common/data-table/grid.d.ts +7 -0
  36. package/dist/common/data-table/grid.js +119 -0
  37. package/dist/common/data-table/header-cell.d.ts +25 -0
  38. package/dist/common/data-table/header-cell.js +152 -0
  39. package/dist/common/data-table/index.d.ts +108 -0
  40. package/dist/common/data-table/index.js +457 -0
  41. package/dist/common/data-table/option-dropdown.d.ts +14 -0
  42. package/dist/common/data-table/option-dropdown.js +142 -0
  43. package/dist/common/dataset-label.d.ts +10 -0
  44. package/dist/common/dataset-label.js +56 -0
  45. package/dist/common/error-boundary.d.ts +12 -0
  46. package/dist/common/error-boundary.js +103 -0
  47. package/dist/common/field-selector.d.ts +43 -0
  48. package/dist/common/field-selector.js +220 -0
  49. package/dist/common/field-token.d.ts +46 -0
  50. package/dist/common/field-token.js +70 -0
  51. package/dist/common/file-uploader/file-drop.d.ts +53 -0
  52. package/dist/common/file-uploader/file-drop.js +252 -0
  53. package/dist/common/file-uploader/file-upload-progress.d.ts +8 -0
  54. package/dist/common/file-uploader/file-upload-progress.js +123 -0
  55. package/dist/common/file-uploader/file-upload.d.ts +27 -0
  56. package/dist/common/file-uploader/file-upload.js +324 -0
  57. package/dist/common/file-uploader/upload-button.d.ts +7 -0
  58. package/dist/common/file-uploader/upload-button.js +94 -0
  59. package/dist/common/histogram-plot.d.ts +3 -0
  60. package/dist/common/histogram-plot.js +134 -0
  61. package/dist/common/icon-button.d.ts +12 -0
  62. package/dist/common/icon-button.js +52 -0
  63. package/dist/common/icons/add.d.ts +9 -0
  64. package/dist/common/icons/add.js +78 -0
  65. package/dist/common/icons/anchor_window.d.ts +11 -0
  66. package/dist/common/icons/anchor_window.js +55 -0
  67. package/dist/common/icons/arrow-down-alt.d.ts +9 -0
  68. package/dist/common/icons/arrow-down-alt.js +78 -0
  69. package/dist/common/icons/arrow-down-solid.d.ts +9 -0
  70. package/dist/common/icons/arrow-down-solid.js +78 -0
  71. package/dist/common/icons/arrow-down.d.ts +9 -0
  72. package/dist/common/icons/arrow-down.js +78 -0
  73. package/dist/common/icons/arrow-left.d.ts +9 -0
  74. package/dist/common/icons/arrow-left.js +81 -0
  75. package/dist/common/icons/arrow-right.d.ts +9 -0
  76. package/dist/common/icons/arrow-right.js +78 -0
  77. package/dist/common/icons/arrow-up-alt.d.ts +9 -0
  78. package/dist/common/icons/arrow-up-alt.js +79 -0
  79. package/dist/common/icons/arrow-up-solid.d.ts +9 -0
  80. package/dist/common/icons/arrow-up-solid.js +78 -0
  81. package/dist/common/icons/arrow-up.d.ts +9 -0
  82. package/dist/common/icons/arrow-up.js +78 -0
  83. package/dist/common/icons/base.d.ts +29 -0
  84. package/dist/common/icons/base.js +116 -0
  85. package/dist/common/icons/bug.d.ts +9 -0
  86. package/dist/common/icons/bug.js +80 -0
  87. package/dist/common/icons/cancel.d.ts +9 -0
  88. package/dist/common/icons/cancel.js +78 -0
  89. package/dist/common/icons/checkmark.d.ts +10 -0
  90. package/dist/common/icons/checkmark.js +85 -0
  91. package/dist/common/icons/clipboard.d.ts +9 -0
  92. package/dist/common/icons/clipboard.js +79 -0
  93. package/dist/common/icons/clock.d.ts +9 -0
  94. package/dist/common/icons/clock.js +80 -0
  95. package/dist/common/icons/close.d.ts +9 -0
  96. package/dist/common/icons/close.js +83 -0
  97. package/dist/common/icons/code-alt.d.ts +9 -0
  98. package/dist/common/icons/code-alt.js +82 -0
  99. package/dist/common/icons/copy.d.ts +9 -0
  100. package/dist/common/icons/copy.js +84 -0
  101. package/dist/common/icons/crosshairs.d.ts +9 -0
  102. package/dist/common/icons/crosshairs.js +82 -0
  103. package/dist/common/icons/cube-3d.d.ts +9 -0
  104. package/dist/common/icons/cube-3d.js +82 -0
  105. package/dist/common/icons/cursor-click.d.ts +9 -0
  106. package/dist/common/icons/cursor-click.js +82 -0
  107. package/dist/common/icons/data-table.d.ts +10 -0
  108. package/dist/common/icons/data-table.js +79 -0
  109. package/dist/common/icons/db.d.ts +10 -0
  110. package/dist/common/icons/db.js +79 -0
  111. package/dist/common/icons/delete.d.ts +9 -0
  112. package/dist/common/icons/delete.js +80 -0
  113. package/dist/common/icons/docs.d.ts +9 -0
  114. package/dist/common/icons/docs.js +94 -0
  115. package/dist/common/icons/drag-n-drop.d.ts +9 -0
  116. package/dist/common/icons/drag-n-drop.js +80 -0
  117. package/dist/common/icons/draw-polygon.d.ts +10 -0
  118. package/dist/common/icons/draw-polygon.js +98 -0
  119. package/dist/common/icons/email.d.ts +9 -0
  120. package/dist/common/icons/email.js +82 -0
  121. package/dist/common/icons/expand.d.ts +9 -0
  122. package/dist/common/icons/expand.js +80 -0
  123. package/dist/common/icons/eye-seen.d.ts +9 -0
  124. package/dist/common/icons/eye-seen.js +80 -0
  125. package/dist/common/icons/eye-unseen.d.ts +9 -0
  126. package/dist/common/icons/eye-unseen.js +80 -0
  127. package/dist/common/icons/file-type.d.ts +8 -0
  128. package/dist/common/icons/file-type.js +65 -0
  129. package/dist/common/icons/file.d.ts +9 -0
  130. package/dist/common/icons/file.js +78 -0
  131. package/dist/common/icons/files.d.ts +9 -0
  132. package/dist/common/icons/files.js +80 -0
  133. package/dist/common/icons/filter-funnel.d.ts +9 -0
  134. package/dist/common/icons/filter-funnel.js +78 -0
  135. package/dist/common/icons/free-window.d.ts +11 -0
  136. package/dist/common/icons/free-window.js +55 -0
  137. package/dist/common/icons/gear.d.ts +9 -0
  138. package/dist/common/icons/gear.js +80 -0
  139. package/dist/common/icons/hash.d.ts +9 -0
  140. package/dist/common/icons/hash.js +78 -0
  141. package/dist/common/icons/histogram.d.ts +9 -0
  142. package/dist/common/icons/histogram.js +79 -0
  143. package/dist/common/icons/index.d.ts +76 -0
  144. package/dist/common/icons/index.js +624 -0
  145. package/dist/common/icons/info.d.ts +12 -0
  146. package/dist/common/icons/info.js +92 -0
  147. package/dist/common/icons/layers.d.ts +9 -0
  148. package/dist/common/icons/layers.js +78 -0
  149. package/dist/common/icons/left-arrow.d.ts +9 -0
  150. package/dist/common/icons/left-arrow.js +82 -0
  151. package/dist/common/icons/legend.d.ts +9 -0
  152. package/dist/common/icons/legend.js +78 -0
  153. package/dist/common/icons/line-chart.d.ts +9 -0
  154. package/dist/common/icons/line-chart.js +78 -0
  155. package/dist/common/icons/login.d.ts +9 -0
  156. package/dist/common/icons/login.js +81 -0
  157. package/dist/common/icons/logout.d.ts +9 -0
  158. package/dist/common/icons/logout.js +80 -0
  159. package/dist/common/icons/map-icon.d.ts +11 -0
  160. package/dist/common/icons/map-icon.js +86 -0
  161. package/dist/common/icons/map.d.ts +11 -0
  162. package/dist/common/icons/map.js +86 -0
  163. package/dist/common/icons/messages.d.ts +9 -0
  164. package/dist/common/icons/messages.js +78 -0
  165. package/dist/common/icons/minus.d.ts +9 -0
  166. package/dist/common/icons/minus.js +78 -0
  167. package/dist/common/icons/order-by-dataset.d.ts +12 -0
  168. package/dist/common/icons/order-by-dataset.js +55 -0
  169. package/dist/common/icons/order-by-list.d.ts +12 -0
  170. package/dist/common/icons/order-by-list.js +47 -0
  171. package/dist/common/icons/pause.d.ts +9 -0
  172. package/dist/common/icons/pause.js +78 -0
  173. package/dist/common/icons/picture.d.ts +9 -0
  174. package/dist/common/icons/picture.js +80 -0
  175. package/dist/common/icons/pin.d.ts +9 -0
  176. package/dist/common/icons/pin.js +86 -0
  177. package/dist/common/icons/play.d.ts +9 -0
  178. package/dist/common/icons/play.js +78 -0
  179. package/dist/common/icons/polygon.d.ts +10 -0
  180. package/dist/common/icons/polygon.js +100 -0
  181. package/dist/common/icons/rectangle.d.ts +10 -0
  182. package/dist/common/icons/rectangle.js +101 -0
  183. package/dist/common/icons/reduce.d.ts +9 -0
  184. package/dist/common/icons/reduce.js +81 -0
  185. package/dist/common/icons/reset.d.ts +9 -0
  186. package/dist/common/icons/reset.js +78 -0
  187. package/dist/common/icons/rocket.d.ts +9 -0
  188. package/dist/common/icons/rocket.js +78 -0
  189. package/dist/common/icons/save.d.ts +9 -0
  190. package/dist/common/icons/save.js +80 -0
  191. package/dist/common/icons/save2.d.ts +9 -0
  192. package/dist/common/icons/save2.js +84 -0
  193. package/dist/common/icons/search.d.ts +9 -0
  194. package/dist/common/icons/search.js +80 -0
  195. package/dist/common/icons/settings.d.ts +9 -0
  196. package/dist/common/icons/settings.js +80 -0
  197. package/dist/common/icons/share.d.ts +9 -0
  198. package/dist/common/icons/share.js +78 -0
  199. package/dist/common/icons/split.d.ts +9 -0
  200. package/dist/common/icons/split.js +106 -0
  201. package/dist/common/icons/square-select.d.ts +9 -0
  202. package/dist/common/icons/square-select.js +80 -0
  203. package/dist/common/icons/trash.d.ts +9 -0
  204. package/dist/common/icons/trash.js +80 -0
  205. package/dist/common/icons/vert-dots.d.ts +9 -0
  206. package/dist/common/icons/vert-dots.js +116 -0
  207. package/dist/common/icons/vert-three-dots.d.ts +9 -0
  208. package/dist/common/icons/vert-three-dots.js +91 -0
  209. package/dist/common/icons/warning-sign.d.ts +15 -0
  210. package/dist/common/icons/warning-sign.js +100 -0
  211. package/dist/common/icons/warning.d.ts +10 -0
  212. package/dist/common/icons/warning.js +93 -0
  213. package/dist/common/image-preview.d.ts +15 -0
  214. package/dist/common/image-preview.js +91 -0
  215. package/dist/common/index.d.ts +3 -0
  216. package/dist/common/index.js +287 -0
  217. package/dist/common/info-helper.d.ts +10 -0
  218. package/dist/common/info-helper.js +95 -0
  219. package/dist/common/item-selector/accessor.d.ts +7 -0
  220. package/dist/common/item-selector/accessor.js +56 -0
  221. package/dist/common/item-selector/chickleted-input.d.ts +21 -0
  222. package/dist/common/item-selector/chickleted-input.js +116 -0
  223. package/dist/common/item-selector/dropdown-list.d.ts +50 -0
  224. package/dist/common/item-selector/dropdown-list.js +191 -0
  225. package/dist/common/item-selector/item-selector.d.ts +45 -0
  226. package/dist/common/item-selector/item-selector.js +359 -0
  227. package/dist/common/item-selector/typeahead.d.ts +113 -0
  228. package/dist/common/item-selector/typeahead.js +507 -0
  229. package/dist/common/line-chart.d.ts +34 -0
  230. package/dist/common/line-chart.js +146 -0
  231. package/dist/common/loading-spinner.d.ts +9 -0
  232. package/dist/common/loading-spinner.js +76 -0
  233. package/dist/common/logo.d.ts +8 -0
  234. package/dist/common/logo.js +102 -0
  235. package/dist/common/map-layer-selector.d.ts +13 -0
  236. package/dist/common/map-layer-selector.js +69 -0
  237. package/dist/common/modal.d.ts +51 -0
  238. package/dist/common/modal.js +211 -0
  239. package/dist/common/portaled.d.ts +54 -0
  240. package/dist/common/portaled.js +360 -0
  241. package/dist/common/progress-bar.d.ts +12 -0
  242. package/dist/common/progress-bar.js +74 -0
  243. package/dist/common/range-brush.d.ts +19 -0
  244. package/dist/common/range-brush.js +346 -0
  245. package/dist/common/range-plot.d.ts +35 -0
  246. package/dist/common/range-plot.js +156 -0
  247. package/dist/common/range-slider.d.ts +30 -0
  248. package/dist/common/range-slider.js +343 -0
  249. package/dist/common/slider/mouse-event.d.ts +27 -0
  250. package/dist/common/slider/mouse-event.js +145 -0
  251. package/dist/common/slider/slider-bar-handle.d.ts +29 -0
  252. package/dist/common/slider/slider-bar-handle.js +135 -0
  253. package/dist/common/slider/slider-handle.d.ts +33 -0
  254. package/dist/common/slider/slider-handle.js +182 -0
  255. package/dist/common/slider/slider.d.ts +70 -0
  256. package/dist/common/slider/slider.js +264 -0
  257. package/dist/common/styled-components.d.ts +123 -0
  258. package/dist/common/styled-components.js +438 -0
  259. package/dist/common/switch.d.ts +15 -0
  260. package/dist/common/switch.js +50 -0
  261. package/dist/common/time-range-slider-time-title.d.ts +9 -0
  262. package/dist/common/time-range-slider-time-title.js +94 -0
  263. package/dist/common/time-range-slider.d.ts +32 -0
  264. package/dist/common/time-range-slider.js +132 -0
  265. package/dist/common/time-slider-marker.d.ts +21 -0
  266. package/dist/common/time-slider-marker.js +161 -0
  267. package/dist/common/tippy-tooltip.d.ts +4 -0
  268. package/dist/common/tippy-tooltip.js +142 -0
  269. package/dist/common/toolbar-item.d.ts +14 -0
  270. package/dist/common/toolbar-item.js +91 -0
  271. package/dist/common/toolbar.d.ts +5 -0
  272. package/dist/common/toolbar.js +53 -0
  273. package/dist/common/vertical-toolbar.d.ts +3 -0
  274. package/dist/common/vertical-toolbar.js +42 -0
  275. package/dist/connect/keplergl-connect.d.ts +5 -0
  276. package/dist/connect/keplergl-connect.js +67 -0
  277. package/dist/connect/with-local-selector.d.ts +6 -0
  278. package/dist/connect/with-local-selector.js +130 -0
  279. package/dist/container.d.ts +39 -0
  280. package/dist/container.js +242 -0
  281. package/dist/context.d.ts +16 -0
  282. package/dist/context.js +53 -0
  283. package/dist/editor/constants.d.ts +17 -0
  284. package/dist/editor/constants.js +47 -0
  285. package/dist/editor/editor.d.ts +30 -0
  286. package/dist/editor/editor.js +279 -0
  287. package/dist/editor/feature-action-panel.d.ts +30 -0
  288. package/dist/editor/feature-action-panel.js +169 -0
  289. package/dist/editor/feature-styles.d.ts +37 -0
  290. package/dist/editor/feature-styles.js +92 -0
  291. package/dist/editor/handle-style.d.ts +42 -0
  292. package/dist/editor/handle-style.js +100 -0
  293. package/dist/filters/components.d.ts +3 -0
  294. package/dist/filters/components.js +40 -0
  295. package/dist/filters/filter-panels/filter-panel-with-field-select.d.ts +10 -0
  296. package/dist/filters/filter-panels/filter-panel-with-field-select.js +106 -0
  297. package/dist/filters/filter-panels/multi-select-filter-panel.d.ts +9 -0
  298. package/dist/filters/filter-panels/multi-select-filter-panel.js +72 -0
  299. package/dist/filters/filter-panels/new-filter-panel.d.ts +12 -0
  300. package/dist/filters/filter-panels/new-filter-panel.js +94 -0
  301. package/dist/filters/filter-panels/polygon-filter-panel.d.ts +9 -0
  302. package/dist/filters/filter-panels/polygon-filter-panel.js +96 -0
  303. package/dist/filters/filter-panels/range-filter-panel.d.ts +9 -0
  304. package/dist/filters/filter-panels/range-filter-panel.js +72 -0
  305. package/dist/filters/filter-panels/single-select-filter-panel.d.ts +9 -0
  306. package/dist/filters/filter-panels/single-select-filter-panel.js +72 -0
  307. package/dist/filters/filter-panels/time-range-filter-panel.d.ts +8 -0
  308. package/dist/filters/filter-panels/time-range-filter-panel.js +87 -0
  309. package/dist/filters/filter-panels/types.d.ts +35 -0
  310. package/dist/filters/filter-panels/types.js +26 -0
  311. package/dist/filters/index.d.ts +5 -0
  312. package/dist/filters/index.js +68 -0
  313. package/dist/filters/multi-select-filter.d.ts +3 -0
  314. package/dist/filters/multi-select-filter.js +53 -0
  315. package/dist/filters/polygon-filter.d.ts +4 -0
  316. package/dist/filters/polygon-filter.js +94 -0
  317. package/dist/filters/range-filter.d.ts +8 -0
  318. package/dist/filters/range-filter.js +52 -0
  319. package/dist/filters/single-select-filter.d.ts +3 -0
  320. package/dist/filters/single-select-filter.js +62 -0
  321. package/dist/filters/time-range-filter.d.ts +28 -0
  322. package/dist/filters/time-range-filter.js +84 -0
  323. package/dist/filters/time-widget.d.ts +14 -0
  324. package/dist/filters/time-widget.js +192 -0
  325. package/dist/filters/types.d.ts +54 -0
  326. package/dist/filters/types.js +26 -0
  327. package/dist/geocoder/geocoder.d.ts +33 -0
  328. package/dist/geocoder/geocoder.js +336 -0
  329. package/dist/geocoder-panel.d.ts +25 -0
  330. package/dist/geocoder-panel.js +241 -0
  331. package/dist/hooks/useFeatureFlags.d.ts +2 -0
  332. package/dist/hooks/useFeatureFlags.js +38 -0
  333. package/dist/index.d.ts +176 -0
  334. package/dist/index.js +1935 -0
  335. package/dist/injector.d.ts +29 -0
  336. package/dist/injector.js +198 -0
  337. package/dist/kepler-gl.d.ts +281 -0
  338. package/dist/kepler-gl.js +568 -0
  339. package/dist/map/coordinate-info.d.ts +7 -0
  340. package/dist/map/coordinate-info.js +67 -0
  341. package/dist/map/layer-hover-info.d.ts +13 -0
  342. package/dist/map/layer-hover-info.js +228 -0
  343. package/dist/map/layer-selector-panel.d.ts +21 -0
  344. package/dist/map/layer-selector-panel.js +114 -0
  345. package/dist/map/lazy-tippy.d.ts +7 -0
  346. package/dist/map/lazy-tippy.js +94 -0
  347. package/dist/map/locale-panel.d.ts +16 -0
  348. package/dist/map/locale-panel.js +107 -0
  349. package/dist/map/map-control-panel.d.ts +13 -0
  350. package/dist/map/map-control-panel.js +116 -0
  351. package/dist/map/map-control-toolbar.d.ts +2 -0
  352. package/dist/map/map-control-toolbar.js +45 -0
  353. package/dist/map/map-control-tooltip.d.ts +8 -0
  354. package/dist/map/map-control-tooltip.js +57 -0
  355. package/dist/map/map-control.d.ts +45 -0
  356. package/dist/map/map-control.js +101 -0
  357. package/dist/map/map-draw-panel.d.ts +20 -0
  358. package/dist/map/map-draw-panel.js +137 -0
  359. package/dist/map/map-legend-panel.d.ts +24 -0
  360. package/dist/map/map-legend-panel.js +181 -0
  361. package/dist/map/map-legend.d.ts +55 -0
  362. package/dist/map/map-legend.js +274 -0
  363. package/dist/map/map-popover.d.ts +36 -0
  364. package/dist/map/map-popover.js +217 -0
  365. package/dist/map/split-map-button.d.ts +20 -0
  366. package/dist/map/split-map-button.js +92 -0
  367. package/dist/map/toggle-3d-button.d.ts +17 -0
  368. package/dist/map/toggle-3d-button.js +81 -0
  369. package/dist/map-container.d.ts +48 -0
  370. package/dist/map-container.js +653 -0
  371. package/dist/maps-layout.d.ts +9 -0
  372. package/dist/maps-layout.js +80 -0
  373. package/dist/modal-container.d.ts +63 -0
  374. package/dist/modal-container.js +530 -0
  375. package/dist/modals/add-map-style-modal.d.ts +18 -0
  376. package/dist/modals/add-map-style-modal.js +300 -0
  377. package/dist/modals/cloud-tile.d.ts +15 -0
  378. package/dist/modals/cloud-tile.js +144 -0
  379. package/dist/modals/data-table-modal.d.ts +28 -0
  380. package/dist/modals/data-table-modal.js +285 -0
  381. package/dist/modals/delete-data-modal.d.ts +10 -0
  382. package/dist/modals/delete-data-modal.js +74 -0
  383. package/dist/modals/error-display.d.ts +6 -0
  384. package/dist/modals/error-display.js +50 -0
  385. package/dist/modals/export-data-modal.d.ts +25 -0
  386. package/dist/modals/export-data-modal.js +232 -0
  387. package/dist/modals/export-image-modal.d.ts +18 -0
  388. package/dist/modals/export-image-modal.js +156 -0
  389. package/dist/modals/export-map-modal/components.d.ts +8 -0
  390. package/dist/modals/export-map-modal/components.js +71 -0
  391. package/dist/modals/export-map-modal/export-html-map.d.ts +12 -0
  392. package/dist/modals/export-map-modal/export-html-map.js +158 -0
  393. package/dist/modals/export-map-modal/export-json-map.d.ts +9 -0
  394. package/dist/modals/export-map-modal/export-json-map.js +120 -0
  395. package/dist/modals/export-map-modal/export-map-modal.d.ts +27 -0
  396. package/dist/modals/export-map-modal/export-map-modal.js +119 -0
  397. package/dist/modals/image-modal-container.d.ts +17 -0
  398. package/dist/modals/image-modal-container.js +86 -0
  399. package/dist/modals/load-data-modal.d.ts +41 -0
  400. package/dist/modals/load-data-modal.js +118 -0
  401. package/dist/modals/load-storage-map.d.ts +26 -0
  402. package/dist/modals/load-storage-map.js +308 -0
  403. package/dist/modals/loading-dialog.d.ts +7 -0
  404. package/dist/modals/loading-dialog.js +68 -0
  405. package/dist/modals/modal-dialog.d.ts +2 -0
  406. package/dist/modals/modal-dialog.js +36 -0
  407. package/dist/modals/modal-tabs.d.ts +27 -0
  408. package/dist/modals/modal-tabs.js +119 -0
  409. package/dist/modals/overwrite-map-modal.d.ts +16 -0
  410. package/dist/modals/overwrite-map-modal.js +100 -0
  411. package/dist/modals/provider-modal-container.d.ts +22 -0
  412. package/dist/modals/provider-modal-container.js +101 -0
  413. package/dist/modals/save-map-modal.d.ts +30 -0
  414. package/dist/modals/save-map-modal.js +226 -0
  415. package/dist/modals/share-map-modal.d.ts +30 -0
  416. package/dist/modals/share-map-modal.js +219 -0
  417. package/dist/modals/status-panel.d.ts +13 -0
  418. package/dist/modals/status-panel.js +103 -0
  419. package/dist/modals/storage-map-viewer.d.ts +21 -0
  420. package/dist/modals/storage-map-viewer.js +147 -0
  421. package/dist/notification-panel/notification-item.d.ts +70 -0
  422. package/dist/notification-panel/notification-item.js +173 -0
  423. package/dist/notification-panel.d.ts +13 -0
  424. package/dist/notification-panel.js +106 -0
  425. package/dist/plot-container.d.ts +24 -0
  426. package/dist/plot-container.js +276 -0
  427. package/dist/side-panel/cloud-storage-dropdown.d.ts +6 -0
  428. package/dist/side-panel/cloud-storage-dropdown.js +62 -0
  429. package/dist/side-panel/common/dataset-info.d.ts +3 -0
  430. package/dist/side-panel/common/dataset-info.js +63 -0
  431. package/dist/side-panel/common/dataset-tag.d.ts +3 -0
  432. package/dist/side-panel/common/dataset-tag.js +89 -0
  433. package/dist/side-panel/common/dataset-title.d.ts +8 -0
  434. package/dist/side-panel/common/dataset-title.js +225 -0
  435. package/dist/side-panel/common/source-data-catalog.d.ts +9 -0
  436. package/dist/side-panel/common/source-data-catalog.js +82 -0
  437. package/dist/side-panel/common/source-data-selector.d.ts +8 -0
  438. package/dist/side-panel/common/source-data-selector.js +96 -0
  439. package/dist/side-panel/common/types.d.ts +63 -0
  440. package/dist/side-panel/common/types.js +26 -0
  441. package/dist/side-panel/custom-panel.d.ts +9 -0
  442. package/dist/side-panel/custom-panel.js +59 -0
  443. package/dist/side-panel/filter-manager.d.ts +20 -0
  444. package/dist/side-panel/filter-manager.js +132 -0
  445. package/dist/side-panel/filter-panel/filter-panel-header.d.ts +21 -0
  446. package/dist/side-panel/filter-panel/filter-panel-header.js +87 -0
  447. package/dist/side-panel/filter-panel/filter-panel.d.ts +23 -0
  448. package/dist/side-panel/filter-panel/filter-panel.js +151 -0
  449. package/dist/side-panel/interaction-manager.d.ts +15 -0
  450. package/dist/side-panel/interaction-manager.js +57 -0
  451. package/dist/side-panel/interaction-panel/brush-config.d.ts +15 -0
  452. package/dist/side-panel/interaction-panel/brush-config.js +74 -0
  453. package/dist/side-panel/interaction-panel/interaction-panel.d.ts +18 -0
  454. package/dist/side-panel/interaction-panel/interaction-panel.js +156 -0
  455. package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.d.ts +28 -0
  456. package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +264 -0
  457. package/dist/side-panel/interaction-panel/tooltip-config.d.ts +38 -0
  458. package/dist/side-panel/interaction-panel/tooltip-config.js +185 -0
  459. package/dist/side-panel/layer-manager.d.ts +39 -0
  460. package/dist/side-panel/layer-manager.js +225 -0
  461. package/dist/side-panel/layer-panel/add-layer-button.d.ts +10 -0
  462. package/dist/side-panel/layer-panel/add-layer-button.js +176 -0
  463. package/dist/side-panel/layer-panel/color-palette.d.ts +11 -0
  464. package/dist/side-panel/layer-panel/color-palette.js +91 -0
  465. package/dist/side-panel/layer-panel/color-range-selector.d.ts +47 -0
  466. package/dist/side-panel/layer-panel/color-range-selector.js +290 -0
  467. package/dist/side-panel/layer-panel/color-selector.d.ts +42 -0
  468. package/dist/side-panel/layer-panel/color-selector.js +225 -0
  469. package/dist/side-panel/layer-panel/column-selector.d.ts +22 -0
  470. package/dist/side-panel/layer-panel/column-selector.js +85 -0
  471. package/dist/side-panel/layer-panel/custom-palette.d.ts +38 -0
  472. package/dist/side-panel/layer-panel/custom-palette.js +312 -0
  473. package/dist/side-panel/layer-panel/custom-picker.d.ts +51 -0
  474. package/dist/side-panel/layer-panel/custom-picker.js +136 -0
  475. package/dist/side-panel/layer-panel/dataset-layer-group.d.ts +22 -0
  476. package/dist/side-panel/layer-panel/dataset-layer-group.js +86 -0
  477. package/dist/side-panel/layer-panel/dataset-layer-section.d.ts +23 -0
  478. package/dist/side-panel/layer-panel/dataset-layer-section.js +89 -0
  479. package/dist/side-panel/layer-panel/dataset-section.d.ts +24 -0
  480. package/dist/side-panel/layer-panel/dataset-section.js +112 -0
  481. package/dist/side-panel/layer-panel/dimension-scale-selector.d.ts +10 -0
  482. package/dist/side-panel/layer-panel/dimension-scale-selector.js +60 -0
  483. package/dist/side-panel/layer-panel/how-to-button.d.ts +6 -0
  484. package/dist/side-panel/layer-panel/how-to-button.js +58 -0
  485. package/dist/side-panel/layer-panel/layer-column-config.d.ts +19 -0
  486. package/dist/side-panel/layer-panel/layer-column-config.js +107 -0
  487. package/dist/side-panel/layer-panel/layer-config-group.d.ts +35 -0
  488. package/dist/side-panel/layer-panel/layer-config-group.js +188 -0
  489. package/dist/side-panel/layer-panel/layer-configurator.d.ts +100 -0
  490. package/dist/side-panel/layer-panel/layer-configurator.js +792 -0
  491. package/dist/side-panel/layer-panel/layer-list.d.ts +19 -0
  492. package/dist/side-panel/layer-panel/layer-list.js +188 -0
  493. package/dist/side-panel/layer-panel/layer-panel-header.d.ts +63 -0
  494. package/dist/side-panel/layer-panel/layer-panel-header.js +291 -0
  495. package/dist/side-panel/layer-panel/layer-panel.d.ts +36 -0
  496. package/dist/side-panel/layer-panel/layer-panel.js +201 -0
  497. package/dist/side-panel/layer-panel/layer-type-dropdown-list.d.ts +22 -0
  498. package/dist/side-panel/layer-panel/layer-type-dropdown-list.js +109 -0
  499. package/dist/side-panel/layer-panel/layer-type-list-item.d.ts +13 -0
  500. package/dist/side-panel/layer-panel/layer-type-list-item.js +89 -0
  501. package/dist/side-panel/layer-panel/layer-type-selector.d.ts +21 -0
  502. package/dist/side-panel/layer-panel/layer-type-selector.js +91 -0
  503. package/dist/side-panel/layer-panel/panel-view-list-toggle.d.ts +36 -0
  504. package/dist/side-panel/layer-panel/panel-view-list-toggle.js +143 -0
  505. package/dist/side-panel/layer-panel/single-color-palette.d.ts +9 -0
  506. package/dist/side-panel/layer-panel/single-color-palette.js +81 -0
  507. package/dist/side-panel/layer-panel/text-label-panel.d.ts +15 -0
  508. package/dist/side-panel/layer-panel/text-label-panel.js +171 -0
  509. package/dist/side-panel/layer-panel/vis-config-by-field-selector.d.ts +29 -0
  510. package/dist/side-panel/layer-panel/vis-config-by-field-selector.js +137 -0
  511. package/dist/side-panel/layer-panel/vis-config-slider.d.ts +20 -0
  512. package/dist/side-panel/layer-panel/vis-config-slider.js +210 -0
  513. package/dist/side-panel/layer-panel/vis-config-switch.d.ts +16 -0
  514. package/dist/side-panel/layer-panel/vis-config-switch.js +91 -0
  515. package/dist/side-panel/map-manager.d.ts +20 -0
  516. package/dist/side-panel/map-manager.js +168 -0
  517. package/dist/side-panel/map-style-panel/map-layer-selector.d.ts +19 -0
  518. package/dist/side-panel/map-style-panel/map-layer-selector.js +128 -0
  519. package/dist/side-panel/map-style-panel/map-style-selector.d.ts +16 -0
  520. package/dist/side-panel/map-style-panel/map-style-selector.js +98 -0
  521. package/dist/side-panel/panel-dropdown.d.ts +17 -0
  522. package/dist/side-panel/panel-dropdown.js +99 -0
  523. package/dist/side-panel/panel-header-action.d.ts +20 -0
  524. package/dist/side-panel/panel-header-action.js +100 -0
  525. package/dist/side-panel/panel-header.d.ts +79 -0
  526. package/dist/side-panel/panel-header.js +360 -0
  527. package/dist/side-panel/panel-tab.d.ts +20 -0
  528. package/dist/side-panel/panel-tab.js +88 -0
  529. package/dist/side-panel/panel-title.d.ts +4 -0
  530. package/dist/side-panel/panel-title.js +54 -0
  531. package/dist/side-panel/panel-toggle.d.ts +13 -0
  532. package/dist/side-panel/panel-toggle.js +80 -0
  533. package/dist/side-panel/side-bar.d.ts +79 -0
  534. package/dist/side-panel/side-bar.js +177 -0
  535. package/dist/side-panel.d.ts +134 -0
  536. package/dist/side-panel.js +274 -0
  537. package/dist/types.d.ts +42 -0
  538. package/dist/types.js +26 -0
  539. package/package.json +136 -0
@@ -0,0 +1,343 @@
1
+ // Copyright (c) 2022 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"] = RangeSliderFactory;
31
+
32
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
33
+
34
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
35
+
36
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
37
+
38
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
39
+
40
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
41
+
42
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
43
+
44
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
45
+
46
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
47
+
48
+ var _react = _interopRequireWildcard(require("react"));
49
+
50
+ var _reactLifecyclesCompat = require("react-lifecycles-compat");
51
+
52
+ var _reselect = require("reselect");
53
+
54
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
55
+
56
+ var _rangePlot = _interopRequireDefault(require("./range-plot"));
57
+
58
+ var _slider = _interopRequireDefault(require("./slider/slider"));
59
+
60
+ var _styledComponents2 = require("./styled-components");
61
+
62
+ var _utils = require("@kepler.gl/utils");
63
+
64
+ var _templateObject, _templateObject2, _templateObject3;
65
+
66
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
67
+
68
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
69
+
70
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
71
+
72
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
73
+
74
+ var SliderInput = (0, _styledComponents["default"])(_styledComponents2.Input)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n width: ", "px;\n margin-left: ", "px;\n font-size: ", "; // 10px // 12px;\n padding: ", "; // 4px 6px; // 6px 12px;\n"])), function (props) {
75
+ return props.theme.sliderInputWidth;
76
+ }, function (props) {
77
+ return props.flush ? 0 : props.inputSize === 'tiny' ? 12 : 18;
78
+ }, function (props) {
79
+ return props.theme.sliderInputFontSize;
80
+ }, function (props) {
81
+ return props.theme.sliderInputPadding;
82
+ });
83
+
84
+ var SliderWrapper = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n position: relative;\n align-items: ", ";\n"])), function (props) {
85
+ return !props.isRanged && props.showInput ? 'center' : 'flex-start';
86
+ });
87
+
88
+ var RangeInputWrapper = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: 12px;\n display: flex;\n justify-content: space-between;\n"])));
89
+
90
+ RangeSliderFactory.deps = [_rangePlot["default"]];
91
+
92
+ function RangeSliderFactory(RangePlot) {
93
+ var RangeSlider = /*#__PURE__*/function (_Component) {
94
+ (0, _inherits2["default"])(RangeSlider, _Component);
95
+
96
+ var _super = _createSuper(RangeSlider);
97
+
98
+ function RangeSlider() {
99
+ var _this;
100
+
101
+ (0, _classCallCheck2["default"])(this, RangeSlider);
102
+
103
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
104
+ args[_key] = arguments[_key];
105
+ }
106
+
107
+ _this = _super.call.apply(_super, [this].concat(args));
108
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "state", {
109
+ value0: 0,
110
+ value1: 1,
111
+ prevValue0: 0,
112
+ prevValue1: 1,
113
+ width: 288
114
+ });
115
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "sliderContainer", null);
116
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "setSliderContainer", function (element) {
117
+ _this.sliderContainer = element;
118
+
119
+ _this._resize();
120
+ });
121
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "inputValue0", /*#__PURE__*/(0, _react.createRef)());
122
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "inputValue1", /*#__PURE__*/(0, _react.createRef)());
123
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "value0Selector", function (props) {
124
+ return props.value0;
125
+ });
126
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "value1Selector", function (props) {
127
+ return props.value1;
128
+ });
129
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "filterValueSelector", (0, _reselect.createSelector)(_this.value0Selector, _this.value1Selector, function (value0, value1) {
130
+ return [value0, value1];
131
+ }));
132
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_roundValToStep", function (val) {
133
+ var _this$props = _this.props,
134
+ range = _this$props.range,
135
+ step = _this$props.step;
136
+ if (!range || !step) return;
137
+ return (0, _utils.roundValToStep)(range[0], step, val);
138
+ });
139
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_setRangeVal1", function (val) {
140
+ var _this$props2 = _this.props,
141
+ value0 = _this$props2.value0,
142
+ range = _this$props2.range,
143
+ _this$props2$onChange = _this$props2.onChange,
144
+ onChange = _this$props2$onChange === void 0 ? function () {} : _this$props2$onChange;
145
+ if (!range) return;
146
+ var val1 = Number(val);
147
+ onChange([value0, (0, _utils.clamp)([value0, range[1]], _this._roundValToStep(val1))]);
148
+ return true;
149
+ });
150
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_setRangeVal0", function (val) {
151
+ var _this$props3 = _this.props,
152
+ value1 = _this$props3.value1,
153
+ range = _this$props3.range,
154
+ _this$props3$onChange = _this$props3.onChange,
155
+ onChange = _this$props3$onChange === void 0 ? function () {} : _this$props3$onChange;
156
+ if (!range) return;
157
+ var val0 = Number(val);
158
+ onChange([(0, _utils.clamp)([range[0], value1], _this._roundValToStep(val0)), value1]);
159
+ return true;
160
+ });
161
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_resize", function () {
162
+ if (_this.sliderContainer) {
163
+ var width = _this.sliderContainer.offsetWidth;
164
+
165
+ if (width !== _this.state.width) {
166
+ _this.setState({
167
+ width: width
168
+ });
169
+ }
170
+ }
171
+ });
172
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_onChangeInput", function (key, e) {
173
+ _this.setState((0, _defineProperty2["default"])({}, key, e.target.value));
174
+ });
175
+ return _this;
176
+ }
177
+
178
+ (0, _createClass2["default"])(RangeSlider, [{
179
+ key: "componentDidMount",
180
+ value: function componentDidMount() {
181
+ if (this.sliderContainer instanceof Element) {
182
+ (0, _utils.observeDimensions)(this.sliderContainer, this._resize, 100);
183
+ }
184
+ }
185
+ }, {
186
+ key: "componentWillUnmount",
187
+ value: function componentWillUnmount() {
188
+ if (this.sliderContainer instanceof Element) {
189
+ (0, _utils.unobserveDimensions)(this.sliderContainer);
190
+ }
191
+ }
192
+ }, {
193
+ key: "_renderInput",
194
+ value: function _renderInput(key) {
195
+ var _this2 = this;
196
+
197
+ var setRange = key === 'value0' ? this._setRangeVal0 : this._setRangeVal1;
198
+ var ref = key === 'value0' ? this.inputValue0 : this.inputValue1;
199
+
200
+ var update = function update(e) {
201
+ if (!setRange(e.target.value)) {
202
+ _this2.setState((0, _defineProperty2["default"])({}, key, _this2.state[key]));
203
+ }
204
+ };
205
+
206
+ var onChange = this._onChangeInput.bind(this, key);
207
+
208
+ return /*#__PURE__*/_react["default"].createElement(SliderInput, {
209
+ className: "kg-range-slider__input",
210
+ type: "number",
211
+ ref: ref,
212
+ id: "slider-input-".concat(key),
213
+ key: key,
214
+ value: this.state[key],
215
+ onChange: onChange,
216
+ onKeyPress: function onKeyPress(e) {
217
+ if (e.key === 'Enter') {
218
+ update(e);
219
+ ref.current.blur();
220
+ }
221
+ },
222
+ onBlur: update,
223
+ flush: key === 'value0',
224
+ inputSize: this.props.inputSize,
225
+ secondary: this.props.inputTheme === 'secondary'
226
+ });
227
+ } // eslint-disable-next-line complexity
228
+
229
+ }, {
230
+ key: "render",
231
+ value: function render() {
232
+ var _this$props4 = this.props,
233
+ isRanged = _this$props4.isRanged,
234
+ showInput = _this$props4.showInput,
235
+ histogram = _this$props4.histogram,
236
+ lineChart = _this$props4.lineChart,
237
+ range = _this$props4.range,
238
+ _this$props4$onChange = _this$props4.onChange,
239
+ onChange = _this$props4$onChange === void 0 ? function () {} : _this$props4$onChange,
240
+ sliderHandleWidth = _this$props4.sliderHandleWidth,
241
+ step = _this$props4.step,
242
+ timezone = _this$props4.timezone,
243
+ timeFormat = _this$props4.timeFormat,
244
+ playbackControlWidth = _this$props4.playbackControlWidth;
245
+ var width = this.state.width;
246
+ var plotWidth = Math.max(width - Number(sliderHandleWidth), 0);
247
+ var renderPlot = histogram && histogram.length || lineChart;
248
+ return /*#__PURE__*/_react["default"].createElement("div", {
249
+ className: "kg-range-slider",
250
+ style: {
251
+ width: '100%',
252
+ padding: "0 ".concat(Number(sliderHandleWidth) / 2, "px")
253
+ },
254
+ ref: this.setSliderContainer
255
+ }, Array.isArray(range) && range.every(Number.isFinite) && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, renderPlot ? /*#__PURE__*/_react["default"].createElement(RangePlot, {
256
+ histogram: histogram,
257
+ lineChart: this.props.lineChart,
258
+ plotType: this.props.plotType,
259
+ isEnlarged: this.props.isEnlarged,
260
+ onBrush: function onBrush(val0, val1) {
261
+ return onChange([val0, val1]);
262
+ },
263
+ marks: this.props.marks,
264
+ range: range,
265
+ value: this.props.plotValue || this.filterValueSelector(this.props),
266
+ width: plotWidth,
267
+ isRanged: isRanged,
268
+ step: step,
269
+ timezone: timezone,
270
+ timeFormat: timeFormat,
271
+ playbackControlWidth: playbackControlWidth
272
+ }) : null, /*#__PURE__*/_react["default"].createElement(SliderWrapper, {
273
+ className: "kg-range-slider__slider",
274
+ isRanged: isRanged,
275
+ showInput: showInput
276
+ }, this.props.xAxis ? /*#__PURE__*/_react["default"].createElement("div", {
277
+ style: {
278
+ height: '30px'
279
+ }
280
+ }, /*#__PURE__*/_react["default"].createElement(this.props.xAxis, {
281
+ width: plotWidth,
282
+ timezone: timezone,
283
+ domain: range,
284
+ isEnlarged: this.props.isEnlarged
285
+ })) : null, /*#__PURE__*/_react["default"].createElement(_slider["default"], {
286
+ marks: this.props.marks,
287
+ isRanged: isRanged,
288
+ minValue: range[0],
289
+ maxValue: range[1],
290
+ value0: this.props.value0,
291
+ value1: this.props.value1,
292
+ step: step,
293
+ sliderHandleWidth: sliderHandleWidth,
294
+ onSlider0Change: this._setRangeVal0,
295
+ onSlider1Change: this._setRangeVal1,
296
+ onSliderBarChange: function onSliderBarChange(val0, val1) {
297
+ onChange([val0, val1]);
298
+ },
299
+ enableBarDrag: true
300
+ }), !isRanged && showInput ? this._renderInput('value1') : null), isRanged && showInput ? /*#__PURE__*/_react["default"].createElement(RangeInputWrapper, {
301
+ className: "range-slider__input-group"
302
+ }, this._renderInput('value0'), this._renderInput('value1')) : null));
303
+ }
304
+ }], [{
305
+ key: "getDerivedStateFromProps",
306
+ value: function getDerivedStateFromProps(props, state) {
307
+ var update = null;
308
+ var value0 = props.value0,
309
+ value1 = props.value1;
310
+
311
+ if (props.value0 !== state.prevValue0 && !isNaN(value0)) {
312
+ update = _objectSpread(_objectSpread({}, update || {}), {}, {
313
+ value0: value0,
314
+ prevValue0: value0
315
+ });
316
+ }
317
+
318
+ if (props.value1 !== state.prevValue1 && !isNaN(value1)) {
319
+ update = _objectSpread(_objectSpread({}, update || {}), {}, {
320
+ value1: value1,
321
+ prevValue1: value1
322
+ });
323
+ }
324
+
325
+ return update;
326
+ }
327
+ }]);
328
+ return RangeSlider;
329
+ }(_react.Component);
330
+
331
+ (0, _defineProperty2["default"])(RangeSlider, "defaultProps", {
332
+ isEnlarged: false,
333
+ isRanged: true,
334
+ showInput: true,
335
+ sliderHandleWidth: 12,
336
+ inputTheme: '',
337
+ inputSize: 'small',
338
+ onChange: function onChange() {}
339
+ });
340
+ (0, _reactLifecyclesCompat.polyfill)(RangeSlider);
341
+ return RangeSlider;
342
+ }
343
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tb24vcmFuZ2Utc2xpZGVyLnRzeCJdLCJuYW1lcyI6WyJTbGlkZXJJbnB1dCIsIklucHV0IiwicHJvcHMiLCJ0aGVtZSIsInNsaWRlcklucHV0V2lkdGgiLCJmbHVzaCIsImlucHV0U2l6ZSIsInNsaWRlcklucHV0Rm9udFNpemUiLCJzbGlkZXJJbnB1dFBhZGRpbmciLCJTbGlkZXJXcmFwcGVyIiwic3R5bGVkIiwiZGl2IiwiaXNSYW5nZWQiLCJzaG93SW5wdXQiLCJSYW5nZUlucHV0V3JhcHBlciIsIlJhbmdlU2xpZGVyRmFjdG9yeSIsImRlcHMiLCJSYW5nZVBsb3RGYWN0b3J5IiwiUmFuZ2VQbG90IiwiUmFuZ2VTbGlkZXIiLCJ2YWx1ZTAiLCJ2YWx1ZTEiLCJwcmV2VmFsdWUwIiwicHJldlZhbHVlMSIsIndpZHRoIiwiZWxlbWVudCIsInNsaWRlckNvbnRhaW5lciIsIl9yZXNpemUiLCJ2YWx1ZTBTZWxlY3RvciIsInZhbHVlMVNlbGVjdG9yIiwidmFsIiwicmFuZ2UiLCJzdGVwIiwib25DaGFuZ2UiLCJ2YWwxIiwiTnVtYmVyIiwiX3JvdW5kVmFsVG9TdGVwIiwidmFsMCIsIm9mZnNldFdpZHRoIiwic3RhdGUiLCJzZXRTdGF0ZSIsImtleSIsImUiLCJ0YXJnZXQiLCJ2YWx1ZSIsIkVsZW1lbnQiLCJzZXRSYW5nZSIsIl9zZXRSYW5nZVZhbDAiLCJfc2V0UmFuZ2VWYWwxIiwicmVmIiwiaW5wdXRWYWx1ZTAiLCJpbnB1dFZhbHVlMSIsInVwZGF0ZSIsIl9vbkNoYW5nZUlucHV0IiwiYmluZCIsImN1cnJlbnQiLCJibHVyIiwiaW5wdXRUaGVtZSIsImhpc3RvZ3JhbSIsImxpbmVDaGFydCIsInNsaWRlckhhbmRsZVdpZHRoIiwidGltZXpvbmUiLCJ0aW1lRm9ybWF0IiwicGxheWJhY2tDb250cm9sV2lkdGgiLCJwbG90V2lkdGgiLCJNYXRoIiwibWF4IiwicmVuZGVyUGxvdCIsImxlbmd0aCIsInBhZGRpbmciLCJzZXRTbGlkZXJDb250YWluZXIiLCJBcnJheSIsImlzQXJyYXkiLCJldmVyeSIsImlzRmluaXRlIiwicGxvdFR5cGUiLCJpc0VubGFyZ2VkIiwibWFya3MiLCJwbG90VmFsdWUiLCJmaWx0ZXJWYWx1ZVNlbGVjdG9yIiwieEF4aXMiLCJoZWlnaHQiLCJfcmVuZGVySW5wdXQiLCJpc05hTiIsIkNvbXBvbmVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0JBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOzs7Ozs7Ozs7Ozs7QUFRQSxJQUFNQSxXQUFXLEdBQUcsa0NBQU9DLHdCQUFQLENBQUgsbU5BQ04sVUFBQUMsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZQyxnQkFBaEI7QUFBQSxDQURDLEVBRUEsVUFBQUYsS0FBSztBQUFBLFNBQUtBLEtBQUssQ0FBQ0csS0FBTixHQUFjLENBQWQsR0FBa0JILEtBQUssQ0FBQ0ksU0FBTixLQUFvQixNQUFwQixHQUE2QixFQUE3QixHQUFrQyxFQUF6RDtBQUFBLENBRkwsRUFHRixVQUFBSixLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDQyxLQUFOLENBQVlJLG1CQUFoQjtBQUFBLENBSEgsRUFJSixVQUFBTCxLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDQyxLQUFOLENBQVlLLGtCQUFoQjtBQUFBLENBSkQsQ0FBakI7O0FBWUEsSUFBTUMsYUFBYSxHQUFHQyw2QkFBT0MsR0FBViwwSkFHRixVQUFBVCxLQUFLO0FBQUEsU0FBSyxDQUFDQSxLQUFLLENBQUNVLFFBQVAsSUFBbUJWLEtBQUssQ0FBQ1csU0FBekIsR0FBcUMsUUFBckMsR0FBZ0QsWUFBckQ7QUFBQSxDQUhILENBQW5COztBQU1BLElBQU1DLGlCQUFpQixHQUFHSiw2QkFBT0MsR0FBVixvS0FBdkI7O0FBNkJBSSxrQkFBa0IsQ0FBQ0MsSUFBbkIsR0FBMEIsQ0FBQ0MscUJBQUQsQ0FBMUI7O0FBRWUsU0FBU0Ysa0JBQVQsQ0FDYkcs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VUFBQUEsTUFBTSxtQ0FBUUEsTUFBTSxJQUFJLEVBQWxCO0FBQXVCaEMsWUFBQUEsTUFBTSxFQUFOQSxNQUF2QjtBQUErQkUsWUFBQUEsVUFBVSxFQUFFRjtBQUEzQyxZQUFOO0FBQ0Q7O0FBQ0QsWUFBSWxCLEtBQUssQ0FBQ21CLE1BQU4sS0FBaUJrQixLQUFLLENBQUNoQixVQUF2QixJQUFxQyxDQUFDNEQsS0FBSyxDQUFDOUQsTUFBRCxDQUEvQyxFQUF5RDtBQUN2RCtCLFVBQUFBLE1BQU0sbUNBQVFBLE1BQU0sSUFBSSxFQUFsQjtBQUF1Qi9CLFlBQUFBLE1BQU0sRUFBTkEsTUFBdkI7QUFBK0JFLFlBQUFBLFVBQVUsRUFBRUY7QUFBM0MsWUFBTjtBQUNEOztBQUNELGVBQU8rQixNQUFQO0FBQ0Q7QUF0QjhCO0FBQUE7QUFBQSxJQUNQZ0MsZ0JBRE87O0FBQUEsbUNBQzNCakUsV0FEMkIsa0JBRVQ7QUFDcEJ5RCxJQUFBQSxVQUFVLEVBQUUsS0FEUTtBQUVwQmhFLElBQUFBLFFBQVEsRUFBRSxJQUZVO0FBR3BCQyxJQUFBQSxTQUFTLEVBQUUsSUFIUztBQUlwQitDLElBQUFBLGlCQUFpQixFQUFFLEVBSkM7QUFLcEJILElBQUFBLFVBQVUsRUFBRSxFQUxRO0FBTXBCbkQsSUFBQUEsU0FBUyxFQUFFLE9BTlM7QUFPcEIyQixJQUFBQSxRQUFRLEVBQUUsb0JBQU0sQ0FBRTtBQVBFLEdBRlM7QUE0TmpDLHVDQUFTZCxXQUFUO0FBRUEsU0FBT0EsV0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0LCB7Q29tcG9uZW50LCBDb21wb25lbnRUeXBlLCBjcmVhdGVSZWYsIEVsZW1lbnRUeXBlfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQge3BvbHlmaWxsfSBmcm9tICdyZWFjdC1saWZlY3ljbGVzLWNvbXBhdCc7XG5pbXBvcnQge2NyZWF0ZVNlbGVjdG9yfSBmcm9tICdyZXNlbGVjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCBSYW5nZVBsb3RGYWN0b3J5IGZyb20gJy4vcmFuZ2UtcGxvdCc7XG5pbXBvcnQgU2xpZGVyIGZyb20gJy4vc2xpZGVyL3NsaWRlcic7XG5pbXBvcnQge0lucHV0fSBmcm9tICcuL3N0eWxlZC1jb21wb25lbnRzJztcblxuaW1wb3J0IHtvYnNlcnZlRGltZW5zaW9ucywgdW5vYnNlcnZlRGltZW5zaW9ucywgcm91bmRWYWxUb1N0ZXAsIGNsYW1wfSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcbmltcG9ydCB7TGluZUNoYXJ0fSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcblxuaW50ZXJmYWNlIFNsaWRlcklucHV0UHJvcHMge1xuICBmbHVzaD86IGJvb2xlYW47XG4gIGlucHV0U2l6ZT86IHN0cmluZztcbn1cblxuY29uc3QgU2xpZGVySW5wdXQgPSBzdHlsZWQoSW5wdXQpPFNsaWRlcklucHV0UHJvcHM+YFxuICB3aWR0aDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zbGlkZXJJbnB1dFdpZHRofXB4O1xuICBtYXJnaW4tbGVmdDogJHtwcm9wcyA9PiAocHJvcHMuZmx1c2ggPyAwIDogcHJvcHMuaW5wdXRTaXplID09PSAndGlueScgPyAxMiA6IDE4KX1weDtcbiAgZm9udC1zaXplOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNsaWRlcklucHV0Rm9udFNpemV9OyAvLyAxMHB4IC8vIDEycHg7XG4gIHBhZGRpbmc6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2xpZGVySW5wdXRQYWRkaW5nfTsgLy8gNHB4IDZweDsgLy8gNnB4IDEycHg7XG5gO1xuXG5pbnRlcmZhY2UgU2xpZGVyV3JhcHBlclByb3BzIHtcbiAgaXNSYW5nZWQ/OiBib29sZWFuO1xuICBzaG93SW5wdXQ/OiBib29sZWFuO1xufVxuXG5jb25zdCBTbGlkZXJXcmFwcGVyID0gc3R5bGVkLmRpdjxTbGlkZXJXcmFwcGVyUHJvcHM+YFxuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiAke3Byb3BzID0+ICghcHJvcHMuaXNSYW5nZWQgJiYgcHJvcHMuc2hvd0lucHV0ID8gJ2NlbnRlcicgOiAnZmxleC1zdGFydCcpfTtcbmA7XG5cbmNvbnN0IFJhbmdlSW5wdXRXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXRvcDogMTJweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuYDtcblxuaW50ZXJmYWNlIFJhbmdlU2xpZGVyUHJvcHMge1xuICByYW5nZT86IG51bWJlcltdO1xuICB2YWx1ZTA6IG51bWJlcjtcbiAgdmFsdWUxOiBudW1iZXI7XG4gIG9uQ2hhbmdlPzogKHZhbDogbnVtYmVyW10pID0+IHZvaWQ7IC8vIFRPRE9cbiAgaGlzdG9ncmFtPzogYW55W107XG4gIGlzUmFuZ2VkPzogYm9vbGVhbjtcbiAgaXNFbmxhcmdlZD86IGJvb2xlYW47XG4gIHNob3dJbnB1dD86IGJvb2xlYW47XG4gIGlucHV0VGhlbWU/OiBzdHJpbmc7XG4gIGlucHV0U2l6ZT86IHN0cmluZztcbiAgc3RlcD86IG51bWJlcjtcbiAgc2xpZGVySGFuZGxlV2lkdGg/OiBudW1iZXI7XG4gIHhBeGlzPzogRWxlbWVudFR5cGU7XG4gIHRpbWV6b25lPzogc3RyaW5nIHwgbnVsbDtcbiAgdGltZUZvcm1hdD86IHN0cmluZztcbiAgcGxheWJhY2tDb250cm9sV2lkdGg/OiBudW1iZXI7XG4gIGxpbmVDaGFydD86IExpbmVDaGFydDtcbiAgbWFya3M/OiBudW1iZXJbXTtcbiAgcGxvdFR5cGU/OiBzdHJpbmc7XG4gIHBsb3RWYWx1ZT86IG51bWJlcltdO1xufVxuXG5SYW5nZVNsaWRlckZhY3RvcnkuZGVwcyA9IFtSYW5nZVBsb3RGYWN0b3J5XTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gUmFuZ2VTbGlkZXJGYWN0b3J5KFxuICBSYW5nZVBsb3Q6IFJldHVyblR5cGU8dHlwZW9mIFJhbmdlUGxvdEZhY3Rvcnk+XG4pOiBDb21wb25lbnRUeXBlPFJhbmdlU2xpZGVyUHJvcHM+IHtcbiAgY2xhc3MgUmFuZ2VTbGlkZXIgZXh0ZW5kcyBDb21wb25lbnQ8UmFuZ2VTbGlkZXJQcm9wcz4ge1xuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICBpc0VubGFyZ2VkOiBmYWxzZSxcbiAgICAgIGlzUmFuZ2VkOiB0cnVlLFxuICAgICAgc2hvd0lucHV0OiB0cnVlLFxuICAgICAgc2xpZGVySGFuZGxlV2lkdGg6IDEyLFxuICAgICAgaW5wdXRUaGVtZTogJycsXG4gICAgICBpbnB1dFNpemU6ICdzbWFsbCcsXG4gICAgICBvbkNoYW5nZTogKCkgPT4ge31cbiAgICB9O1xuXG4gICAgc3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhwcm9wcywgc3RhdGUpIHtcbiAgICAgIGxldCB1cGRhdGU6IHt2YWx1ZTE/OiBhbnk7IHByZXZWYWx1ZTE/OiBhbnk7IHZhbHVlMD86IGFueTsgcHJldlZhbHVlMD86IGFueX0gfCBudWxsID0gbnVsbDtcbiAgICAgIGNvbnN0IHt2YWx1ZTAsIHZhbHVlMX0gPSBwcm9wcztcbiAgICAgIGlmIChwcm9wcy52YWx1ZTAgIT09IHN0YXRlLnByZXZWYWx1ZTAgJiYgIWlzTmFOKHZhbHVlMCkpIHtcbiAgICAgICAgdXBkYXRlID0gey4uLih1cGRhdGUgfHwge30pLCB2YWx1ZTAsIHByZXZWYWx1ZTA6IHZhbHVlMH07XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMudmFsdWUxICE9PSBzdGF0ZS5wcmV2VmFsdWUxICYmICFpc05hTih2YWx1ZTEpKSB7XG4gICAgICAgIHVwZGF0ZSA9IHsuLi4odXBkYXRlIHx8IHt9KSwgdmFsdWUxLCBwcmV2VmFsdWUxOiB2YWx1ZTF9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIHVwZGF0ZTtcbiAgICB9XG5cbiAgICBzdGF0ZSA9IHtcbiAgICAgIHZhbHVlMDogMCxcbiAgICAgIHZhbHVlMTogMSxcbiAgICAgIHByZXZWYWx1ZTA6IDAsXG4gICAgICBwcmV2VmFsdWUxOiAxLFxuICAgICAgd2lkdGg6IDI4OFxuICAgIH07XG5cbiAgICBzbGlkZXJDb250YWluZXI6IEhUTUxEaXZFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICAgIGlmICh0aGlzLnNsaWRlckNvbnRhaW5lciBpbnN0YW5jZW9mIEVsZW1lbnQpIHtcbiAgICAgICAgb2JzZXJ2ZURpbWVuc2lvbnModGhpcy5zbGlkZXJDb250YWluZXIsIHRoaXMuX3Jlc2l6ZSwgMTAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgIGlmICh0aGlzLnNsaWRlckNvbnRhaW5lciBpbnN0YW5jZW9mIEVsZW1lbnQpIHtcbiAgICAgICAgdW5vYnNlcnZlRGltZW5zaW9ucyh0aGlzLnNsaWRlckNvbnRhaW5lcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc2V0U2xpZGVyQ29udGFpbmVyOiBSZWFjdC5MZWdhY3lSZWY8SFRNTERpdkVsZW1lbnQ+ID0gZWxlbWVudCA9PiB7XG4gICAgICB0aGlzLnNsaWRlckNvbnRhaW5lciA9IGVsZW1lbnQ7XG4gICAgICB0aGlzLl9yZXNpemUoKTtcbiAgICB9O1xuICAgIGlucHV0VmFsdWUwID0gY3JlYXRlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KCk7XG4gICAgaW5wdXRWYWx1ZTEgPSBjcmVhdGVSZWY8SFRNTElucHV0RWxlbWVudD4oKTtcbiAgICB2YWx1ZTBTZWxlY3RvciA9IHByb3BzID0+IHByb3BzLnZhbHVlMDtcbiAgICB2YWx1ZTFTZWxlY3RvciA9IHByb3BzID0+IHByb3BzLnZhbHVlMTtcbiAgICBmaWx0ZXJWYWx1ZVNlbGVjdG9yID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgICB0aGlzLnZhbHVlMFNlbGVjdG9yLFxuICAgICAgdGhpcy52YWx1ZTFTZWxlY3RvcixcbiAgICAgICh2YWx1ZTAsIHZhbHVlMSkgPT4gW3ZhbHVlMCwgdmFsdWUxXVxuICAgICk7XG5cbiAgICBfcm91bmRWYWxUb1N0ZXAgPSB2YWwgPT4ge1xuICAgICAgY29uc3Qge3JhbmdlLCBzdGVwfSA9IHRoaXMucHJvcHM7XG4gICAgICBpZiAoIXJhbmdlIHx8ICFzdGVwKSByZXR1cm47XG4gICAgICByZXR1cm4gcm91bmRWYWxUb1N0ZXAocmFuZ2VbMF0sIHN0ZXAsIHZhbCk7XG4gICAgfTtcblxuICAgIF9zZXRSYW5nZVZhbDEgPSB2YWwgPT4ge1xuICAgICAgY29uc3Qge3ZhbHVlMCwgcmFuZ2UsIG9uQ2hhbmdlID0gKCkgPT4ge319ID0gdGhpcy5wcm9wcztcbiAgICAgIGlmICghcmFuZ2UpIHJldHVybjtcbiAgICAgIGNvbnN0IHZhbDEgPSBOdW1iZXIodmFsKTtcbiAgICAgIG9uQ2hhbmdlKFt2YWx1ZTAsIGNsYW1wKFt2YWx1ZTAsIHJhbmdlWzFdXSwgdGhpcy5fcm91bmRWYWxUb1N0ZXAodmFsMSkpXSk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9O1xuXG4gICAgX3NldFJhbmdlVmFsMCA9IHZhbCA9PiB7XG4gICAgICBjb25zdCB7dmFsdWUxLCByYW5nZSwgb25DaGFuZ2UgPSAoKSA9PiB7fX0gPSB0aGlzLnByb3BzO1xuICAgICAgaWYgKCFyYW5nZSkgcmV0dXJuO1xuICAgICAgY29uc3QgdmFsMCA9IE51bWJlcih2YWwpO1xuICAgICAgb25DaGFuZ2UoW2NsYW1wKFtyYW5nZVswXSwgdmFsdWUxXSwgdGhpcy5fcm91bmRWYWxUb1N0ZXAodmFsMCkpLCB2YWx1ZTFdKTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH07XG5cbiAgICBfcmVzaXplID0gKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuc2xpZGVyQ29udGFpbmVyKSB7XG4gICAgICAgIGNvbnN0IHdpZHRoID0gdGhpcy5zbGlkZXJDb250YWluZXIub2Zmc2V0V2lkdGg7XG4gICAgICAgIGlmICh3aWR0aCAhPT0gdGhpcy5zdGF0ZS53aWR0aCkge1xuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe3dpZHRofSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuXG4gICAgX29uQ2hhbmdlSW5wdXQgPSAoa2V5LCBlKSA9PiB7XG4gICAgICB0aGlzLnNldFN0YXRlKHtba2V5XTogZS50YXJnZXQudmFsdWV9KTtcbiAgICB9O1xuXG4gICAgX3JlbmRlcklucHV0KGtleSkge1xuICAgICAgY29uc3Qgc2V0UmFuZ2UgPSBrZXkgPT09ICd2YWx1ZTAnID8gdGhpcy5fc2V0UmFuZ2VWYWwwIDogdGhpcy5fc2V0UmFuZ2VWYWwxO1xuICAgICAgY29uc3QgcmVmID0ga2V5ID09PSAndmFsdWUwJyA/IHRoaXMuaW5wdXRWYWx1ZTAgOiB0aGlzLmlucHV0VmFsdWUxO1xuICAgICAgY29uc3QgdXBkYXRlID0gZSA9PiB7XG4gICAgICAgIGlmICghc2V0UmFuZ2UoZS50YXJnZXQudmFsdWUpKSB7XG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7W2tleV06IHRoaXMuc3RhdGVba2V5XX0pO1xuICAgICAgICB9XG4gICAgICB9O1xuXG4gICAgICBjb25zdCBvbkNoYW5nZSA9IHRoaXMuX29uQ2hhbmdlSW5wdXQuYmluZCh0aGlzLCBrZXkpO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8U2xpZGVySW5wdXRcbiAgICAgICAgICBjbGFzc05hbWU9XCJrZy1yYW5nZS1zbGlkZXJfX2lucHV0XCJcbiAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgICByZWY9e3JlZn1cbiAgICAgICAgICBpZD17YHNsaWRlci1pbnB1dC0ke2tleX1gfVxuICAgICAgICAgIGtleT17a2V5fVxuICAgICAgICAgIHZhbHVlPXt0aGlzLnN0YXRlW2tleV19XG4gICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgIG9uS2V5UHJlc3M9e2UgPT4ge1xuICAgICAgICAgICAgaWYgKGUua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgICAgICAgIHVwZGF0ZShlKTtcbiAgICAgICAgICAgICAgKHJlZi5jdXJyZW50IGFzIGFueSkuYmx1cigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH19XG4gICAgICAgICAgb25CbHVyPXt1cGRhdGV9XG4gICAgICAgICAgZmx1c2g9e2tleSA9PT0gJ3ZhbHVlMCd9XG4gICAgICAgICAgaW5wdXRTaXplPXt0aGlzLnByb3BzLmlucHV0U2l6ZX1cbiAgICAgICAgICBzZWNvbmRhcnk9e3RoaXMucHJvcHMuaW5wdXRUaGVtZSA9PT0gJ3NlY29uZGFyeSd9XG4gICAgICAgIC8+XG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBjb21wbGV4aXR5XG4gICAgcmVuZGVyKCkge1xuICAgICAgY29uc3Qge1xuICAgICAgICBpc1JhbmdlZCxcbiAgICAgICAgc2hvd0lucHV0LFxuICAgICAgICBoaXN0b2dyYW0sXG4gICAgICAgIGxpbmVDaGFydCxcbiAgICAgICAgcmFuZ2UsXG4gICAgICAgIG9uQ2hhbmdlID0gKCkgPT4ge30sXG4gICAgICAgIHNsaWRlckhhbmRsZVdpZHRoLFxuICAgICAgICBzdGVwLFxuICAgICAgICB0aW1lem9uZSxcbiAgICAgICAgdGltZUZvcm1hdCxcbiAgICAgICAgcGxheWJhY2tDb250cm9sV2lkdGhcbiAgICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBjb25zdCB7d2lkdGh9ID0gdGhpcy5zdGF0ZTtcbiAgICAgIGNvbnN0IHBsb3RXaWR0aCA9IE1hdGgubWF4KHdpZHRoIC0gTnVtYmVyKHNsaWRlckhhbmRsZVdpZHRoKSwgMCk7XG4gICAgICBjb25zdCByZW5kZXJQbG90ID0gKGhpc3RvZ3JhbSAmJiBoaXN0b2dyYW0ubGVuZ3RoKSB8fCBsaW5lQ2hhcnQ7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3NOYW1lPVwia2ctcmFuZ2Utc2xpZGVyXCJcbiAgICAgICAgICBzdHlsZT17e3dpZHRoOiAnMTAwJScsIHBhZGRpbmc6IGAwICR7TnVtYmVyKHNsaWRlckhhbmRsZVdpZHRoKSAvIDJ9cHhgfX1cbiAgICAgICAgICByZWY9e3RoaXMuc2V0U2xpZGVyQ29udGFpbmVyfVxuICAgICAgICA+XG4gICAgICAgICAge0FycmF5LmlzQXJyYXkocmFuZ2UpICYmIHJhbmdlLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSkgJiYgKFxuICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAge3JlbmRlclBsb3QgPyAoXG4gICAgICAgICAgICAgICAgPFJhbmdlUGxvdFxuICAgICAgICAgICAgICAgICAgaGlzdG9ncmFtPXtoaXN0b2dyYW19XG4gICAgICAgICAgICAgICAgICBsaW5lQ2hhcnQ9e3RoaXMucHJvcHMubGluZUNoYXJ0fVxuICAgICAgICAgICAgICAgICAgcGxvdFR5cGU9e3RoaXMucHJvcHMucGxvdFR5cGV9XG4gICAgICAgICAgICAgICAgICBpc0VubGFyZ2VkPXt0aGlzLnByb3BzLmlzRW5sYXJnZWR9XG4gICAgICAgICAgICAgICAgICBvbkJydXNoPXsodmFsMCwgdmFsMSkgPT4gb25DaGFuZ2UoW3ZhbDAsIHZhbDFdKX1cbiAgICAgICAgICAgICAgICAgIG1hcmtzPXt0aGlzLnByb3BzLm1hcmtzfVxuICAgICAgICAgICAgICAgICAgcmFuZ2U9e3JhbmdlfVxuICAgICAgICAgICAgICAgICAgdmFsdWU9e3RoaXMucHJvcHMucGxvdFZhbHVlIHx8IHRoaXMuZmlsdGVyVmFsdWVTZWxlY3Rvcih0aGlzLnByb3BzKX1cbiAgICAgICAgICAgICAgICAgIHdpZHRoPXtwbG90V2lkdGh9XG4gICAgICAgICAgICAgICAgICBpc1JhbmdlZD17aXNSYW5nZWR9XG4gICAgICAgICAgICAgICAgICBzdGVwPXtzdGVwfVxuICAgICAgICAgICAgICAgICAgdGltZXpvbmU9e3RpbWV6b25lfVxuICAgICAgICAgICAgICAgICAgdGltZUZvcm1hdD17dGltZUZvcm1hdH1cbiAgICAgICAgICAgICAgICAgIHBsYXliYWNrQ29udHJvbFdpZHRoPXtwbGF5YmFja0NvbnRyb2xXaWR0aH1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgPFNsaWRlcldyYXBwZXJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJrZy1yYW5nZS1zbGlkZXJfX3NsaWRlclwiXG4gICAgICAgICAgICAgICAgaXNSYW5nZWQ9e2lzUmFuZ2VkfVxuICAgICAgICAgICAgICAgIHNob3dJbnB1dD17c2hvd0lucHV0fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3RoaXMucHJvcHMueEF4aXMgPyAoXG4gICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPXt7aGVpZ2h0OiAnMzBweCd9fT5cbiAgICAgICAgICAgICAgICAgICAgPHRoaXMucHJvcHMueEF4aXNcbiAgICAgICAgICAgICAgICAgICAgICB3aWR0aD17cGxvdFdpZHRofVxuICAgICAgICAgICAgICAgICAgICAgIHRpbWV6b25lPXt0aW1lem9uZX1cbiAgICAgICAgICAgICAgICAgICAgICBkb21haW49e3JhbmdlfVxuICAgICAgICAgICAgICAgICAgICAgIGlzRW5sYXJnZWQ9e3RoaXMucHJvcHMuaXNFbmxhcmdlZH1cbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgIDxTbGlkZXJcbiAgICAgICAgICAgICAgICAgIG1hcmtzPXt0aGlzLnByb3BzLm1hcmtzfVxuICAgICAgICAgICAgICAgICAgaXNSYW5nZWQ9e2lzUmFuZ2VkfVxuICAgICAgICAgICAgICAgICAgbWluVmFsdWU9e3JhbmdlWzBdfVxuICAgICAgICAgICAgICAgICAgbWF4VmFsdWU9e3JhbmdlWzFdfVxuICAgICAgICAgICAgICAgICAgdmFsdWUwPXt0aGlzLnByb3BzLnZhbHVlMH1cbiAgICAgICAgICAgICAgICAgIHZhbHVlMT17dGhpcy5wcm9wcy52YWx1ZTF9XG4gICAgICAgICAgICAgICAgICBzdGVwPXtzdGVwfVxuICAgICAgICAgICAgICAgICAgc2xpZGVySGFuZGxlV2lkdGg9e3NsaWRlckhhbmRsZVdpZHRofVxuICAgICAgICAgICAgICAgICAgb25TbGlkZXIwQ2hhbmdlPXt0aGlzLl9zZXRSYW5nZVZhbDB9XG4gICAgICAgICAgICAgICAgICBvblNsaWRlcjFDaGFuZ2U9e3RoaXMuX3NldFJhbmdlVmFsMX1cbiAgICAgICAgICAgICAgICAgIG9uU2xpZGVyQmFyQ2hhbmdlPXsodmFsMCwgdmFsMSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZShbdmFsMCwgdmFsMV0pO1xuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgIGVuYWJsZUJhckRyYWdcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIHshaXNSYW5nZWQgJiYgc2hvd0lucHV0ID8gdGhpcy5fcmVuZGVySW5wdXQoJ3ZhbHVlMScpIDogbnVsbH1cbiAgICAgICAgICAgICAgPC9TbGlkZXJXcmFwcGVyPlxuICAgICAgICAgICAgICB7aXNSYW5nZWQgJiYgc2hvd0lucHV0ID8gKFxuICAgICAgICAgICAgICAgIDxSYW5nZUlucHV0V3JhcHBlciBjbGFzc05hbWU9XCJyYW5nZS1zbGlkZXJfX2lucHV0LWdyb3VwXCI+XG4gICAgICAgICAgICAgICAgICB7dGhpcy5fcmVuZGVySW5wdXQoJ3ZhbHVlMCcpfVxuICAgICAgICAgICAgICAgICAge3RoaXMuX3JlbmRlcklucHV0KCd2YWx1ZTEnKX1cbiAgICAgICAgICAgICAgICA8L1JhbmdlSW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDwvPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwb2x5ZmlsbChSYW5nZVNsaWRlcik7XG5cbiAgcmV0dXJuIFJhbmdlU2xpZGVyO1xufVxuIl19
@@ -0,0 +1,27 @@
1
+ import { RefObject, TouchEventHandler, MouseEventHandler as ReactMouseEventHandler } from 'react';
2
+ import { StyleRangeSliderType } from './slider';
3
+ declare type MouseEventHandlerProps = {
4
+ vertical: boolean;
5
+ valueListener: (distance: number) => void;
6
+ toggleMouseOver: () => void;
7
+ track: RefObject<StyleRangeSliderType>;
8
+ setAnchor?: null | ((distance: number) => void);
9
+ };
10
+ export default class MouseEventHandler {
11
+ private vertical;
12
+ private valueListener;
13
+ private toggleMouseOver;
14
+ private track;
15
+ private setAnchor;
16
+ constructor({ vertical, valueListener, toggleMouseOver, track, setAnchor }: MouseEventHandlerProps);
17
+ handleMouseDown: ReactMouseEventHandler;
18
+ private getMousePos;
19
+ private getTouchPosition;
20
+ private mouseup;
21
+ private getDistanceToTrack;
22
+ private mousemove;
23
+ handleTouchStart: TouchEventHandler;
24
+ private touchmove;
25
+ private touchend;
26
+ }
27
+ export {};
@@ -0,0 +1,145 @@
1
+ // Copyright (c) 2022 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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
31
+
32
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
33
+
34
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
35
+
36
+ var _document = _interopRequireDefault(require("global/document"));function nope() {}
37
+
38
+ var MouseEventHandler = /*#__PURE__*/function () {
39
+ // Set correct type
40
+ // Set correct type
41
+ function MouseEventHandler(_ref) {
42
+ var _this = this;
43
+
44
+ var _ref$vertical = _ref.vertical,
45
+ vertical = _ref$vertical === void 0 ? false : _ref$vertical,
46
+ _ref$valueListener = _ref.valueListener,
47
+ valueListener = _ref$valueListener === void 0 ? nope : _ref$valueListener,
48
+ _ref$toggleMouseOver = _ref.toggleMouseOver,
49
+ toggleMouseOver = _ref$toggleMouseOver === void 0 ? nope : _ref$toggleMouseOver,
50
+ track = _ref.track,
51
+ _ref$setAnchor = _ref.setAnchor,
52
+ setAnchor = _ref$setAnchor === void 0 ? null : _ref$setAnchor;
53
+ (0, _classCallCheck2["default"])(this, MouseEventHandler);
54
+ (0, _defineProperty2["default"])(this, "vertical", void 0);
55
+ (0, _defineProperty2["default"])(this, "valueListener", void 0);
56
+ (0, _defineProperty2["default"])(this, "toggleMouseOver", void 0);
57
+ (0, _defineProperty2["default"])(this, "track", void 0);
58
+ (0, _defineProperty2["default"])(this, "setAnchor", void 0);
59
+ (0, _defineProperty2["default"])(this, "handleMouseDown", function (e) {
60
+ _document["default"].addEventListener('mouseup', _this.mouseup);
61
+
62
+ _document["default"].addEventListener('mousemove', _this.mousemove);
63
+
64
+ if (_this.setAnchor) {
65
+ var pos = _this.getMousePos(e);
66
+
67
+ _this.setAnchor(_this.getDistanceToTrack(pos));
68
+ }
69
+
70
+ _this.toggleMouseOver();
71
+ });
72
+ (0, _defineProperty2["default"])(this, "mouseup", function () {
73
+ _document["default"].removeEventListener('mouseup', _this.mouseup);
74
+
75
+ _document["default"].removeEventListener('mousemove', _this.mousemove);
76
+
77
+ _this.toggleMouseOver();
78
+ });
79
+ (0, _defineProperty2["default"])(this, "mousemove", function (e) {
80
+ e.preventDefault();
81
+
82
+ var pos = _this.getMousePos(e);
83
+
84
+ _this.valueListener(_this.getDistanceToTrack(pos));
85
+ });
86
+ (0, _defineProperty2["default"])(this, "handleTouchStart", function (e) {
87
+ // TODO: fix touch event
88
+ _document["default"].addEventListener('touchend', _this.touchend);
89
+
90
+ _document["default"].addEventListener('touchmove', _this.touchmove);
91
+
92
+ if (_this.setAnchor) {
93
+ var pos = _this.getTouchPosition(e);
94
+
95
+ _this.setAnchor(_this.getDistanceToTrack(pos));
96
+ }
97
+
98
+ _this.toggleMouseOver();
99
+ });
100
+ (0, _defineProperty2["default"])(this, "touchmove", function (e) {
101
+ // TODO: touch not tested
102
+ var pos = _this.getTouchPosition(e);
103
+
104
+ _this.valueListener(_this.getDistanceToTrack(pos));
105
+ });
106
+ (0, _defineProperty2["default"])(this, "touchend", function () {
107
+ _document["default"].removeEventListener('touchend', _this.touchend);
108
+
109
+ _document["default"].removeEventListener('touchmove', _this.touchmove);
110
+
111
+ _this.toggleMouseOver();
112
+ });
113
+ this.vertical = vertical;
114
+ this.valueListener = valueListener;
115
+ this.toggleMouseOver = toggleMouseOver;
116
+ this.track = track;
117
+ this.setAnchor = setAnchor;
118
+ }
119
+
120
+ (0, _createClass2["default"])(MouseEventHandler, [{
121
+ key: "getMousePos",
122
+ value: function getMousePos(e) {
123
+ return this.vertical ? e.clientY : e.clientX;
124
+ }
125
+ }, {
126
+ key: "getTouchPosition",
127
+ value: function getTouchPosition(e) {
128
+ return this.vertical ? e.touches[0].clientY : e.touches[0].clientX;
129
+ }
130
+ }, {
131
+ key: "getDistanceToTrack",
132
+ value: function getDistanceToTrack(pos) {
133
+ if (!this.track.current) {
134
+ return 0;
135
+ }
136
+
137
+ var trackRect = this.track.current.getBoundingClientRect();
138
+ return pos - (this.vertical ? trackRect.bottom : trackRect.left);
139
+ }
140
+ }]);
141
+ return MouseEventHandler;
142
+ }();
143
+
144
+ exports["default"] = MouseEventHandler;
145
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tb24vc2xpZGVyL21vdXNlLWV2ZW50LnRzIl0sIm5hbWVzIjpbIm5vcGUiLCJNb3VzZUV2ZW50SGFuZGxlciIsInZlcnRpY2FsIiwidmFsdWVMaXN0ZW5lciIsInRvZ2dsZU1vdXNlT3ZlciIsInRyYWNrIiwic2V0QW5jaG9yIiwiZSIsImRvY3VtZW50IiwiYWRkRXZlbnRMaXN0ZW5lciIsIm1vdXNldXAiLCJtb3VzZW1vdmUiLCJwb3MiLCJnZXRNb3VzZVBvcyIsImdldERpc3RhbmNlVG9UcmFjayIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJwcmV2ZW50RGVmYXVsdCIsInRvdWNoZW5kIiwidG91Y2htb3ZlIiwiZ2V0VG91Y2hQb3NpdGlvbiIsImNsaWVudFkiLCJjbGllbnRYIiwidG91Y2hlcyIsImN1cnJlbnQiLCJ0cmFja1JlY3QiLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJib3R0b20iLCJsZWZ0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFvQkE7O0FBcEJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBWUEsU0FBU0EsSUFBVCxHQUF1QixDQUFFOztJQVVKQyxpQjtBQUk2QjtBQUNRO0FBRXhELG1DQU0yQjtBQUFBOztBQUFBLDZCQUx6QkMsUUFLeUI7QUFBQSxRQUx6QkEsUUFLeUIsOEJBTGQsS0FLYztBQUFBLGtDQUp6QkMsYUFJeUI7QUFBQSxRQUp6QkEsYUFJeUIsbUNBSlRILElBSVM7QUFBQSxvQ0FIekJJLGVBR3lCO0FBQUEsUUFIekJBLGVBR3lCLHFDQUhQSixJQUdPO0FBQUEsUUFGekJLLEtBRXlCLFFBRnpCQSxLQUV5QjtBQUFBLDhCQUR6QkMsU0FDeUI7QUFBQSxRQUR6QkEsU0FDeUIsK0JBRGIsSUFDYTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLDhE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Q3RDLFVBQUksQ0FBQyxLQUFLUCxLQUFMLENBQVdrQixPQUFoQixFQUF5QjtBQUN2QixlQUFPLENBQVA7QUFDRDs7QUFDRCxVQUFNQyxTQUFTLEdBQUcsS0FBS25CLEtBQUwsQ0FBV2tCLE9BQVgsQ0FBbUJFLHFCQUFuQixFQUFsQjtBQUNBLGFBQU9iLEdBQUcsSUFBSSxLQUFLVixRQUFMLEdBQWdCc0IsU0FBUyxDQUFDRSxNQUExQixHQUFtQ0YsU0FBUyxDQUFDRyxJQUFqRCxDQUFWO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMjIgVWJlciBUZWNobm9sb2dpZXMsIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5pbXBvcnQgZG9jdW1lbnQgZnJvbSAnZ2xvYmFsL2RvY3VtZW50JztcbmltcG9ydCB7XG4gIFJlZk9iamVjdCxcbiAgVG91Y2hFdmVudCxcbiAgVG91Y2hFdmVudEhhbmRsZXIsXG4gIE1vdXNlRXZlbnRIYW5kbGVyIGFzIFJlYWN0TW91c2VFdmVudEhhbmRsZXIsXG4gIE1vdXNlRXZlbnRcbn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHtTdHlsZVJhbmdlU2xpZGVyVHlwZX0gZnJvbSAnLi9zbGlkZXInO1xuXG5mdW5jdGlvbiBub3BlKC4uLmFyZ3MpIHt9XG5cbnR5cGUgTW91c2VFdmVudEhhbmRsZXJQcm9wcyA9IHtcbiAgdmVydGljYWw6IGJvb2xlYW47XG4gIHZhbHVlTGlzdGVuZXI6IChkaXN0YW5jZTogbnVtYmVyKSA9PiB2b2lkO1xuICB0b2dnbGVNb3VzZU92ZXI6ICgpID0+IHZvaWQ7XG4gIHRyYWNrOiBSZWZPYmplY3Q8U3R5bGVSYW5nZVNsaWRlclR5cGU+O1xuICBzZXRBbmNob3I/OiBudWxsIHwgKChkaXN0YW5jZTogbnVtYmVyKSA9PiB2b2lkKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1vdXNlRXZlbnRIYW5kbGVyIHtcbiAgcHJpdmF0ZSB2ZXJ0aWNhbDogYm9vbGVhbjtcbiAgcHJpdmF0ZSB2YWx1ZUxpc3RlbmVyOiAoZGlzdGFuY2U6IG51bWJlcikgPT4gdm9pZDtcbiAgcHJpdmF0ZSB0b2dnbGVNb3VzZU92ZXI6ICgpID0+IHZvaWQ7XG4gIHByaXZhdGUgdHJhY2s6IFJlZk9iamVjdDxTdHlsZVJhbmdlU2xpZGVyVHlwZT47IC8vIFNldCBjb3JyZWN0IHR5cGVcbiAgcHJpdmF0ZSBzZXRBbmNob3I6IG51bGwgfCAoKGRpc3RhbmNlOiBudW1iZXIpID0+IHZvaWQpOyAvLyBTZXQgY29ycmVjdCB0eXBlXG5cbiAgY29uc3RydWN0b3Ioe1xuICAgIHZlcnRpY2FsID0gZmFsc2UsXG4gICAgdmFsdWVMaXN0ZW5lciA9IG5vcGUsXG4gICAgdG9nZ2xlTW91c2VPdmVyID0gbm9wZSxcbiAgICB0cmFjayxcbiAgICBzZXRBbmNob3IgPSBudWxsXG4gIH06IE1vdXNlRXZlbnRIYW5kbGVyUHJvcHMpIHtcbiAgICB0aGlzLnZlcnRpY2FsID0gdmVydGljYWw7XG4gICAgdGhpcy52YWx1ZUxpc3RlbmVyID0gdmFsdWVMaXN0ZW5lcjtcbiAgICB0aGlzLnRvZ2dsZU1vdXNlT3ZlciA9IHRvZ2dsZU1vdXNlT3ZlcjtcbiAgICB0aGlzLnRyYWNrID0gdHJhY2s7XG4gICAgdGhpcy5zZXRBbmNob3IgPSBzZXRBbmNob3I7XG4gIH1cblxuICBoYW5kbGVNb3VzZURvd246IFJlYWN0TW91c2VFdmVudEhhbmRsZXIgPSAoZTogTW91c2VFdmVudCkgPT4ge1xuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCB0aGlzLm1vdXNldXApO1xuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMubW91c2Vtb3ZlKTtcbiAgICBpZiAodGhpcy5zZXRBbmNob3IpIHtcbiAgICAgIGNvbnN0IHBvcyA9IHRoaXMuZ2V0TW91c2VQb3MoZSk7XG4gICAgICB0aGlzLnNldEFuY2hvcih0aGlzLmdldERpc3RhbmNlVG9UcmFjayhwb3MpKTtcbiAgICB9XG4gICAgdGhpcy50b2dnbGVNb3VzZU92ZXIoKTtcbiAgfTtcblxuICBwcml2YXRlIGdldE1vdXNlUG9zKGU6IE1vdXNlRXZlbnQpIHtcbiAgICByZXR1cm4gdGhpcy52ZXJ0aWNhbCA/IGUuY2xpZW50WSA6IGUuY2xpZW50WDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VG91Y2hQb3NpdGlvbihlOiBUb3VjaEV2ZW50KSB7XG4gICAgcmV0dXJuIHRoaXMudmVydGljYWwgPyBlLnRvdWNoZXNbMF0uY2xpZW50WSA6IGUudG91Y2hlc1swXS5jbGllbnRYO1xuICB9XG5cbiAgcHJpdmF0ZSBtb3VzZXVwID0gKCkgPT4ge1xuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCB0aGlzLm1vdXNldXApO1xuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMubW91c2Vtb3ZlKTtcbiAgICB0aGlzLnRvZ2dsZU1vdXNlT3ZlcigpO1xuICB9O1xuXG4gIHByaXZhdGUgZ2V0RGlzdGFuY2VUb1RyYWNrKHBvczogbnVtYmVyKSB7XG4gICAgaWYgKCF0aGlzLnRyYWNrLmN1cnJlbnQpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICBjb25zdCB0cmFja1JlY3QgPSB0aGlzLnRyYWNrLmN1cnJlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgcmV0dXJuIHBvcyAtICh0aGlzLnZlcnRpY2FsID8gdHJhY2tSZWN0LmJvdHRvbSA6IHRyYWNrUmVjdC5sZWZ0KTtcbiAgfVxuXG4gIHByaXZhdGUgbW91c2Vtb3ZlID0gKGU6IE1vdXNlRXZlbnQpID0+IHtcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgY29uc3QgcG9zID0gdGhpcy5nZXRNb3VzZVBvcyhlKTtcbiAgICB0aGlzLnZhbHVlTGlzdGVuZXIodGhpcy5nZXREaXN0YW5jZVRvVHJhY2socG9zKSk7XG4gIH07XG5cbiAgaGFuZGxlVG91Y2hTdGFydDogVG91Y2hFdmVudEhhbmRsZXIgPSAoZTogVG91Y2hFdmVudCkgPT4ge1xuICAgIC8vIFRPRE86IGZpeCB0b3VjaCBldmVudFxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNoZW5kJywgdGhpcy50b3VjaGVuZCk7XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgdGhpcy50b3VjaG1vdmUpO1xuICAgIGlmICh0aGlzLnNldEFuY2hvcikge1xuICAgICAgY29uc3QgcG9zID0gdGhpcy5nZXRUb3VjaFBvc2l0aW9uKGUpO1xuICAgICAgdGhpcy5zZXRBbmNob3IodGhpcy5nZXREaXN0YW5jZVRvVHJhY2socG9zKSk7XG4gICAgfVxuICAgIHRoaXMudG9nZ2xlTW91c2VPdmVyKCk7XG4gIH07XG5cbiAgcHJpdmF0ZSB0b3VjaG1vdmUgPSAoZTogVG91Y2hFdmVudCkgPT4ge1xuICAgIC8vIFRPRE86IHRvdWNoIG5vdCB0ZXN0ZWRcbiAgICBjb25zdCBwb3MgPSB0aGlzLmdldFRvdWNoUG9zaXRpb24oZSk7XG4gICAgdGhpcy52YWx1ZUxpc3RlbmVyKHRoaXMuZ2V0RGlzdGFuY2VUb1RyYWNrKHBvcykpO1xuICB9O1xuXG4gIHByaXZhdGUgdG91Y2hlbmQgPSAoKSA9PiB7XG4gICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2hlbmQnLCB0aGlzLnRvdWNoZW5kKTtcbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaG1vdmUnLCB0aGlzLnRvdWNobW92ZSk7XG4gICAgdGhpcy50b2dnbGVNb3VzZU92ZXIoKTtcbiAgfTtcbn1cbiJdfQ==
@@ -0,0 +1,29 @@
1
+ import { Component, RefObject } from 'react';
2
+ import MouseEventHandler from './mouse-event';
3
+ import { StyleRangeSliderType } from './slider';
4
+ declare function nope(): void;
5
+ declare type SliderBarHandleProps = {
6
+ width: number;
7
+ v0Left: number;
8
+ sliderBarListener: (distance: number) => void;
9
+ enableBarDrag: boolean;
10
+ vertical: boolean;
11
+ track: RefObject<StyleRangeSliderType>;
12
+ setAnchor: (distance: number) => void;
13
+ };
14
+ export default class SliderBarHandle extends Component {
15
+ props: SliderBarHandleProps;
16
+ static defaultProps: {
17
+ sliderBarListener: typeof nope;
18
+ enableBarDrag: boolean;
19
+ vertical: boolean;
20
+ };
21
+ mouseEvent: MouseEventHandler;
22
+ constructor(props: SliderBarHandleProps);
23
+ state: {
24
+ mouseOver: boolean;
25
+ };
26
+ toggleMouseOver: () => void;
27
+ render(): JSX.Element;
28
+ }
29
+ export {};