@carto/kepler.gl 0.0.77 → 0.0.78-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 (1299) hide show
  1. package/README.md +652 -42
  2. package/dist/actions/action-wrapper.js +49 -21
  3. package/dist/actions/actions.js +30 -16
  4. package/dist/actions/identity-actions.js +28 -14
  5. package/dist/actions/index.js +24 -7
  6. package/dist/actions/map-state-actions.js +27 -12
  7. package/dist/actions/map-style-actions.js +69 -31
  8. package/dist/actions/provider-actions.js +81 -44
  9. package/dist/actions/ui-state-actions.js +166 -71
  10. package/dist/actions/vis-state-actions.js +78 -106
  11. package/dist/cloud-providers/index.js +8 -8
  12. package/dist/cloud-providers/provider.js +109 -63
  13. package/dist/components/bottom-widget.js +58 -53
  14. package/dist/components/common/action-panel.js +41 -44
  15. package/dist/components/common/animation-control/animation-control.js +44 -44
  16. package/dist/components/common/animation-control/animation-controller.js +109 -55
  17. package/dist/components/common/animation-control/animation-speed-slider.js +38 -29
  18. package/dist/components/common/animation-control/floating-time-display.js +73 -58
  19. package/dist/components/common/animation-control/playback-controls.js +81 -67
  20. package/dist/components/common/animation-control/speed-control.js +24 -26
  21. package/dist/components/common/checkbox.js +54 -49
  22. package/dist/components/common/color-legend.js +71 -51
  23. package/dist/components/common/data-table/button.js +23 -30
  24. package/dist/components/common/data-table/canvas.js +10 -21
  25. package/dist/components/common/data-table/cell-size.js +58 -54
  26. package/dist/components/common/data-table/grid.js +51 -35
  27. package/dist/components/common/data-table/index.js +150 -109
  28. package/dist/components/common/data-table/option-dropdown.js +33 -29
  29. package/dist/components/common/dataset-label.js +15 -23
  30. package/dist/components/common/error-boundary.js +30 -25
  31. package/dist/components/common/field-selector.js +67 -67
  32. package/dist/components/common/field-token.js +17 -22
  33. package/dist/components/common/file-uploader/file-drop.js +66 -46
  34. package/dist/components/common/file-uploader/file-upload-progress.js +32 -33
  35. package/dist/components/common/file-uploader/file-upload.js +91 -52
  36. package/dist/components/common/file-uploader/upload-button.js +56 -82
  37. package/dist/components/common/histogram-plot.js +37 -35
  38. package/dist/components/common/icons/add.js +26 -32
  39. package/dist/components/common/icons/anchor_window.js +8 -8
  40. package/dist/components/common/icons/arrow-down-alt.js +26 -32
  41. package/dist/components/common/icons/arrow-down-solid.js +58 -0
  42. package/dist/components/common/icons/arrow-down.js +26 -32
  43. package/dist/components/common/icons/arrow-left.js +26 -32
  44. package/dist/components/common/icons/arrow-right.js +26 -32
  45. package/dist/components/common/icons/arrow-up-alt.js +26 -32
  46. package/dist/components/common/icons/arrow-up-solid.js +26 -32
  47. package/dist/components/common/icons/arrow-up.js +26 -32
  48. package/dist/components/common/icons/base.js +42 -52
  49. package/dist/components/common/icons/bug.js +26 -32
  50. package/dist/components/common/icons/cancel.js +26 -32
  51. package/dist/components/common/icons/checkmark.js +27 -32
  52. package/dist/components/common/icons/chevron-right.js +27 -27
  53. package/dist/components/common/icons/clipboard.js +26 -32
  54. package/dist/components/common/icons/clock.js +26 -32
  55. package/dist/components/common/icons/close.js +26 -32
  56. package/dist/components/common/icons/code-alt.js +27 -32
  57. package/dist/components/common/icons/copy.js +27 -32
  58. package/dist/components/common/icons/crosshairs.js +27 -32
  59. package/dist/components/common/icons/cube-3d.js +26 -32
  60. package/dist/components/common/icons/cursor-click.js +26 -32
  61. package/dist/components/common/icons/data-table.js +26 -32
  62. package/dist/components/common/icons/db.js +26 -32
  63. package/dist/components/common/icons/delete.js +26 -31
  64. package/dist/components/common/icons/docs.js +26 -32
  65. package/dist/components/common/icons/drag-n-drop.js +26 -32
  66. package/dist/components/common/icons/draw-polygon.js +26 -35
  67. package/dist/components/common/icons/email.js +26 -32
  68. package/dist/components/common/icons/expand.js +26 -32
  69. package/dist/components/common/icons/eye-seen.js +26 -32
  70. package/dist/components/common/icons/eye-unseen.js +26 -32
  71. package/dist/components/common/icons/file-type.js +16 -23
  72. package/dist/components/common/icons/file.js +26 -32
  73. package/dist/components/common/icons/files.js +25 -29
  74. package/dist/components/common/icons/filter-funnel.js +26 -32
  75. package/dist/components/common/icons/free-window.js +8 -8
  76. package/dist/components/common/icons/gear.js +26 -32
  77. package/dist/components/common/icons/hash.js +26 -32
  78. package/dist/components/common/icons/histogram.js +24 -28
  79. package/dist/components/common/icons/index.js +154 -63
  80. package/dist/components/common/icons/info.js +27 -32
  81. package/dist/components/common/icons/layers.js +26 -32
  82. package/dist/components/common/icons/left-arrow.js +27 -32
  83. package/dist/components/common/icons/legend.js +26 -32
  84. package/dist/components/common/icons/line-chart.js +26 -31
  85. package/dist/components/common/icons/login.js +26 -31
  86. package/dist/components/common/icons/logout.js +26 -31
  87. package/dist/components/common/icons/map-icon.js +27 -33
  88. package/dist/components/common/icons/map.js +27 -33
  89. package/dist/components/common/icons/messages.js +26 -32
  90. package/dist/components/common/icons/minus.js +26 -32
  91. package/dist/components/common/icons/order-by-dataset.js +56 -0
  92. package/dist/components/common/icons/order-by-list.js +48 -0
  93. package/dist/components/common/icons/pause.js +26 -32
  94. package/dist/components/common/icons/picture.js +25 -29
  95. package/dist/components/common/icons/pin.js +35 -33
  96. package/dist/components/common/icons/play.js +26 -32
  97. package/dist/components/common/icons/polygon.js +26 -35
  98. package/dist/components/common/icons/rectangle.js +26 -35
  99. package/dist/components/common/icons/reduce.js +26 -32
  100. package/dist/components/common/icons/reset.js +26 -32
  101. package/dist/components/common/icons/rocket.js +26 -32
  102. package/dist/components/common/icons/save.js +26 -32
  103. package/dist/components/common/icons/save2.js +26 -32
  104. package/dist/components/common/icons/search.js +26 -32
  105. package/dist/components/common/icons/settings.js +26 -32
  106. package/dist/components/common/icons/share.js +26 -32
  107. package/dist/components/common/icons/split.js +26 -32
  108. package/dist/components/common/icons/square-select.js +26 -32
  109. package/dist/components/common/icons/swap-horizontal.js +28 -27
  110. package/dist/components/common/icons/table.js +26 -31
  111. package/dist/components/common/icons/trash.js +26 -32
  112. package/dist/components/common/icons/upload.js +26 -33
  113. package/dist/components/common/icons/vert-dots.js +26 -32
  114. package/dist/components/common/icons/vert-three-dots.js +26 -32
  115. package/dist/components/common/icons/warning.js +27 -32
  116. package/dist/components/common/image-preview.js +27 -35
  117. package/dist/components/common/info-helper.js +23 -32
  118. package/dist/components/common/item-selector/accessor.js +5 -3
  119. package/dist/components/common/item-selector/chickleted-input.js +42 -62
  120. package/dist/components/common/item-selector/dropdown-list.js +95 -72
  121. package/dist/components/common/item-selector/item-selector-submenu.js +38 -29
  122. package/dist/components/common/item-selector/item-selector.js +102 -89
  123. package/dist/components/common/item-selector/typeahead.js +118 -86
  124. package/dist/components/common/line-chart.js +44 -46
  125. package/dist/components/common/loading-spinner.js +23 -33
  126. package/dist/components/common/logo.js +24 -36
  127. package/dist/components/common/map-layer-selector.js +14 -22
  128. package/dist/components/common/modal.js +62 -50
  129. package/dist/components/common/portaled.js +109 -64
  130. package/dist/components/common/progress-bar.js +17 -28
  131. package/dist/components/common/range-brush.js +132 -84
  132. package/dist/components/common/range-plot.js +51 -60
  133. package/dist/components/common/range-slider.js +88 -76
  134. package/dist/components/common/slider/mouse-event.js +88 -52
  135. package/dist/components/common/slider/slider-bar-handle.js +40 -39
  136. package/dist/components/common/slider/slider-handle.js +49 -45
  137. package/dist/components/common/slider/slider.js +107 -104
  138. package/dist/components/common/styled-components.js +183 -69
  139. package/dist/components/common/switch.js +14 -37
  140. package/dist/components/common/time-range-slider-time-title.js +19 -24
  141. package/dist/components/common/time-range-slider.js +39 -61
  142. package/dist/components/common/time-slider-marker.js +41 -36
  143. package/dist/components/common/tippy-tooltip.js +115 -0
  144. package/dist/components/common/toolbar-item.js +23 -25
  145. package/dist/components/common/toolbar.js +10 -21
  146. package/dist/components/common/vertical-toolbar.js +10 -21
  147. package/dist/components/container.js +94 -66
  148. package/dist/components/context.js +10 -6
  149. package/dist/components/editor/constants.js +8 -6
  150. package/dist/components/editor/editor.js +77 -62
  151. package/dist/components/editor/feature-action-panel.js +50 -47
  152. package/dist/components/editor/feature-styles.js +42 -37
  153. package/dist/components/editor/handle-style.js +39 -37
  154. package/dist/components/filters/components.js +10 -21
  155. package/dist/components/filters/filter-panels/filter-panel-with-field-select.js +27 -19
  156. package/dist/components/filters/filter-panels/multi-select-filter-panel.js +18 -18
  157. package/dist/components/filters/filter-panels/new-filter-panel.js +23 -19
  158. package/dist/components/filters/filter-panels/polygon-filter-panel.js +28 -21
  159. package/dist/components/filters/filter-panels/range-filter-panel.js +18 -18
  160. package/dist/components/filters/filter-panels/single-select-filter-panel.js +18 -18
  161. package/dist/components/filters/filter-panels/time-range-filter-panel.js +24 -19
  162. package/dist/components/filters/filter-panels/types.js +6 -0
  163. package/dist/components/filters/index.js +17 -11
  164. package/dist/components/filters/multi-select-filter.js +9 -3
  165. package/dist/components/filters/polygon-filter.js +19 -10
  166. package/dist/components/filters/range-filter.js +9 -4
  167. package/dist/components/filters/single-select-filter.js +9 -3
  168. package/dist/components/filters/time-range-filter.js +18 -7
  169. package/dist/components/filters/time-widget.js +51 -42
  170. package/dist/components/filters/types.js +6 -0
  171. package/dist/components/geocoder/geocoder.js +134 -100
  172. package/dist/components/geocoder-panel.js +79 -57
  173. package/dist/components/index.js +591 -356
  174. package/dist/components/injector.js +58 -42
  175. package/dist/components/kepler-gl.js +171 -82
  176. package/dist/components/map/coordinate-info.js +13 -4
  177. package/dist/components/map/layer-hover-info.js +46 -39
  178. package/dist/components/map/layer-selector-panel.js +30 -17
  179. package/dist/components/map/locale-panel.js +43 -23
  180. package/dist/components/map/map-control-panel.js +43 -30
  181. package/dist/components/map/map-control-toolbar.js +11 -21
  182. package/dist/components/map/map-control-tooltip.js +13 -6
  183. package/dist/components/map/map-control.js +28 -27
  184. package/dist/components/map/map-draw-panel.js +48 -23
  185. package/dist/components/map/map-legend-panel.js +138 -77
  186. package/dist/components/map/map-legend.js +82 -55
  187. package/dist/components/map/map-popover.js +58 -42
  188. package/dist/components/map/split-map-button.js +40 -25
  189. package/dist/components/map/toggle-3d-button.js +37 -22
  190. package/dist/components/map-container.js +164 -144
  191. package/dist/components/maps-layout.js +29 -25
  192. package/dist/components/modal-container.js +116 -89
  193. package/dist/components/modals/add-map-style-modal.js +66 -46
  194. package/dist/components/modals/cloud-tile.js +36 -36
  195. package/dist/components/modals/data-table-modal.js +96 -60
  196. package/dist/components/modals/delete-data-modal.js +20 -24
  197. package/dist/components/modals/error-display.js +10 -3
  198. package/dist/components/modals/export-data-modal.js +59 -57
  199. package/dist/components/modals/export-image-modal.js +28 -31
  200. package/dist/components/modals/export-map-modal/components.js +27 -27
  201. package/dist/components/modals/export-map-modal/export-html-map.js +27 -28
  202. package/dist/components/modals/export-map-modal/export-json-map.js +43 -30
  203. package/dist/components/modals/export-map-modal/export-map-modal.js +41 -34
  204. package/dist/components/modals/image-modal-container.js +19 -14
  205. package/dist/components/modals/load-data-modal.js +35 -31
  206. package/dist/components/modals/load-storage-map.js +79 -44
  207. package/dist/components/modals/loading-dialog.js +18 -24
  208. package/dist/components/modals/modal-dialog.js +7 -3
  209. package/dist/components/modals/modal-tabs.js +29 -29
  210. package/dist/components/modals/overwrite-map-modal.js +28 -29
  211. package/dist/components/modals/provider-modal-container.js +32 -35
  212. package/dist/components/modals/save-map-modal.js +51 -47
  213. package/dist/components/modals/share-map-modal.js +63 -55
  214. package/dist/components/modals/status-panel.js +25 -24
  215. package/dist/components/modals/storage-map-viewer.js +43 -38
  216. package/dist/components/notification-panel/notification-item.js +46 -41
  217. package/dist/components/notification-panel.js +32 -35
  218. package/dist/components/performance.js +36 -11
  219. package/dist/components/plot-container.js +76 -60
  220. package/dist/components/side-panel/cloud-storage-dropdown.js +10 -4
  221. package/dist/components/side-panel/common/dataset-info.js +13 -20
  222. package/dist/components/side-panel/common/dataset-tag.js +49 -31
  223. package/dist/components/side-panel/common/dataset-title.js +91 -44
  224. package/dist/components/side-panel/common/source-data-catalog.js +26 -28
  225. package/dist/components/side-panel/common/source-data-selector.js +51 -37
  226. package/dist/components/side-panel/common/types.js +6 -0
  227. package/dist/components/side-panel/custom-panel.js +9 -5
  228. package/dist/components/side-panel/filter-manager.js +32 -30
  229. package/dist/components/side-panel/filter-panel/filter-panel-header.js +29 -32
  230. package/dist/components/side-panel/filter-panel/filter-panel.js +58 -53
  231. package/dist/components/side-panel/interaction-manager.js +12 -5
  232. package/dist/components/side-panel/interaction-panel/brush-config.js +19 -23
  233. package/dist/components/side-panel/interaction-panel/interaction-panel.js +58 -41
  234. package/dist/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +83 -47
  235. package/dist/components/side-panel/interaction-panel/tooltip-config.js +46 -30
  236. package/dist/components/side-panel/layer-manager.js +132 -211
  237. package/dist/components/side-panel/layer-panel/add-layer-button.js +156 -0
  238. package/dist/components/side-panel/layer-panel/color-dimension-scale-selector.js +11 -4
  239. package/dist/components/side-panel/layer-panel/color-palette.js +29 -41
  240. package/dist/components/side-panel/layer-panel/color-range-selector.js +164 -162
  241. package/dist/components/side-panel/layer-panel/color-selector.js +71 -60
  242. package/dist/components/side-panel/layer-panel/column-selector.js +27 -28
  243. package/dist/components/side-panel/layer-panel/custom-markers-config-group.js +7 -3
  244. package/dist/components/side-panel/layer-panel/custom-palette.js +72 -48
  245. package/dist/components/side-panel/layer-panel/custom-picker.js +41 -40
  246. package/dist/components/side-panel/layer-panel/dataset-layer-group.js +87 -0
  247. package/dist/components/side-panel/layer-panel/dataset-layer-section.js +69 -0
  248. package/dist/components/side-panel/layer-panel/dataset-section.js +91 -0
  249. package/dist/components/side-panel/layer-panel/dimension-scale-selector.js +16 -8
  250. package/dist/components/side-panel/layer-panel/hex-column-config.js +34 -12
  251. package/dist/components/side-panel/layer-panel/layer-aggregation-resolution.js +10 -2
  252. package/dist/components/side-panel/layer-panel/layer-column-config.js +26 -42
  253. package/dist/components/side-panel/layer-panel/layer-config-group.js +86 -52
  254. package/dist/components/side-panel/layer-panel/layer-configurator.js +249 -158
  255. package/dist/components/side-panel/layer-panel/layer-list.js +168 -0
  256. package/dist/components/side-panel/layer-panel/layer-panel-header.js +70 -74
  257. package/dist/components/side-panel/layer-panel/layer-panel.js +58 -55
  258. package/dist/components/side-panel/layer-panel/layer-type-dropdown-list.js +22 -28
  259. package/dist/components/side-panel/layer-panel/layer-type-list-item.js +18 -22
  260. package/dist/components/side-panel/layer-panel/layer-type-selector.js +30 -35
  261. package/dist/components/side-panel/layer-panel/layer-visibility-by-zoom.js +40 -35
  262. package/dist/components/side-panel/layer-panel/panel-view-list-toggle.js +123 -0
  263. package/dist/components/side-panel/layer-panel/single-color-palette.js +45 -77
  264. package/dist/components/side-panel/layer-panel/text-label-panel.js +45 -41
  265. package/dist/components/side-panel/layer-panel/vis-config-by-field-selector.js +51 -60
  266. package/dist/components/side-panel/layer-panel/vis-config-slider.js +163 -52
  267. package/dist/components/side-panel/layer-panel/vis-config-switch.js +27 -38
  268. package/dist/components/side-panel/map-manager.js +45 -38
  269. package/dist/components/side-panel/map-style-panel/map-layer-selector.js +31 -28
  270. package/dist/components/side-panel/map-style-panel/map-style-selector.js +24 -26
  271. package/dist/components/side-panel/panel-dropdown.js +34 -34
  272. package/dist/components/side-panel/panel-header-action.js +43 -51
  273. package/dist/components/side-panel/panel-header.js +105 -78
  274. package/dist/components/side-panel/panel-tab.js +20 -24
  275. package/dist/components/side-panel/panel-title.js +17 -22
  276. package/dist/components/side-panel/panel-toggle.js +21 -33
  277. package/dist/components/side-panel/side-bar.js +53 -44
  278. package/dist/components/side-panel.js +79 -68
  279. package/dist/components/types.js +6 -0
  280. package/dist/connect/keplergl-connect.js +14 -5
  281. package/dist/connect/with-local-selector.js +38 -33
  282. package/dist/constants/action-types.js +14 -5
  283. package/dist/constants/color-palette.js +23 -12
  284. package/dist/constants/color-ranges.js +31 -32
  285. package/dist/constants/custom-color-ranges.js +14 -9
  286. package/dist/constants/default-settings.js +265 -162
  287. package/dist/constants/index.js +103 -95
  288. package/dist/constants/keyevent.js +7 -3
  289. package/dist/constants/tooltip.js +10 -7
  290. package/dist/constants/user-feedbacks.js +6 -5
  291. package/dist/constants/user-guides.js +20 -12
  292. package/dist/deckgl-layers/3d-building-layer/3d-building-layer.js +33 -30
  293. package/dist/deckgl-layers/3d-building-layer/3d-building-utils.js +43 -10
  294. package/dist/deckgl-layers/3d-building-layer/types.js +6 -0
  295. package/dist/deckgl-layers/cluster-layer/cluster-layer.js +75 -54
  296. package/dist/deckgl-layers/column-layer/enhanced-column-layer.js +34 -31
  297. package/dist/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.js +38 -38
  298. package/dist/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.js +38 -38
  299. package/dist/deckgl-layers/layer-utils/cluster-utils.js +26 -12
  300. package/dist/deckgl-layers/layer-utils/cpu-aggregator.js +152 -90
  301. package/dist/deckgl-layers/layer-utils/shader-utils.js +5 -1
  302. package/dist/deckgl-layers/line-layer/line-layer.js +40 -31
  303. package/dist/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.js +32 -27
  304. package/dist/deckgl-layers/svg-icon-layer/svg-icon-layer.js +42 -36
  305. package/dist/index.js +23 -4
  306. package/dist/layers/aggregation-layer.js +126 -76
  307. package/dist/layers/arc-layer/arc-layer-icon.js +27 -27
  308. package/dist/layers/arc-layer/arc-layer.js +85 -56
  309. package/dist/layers/base-layer.js +459 -288
  310. package/dist/layers/cluster-layer/cluster-layer-icon.js +27 -27
  311. package/dist/layers/cluster-layer/cluster-layer.js +45 -34
  312. package/dist/layers/default-layer-icon.js +27 -27
  313. package/dist/layers/geojson-layer/geojson-layer-icon.js +27 -27
  314. package/dist/layers/geojson-layer/geojson-layer.js +105 -60
  315. package/dist/layers/geojson-layer/geojson-utils.js +68 -39
  316. package/dist/layers/grid-layer/grid-layer-icon.js +27 -27
  317. package/dist/layers/grid-layer/grid-layer.js +42 -31
  318. package/dist/layers/grid-layer/grid-utils.js +15 -12
  319. package/dist/layers/h3-hexagon-layer/h3-hexagon-layer-icon.js +27 -27
  320. package/dist/layers/h3-hexagon-layer/h3-hexagon-layer.js +92 -49
  321. package/dist/layers/h3-hexagon-layer/h3-utils.js +22 -11
  322. package/dist/layers/heatmap-layer/heatmap-layer-icon.js +27 -27
  323. package/dist/layers/heatmap-layer/heatmap-layer.js +81 -59
  324. package/dist/layers/hexagon-layer/hexagon-layer-icon.js +27 -27
  325. package/dist/layers/hexagon-layer/hexagon-layer.js +43 -31
  326. package/dist/layers/hexagon-layer/hexagon-utils.js +15 -3
  327. package/dist/layers/icon-layer/icon-info-modal.js +28 -24
  328. package/dist/layers/icon-layer/icon-layer-icon.js +27 -27
  329. package/dist/layers/icon-layer/icon-layer.js +115 -63
  330. package/dist/layers/index.js +39 -38
  331. package/dist/layers/layer-factory.js +83 -69
  332. package/dist/layers/layer-text-label.js +15 -9
  333. package/dist/layers/layer-update.js +21 -12
  334. package/dist/layers/line-layer/line-layer-icon.js +27 -27
  335. package/dist/layers/line-layer/line-layer.js +84 -63
  336. package/dist/layers/mapbox-utils.js +54 -48
  337. package/dist/layers/mapboxgl-layer.js +68 -45
  338. package/dist/layers/point-layer/point-layer-icon.js +27 -27
  339. package/dist/layers/point-layer/point-layer.js +100 -60
  340. package/dist/layers/s2-geometry-layer/s2-geometry-layer.js +86 -45
  341. package/dist/layers/s2-geometry-layer/s2-layer-icon.js +27 -27
  342. package/dist/layers/s2-geometry-layer/s2-utils.js +18 -5
  343. package/dist/layers/scenegraph-layer/scenegraph-info-modal.js +15 -21
  344. package/dist/layers/scenegraph-layer/scenegraph-layer-icon.js +27 -27
  345. package/dist/layers/scenegraph-layer/scenegraph-layer.js +85 -54
  346. package/dist/layers/trip-layer/trip-info-modal.js +16 -21
  347. package/dist/layers/trip-layer/trip-layer-icon.js +27 -27
  348. package/dist/layers/trip-layer/trip-layer.js +115 -58
  349. package/dist/layers/trip-layer/trip-utils.js +51 -28
  350. package/dist/layers/types.js +6 -3
  351. package/dist/localization/formatted-message.js +12 -8
  352. package/dist/localization/index.js +14 -8
  353. package/dist/localization/locales.js +12 -7
  354. package/dist/localization/messages.js +29 -0
  355. package/dist/localization/translations/ca.js +455 -0
  356. package/dist/localization/translations/cn.js +458 -0
  357. package/dist/localization/translations/en.js +483 -0
  358. package/dist/localization/translations/es.js +455 -0
  359. package/dist/localization/translations/fi.js +427 -0
  360. package/dist/localization/translations/ja.js +456 -0
  361. package/dist/localization/translations/pt.js +427 -0
  362. package/dist/localization/translations/ru.js +464 -0
  363. package/dist/middleware/index.js +5 -2
  364. package/dist/processors/data-processor.js +217 -149
  365. package/dist/processors/file-handler.js +284 -210
  366. package/dist/processors/index.js +25 -97
  367. package/dist/processors/types.js +6 -0
  368. package/dist/reducers/combined-updaters.js +48 -40
  369. package/dist/reducers/composer-helpers.js +34 -32
  370. package/dist/reducers/composers.js +12 -25
  371. package/dist/reducers/core.js +46 -19
  372. package/dist/reducers/index.js +52 -24
  373. package/dist/reducers/map-state-updaters.js +64 -61
  374. package/dist/reducers/map-state.js +26 -31
  375. package/dist/reducers/map-style-updaters.js +149 -116
  376. package/dist/reducers/map-style.js +26 -31
  377. package/dist/reducers/provider-state-updaters.js +151 -121
  378. package/dist/reducers/provider-state.js +25 -32
  379. package/dist/reducers/root.js +52 -45
  380. package/dist/reducers/types.js +6 -0
  381. package/dist/reducers/ui-state-updaters.js +231 -138
  382. package/dist/reducers/ui-state.js +27 -32
  383. package/dist/reducers/vis-state-merger.js +212 -143
  384. package/dist/reducers/vis-state-selectors.js +12 -5
  385. package/dist/reducers/vis-state-updaters.js +706 -490
  386. package/dist/reducers/vis-state.js +25 -32
  387. package/dist/schemas/dataset-schema.js +59 -39
  388. package/dist/schemas/index.js +45 -38
  389. package/dist/schemas/map-state-schema.js +24 -28
  390. package/dist/schemas/map-style-schema.js +48 -34
  391. package/dist/schemas/schema-manager.js +71 -46
  392. package/dist/schemas/schema-utils.js +15 -11
  393. package/dist/schemas/schema.js +37 -35
  394. package/dist/schemas/versions.js +9 -5
  395. package/dist/schemas/vis-state-schema.js +312 -112
  396. package/dist/styles/base.js +646 -367
  397. package/dist/styles/index.js +5 -1
  398. package/dist/styles/media-breakpoints.js +36 -27
  399. package/dist/tasks/tasks.js +50 -22
  400. package/dist/templates/export-map-html.js +6 -3
  401. package/dist/utils/aggregate-utils.js +27 -23
  402. package/dist/utils/color-utils.js +62 -44
  403. package/dist/utils/custom-scales.js +7 -1
  404. package/dist/utils/data-scale-utils.js +18 -14
  405. package/dist/utils/data-utils.js +148 -110
  406. package/dist/utils/dataset-utils.js +91 -75
  407. package/dist/utils/dom-to-image.js +97 -19
  408. package/dist/utils/dom-utils.js +116 -34
  409. package/dist/utils/export-utils.js +122 -81
  410. package/dist/utils/filter-utils.js +335 -242
  411. package/dist/utils/gl-utils.js +12 -22
  412. package/dist/utils/gpu-filter-utils.js +70 -61
  413. package/dist/utils/index.js +220 -64
  414. package/dist/utils/interaction-utils.js +52 -34
  415. package/dist/utils/layer-utils.js +65 -60
  416. package/dist/utils/locale-utils.js +21 -23
  417. package/dist/utils/map-info-utils.js +3 -2
  418. package/dist/utils/map-style-utils/mapbox-gl-style-editor.js +85 -86
  419. package/dist/utils/map-style-utils/mapbox-utils.js +5 -3
  420. package/dist/utils/mapbox-utils.js +5 -2
  421. package/dist/utils/notifications-utils.js +42 -43
  422. package/dist/utils/observe-dimensions.js +44 -39
  423. package/dist/utils/projection-utils.js +20 -9
  424. package/dist/utils/searcher-utils.js +4 -1
  425. package/dist/utils/split-map-utils.js +34 -38
  426. package/dist/utils/table-utils/data-container-interface.js +6 -0
  427. package/dist/utils/table-utils/data-container-utils.js +36 -29
  428. package/dist/utils/table-utils/data-row.js +79 -7
  429. package/dist/utils/table-utils/index.js +2 -1
  430. package/dist/utils/table-utils/indexed-data-container.js +113 -81
  431. package/dist/utils/table-utils/kepler-table.js +200 -99
  432. package/dist/utils/table-utils/row-data-container.js +109 -74
  433. package/dist/utils/utils.js +94 -50
  434. package/package.json +60 -11
  435. package/src/actions/action-wrapper.ts +183 -0
  436. package/src/actions/actions.ts +260 -0
  437. package/src/actions/identity-actions.ts +116 -0
  438. package/src/actions/map-state-actions.ts +116 -0
  439. package/src/actions/map-style-actions.ts +243 -0
  440. package/src/actions/provider-actions.ts +218 -0
  441. package/src/actions/ui-state-actions.ts +490 -0
  442. package/src/actions/vis-state-actions.ts +1279 -0
  443. package/src/cloud-providers/index.ts +22 -0
  444. package/src/cloud-providers/provider.ts +277 -0
  445. package/src/components/bottom-widget.tsx +275 -0
  446. package/src/components/common/action-panel.tsx +207 -0
  447. package/src/components/common/animation-control/animation-control.tsx +157 -0
  448. package/src/components/common/animation-control/animation-controller.ts +249 -0
  449. package/src/components/common/animation-control/animation-speed-slider.tsx +86 -0
  450. package/src/components/common/animation-control/floating-time-display.tsx +209 -0
  451. package/src/components/common/animation-control/playback-controls.tsx +316 -0
  452. package/src/components/common/animation-control/speed-control.tsx +71 -0
  453. package/src/components/common/checkbox.tsx +137 -0
  454. package/src/components/common/color-legend.tsx +203 -0
  455. package/src/components/common/data-table/button.tsx +54 -0
  456. package/src/components/common/data-table/cell-size.ts +185 -0
  457. package/src/components/common/data-table/grid.tsx +57 -0
  458. package/src/components/common/data-table/index.tsx +693 -0
  459. package/src/components/common/data-table/option-dropdown.tsx +122 -0
  460. package/src/components/common/dataset-label.tsx +48 -0
  461. package/src/components/common/error-boundary.tsx +43 -0
  462. package/src/components/common/field-selector.tsx +237 -0
  463. package/src/components/common/field-token.tsx +60 -0
  464. package/src/components/common/file-uploader/file-drop.tsx +208 -0
  465. package/src/components/common/file-uploader/file-upload-progress.tsx +123 -0
  466. package/src/components/common/file-uploader/file-upload.tsx +319 -0
  467. package/src/components/common/file-uploader/upload-button.tsx +88 -0
  468. package/src/components/common/histogram-plot.tsx +125 -0
  469. package/src/components/common/icons/add.tsx +37 -0
  470. package/src/components/common/icons/anchor_window.tsx +49 -0
  471. package/src/components/common/icons/arrow-down-alt.tsx +37 -0
  472. package/src/components/common/icons/arrow-down-solid.tsx +37 -0
  473. package/src/components/common/icons/arrow-down.tsx +40 -0
  474. package/src/components/common/icons/arrow-left.tsx +42 -0
  475. package/src/components/common/icons/arrow-right.tsx +40 -0
  476. package/src/components/common/icons/arrow-up-alt.tsx +40 -0
  477. package/src/components/common/icons/arrow-up-solid.tsx +37 -0
  478. package/src/components/common/icons/arrow-up.tsx +40 -0
  479. package/src/components/common/icons/base.tsx +95 -0
  480. package/src/components/common/icons/bug.tsx +40 -0
  481. package/src/components/common/icons/cancel.tsx +37 -0
  482. package/src/components/common/icons/checkmark.tsx +39 -0
  483. package/src/components/common/icons/chevron-right.js +1 -1
  484. package/src/components/common/icons/clipboard.tsx +40 -0
  485. package/src/components/common/icons/clock.tsx +38 -0
  486. package/src/components/common/icons/close.tsx +43 -0
  487. package/src/components/common/icons/code-alt.tsx +37 -0
  488. package/src/components/common/icons/copy.tsx +38 -0
  489. package/src/components/common/icons/crosshairs.tsx +37 -0
  490. package/src/components/common/icons/cube-3d.tsx +39 -0
  491. package/src/components/common/icons/cursor-click.tsx +43 -0
  492. package/src/components/common/icons/data-table.tsx +40 -0
  493. package/src/components/common/icons/db.tsx +40 -0
  494. package/src/components/common/icons/delete.tsx +39 -0
  495. package/src/components/common/icons/docs.tsx +40 -0
  496. package/src/components/common/icons/drag-n-drop.tsx +38 -0
  497. package/src/components/common/icons/draw-polygon.tsx +51 -0
  498. package/src/components/common/icons/email.tsx +39 -0
  499. package/src/components/common/icons/expand.tsx +39 -0
  500. package/src/components/common/icons/eye-seen.tsx +38 -0
  501. package/src/components/common/icons/eye-unseen.tsx +38 -0
  502. package/src/components/common/icons/file-type.tsx +71 -0
  503. package/src/components/common/icons/file.tsx +37 -0
  504. package/src/components/common/icons/files.tsx +37 -0
  505. package/src/components/common/icons/filter-funnel.tsx +37 -0
  506. package/src/components/common/icons/free-window.tsx +48 -0
  507. package/src/components/common/icons/gear.tsx +40 -0
  508. package/src/components/common/icons/hash.tsx +37 -0
  509. package/src/components/common/icons/histogram.tsx +42 -0
  510. package/src/components/common/icons/index.tsx +98 -0
  511. package/src/components/common/icons/info.tsx +48 -0
  512. package/src/components/common/icons/layers.tsx +37 -0
  513. package/src/components/common/icons/left-arrow.tsx +37 -0
  514. package/src/components/common/icons/legend.tsx +37 -0
  515. package/src/components/common/icons/line-chart.tsx +40 -0
  516. package/src/components/common/icons/login.tsx +41 -0
  517. package/src/components/common/icons/logout.tsx +38 -0
  518. package/src/components/common/icons/map-icon.tsx +62 -0
  519. package/src/components/common/icons/map.tsx +62 -0
  520. package/src/components/common/icons/messages.tsx +37 -0
  521. package/src/components/common/icons/minus.tsx +39 -0
  522. package/src/components/common/icons/order-by-dataset.tsx +49 -0
  523. package/src/components/common/icons/order-by-list.tsx +39 -0
  524. package/src/components/common/icons/pause.tsx +37 -0
  525. package/src/components/common/icons/picture.tsx +37 -0
  526. package/src/components/common/icons/pin.tsx +42 -0
  527. package/src/components/common/icons/play.tsx +37 -0
  528. package/src/components/common/icons/polygon.tsx +65 -0
  529. package/src/components/common/icons/rectangle.tsx +66 -0
  530. package/src/components/common/icons/reduce.tsx +42 -0
  531. package/src/components/common/icons/reset.tsx +37 -0
  532. package/src/components/common/icons/rocket.tsx +37 -0
  533. package/src/components/common/icons/save.tsx +38 -0
  534. package/src/components/common/icons/save2.tsx +42 -0
  535. package/src/components/common/icons/search.tsx +38 -0
  536. package/src/components/common/icons/settings.tsx +39 -0
  537. package/src/components/common/icons/share.tsx +37 -0
  538. package/src/components/common/icons/split.tsx +57 -0
  539. package/src/components/common/icons/square-select.tsx +38 -0
  540. package/src/components/common/icons/swap-horizontal.js +1 -1
  541. package/src/components/common/icons/table.tsx +41 -0
  542. package/src/components/common/icons/trash.tsx +45 -0
  543. package/src/components/common/icons/upload.tsx +37 -0
  544. package/src/components/common/icons/vert-dots.tsx +44 -0
  545. package/src/components/common/icons/vert-three-dots.tsx +39 -0
  546. package/src/components/common/icons/warning.tsx +40 -0
  547. package/src/components/common/image-preview.tsx +118 -0
  548. package/src/components/common/info-helper.tsx +90 -0
  549. package/src/components/common/item-selector/accessor.ts +45 -0
  550. package/src/components/common/item-selector/chickleted-input.tsx +153 -0
  551. package/src/components/common/item-selector/dropdown-list.tsx +269 -0
  552. package/src/components/common/item-selector/item-selector-submenu.js +1 -1
  553. package/src/components/common/item-selector/item-selector.d.ts +24 -27
  554. package/src/components/common/item-selector/item-selector.tsx +372 -0
  555. package/src/components/common/item-selector/typeahead.tsx +533 -0
  556. package/src/components/common/line-chart.tsx +170 -0
  557. package/src/components/common/loading-spinner.tsx +75 -0
  558. package/src/components/common/logo.tsx +88 -0
  559. package/src/components/common/map-layer-selector.tsx +64 -0
  560. package/src/components/common/modal.tsx +238 -0
  561. package/src/components/common/portaled.tsx +312 -0
  562. package/src/components/common/progress-bar.tsx +74 -0
  563. package/src/components/common/range-brush.tsx +276 -0
  564. package/src/components/common/range-plot.tsx +145 -0
  565. package/src/components/common/range-slider.tsx +320 -0
  566. package/src/components/common/slider/mouse-event.ts +122 -0
  567. package/src/components/common/slider/slider-bar-handle.tsx +106 -0
  568. package/src/components/common/slider/slider-handle.tsx +210 -0
  569. package/src/components/common/slider/slider.tsx +234 -0
  570. package/src/components/common/styled-components.tsx +708 -0
  571. package/src/components/common/switch.tsx +47 -0
  572. package/src/components/common/time-range-slider-time-title.tsx +87 -0
  573. package/src/components/common/time-range-slider.tsx +171 -0
  574. package/src/components/common/time-slider-marker.tsx +187 -0
  575. package/src/components/common/tippy-tooltip.tsx +130 -0
  576. package/src/components/common/toolbar-item.tsx +99 -0
  577. package/src/components/common/toolbar.tsx +49 -0
  578. package/src/components/common/vertical-toolbar.tsx +35 -0
  579. package/src/components/container.d.ts +8 -0
  580. package/src/components/container.tsx +188 -0
  581. package/src/components/context.ts +32 -0
  582. package/src/components/editor/editor.tsx +231 -0
  583. package/src/components/editor/feature-action-panel.tsx +155 -0
  584. package/src/components/editor/feature-styles.ts +75 -0
  585. package/src/components/editor/handle-style.ts +89 -0
  586. package/src/components/filters/filter-panels/filter-panel-with-field-select.tsx +118 -0
  587. package/src/components/filters/filter-panels/multi-select-filter-panel.tsx +63 -0
  588. package/src/components/filters/filter-panels/new-filter-panel.tsx +100 -0
  589. package/src/components/filters/filter-panels/polygon-filter-panel.tsx +84 -0
  590. package/src/components/filters/filter-panels/range-filter-panel.tsx +63 -0
  591. package/src/components/filters/filter-panels/single-select-filter-panel.tsx +63 -0
  592. package/src/components/filters/filter-panels/time-range-filter-panel.tsx +92 -0
  593. package/src/components/filters/filter-panels/types.ts +39 -0
  594. package/src/components/filters/multi-select-filter.tsx +37 -0
  595. package/src/components/filters/polygon-filter.tsx +74 -0
  596. package/src/components/filters/range-filter.tsx +44 -0
  597. package/src/components/filters/single-select-filter.tsx +50 -0
  598. package/src/components/filters/time-range-filter.tsx +76 -0
  599. package/src/components/filters/time-widget.tsx +240 -0
  600. package/src/components/filters/types.ts +78 -0
  601. package/src/components/geocoder/geocoder.tsx +307 -0
  602. package/src/components/geocoder-panel.tsx +199 -0
  603. package/src/components/index.ts +262 -0
  604. package/src/components/injector.d.ts +33 -0
  605. package/src/components/injector.tsx +171 -0
  606. package/src/components/kepler-gl.d.ts +1 -2
  607. package/src/components/kepler-gl.tsx +579 -0
  608. package/src/components/map/coordinate-info.tsx +58 -0
  609. package/src/components/map/layer-hover-info.tsx +192 -0
  610. package/src/components/map/layer-selector-panel.tsx +121 -0
  611. package/src/components/map/locale-panel.tsx +110 -0
  612. package/src/components/map/map-control-panel.tsx +141 -0
  613. package/src/components/map/map-control-tooltip.tsx +45 -0
  614. package/src/components/map/map-control.tsx +138 -0
  615. package/src/components/map/map-draw-panel.tsx +145 -0
  616. package/src/components/map/map-legend-panel.tsx +167 -0
  617. package/src/components/map/map-legend.tsx +283 -0
  618. package/src/components/map/map-popover.tsx +266 -0
  619. package/src/components/map/split-map-button.tsx +98 -0
  620. package/src/components/map/toggle-3d-button.tsx +90 -0
  621. package/src/components/map-container.tsx +541 -0
  622. package/src/components/maps-layout.tsx +44 -0
  623. package/src/components/modal-container.tsx +556 -0
  624. package/src/components/modals/add-map-style-modal.tsx +303 -0
  625. package/src/components/modals/cloud-tile.tsx +181 -0
  626. package/src/components/modals/data-table-modal.tsx +241 -0
  627. package/src/components/modals/delete-data-modal.tsx +55 -0
  628. package/src/components/modals/error-display.tsx +43 -0
  629. package/src/components/modals/export-data-modal.tsx +201 -0
  630. package/src/components/modals/export-image-modal.tsx +155 -0
  631. package/src/components/modals/export-map-modal/export-html-map.tsx +164 -0
  632. package/src/components/modals/export-map-modal/export-json-map.tsx +112 -0
  633. package/src/components/modals/export-map-modal/export-map-modal.tsx +109 -0
  634. package/src/components/modals/image-modal-container.tsx +85 -0
  635. package/src/components/modals/load-data-modal.tsx +120 -0
  636. package/src/components/modals/load-storage-map.tsx +414 -0
  637. package/src/components/modals/loading-dialog.tsx +77 -0
  638. package/src/components/modals/modal-tabs.tsx +137 -0
  639. package/src/components/modals/overwrite-map-modal.tsx +113 -0
  640. package/src/components/modals/provider-modal-container.tsx +61 -0
  641. package/src/components/modals/save-map-modal.tsx +277 -0
  642. package/src/components/modals/share-map-modal.tsx +217 -0
  643. package/src/components/modals/status-panel.tsx +106 -0
  644. package/src/components/modals/storage-map-viewer.tsx +190 -0
  645. package/src/components/notification-panel/notification-item.tsx +143 -0
  646. package/src/components/notification-panel.tsx +75 -0
  647. package/src/components/plot-container.tsx +237 -0
  648. package/src/components/side-panel/common/dataset-info.tsx +46 -0
  649. package/src/components/side-panel/common/dataset-tag.tsx +86 -0
  650. package/src/components/side-panel/common/dataset-title.tsx +186 -0
  651. package/src/components/side-panel/common/source-data-catalog.tsx +67 -0
  652. package/src/components/side-panel/common/source-data-selector.tsx +90 -0
  653. package/src/components/side-panel/common/types.ts +76 -0
  654. package/src/components/side-panel/filter-manager.tsx +120 -0
  655. package/src/components/side-panel/filter-panel/filter-panel-header.tsx +96 -0
  656. package/src/components/side-panel/filter-panel/filter-panel.tsx +125 -0
  657. package/src/components/side-panel/interaction-manager.tsx +59 -0
  658. package/src/components/side-panel/interaction-panel/brush-config.tsx +58 -0
  659. package/src/components/side-panel/interaction-panel/interaction-panel.tsx +124 -0
  660. package/src/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.tsx +243 -0
  661. package/src/components/side-panel/interaction-panel/tooltip-config.tsx +238 -0
  662. package/src/components/side-panel/layer-manager.tsx +242 -0
  663. package/src/components/side-panel/layer-panel/add-layer-button.tsx +208 -0
  664. package/src/components/side-panel/layer-panel/color-dimension-scale-selector.js +1 -1
  665. package/src/components/side-panel/layer-panel/color-palette.tsx +98 -0
  666. package/src/components/side-panel/layer-panel/color-range-selector.tsx +377 -0
  667. package/src/components/side-panel/layer-panel/color-selector.tsx +200 -0
  668. package/src/components/side-panel/layer-panel/column-selector.tsx +102 -0
  669. package/src/components/side-panel/layer-panel/custom-markers-config-group.js +1 -1
  670. package/src/components/side-panel/layer-panel/custom-palette.tsx +297 -0
  671. package/src/components/side-panel/layer-panel/custom-picker.tsx +99 -0
  672. package/src/components/side-panel/layer-panel/dataset-layer-group.tsx +99 -0
  673. package/src/components/side-panel/layer-panel/dataset-layer-section.tsx +100 -0
  674. package/src/components/side-panel/layer-panel/dataset-section.tsx +125 -0
  675. package/src/components/side-panel/layer-panel/dimension-scale-selector.tsx +64 -0
  676. package/src/components/side-panel/layer-panel/layer-column-config.tsx +115 -0
  677. package/src/components/side-panel/layer-panel/layer-config-group.tsx +256 -0
  678. package/src/components/side-panel/layer-panel/layer-list.tsx +191 -0
  679. package/src/components/side-panel/layer-panel/layer-panel-header.tsx +272 -0
  680. package/src/components/side-panel/layer-panel/layer-panel.tsx +196 -0
  681. package/src/components/side-panel/layer-panel/layer-type-dropdown-list.tsx +118 -0
  682. package/src/components/side-panel/layer-panel/layer-type-list-item.tsx +92 -0
  683. package/src/components/side-panel/layer-panel/layer-type-selector.tsx +115 -0
  684. package/src/components/side-panel/layer-panel/layer-visibility-by-zoom.js +1 -1
  685. package/src/components/side-panel/layer-panel/panel-view-list-toggle.tsx +132 -0
  686. package/src/components/side-panel/layer-panel/single-color-palette.tsx +94 -0
  687. package/src/components/side-panel/layer-panel/text-label-panel.tsx +187 -0
  688. package/src/components/side-panel/layer-panel/vis-config-by-field-selector.tsx +179 -0
  689. package/src/components/side-panel/layer-panel/vis-config-slider.tsx +237 -0
  690. package/src/components/side-panel/layer-panel/vis-config-switch.tsx +86 -0
  691. package/src/components/side-panel/map-manager.tsx +123 -0
  692. package/src/components/side-panel/map-style-panel/map-layer-selector.tsx +145 -0
  693. package/src/components/side-panel/map-style-panel/map-style-selector.tsx +122 -0
  694. package/src/components/side-panel/panel-dropdown.tsx +53 -0
  695. package/src/components/side-panel/panel-header-action.tsx +114 -0
  696. package/src/components/side-panel/panel-header.tsx +386 -0
  697. package/src/components/side-panel/panel-tab.tsx +79 -0
  698. package/src/components/side-panel/panel-title.tsx +35 -0
  699. package/src/components/side-panel/panel-toggle.tsx +72 -0
  700. package/src/components/side-panel/side-bar.tsx +140 -0
  701. package/src/components/side-panel.tsx +261 -0
  702. package/src/components/types.ts +41 -0
  703. package/src/connect/keplergl-connect.ts +48 -0
  704. package/src/connect/with-local-selector.tsx +70 -0
  705. package/src/constants/action-types.ts +188 -0
  706. package/src/constants/color-ranges.ts +87 -0
  707. package/src/constants/default-settings.ts +1049 -0
  708. package/src/deckgl-layers/3d-building-layer/3d-building-layer.ts +57 -0
  709. package/src/deckgl-layers/3d-building-layer/3d-building-utils.ts +211 -0
  710. package/src/deckgl-layers/3d-building-layer/types.ts +29 -0
  711. package/src/deckgl-layers/column-layer/enhanced-column-layer.ts +63 -0
  712. package/src/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.ts +68 -0
  713. package/src/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.ts +68 -0
  714. package/src/deckgl-layers/layer-utils/cluster-utils.ts +78 -0
  715. package/src/deckgl-layers/layer-utils/cpu-aggregator.ts +672 -0
  716. package/src/deckgl-layers/layer-utils/shader-utils.ts +41 -0
  717. package/src/deckgl-layers/line-layer/line-layer.ts +126 -0
  718. package/src/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.ts +63 -0
  719. package/src/deckgl-layers/svg-icon-layer/svg-icon-layer.ts +96 -0
  720. package/src/index.d.ts +1 -0
  721. package/src/layers/aggregation-layer.ts +402 -0
  722. package/src/layers/arc-layer/arc-layer-icon.tsx +67 -0
  723. package/src/layers/arc-layer/arc-layer.ts +294 -0
  724. package/src/layers/base-layer.ts +1743 -0
  725. package/src/layers/cluster-layer/cluster-layer.ts +162 -0
  726. package/src/layers/geojson-layer/geojson-layer-icon.tsx +68 -0
  727. package/src/layers/geojson-layer/geojson-layer.ts +461 -0
  728. package/src/layers/geojson-layer/geojson-utils.ts +200 -0
  729. package/src/layers/grid-layer/grid-layer-icon.tsx +53 -0
  730. package/src/layers/grid-layer/grid-layer.ts +153 -0
  731. package/src/layers/grid-layer/grid-utils.ts +84 -0
  732. package/src/layers/h3-hexagon-layer/h3-hexagon-layer.ts +339 -0
  733. package/src/layers/h3-hexagon-layer/h3-utils.ts +67 -0
  734. package/src/layers/heatmap-layer/heatmap-layer.ts +255 -0
  735. package/src/layers/hexagon-layer/hexagon-layer.ts +156 -0
  736. package/src/layers/hexagon-layer/hexagon-utils.ts +64 -0
  737. package/src/layers/icon-layer/icon-info-modal.tsx +155 -0
  738. package/src/layers/icon-layer/icon-layer.ts +392 -0
  739. package/src/layers/index.ts +77 -0
  740. package/src/layers/layer-factory.ts +695 -0
  741. package/src/layers/layer-text-label.ts +62 -0
  742. package/src/layers/layer-update.ts +70 -0
  743. package/src/layers/line-layer/line-layer.ts +222 -0
  744. package/src/layers/mapbox-utils.ts +204 -0
  745. package/src/layers/mapboxgl-layer.ts +176 -0
  746. package/src/layers/point-layer/point-layer.ts +504 -0
  747. package/src/layers/s2-geometry-layer/s2-geometry-layer.ts +369 -0
  748. package/src/layers/s2-geometry-layer/s2-utils.ts +42 -0
  749. package/src/layers/scenegraph-layer/scenegraph-layer.ts +237 -0
  750. package/src/layers/trip-layer/trip-layer.ts +356 -0
  751. package/src/layers/trip-layer/trip-utils.ts +177 -0
  752. package/src/localization/formatted-message.tsx +42 -0
  753. package/src/localization/index.ts +29 -0
  754. package/src/localization/locales.ts +53 -0
  755. package/src/localization/messages.ts +40 -0
  756. package/src/localization/translations/ca.ts +476 -0
  757. package/src/localization/translations/cn.ts +477 -0
  758. package/src/localization/translations/en.ts +504 -0
  759. package/src/localization/translations/es.ts +477 -0
  760. package/src/localization/translations/fi.ts +448 -0
  761. package/src/localization/translations/ja.ts +477 -0
  762. package/src/localization/translations/pt.ts +449 -0
  763. package/src/localization/translations/ru.ts +488 -0
  764. package/src/middleware/index.ts +35 -0
  765. package/src/processors/data-processor.ts +723 -0
  766. package/src/processors/file-handler.ts +248 -0
  767. package/src/processors/index.ts +22 -0
  768. package/src/processors/types.ts +22 -0
  769. package/src/reducers/combined-updaters.ts +216 -0
  770. package/src/reducers/composer-helpers.ts +75 -0
  771. package/src/reducers/core.ts +111 -0
  772. package/src/reducers/index.ts +116 -0
  773. package/src/reducers/map-state-updaters.ts +271 -0
  774. package/src/reducers/map-state.ts +47 -0
  775. package/src/reducers/map-style-updaters.ts +640 -0
  776. package/src/reducers/map-style.ts +53 -0
  777. package/src/reducers/provider-state-updaters.ts +454 -0
  778. package/src/reducers/provider-state.ts +53 -0
  779. package/src/reducers/root.ts +231 -0
  780. package/src/reducers/types.ts +18 -0
  781. package/src/reducers/ui-state-updaters.ts +926 -0
  782. package/src/reducers/ui-state.ts +75 -0
  783. package/src/reducers/vis-state-merger.ts +627 -0
  784. package/src/reducers/vis-state-selectors.ts +37 -0
  785. package/src/reducers/vis-state-updaters.ts +2568 -0
  786. package/src/reducers/vis-state.ts +157 -0
  787. package/src/schemas/dataset-schema.ts +141 -0
  788. package/src/schemas/index.ts +52 -0
  789. package/src/schemas/schema-manager.ts +446 -0
  790. package/src/schemas/schema.ts +124 -0
  791. package/src/schemas/vis-state-schema.ts +761 -0
  792. package/src/styles/base.ts +1642 -0
  793. package/src/styles/media-breakpoints.ts +56 -0
  794. package/src/typedefs/deckgl.d.ts +25 -0
  795. package/src/utils/aggregate-utils.ts +71 -0
  796. package/src/utils/color-utils.ts +134 -0
  797. package/src/utils/data-scale-utils.ts +73 -0
  798. package/src/utils/data-utils.ts +459 -0
  799. package/src/utils/dataset-utils.ts +261 -0
  800. package/src/utils/dom-to-image.ts +533 -0
  801. package/src/utils/dom-utils.ts +354 -0
  802. package/src/utils/export-utils.ts +265 -0
  803. package/src/utils/filter-utils.ts +1185 -0
  804. package/src/utils/gpu-filter-utils.ts +249 -0
  805. package/src/utils/index.ts +69 -0
  806. package/src/utils/interaction-utils.ts +212 -0
  807. package/src/utils/layer-utils.ts +249 -0
  808. package/src/utils/map-style-utils/mapbox-gl-style-editor.ts +227 -0
  809. package/src/utils/notifications-utils.ts +89 -0
  810. package/src/utils/observe-dimensions.ts +127 -0
  811. package/src/utils/split-map-utils.ts +104 -0
  812. package/src/utils/table-utils/data-container-utils.ts +90 -0
  813. package/src/utils/table-utils/data-row.ts +110 -0
  814. package/src/utils/table-utils/indexed-data-container.ts +184 -0
  815. package/src/utils/table-utils/kepler-table.ts +639 -0
  816. package/src/utils/table-utils/row-data-container.ts +178 -0
  817. package/src/utils/utils.ts +228 -0
  818. package/dist/components/common/icons/arrow-down-solid .js +0 -64
  819. package/dist/localization/en.js +0 -494
  820. package/src/actions/action-wrapper.js +0 -183
  821. package/src/actions/actions.d.ts +0 -104
  822. package/src/actions/actions.js +0 -178
  823. package/src/actions/identity-actions.d.ts +0 -53
  824. package/src/actions/identity-actions.js +0 -83
  825. package/src/actions/index.d.ts +0 -23
  826. package/src/actions/map-state-actions.d.ts +0 -46
  827. package/src/actions/map-state-actions.js +0 -90
  828. package/src/actions/map-style-actions.d.ts +0 -116
  829. package/src/actions/map-style-actions.js +0 -135
  830. package/src/actions/provider-actions.d.ts +0 -203
  831. package/src/actions/provider-actions.js +0 -94
  832. package/src/actions/ui-state-actions.d.ts +0 -200
  833. package/src/actions/ui-state-actions.js +0 -272
  834. package/src/actions/vis-state-actions.d.ts +0 -502
  835. package/src/actions/vis-state-actions.js +0 -919
  836. package/src/cloud-providers/index.d.ts +0 -53
  837. package/src/cloud-providers/index.js +0 -21
  838. package/src/cloud-providers/provider.js +0 -233
  839. package/src/components/bottom-widget.d.ts +0 -33
  840. package/src/components/bottom-widget.js +0 -235
  841. package/src/components/common/action-panel.d.ts +0 -24
  842. package/src/components/common/action-panel.js +0 -177
  843. package/src/components/common/animation-control/animation-control.js +0 -155
  844. package/src/components/common/animation-control/animation-controller.js +0 -224
  845. package/src/components/common/animation-control/animation-speed-slider.js +0 -79
  846. package/src/components/common/animation-control/floating-time-display.js +0 -192
  847. package/src/components/common/animation-control/playback-controls.js +0 -278
  848. package/src/components/common/animation-control/speed-control.js +0 -71
  849. package/src/components/common/checkbox.js +0 -128
  850. package/src/components/common/color-legend.js +0 -198
  851. package/src/components/common/data-table/button.js +0 -47
  852. package/src/components/common/data-table/cell-size.js +0 -180
  853. package/src/components/common/data-table/grid.js +0 -55
  854. package/src/components/common/data-table/index.js +0 -620
  855. package/src/components/common/data-table/option-dropdown.js +0 -110
  856. package/src/components/common/dataset-label.js +0 -40
  857. package/src/components/common/error-boundary.js +0 -43
  858. package/src/components/common/field-selector.js +0 -233
  859. package/src/components/common/field-token.js +0 -56
  860. package/src/components/common/file-uploader/file-drop.d.ts +0 -19
  861. package/src/components/common/file-uploader/file-drop.js +0 -196
  862. package/src/components/common/file-uploader/file-upload-progress.d.ts +0 -11
  863. package/src/components/common/file-uploader/file-upload-progress.js +0 -110
  864. package/src/components/common/file-uploader/file-upload.d.ts +0 -22
  865. package/src/components/common/file-uploader/file-upload.js +0 -301
  866. package/src/components/common/file-uploader/upload-button.d.ts.wip +0 -11
  867. package/src/components/common/file-uploader/upload-button.js +0 -83
  868. package/src/components/common/histogram-plot.js +0 -102
  869. package/src/components/common/icons/add.js +0 -43
  870. package/src/components/common/icons/anchor_window.js +0 -53
  871. package/src/components/common/icons/arrow-down-alt.js +0 -43
  872. package/src/components/common/icons/arrow-down-solid .js +0 -43
  873. package/src/components/common/icons/arrow-down.js +0 -46
  874. package/src/components/common/icons/arrow-left.js +0 -48
  875. package/src/components/common/icons/arrow-right.js +0 -46
  876. package/src/components/common/icons/arrow-up-alt.js +0 -46
  877. package/src/components/common/icons/arrow-up-solid.js +0 -43
  878. package/src/components/common/icons/arrow-up.js +0 -46
  879. package/src/components/common/icons/base.js +0 -90
  880. package/src/components/common/icons/bug.js +0 -46
  881. package/src/components/common/icons/cancel.js +0 -43
  882. package/src/components/common/icons/checkmark.js +0 -45
  883. package/src/components/common/icons/clipboard.js +0 -46
  884. package/src/components/common/icons/clock.js +0 -44
  885. package/src/components/common/icons/close.js +0 -49
  886. package/src/components/common/icons/code-alt.js +0 -43
  887. package/src/components/common/icons/copy.js +0 -44
  888. package/src/components/common/icons/crosshairs.js +0 -43
  889. package/src/components/common/icons/cube-3d.js +0 -45
  890. package/src/components/common/icons/cursor-click.js +0 -49
  891. package/src/components/common/icons/data-table.js +0 -45
  892. package/src/components/common/icons/db.js +0 -45
  893. package/src/components/common/icons/delete.js +0 -44
  894. package/src/components/common/icons/docs.js +0 -46
  895. package/src/components/common/icons/drag-n-drop.js +0 -44
  896. package/src/components/common/icons/draw-polygon.js +0 -60
  897. package/src/components/common/icons/email.js +0 -45
  898. package/src/components/common/icons/expand.js +0 -45
  899. package/src/components/common/icons/eye-seen.js +0 -44
  900. package/src/components/common/icons/eye-unseen.js +0 -44
  901. package/src/components/common/icons/file-type.js +0 -57
  902. package/src/components/common/icons/file.js +0 -43
  903. package/src/components/common/icons/files.js +0 -42
  904. package/src/components/common/icons/filter-funnel.js +0 -43
  905. package/src/components/common/icons/free-window.js +0 -53
  906. package/src/components/common/icons/gear.js +0 -45
  907. package/src/components/common/icons/hash.js +0 -43
  908. package/src/components/common/icons/histogram.js +0 -47
  909. package/src/components/common/icons/index.js +0 -96
  910. package/src/components/common/icons/info.js +0 -54
  911. package/src/components/common/icons/layers.js +0 -43
  912. package/src/components/common/icons/left-arrow.js +0 -43
  913. package/src/components/common/icons/legend.js +0 -43
  914. package/src/components/common/icons/line-chart.js +0 -45
  915. package/src/components/common/icons/login.js +0 -46
  916. package/src/components/common/icons/logout.js +0 -43
  917. package/src/components/common/icons/map-icon.js +0 -69
  918. package/src/components/common/icons/map.js +0 -69
  919. package/src/components/common/icons/messages.js +0 -43
  920. package/src/components/common/icons/minus.js +0 -45
  921. package/src/components/common/icons/pause.js +0 -43
  922. package/src/components/common/icons/picture.js +0 -43
  923. package/src/components/common/icons/pin.js +0 -43
  924. package/src/components/common/icons/play.js +0 -43
  925. package/src/components/common/icons/polygon.js +0 -74
  926. package/src/components/common/icons/rectangle.js +0 -75
  927. package/src/components/common/icons/reduce.js +0 -48
  928. package/src/components/common/icons/reset.js +0 -43
  929. package/src/components/common/icons/rocket.js +0 -43
  930. package/src/components/common/icons/save.js +0 -44
  931. package/src/components/common/icons/save2.js +0 -47
  932. package/src/components/common/icons/search.js +0 -44
  933. package/src/components/common/icons/settings.js +0 -45
  934. package/src/components/common/icons/share.js +0 -43
  935. package/src/components/common/icons/split.js +0 -63
  936. package/src/components/common/icons/square-select.js +0 -44
  937. package/src/components/common/icons/table.js +0 -46
  938. package/src/components/common/icons/trash.js +0 -51
  939. package/src/components/common/icons/upload.js +0 -44
  940. package/src/components/common/icons/vert-dots.js +0 -50
  941. package/src/components/common/icons/vert-three-dots.js +0 -45
  942. package/src/components/common/icons/warning.js +0 -46
  943. package/src/components/common/image-preview.js +0 -111
  944. package/src/components/common/info-helper.js +0 -84
  945. package/src/components/common/item-selector/accessor.js +0 -45
  946. package/src/components/common/item-selector/chickleted-input.js +0 -143
  947. package/src/components/common/item-selector/dropdown-list.js +0 -258
  948. package/src/components/common/item-selector/item-selector.js +0 -360
  949. package/src/components/common/item-selector/typeahead.js +0 -507
  950. package/src/components/common/line-chart.js +0 -134
  951. package/src/components/common/loading-spinner.js +0 -64
  952. package/src/components/common/logo.js +0 -92
  953. package/src/components/common/map-layer-selector.d.ts +0 -10
  954. package/src/components/common/map-layer-selector.js +0 -54
  955. package/src/components/common/modal.js +0 -233
  956. package/src/components/common/portaled.js +0 -264
  957. package/src/components/common/progress-bar.d.ts +0 -13
  958. package/src/components/common/progress-bar.js +0 -49
  959. package/src/components/common/range-brush.js +0 -256
  960. package/src/components/common/range-plot.js +0 -139
  961. package/src/components/common/range-slider.js +0 -299
  962. package/src/components/common/slider/mouse-event.js +0 -97
  963. package/src/components/common/slider/slider-bar-handle.js +0 -97
  964. package/src/components/common/slider/slider-handle.js +0 -181
  965. package/src/components/common/slider/slider.js +0 -213
  966. package/src/components/common/styled-components.js +0 -657
  967. package/src/components/common/switch.js +0 -50
  968. package/src/components/common/time-range-slider-time-title.js +0 -76
  969. package/src/components/common/time-range-slider.js +0 -163
  970. package/src/components/common/time-slider-marker.js +0 -168
  971. package/src/components/common/toolbar-item.d.ts +0 -14
  972. package/src/components/common/toolbar-item.js +0 -83
  973. package/src/components/common/toolbar.js +0 -45
  974. package/src/components/common/vertical-toolbar.js +0 -35
  975. package/src/components/container.js +0 -173
  976. package/src/components/context.d.ts +0 -10
  977. package/src/components/context.js +0 -32
  978. package/src/components/editor/editor.js +0 -218
  979. package/src/components/editor/feature-action-panel.js +0 -143
  980. package/src/components/editor/feature-styles.js +0 -75
  981. package/src/components/editor/handle-style.js +0 -89
  982. package/src/components/filters/filter-panels/filter-panel-types.d.ts +0 -28
  983. package/src/components/filters/filter-panels/filter-panel-with-field-select.js +0 -124
  984. package/src/components/filters/filter-panels/multi-select-filter-panel.js +0 -75
  985. package/src/components/filters/filter-panels/new-filter-panel.js +0 -99
  986. package/src/components/filters/filter-panels/polygon-filter-panel.js +0 -96
  987. package/src/components/filters/filter-panels/range-filter-panel.js +0 -75
  988. package/src/components/filters/filter-panels/single-select-filter-panel.js +0 -75
  989. package/src/components/filters/filter-panels/time-range-filter-panel.js +0 -95
  990. package/src/components/filters/multi-select-filter.js +0 -36
  991. package/src/components/filters/polygon-filter.d.ts +0 -13
  992. package/src/components/filters/polygon-filter.js +0 -73
  993. package/src/components/filters/range-filter.js +0 -43
  994. package/src/components/filters/single-select-filter.js +0 -49
  995. package/src/components/filters/time-range-filter.js +0 -68
  996. package/src/components/filters/time-widget.js +0 -228
  997. package/src/components/geocoder/geocoder.d.ts +0 -33
  998. package/src/components/geocoder/geocoder.js +0 -272
  999. package/src/components/geocoder-panel.js +0 -191
  1000. package/src/components/index.js +0 -247
  1001. package/src/components/injector.js +0 -161
  1002. package/src/components/kepler-gl.js +0 -518
  1003. package/src/components/map/coordinate-info.js +0 -53
  1004. package/src/components/map/layer-hover-info.d.ts +0 -12
  1005. package/src/components/map/layer-hover-info.js +0 -185
  1006. package/src/components/map/layer-selector-panel.d.ts +0 -16
  1007. package/src/components/map/layer-selector-panel.js +0 -106
  1008. package/src/components/map/locale-panel.d.ts +0 -12
  1009. package/src/components/map/locale-panel.js +0 -91
  1010. package/src/components/map/map-control-panel.d.ts +0 -11
  1011. package/src/components/map/map-control-panel.js +0 -98
  1012. package/src/components/map/map-control-tooltip.d.ts +0 -8
  1013. package/src/components/map/map-control-tooltip.js +0 -40
  1014. package/src/components/map/map-control.d.ts +0 -37
  1015. package/src/components/map/map-control.js +0 -100
  1016. package/src/components/map/map-draw-panel.d.ts +0 -16
  1017. package/src/components/map/map-draw-panel.js +0 -125
  1018. package/src/components/map/map-legend-panel.d.ts +0 -20
  1019. package/src/components/map/map-legend-panel.js +0 -100
  1020. package/src/components/map/map-legend.d.ts +0 -58
  1021. package/src/components/map/map-legend.js +0 -228
  1022. package/src/components/map/map-popover.d.ts +0 -28
  1023. package/src/components/map/map-popover.js +0 -250
  1024. package/src/components/map/split-map-button.d.ts +0 -19
  1025. package/src/components/map/split-map-button.js +0 -82
  1026. package/src/components/map/toggle-3d-button.d.ts +0 -16
  1027. package/src/components/map/toggle-3d-button.js +0 -75
  1028. package/src/components/map-container.d.ts +0 -18
  1029. package/src/components/map-container.js +0 -499
  1030. package/src/components/maps-layout.d.ts +0 -5
  1031. package/src/components/maps-layout.js +0 -40
  1032. package/src/components/modal-container.d.ts +0 -37
  1033. package/src/components/modal-container.js +0 -543
  1034. package/src/components/modals/add-map-style-modal.js +0 -298
  1035. package/src/components/modals/cloud-tile.js +0 -147
  1036. package/src/components/modals/data-table-modal.js +0 -217
  1037. package/src/components/modals/delete-data-modal.js +0 -48
  1038. package/src/components/modals/error-display.js +0 -39
  1039. package/src/components/modals/export-data-modal.js +0 -193
  1040. package/src/components/modals/export-image-modal.d.ts +0 -21
  1041. package/src/components/modals/export-image-modal.js +0 -144
  1042. package/src/components/modals/export-map-modal/export-html-map.d.ts +0 -21
  1043. package/src/components/modals/export-map-modal/export-html-map.js +0 -145
  1044. package/src/components/modals/export-map-modal/export-json-map.js +0 -100
  1045. package/src/components/modals/export-map-modal/export-map-modal.js +0 -114
  1046. package/src/components/modals/image-modal-container.d.ts +0 -13
  1047. package/src/components/modals/image-modal-container.js +0 -76
  1048. package/src/components/modals/load-data-modal.d.ts +0 -30
  1049. package/src/components/modals/load-data-modal.js +0 -94
  1050. package/src/components/modals/load-storage-map.js +0 -381
  1051. package/src/components/modals/loading-dialog.js +0 -69
  1052. package/src/components/modals/modal-tabs.js +0 -126
  1053. package/src/components/modals/overwrite-map-modal.d.ts +0 -18
  1054. package/src/components/modals/overwrite-map-modal.js +0 -97
  1055. package/src/components/modals/provider-modal-container.d.ts +0 -12
  1056. package/src/components/modals/provider-modal-container.js +0 -60
  1057. package/src/components/modals/save-map-modal.d.ts +0 -32
  1058. package/src/components/modals/save-map-modal.js +0 -244
  1059. package/src/components/modals/share-map-modal.js +0 -208
  1060. package/src/components/modals/status-panel.js +0 -95
  1061. package/src/components/modals/storage-map-viewer.js +0 -177
  1062. package/src/components/notification-panel/notification-item.js +0 -132
  1063. package/src/components/notification-panel.js +0 -72
  1064. package/src/components/plot-container.js +0 -228
  1065. package/src/components/side-panel/common/dataset-info.js +0 -45
  1066. package/src/components/side-panel/common/dataset-tag.js +0 -55
  1067. package/src/components/side-panel/common/dataset-title.js +0 -146
  1068. package/src/components/side-panel/common/source-data-catalog.js +0 -61
  1069. package/src/components/side-panel/common/source-data-selector.js +0 -79
  1070. package/src/components/side-panel/filter-manager.js +0 -105
  1071. package/src/components/side-panel/filter-panel/filter-panel-header.js +0 -83
  1072. package/src/components/side-panel/filter-panel/filter-panel.js +0 -126
  1073. package/src/components/side-panel/interaction-manager.js +0 -46
  1074. package/src/components/side-panel/interaction-panel/brush-config.js +0 -51
  1075. package/src/components/side-panel/interaction-panel/interaction-panel.js +0 -115
  1076. package/src/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +0 -199
  1077. package/src/components/side-panel/interaction-panel/tooltip-config.js +0 -190
  1078. package/src/components/side-panel/layer-manager.js +0 -290
  1079. package/src/components/side-panel/layer-panel/color-palette.js +0 -90
  1080. package/src/components/side-panel/layer-panel/color-range-selector.js +0 -353
  1081. package/src/components/side-panel/layer-panel/color-selector.js +0 -196
  1082. package/src/components/side-panel/layer-panel/column-selector.js +0 -70
  1083. package/src/components/side-panel/layer-panel/custom-palette.js +0 -296
  1084. package/src/components/side-panel/layer-panel/custom-picker.js +0 -88
  1085. package/src/components/side-panel/layer-panel/dimension-scale-selector.js +0 -48
  1086. package/src/components/side-panel/layer-panel/layer-column-config.js +0 -113
  1087. package/src/components/side-panel/layer-panel/layer-config-group.js +0 -237
  1088. package/src/components/side-panel/layer-panel/layer-panel-header.js +0 -236
  1089. package/src/components/side-panel/layer-panel/layer-panel.js +0 -171
  1090. package/src/components/side-panel/layer-panel/layer-type-dropdown-list.js +0 -105
  1091. package/src/components/side-panel/layer-panel/layer-type-list-item.js +0 -83
  1092. package/src/components/side-panel/layer-panel/layer-type-selector.js +0 -89
  1093. package/src/components/side-panel/layer-panel/single-color-palette.js +0 -98
  1094. package/src/components/side-panel/layer-panel/text-label-panel.js +0 -179
  1095. package/src/components/side-panel/layer-panel/vis-config-by-field-selector.js +0 -163
  1096. package/src/components/side-panel/layer-panel/vis-config-slider.js +0 -82
  1097. package/src/components/side-panel/layer-panel/vis-config-switch.js +0 -87
  1098. package/src/components/side-panel/map-manager.js +0 -114
  1099. package/src/components/side-panel/map-style-panel/map-layer-selector.js +0 -128
  1100. package/src/components/side-panel/map-style-panel/map-style-selector.js +0 -111
  1101. package/src/components/side-panel/panel-dropdown.js +0 -53
  1102. package/src/components/side-panel/panel-header-action.js +0 -106
  1103. package/src/components/side-panel/panel-header.js +0 -321
  1104. package/src/components/side-panel/panel-tab.js +0 -62
  1105. package/src/components/side-panel/panel-title.js +0 -32
  1106. package/src/components/side-panel/panel-toggle.js +0 -70
  1107. package/src/components/side-panel/side-bar.js +0 -136
  1108. package/src/components/side-panel.d.ts +0 -33
  1109. package/src/components/side-panel.js +0 -253
  1110. package/src/connect/keplergl-connect.js +0 -47
  1111. package/src/connect/with-local-selector.d.ts +0 -11
  1112. package/src/connect/with-local-selector.js +0 -67
  1113. package/src/constants/action-types.d.ts +0 -135
  1114. package/src/constants/action-types.js +0 -184
  1115. package/src/constants/color-ranges.js +0 -72
  1116. package/src/constants/default-settings.js +0 -994
  1117. package/src/deckgl-layers/3d-building-layer/3d-building-layer.js +0 -56
  1118. package/src/deckgl-layers/3d-building-layer/3d-building-utils.js +0 -192
  1119. package/src/deckgl-layers/column-layer/enhanced-column-layer.js +0 -63
  1120. package/src/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.js +0 -70
  1121. package/src/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.js +0 -70
  1122. package/src/deckgl-layers/layer-utils/cluster-utils.js +0 -76
  1123. package/src/deckgl-layers/layer-utils/cpu-aggregator.js +0 -583
  1124. package/src/deckgl-layers/layer-utils/shader-utils.js +0 -41
  1125. package/src/deckgl-layers/line-layer/line-layer.js +0 -122
  1126. package/src/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.js +0 -57
  1127. package/src/deckgl-layers/svg-icon-layer/svg-icon-layer.js +0 -85
  1128. package/src/layers/aggregation-layer.js +0 -356
  1129. package/src/layers/arc-layer/arc-layer-icon.js +0 -67
  1130. package/src/layers/arc-layer/arc-layer.js +0 -221
  1131. package/src/layers/base-layer.js +0 -1545
  1132. package/src/layers/cluster-layer/cluster-layer.js +0 -125
  1133. package/src/layers/geojson-layer/geojson-layer-icon.js +0 -68
  1134. package/src/layers/geojson-layer/geojson-layer.js +0 -344
  1135. package/src/layers/geojson-layer/geojson-utils.js +0 -179
  1136. package/src/layers/grid-layer/grid-layer-icon.js +0 -53
  1137. package/src/layers/grid-layer/grid-layer.js +0 -95
  1138. package/src/layers/grid-layer/grid-utils.js +0 -71
  1139. package/src/layers/h3-hexagon-layer/h3-hexagon-layer.js +0 -264
  1140. package/src/layers/h3-hexagon-layer/h3-utils.js +0 -65
  1141. package/src/layers/heatmap-layer/heatmap-layer.js +0 -226
  1142. package/src/layers/hexagon-layer/hexagon-layer.js +0 -95
  1143. package/src/layers/hexagon-layer/hexagon-utils.js +0 -63
  1144. package/src/layers/icon-layer/icon-info-modal.js +0 -155
  1145. package/src/layers/icon-layer/icon-layer.js +0 -324
  1146. package/src/layers/index.d.ts +0 -128
  1147. package/src/layers/index.js +0 -72
  1148. package/src/layers/layer-factory.d.ts +0 -149
  1149. package/src/layers/layer-factory.js +0 -480
  1150. package/src/layers/layer-text-label.js +0 -62
  1151. package/src/layers/layer-update.js +0 -71
  1152. package/src/layers/line-layer/line-layer.js +0 -161
  1153. package/src/layers/mapbox-utils.js +0 -195
  1154. package/src/layers/mapboxgl-layer.js +0 -154
  1155. package/src/layers/point-layer/point-layer.js +0 -414
  1156. package/src/layers/s2-geometry-layer/s2-geometry-layer.js +0 -265
  1157. package/src/layers/s2-geometry-layer/s2-utils.js +0 -36
  1158. package/src/layers/scenegraph-layer/scenegraph-layer.js +0 -182
  1159. package/src/layers/trip-layer/trip-layer.js +0 -295
  1160. package/src/layers/trip-layer/trip-utils.js +0 -169
  1161. package/src/localization/en.js +0 -504
  1162. package/src/localization/formatted-message.js +0 -33
  1163. package/src/localization/index.js +0 -32
  1164. package/src/localization/locales.js +0 -46
  1165. package/src/middleware/index.js +0 -34
  1166. package/src/processors/data-processor.d.ts +0 -57
  1167. package/src/processors/data-processor.js +0 -684
  1168. package/src/processors/file-handler.d.ts +0 -46
  1169. package/src/processors/file-handler.js +0 -220
  1170. package/src/processors/index.js +0 -44
  1171. package/src/reducers/combined-updaters.d.ts +0 -26
  1172. package/src/reducers/combined-updaters.js +0 -198
  1173. package/src/reducers/composer-helpers.d.ts +0 -32
  1174. package/src/reducers/composer-helpers.js +0 -70
  1175. package/src/reducers/core.d.ts +0 -25
  1176. package/src/reducers/core.js +0 -97
  1177. package/src/reducers/index.d.ts +0 -118
  1178. package/src/reducers/index.js +0 -53
  1179. package/src/reducers/map-state-updaters.d.ts +0 -64
  1180. package/src/reducers/map-state-updaters.js +0 -224
  1181. package/src/reducers/map-state.js +0 -47
  1182. package/src/reducers/map-style-updaters.d.ts +0 -76
  1183. package/src/reducers/map-style-updaters.js +0 -541
  1184. package/src/reducers/map-style.js +0 -53
  1185. package/src/reducers/provider-state-updaters.d.ts +0 -88
  1186. package/src/reducers/provider-state-updaters.js +0 -428
  1187. package/src/reducers/provider-state.js +0 -53
  1188. package/src/reducers/root.js +0 -230
  1189. package/src/reducers/types.d.ts +0 -10
  1190. package/src/reducers/ui-state-updaters.d.ts +0 -198
  1191. package/src/reducers/ui-state-updaters.js +0 -766
  1192. package/src/reducers/ui-state.js +0 -73
  1193. package/src/reducers/vis-state-merger.d.ts +0 -78
  1194. package/src/reducers/vis-state-merger.js +0 -557
  1195. package/src/reducers/vis-state-selectors.js +0 -35
  1196. package/src/reducers/vis-state-updaters.d.ts +0 -534
  1197. package/src/reducers/vis-state-updaters.js +0 -2137
  1198. package/src/reducers/vis-state.js +0 -155
  1199. package/src/schemas/dataset-schema.js +0 -141
  1200. package/src/schemas/index.d.ts +0 -24
  1201. package/src/schemas/index.js +0 -42
  1202. package/src/schemas/schema-manager.d.ts +0 -229
  1203. package/src/schemas/schema-manager.js +0 -228
  1204. package/src/schemas/schema.d.ts +0 -47
  1205. package/src/schemas/schema.js +0 -90
  1206. package/src/schemas/versions.d.ts +0 -23
  1207. package/src/schemas/vis-state-schema.js +0 -754
  1208. package/src/styles/base.js +0 -1620
  1209. package/src/styles/media-breakpoints.js +0 -47
  1210. package/src/typedefs/README.md +0 -3
  1211. package/src/typedefs/deck.gl__core.d.ts +0 -64
  1212. package/src/typedefs/deck.gl__mesh-layers.d.ts +0 -33
  1213. package/src/utils/aggregate-utils.js +0 -71
  1214. package/src/utils/color-utils.js +0 -115
  1215. package/src/utils/data-scale-utils.d.ts +0 -26
  1216. package/src/utils/data-scale-utils.js +0 -61
  1217. package/src/utils/data-utils.d.ts +0 -46
  1218. package/src/utils/data-utils.js +0 -447
  1219. package/src/utils/dataset-utils.d.ts +0 -10
  1220. package/src/utils/dataset-utils.js +0 -255
  1221. package/src/utils/dom-to-image.js +0 -533
  1222. package/src/utils/dom-utils.js +0 -354
  1223. package/src/utils/export-utils.js +0 -247
  1224. package/src/utils/filter-utils.d.ts +0 -192
  1225. package/src/utils/filter-utils.js +0 -1114
  1226. package/src/utils/gpu-filter-utils.d.ts +0 -28
  1227. package/src/utils/gpu-filter-utils.js +0 -253
  1228. package/src/utils/index.d.ts +0 -5
  1229. package/src/utils/index.js +0 -55
  1230. package/src/utils/interaction-utils.d.ts +0 -36
  1231. package/src/utils/interaction-utils.js +0 -185
  1232. package/src/utils/layer-utils.d.ts +0 -78
  1233. package/src/utils/layer-utils.js +0 -206
  1234. package/src/utils/map-style-utils/mapbox-gl-style-editor.js +0 -201
  1235. package/src/utils/notifications-utils.js +0 -83
  1236. package/src/utils/observe-dimensions.d.ts +0 -18
  1237. package/src/utils/observe-dimensions.js +0 -115
  1238. package/src/utils/split-map-utils.js +0 -104
  1239. package/src/utils/table-utils/data-container-utils.d.ts +0 -43
  1240. package/src/utils/table-utils/data-container-utils.js +0 -61
  1241. package/src/utils/table-utils/data-row.d.ts +0 -65
  1242. package/src/utils/table-utils/data-row.js +0 -54
  1243. package/src/utils/table-utils/index.d.ts +0 -1
  1244. package/src/utils/table-utils/indexed-data-container.d.ts +0 -26
  1245. package/src/utils/table-utils/indexed-data-container.js +0 -152
  1246. package/src/utils/table-utils/kepler-table.d.ts +0 -114
  1247. package/src/utils/table-utils/kepler-table.js +0 -508
  1248. package/src/utils/table-utils/row-data-container.d.ts +0 -30
  1249. package/src/utils/table-utils/row-data-container.js +0 -151
  1250. package/src/utils/utils.js +0 -202
  1251. /package/src/actions/{index.js → index.ts} +0 -0
  1252. /package/src/components/common/data-table/{canvas.js → canvas.tsx} +0 -0
  1253. /package/src/components/editor/{constants.js → constants.ts} +0 -0
  1254. /package/src/components/filters/{components.js → components.ts} +0 -0
  1255. /package/src/components/filters/{index.js → index.ts} +0 -0
  1256. /package/src/components/map/{map-control-toolbar.js → map-control-toolbar.tsx} +0 -0
  1257. /package/src/components/modals/export-map-modal/{components.js → components.tsx} +0 -0
  1258. /package/src/components/modals/{modal-dialog.js → modal-dialog.tsx} +0 -0
  1259. /package/src/components/side-panel/{cloud-storage-dropdown.js → cloud-storage-dropdown.tsx} +0 -0
  1260. /package/src/components/side-panel/{custom-panel.js → custom-panel.tsx} +0 -0
  1261. /package/src/components/side-panel/layer-panel/{layer-configurator.js → layer-configurator.tsx} +0 -0
  1262. /package/src/constants/{color-palette.js → color-palette.ts} +0 -0
  1263. /package/src/constants/{custom-color-ranges.js → custom-color-ranges.ts} +0 -0
  1264. /package/src/constants/{index.js → index.ts} +0 -0
  1265. /package/src/constants/{keyevent.js → keyevent.ts} +0 -0
  1266. /package/src/constants/{tooltip.js → tooltip.ts} +0 -0
  1267. /package/src/constants/{user-feedbacks.js → user-feedbacks.ts} +0 -0
  1268. /package/src/constants/{user-guides.js → user-guides.ts} +0 -0
  1269. /package/src/layers/cluster-layer/{cluster-layer-icon.js → cluster-layer-icon.tsx} +0 -0
  1270. /package/src/layers/{default-layer-icon.js → default-layer-icon.tsx} +0 -0
  1271. /package/src/layers/h3-hexagon-layer/{h3-hexagon-layer-icon.js → h3-hexagon-layer-icon.tsx} +0 -0
  1272. /package/src/layers/heatmap-layer/{heatmap-layer-icon.js → heatmap-layer-icon.tsx} +0 -0
  1273. /package/src/layers/hexagon-layer/{hexagon-layer-icon.js → hexagon-layer-icon.tsx} +0 -0
  1274. /package/src/layers/icon-layer/{icon-layer-icon.js → icon-layer-icon.tsx} +0 -0
  1275. /package/src/layers/line-layer/{line-layer-icon.js → line-layer-icon.tsx} +0 -0
  1276. /package/src/layers/point-layer/{point-layer-icon.js → point-layer-icon.tsx} +0 -0
  1277. /package/src/layers/s2-geometry-layer/{s2-layer-icon.js → s2-layer-icon.tsx} +0 -0
  1278. /package/src/layers/scenegraph-layer/{scenegraph-info-modal.js → scenegraph-info-modal.tsx} +0 -0
  1279. /package/src/layers/scenegraph-layer/{scenegraph-layer-icon.js → scenegraph-layer-icon.tsx} +0 -0
  1280. /package/src/layers/trip-layer/{trip-info-modal.js → trip-info-modal.tsx} +0 -0
  1281. /package/src/layers/trip-layer/{trip-layer-icon.js → trip-layer-icon.tsx} +0 -0
  1282. /package/src/layers/{types.js → types.ts} +0 -0
  1283. /package/src/reducers/{composers.js → composers.ts} +0 -0
  1284. /package/src/schemas/{map-state-schema.js → map-state-schema.ts} +0 -0
  1285. /package/src/schemas/{map-style-schema.js → map-style-schema.ts} +0 -0
  1286. /package/src/schemas/{schema-utils.js → schema-utils.ts} +0 -0
  1287. /package/src/schemas/{versions.js → versions.ts} +0 -0
  1288. /package/src/styles/{index.js → index.ts} +0 -0
  1289. /package/src/tasks/{tasks.js → tasks.ts} +0 -0
  1290. /package/src/templates/{export-map-html.js → export-map-html.ts} +0 -0
  1291. /package/src/utils/{gl-utils.js → gl-utils.ts} +0 -0
  1292. /package/src/utils/{locale-utils.js → locale-utils.ts} +0 -0
  1293. /package/src/utils/{map-info-utils.js → map-info-utils.ts} +0 -0
  1294. /package/src/utils/map-style-utils/{mapbox-utils.js → mapbox-utils.ts} +0 -0
  1295. /package/src/utils/{mapbox-utils.js → mapbox-utils.ts} +0 -0
  1296. /package/src/utils/{projection-utils.js → projection-utils.ts} +0 -0
  1297. /package/src/utils/{searcher-utils.js → searcher-utils.ts} +0 -0
  1298. /package/src/utils/table-utils/{data-container-interface.d.ts → data-container-interface.ts} +0 -0
  1299. /package/src/utils/table-utils/{index.js → index.ts} +0 -0
@@ -0,0 +1,155 @@
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
+ import React, {useCallback, useState} from 'react';
22
+ import {useIntl} from 'react-intl';
23
+
24
+ import ActionPanel, {ActionPanelItem} from 'components/common/action-panel';
25
+ import styled from 'styled-components';
26
+ import onClickOutside from 'react-onclickoutside';
27
+ import classnames from 'classnames';
28
+ import {Trash, Layers, Copy, Checkmark} from 'components/common/icons';
29
+ import copy from 'copy-to-clipboard';
30
+ import {Layer} from 'layers';
31
+ import {Datasets, Filter} from 'reducers';
32
+ import {Feature} from '@nebula.gl/edit-modes';
33
+
34
+ const LAYOVER_OFFSET = 4;
35
+
36
+ const StyledActionsLayer = styled.div`
37
+ position: absolute;
38
+ `;
39
+
40
+ PureFeatureActionPanelFactory.deps = [];
41
+
42
+ export interface FeatureActionPanelProps {
43
+ className?: string;
44
+ datasets: Datasets;
45
+ selectedFeature: Feature | null;
46
+ position: {
47
+ x: number;
48
+ y: number;
49
+ } | null;
50
+ layers: Layer[];
51
+ currentFilter?: Filter;
52
+ onToggleLayer: (l: Layer) => void;
53
+ onDeleteFeature: () => void;
54
+ onClose: () => void;
55
+ }
56
+
57
+ export function PureFeatureActionPanelFactory(): React.FC<FeatureActionPanelProps> {
58
+ const FeatureActionPanel = ({
59
+ className,
60
+ datasets,
61
+ selectedFeature,
62
+ position,
63
+ layers,
64
+ currentFilter,
65
+ onToggleLayer,
66
+ onDeleteFeature
67
+ }: FeatureActionPanelProps) => {
68
+ const [copied, setCopied] = useState(false);
69
+ const {layerId = []} = currentFilter || {};
70
+ const intl = useIntl();
71
+
72
+ const copyGeometry = useCallback(() => {
73
+ if (selectedFeature?.geometry) copy(JSON.stringify(selectedFeature.geometry));
74
+ setCopied(true);
75
+ }, [selectedFeature?.geometry]);
76
+
77
+ if (!position) {
78
+ return null;
79
+ }
80
+
81
+ return (
82
+ <StyledActionsLayer
83
+ className={classnames('feature-action-panel', className)}
84
+ style={{
85
+ top: `${position.y + LAYOVER_OFFSET}px`,
86
+ left: `${position.x + LAYOVER_OFFSET}px`
87
+ }}
88
+ >
89
+ <ActionPanel>
90
+ <ActionPanelItem
91
+ className="editor-layers-list"
92
+ label={intl.formatMessage({id: 'editor.filterLayer', defaultMessage: 'Filter layers'})}
93
+ Icon={Layers}
94
+ >
95
+ {layers.map((layer, index) => (
96
+ <ActionPanelItem
97
+ key={index}
98
+ label={layer.config.label}
99
+ // @ts-ignore
100
+ color={datasets[layer.config.dataId].color}
101
+ isSelection={true}
102
+ isActive={layerId.includes(layer.id)}
103
+ onClick={() => onToggleLayer(layer)}
104
+ className="layer-panel-item"
105
+ />
106
+ ))}
107
+ </ActionPanelItem>
108
+ <ActionPanelItem
109
+ label={intl.formatMessage({id: 'editor.copyGeometry', defaultMessage: 'Copy Geometry'})}
110
+ className="delete-panel-item"
111
+ Icon={copied ? Checkmark : Copy}
112
+ onClick={copyGeometry}
113
+ />
114
+
115
+ <ActionPanelItem
116
+ label={intl.formatMessage({id: 'tooltip.delete', defaultMessage: 'Delete'})}
117
+ className="delete-panel-item"
118
+ Icon={Trash}
119
+ onClick={onDeleteFeature}
120
+ />
121
+ </ActionPanel>
122
+ </StyledActionsLayer>
123
+ );
124
+ };
125
+
126
+ FeatureActionPanel.displayName = 'FeatureActionPanel';
127
+ FeatureActionPanel.defaultProps = {
128
+ position: null
129
+ };
130
+
131
+ return FeatureActionPanel;
132
+ }
133
+
134
+ FeatureActionPanelFactory.deps = PureFeatureActionPanelFactory.deps;
135
+
136
+ export default function FeatureActionPanelFactory() {
137
+ const PureFeatureActionPanel = PureFeatureActionPanelFactory();
138
+
139
+ const ClickOutsideFeatureActionPanel: React.FC<FeatureActionPanelProps> = props => {
140
+ // @ts-ignore
141
+ ClickOutsideFeatureActionPanel.handleClickOutside = (e: Event) => {
142
+ e.preventDefault();
143
+ e.stopPropagation();
144
+ props.onClose?.();
145
+ };
146
+ return <PureFeatureActionPanel {...props} />;
147
+ };
148
+
149
+ const clickOutsideConfig = {
150
+ // @ts-ignore
151
+ handleClickOutside: () => ClickOutsideFeatureActionPanel.handleClickOutside
152
+ };
153
+
154
+ return onClickOutside(ClickOutsideFeatureActionPanel, clickOutsideConfig);
155
+ }
@@ -0,0 +1,75 @@
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
+ import {RenderStates, RenderTypes} from 'react-map-gl-draw';
22
+ import get from 'lodash.get';
23
+ import {COLORS} from './constants';
24
+
25
+ export const DEFAULT_RADIUS = 5;
26
+ export const DEFAULT_STATE_STYLE_STROKE = COLORS.PRIMARY;
27
+
28
+ export const STATE_STYLES_STROKE = {
29
+ [RenderStates.INACTIVE]: '#26B5F2',
30
+ [RenderStates.UNCOMMITTED]: '#a9a9a9',
31
+ [RenderStates.CLOSING]: '#a9a9a9',
32
+ [RenderStates.SELECTED]: '#26B5F2',
33
+ [RenderStates.HOVERED]: '#26B5F2'
34
+ };
35
+
36
+ export const DEFAULT_STATE_STYLE_FILL = '#000';
37
+
38
+ export const STATE_STYLES_FILL = {
39
+ [RenderStates.INACTIVE]: '#333333',
40
+ [RenderStates.HOVERED]: '#7ac943',
41
+ [RenderStates.SELECTED]: '#ffff00',
42
+ [RenderStates.UNCOMMITTED]: '#a9a9a9',
43
+ [RenderStates.CLOSING]: '#a9a9a9'
44
+ };
45
+
46
+ export const DEFAULT_STATE_STYLE_OPACITY = 0.1;
47
+
48
+ export const STATE_STYLES_STROKE_WIDTH = 2;
49
+
50
+ export const DEFAULT_STROKE_DASH_ARRAY = '4,2';
51
+
52
+ export const RENDER_TYPE_STYLES = {
53
+ [RenderTypes.POINT]: () => ({r: DEFAULT_RADIUS}),
54
+ [RenderTypes.LINE_STRING]: () => ({fill: 'none'})
55
+ };
56
+
57
+ export function noOp() {}
58
+
59
+ export function getStyle({feature, state}) {
60
+ const isVisible = get(feature, ['properties', 'isVisible'], true);
61
+ const style = {
62
+ stroke: STATE_STYLES_STROKE[state] || DEFAULT_STATE_STYLE_STROKE,
63
+ strokeWidth: isVisible ? STATE_STYLES_STROKE_WIDTH : 0,
64
+ fill: STATE_STYLES_FILL[state] || DEFAULT_STATE_STYLE_FILL,
65
+ fillOpacity: DEFAULT_STATE_STYLE_OPACITY,
66
+ ...(state !== RenderStates.SELECTED ? {strokeDasharray: DEFAULT_STROKE_DASH_ARRAY} : null)
67
+ };
68
+
69
+ const renderType = feature.properties ? feature.properties.renderType : feature.renderType;
70
+
71
+ return {
72
+ ...style,
73
+ ...(RENDER_TYPE_STYLES[renderType] || noOp)()
74
+ };
75
+ }
@@ -0,0 +1,89 @@
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
+ import {RenderStates, RenderTypes} from 'react-map-gl-draw';
22
+ import {COLORS} from './constants';
23
+ import get from 'lodash.get';
24
+
25
+ const DEFAULT_EDIT_HANDLE_SHAPE = 'circle';
26
+
27
+ const rectStyle = {
28
+ x: -6,
29
+ y: -6,
30
+ height: 12,
31
+ width: 12
32
+ };
33
+
34
+ export const DEFAULT_STATE_STYLE_STROKE = COLORS.PRIMARY;
35
+
36
+ export const STATE_STYLES_STROKE = {
37
+ [RenderStates.SELECTED]: COLORS.PRIMARY,
38
+ [RenderStates.HOVERED]: COLORS.SECONDARY
39
+ };
40
+
41
+ export const DEFAULT_STATE_STYLE_FILL = '#ffffff';
42
+
43
+ export const STATE_STYLES_FILL = {
44
+ [RenderStates.SELECTED]: COLORS.SECONDARY,
45
+ [RenderStates.HOVERED]: COLORS.SECONDARY,
46
+ [RenderStates.INACTIVE]: COLORS.PRIMARY,
47
+ [RenderStates.UNCOMMITTED]: COLORS.PRIMARY
48
+ };
49
+
50
+ const STATE_STYLES_STROKE_WIDTH = 1;
51
+
52
+ export const RENDER_TYPE_STYLES = {
53
+ [RenderTypes.POINT]: state => ({
54
+ fill: STATE_STYLES_FILL[state],
55
+ stroke: state === RenderStates.SELECTED ? COLORS.PRIMARY : DEFAULT_STATE_STYLE_STROKE
56
+ }),
57
+ [RenderTypes.LINE_STRING]: () => rectStyle,
58
+ [RenderTypes.RECTANGLE]: () => rectStyle,
59
+ [RenderTypes.POLYGON]: () => rectStyle
60
+ };
61
+
62
+ export const DEFAULT_STATE_STYLE_OPACITY = 0;
63
+
64
+ export const DEFAULT_RADIUS = 5;
65
+
66
+ function noOp() {}
67
+
68
+ export function getStyle({feature, state}) {
69
+ const isVisible = get(feature, ['properties', 'isVisible'], true);
70
+
71
+ const style = {
72
+ stroke: STATE_STYLES_STROKE[state] || DEFAULT_STATE_STYLE_STROKE,
73
+ strokeWidth: isVisible ? STATE_STYLES_STROKE_WIDTH : 0,
74
+ fill: DEFAULT_STATE_STYLE_FILL,
75
+ fillOpacity: DEFAULT_STATE_STYLE_OPACITY,
76
+ r: DEFAULT_RADIUS
77
+ };
78
+
79
+ const renderType = feature.properties ? feature.properties.renderType : feature.renderType;
80
+
81
+ return {
82
+ ...style,
83
+ ...(RENDER_TYPE_STYLES[renderType] || noOp)(state)
84
+ };
85
+ }
86
+
87
+ export function getEditHandleShape() {
88
+ return DEFAULT_EDIT_HANDLE_SHAPE;
89
+ }
@@ -0,0 +1,118 @@
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
+ import React, {useCallback, useMemo} from 'react';
22
+ import {StyledFilterContent} from 'components/common/styled-components';
23
+ import FilterPanelHeaderFactory from 'components/side-panel/filter-panel/filter-panel-header';
24
+ import PanelHeaderActionFactory from 'components/side-panel/panel-header-action';
25
+ import SourceDataSelectorFactory from 'components/side-panel/common/source-data-selector';
26
+ import FieldSelectorFactory from '../../common/field-selector';
27
+ import {getSupportedFilterFields} from './new-filter-panel';
28
+ import {FilterPanelWithFieldSelectComponent} from './types';
29
+ import KeplerTable from 'utils/table-utils/kepler-table';
30
+
31
+ FieldPanelWithFieldSelectFactory.deps = [
32
+ FilterPanelHeaderFactory,
33
+ SourceDataSelectorFactory,
34
+ FieldSelectorFactory,
35
+ PanelHeaderActionFactory
36
+ ];
37
+
38
+ function FieldPanelWithFieldSelectFactory(
39
+ FilterPanelHeader: ReturnType<typeof FilterPanelHeaderFactory>,
40
+ SourceDataSelector: ReturnType<typeof SourceDataSelectorFactory>,
41
+ FieldSelector: ReturnType<typeof FieldSelectorFactory>,
42
+ PanelHeaderAction: ReturnType<typeof PanelHeaderActionFactory>
43
+ ) {
44
+ const FilterPanelWithFieldSelect: FilterPanelWithFieldSelectComponent = React.memo(
45
+ ({
46
+ children,
47
+ allAvailableFields,
48
+ datasets,
49
+ filter,
50
+ idx,
51
+ removeFilter,
52
+ setFilter,
53
+ panelActions = []
54
+ }) => {
55
+ const onFieldSelector = useCallback(field => setFilter(idx, 'name', field.name), [
56
+ idx,
57
+ setFilter
58
+ ]);
59
+
60
+ const onSourceDataSelector = useCallback(value => setFilter(idx, 'dataId', [value]), [
61
+ idx,
62
+ setFilter
63
+ ]);
64
+
65
+ const fieldValue = useMemo(
66
+ () => (Array.isArray(filter.name) ? filter.name[0] : filter.name),
67
+ [filter.name]
68
+ );
69
+
70
+ const dataset: KeplerTable = datasets[filter.dataId[0]];
71
+ const supportedFields = useMemo(
72
+ () => getSupportedFilterFields(dataset.supportedFilterTypes, allAvailableFields),
73
+ [dataset.supportedFilterTypes, allAvailableFields]
74
+ );
75
+ return (
76
+ <>
77
+ <FilterPanelHeader datasets={[dataset]} filter={filter} removeFilter={removeFilter}>
78
+ <FieldSelector
79
+ inputTheme="secondary"
80
+ fields={supportedFields}
81
+ value={fieldValue}
82
+ erasable={false}
83
+ onSelect={onFieldSelector}
84
+ />
85
+ {panelActions?.map(panelAction => (
86
+ <PanelHeaderAction
87
+ id={panelAction.id}
88
+ key={panelAction.id}
89
+ onClick={panelAction.onClick}
90
+ tooltip={panelAction.tooltip}
91
+ IconComponent={panelAction.iconComponent}
92
+ active={panelAction.active}
93
+ />
94
+ ))}
95
+ </FilterPanelHeader>
96
+ <StyledFilterContent className="filter-panel__content">
97
+ {Object.keys(datasets).length > 1 && (
98
+ <SourceDataSelector
99
+ inputTheme="secondary"
100
+ datasets={datasets}
101
+ disabled={filter.freeze}
102
+ dataId={filter.dataId}
103
+ onSelect={onSourceDataSelector}
104
+ />
105
+ )}
106
+ {children}
107
+ </StyledFilterContent>
108
+ </>
109
+ );
110
+ }
111
+ );
112
+
113
+ FilterPanelWithFieldSelect.displayName = 'FilterPanelWithFieldSelect';
114
+
115
+ return FilterPanelWithFieldSelect;
116
+ }
117
+
118
+ export default FieldPanelWithFieldSelectFactory;
@@ -0,0 +1,63 @@
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
+ import React, {useCallback} from 'react';
22
+ import MultiSelectFilterFactory from 'components/filters/multi-select-filter';
23
+ import {MultiSelectFilter} from 'reducers';
24
+ import FieldPanelWithFieldSelectFactory from 'components/filters/filter-panels/filter-panel-with-field-select';
25
+ import {FilterPanelComponent} from './types';
26
+
27
+ MultiSelectFilterPanelFactory.deps = [FieldPanelWithFieldSelectFactory, MultiSelectFilterFactory];
28
+
29
+ function MultiSelectFilterPanelFactory(
30
+ FieldPanelWithFieldSelect: ReturnType<typeof FieldPanelWithFieldSelectFactory>,
31
+ MultiSelectFilter: ReturnType<typeof MultiSelectFilterFactory>
32
+ ) {
33
+ const MultiSelectFilterPanel: FilterPanelComponent<MultiSelectFilter> = React.memo(
34
+ ({idx, datasets, allAvailableFields, filter, setFilter, removeFilter}) => {
35
+ const onSetFilter = useCallback(value => setFilter(idx, 'value', value), [idx, setFilter]);
36
+
37
+ return (
38
+ <div className="multi-select-filter-panel">
39
+ <FieldPanelWithFieldSelect
40
+ allAvailableFields={allAvailableFields}
41
+ datasets={datasets}
42
+ filter={filter}
43
+ idx={idx}
44
+ removeFilter={removeFilter}
45
+ setFilter={setFilter}
46
+ >
47
+ {filter.type && !filter.enlarged && (
48
+ <div className="filter-panel__filter">
49
+ <MultiSelectFilter filter={filter} setFilter={onSetFilter} />
50
+ </div>
51
+ )}
52
+ </FieldPanelWithFieldSelect>
53
+ </div>
54
+ );
55
+ }
56
+ );
57
+
58
+ MultiSelectFilterPanel.displayName = 'MultiSelectFilterPanel';
59
+
60
+ return MultiSelectFilterPanel;
61
+ }
62
+
63
+ export default MultiSelectFilterPanelFactory;
@@ -0,0 +1,100 @@
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
+ import React, {useCallback, useMemo} from 'react';
22
+ import {StyledFilterContent} from 'components/common/styled-components';
23
+ import FilterPanelHeaderFactory from 'components/side-panel/filter-panel/filter-panel-header';
24
+ import SourceDataSelectorFactory from 'components/side-panel/common/source-data-selector';
25
+ import FieldSelectorFactory from '../../common/field-selector';
26
+ import {FilterBase} from 'reducers';
27
+ import {FilterPanelComponent} from './types';
28
+ import KeplerTable, {Field} from 'utils/table-utils/kepler-table';
29
+
30
+ NewFilterPanelFactory.deps = [
31
+ FilterPanelHeaderFactory,
32
+ SourceDataSelectorFactory,
33
+ FieldSelectorFactory
34
+ ];
35
+
36
+ export function getSupportedFilterFields(
37
+ supportedFilterTypes: KeplerTable['supportedFilterTypes'],
38
+ fields: Field[]
39
+ ) {
40
+ return supportedFilterTypes
41
+ ? fields.filter(field => supportedFilterTypes.includes(field.type))
42
+ : fields;
43
+ }
44
+
45
+ function NewFilterPanelFactory(
46
+ FilterPanelHeader: ReturnType<typeof FilterPanelHeaderFactory>,
47
+ SourceDataSelector: ReturnType<typeof SourceDataSelectorFactory>,
48
+ FieldSelector: ReturnType<typeof FieldSelectorFactory>
49
+ ) {
50
+ const NewFilterPanel: FilterPanelComponent<FilterBase> = React.memo(
51
+ ({idx, filter, datasets, allAvailableFields, setFilter, removeFilter}) => {
52
+ const onFieldSelector = useCallback(field => setFilter(idx, 'name', field.name), [
53
+ idx,
54
+ setFilter
55
+ ]);
56
+
57
+ const onSourceDataSelector = useCallback(value => setFilter(idx, 'dataId', value), [
58
+ idx,
59
+ setFilter
60
+ ]);
61
+
62
+ const dataset: KeplerTable = datasets[filter.dataId[0]];
63
+ const supportedFields = useMemo(
64
+ () => getSupportedFilterFields(dataset.supportedFilterTypes, allAvailableFields),
65
+ [dataset.supportedFilterTypes, allAvailableFields]
66
+ );
67
+
68
+ return (
69
+ <>
70
+ <FilterPanelHeader datasets={[dataset]} filter={filter} removeFilter={removeFilter}>
71
+ <FieldSelector
72
+ inputTheme="secondary"
73
+ fields={supportedFields}
74
+ value={Array.isArray(filter.name) ? filter.name[0] : filter.name}
75
+ erasable={false}
76
+ onSelect={onFieldSelector}
77
+ />
78
+ </FilterPanelHeader>
79
+ <StyledFilterContent className="filter-panel__content">
80
+ {Object.keys(datasets).length > 1 && (
81
+ <SourceDataSelector
82
+ inputTheme="secondary"
83
+ datasets={datasets}
84
+ disabled={filter.freeze}
85
+ dataId={filter.dataId}
86
+ onSelect={onSourceDataSelector}
87
+ />
88
+ )}
89
+ </StyledFilterContent>
90
+ </>
91
+ );
92
+ }
93
+ );
94
+
95
+ NewFilterPanel.displayName = 'NewFilterPanel';
96
+
97
+ return NewFilterPanel;
98
+ }
99
+
100
+ export default NewFilterPanelFactory;
@@ -0,0 +1,84 @@
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
+ import React, {useMemo, useCallback} from 'react';
22
+ import {StyledFilterContent} from 'components/common/styled-components';
23
+ import PolygonFilterFactory from 'components/filters/polygon-filter';
24
+ import PanelHeaderActionFactory from 'components/side-panel/panel-header-action';
25
+ import {EyeSeen, EyeUnseen} from 'components/common/icons';
26
+
27
+ import FilterPanelHeaderFactory from 'components/side-panel/filter-panel/filter-panel-header';
28
+ import {StyledFilterPanel} from '../components';
29
+
30
+ import get from 'lodash.get';
31
+ import {PolygonFilterPanelComponent} from './types';
32
+ import KeplerTable from 'utils/table-utils/kepler-table';
33
+
34
+ PolygonFilterPanelFactory.deps = [
35
+ FilterPanelHeaderFactory,
36
+ PolygonFilterFactory,
37
+ PanelHeaderActionFactory
38
+ ];
39
+
40
+ function PolygonFilterPanelFactory(
41
+ FilterPanelHeader: ReturnType<typeof FilterPanelHeaderFactory>,
42
+ PolygonFilter: ReturnType<typeof PolygonFilterFactory>,
43
+ PanelHeaderAction: ReturnType<typeof PanelHeaderActionFactory>
44
+ ) {
45
+ const PolygonFilterPanel: PolygonFilterPanelComponent = React.memo(
46
+ ({idx, datasets, layers, filter, removeFilter, setFilter, toggleFilterFeature}) => {
47
+ const filterDatasets: KeplerTable[] = useMemo(() => filter.dataId.map(d => datasets[d]), [
48
+ filter,
49
+ datasets
50
+ ]);
51
+
52
+ const onSetLayers = useCallback(value => setFilter(idx, 'layerId', value), [setFilter, idx]);
53
+
54
+ const isVisible = get(filter, ['value', 'properties', 'isVisible'], true);
55
+ const featureType = get(filter, ['value', 'properties', 'renderType'], true);
56
+
57
+ return (
58
+ <div className="polygon-filter-panel">
59
+ <FilterPanelHeader datasets={filterDatasets} filter={filter} removeFilter={removeFilter}>
60
+ <StyledFilterPanel>Geo - {featureType}</StyledFilterPanel>
61
+ <PanelHeaderAction
62
+ id={filter.id}
63
+ onClick={toggleFilterFeature}
64
+ tooltip={isVisible ? 'tooltip.hideFeature' : 'tooltip.showFeature'}
65
+ IconComponent={isVisible ? EyeSeen : EyeUnseen}
66
+ active={isVisible}
67
+ />
68
+ </FilterPanelHeader>
69
+ <StyledFilterContent className="filter-panel__content">
70
+ <div className="filter-panel__filter">
71
+ <PolygonFilter filter={filter} layers={layers} setLayers={onSetLayers} />
72
+ </div>
73
+ </StyledFilterContent>
74
+ </div>
75
+ );
76
+ }
77
+ );
78
+
79
+ PolygonFilterPanel.displayName = 'PolygonFilterPanel';
80
+
81
+ return PolygonFilterPanel;
82
+ }
83
+
84
+ export default PolygonFilterPanelFactory;