@carto/kepler.gl 0.1.0-alpha.1 → 0.1.0-next.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 (863) hide show
  1. package/dist/actions/action-wrapper.d.ts +115 -115
  2. package/dist/actions/action-wrapper.js +190 -0
  3. package/dist/actions/actions.d.ts +195 -195
  4. package/dist/actions/actions.js +194 -0
  5. package/dist/actions/identity-actions.d.ts +61 -61
  6. package/dist/actions/identity-actions.js +101 -0
  7. package/dist/actions/index.d.ts +9 -9
  8. package/dist/actions/index.js +144 -0
  9. package/dist/actions/map-state-actions.d.ts +69 -69
  10. package/dist/actions/map-state-actions.js +106 -0
  11. package/dist/actions/map-style-actions.d.ts +146 -146
  12. package/dist/actions/map-style-actions.js +176 -0
  13. package/dist/actions/provider-actions.d.ts +153 -153
  14. package/dist/actions/provider-actions.js +144 -0
  15. package/dist/actions/ui-state-actions.d.ts +300 -300
  16. package/dist/actions/ui-state-actions.js +356 -0
  17. package/dist/actions/vis-state-actions.d.ts +821 -821
  18. package/dist/actions/vis-state-actions.js +900 -0
  19. package/dist/cloud-providers/index.d.ts +2 -2
  20. package/dist/cloud-providers/index.js +22 -0
  21. package/dist/cloud-providers/provider.d.ts +176 -176
  22. package/dist/cloud-providers/provider.js +346 -0
  23. package/dist/components/bottom-widget.d.ts +47 -47
  24. package/dist/components/bottom-widget.js +217 -0
  25. package/dist/components/common/action-panel.d.ts +27 -27
  26. package/dist/components/common/action-panel.js +133 -0
  27. package/dist/components/common/animation-control/animation-control.d.ts +24 -24
  28. package/dist/components/common/animation-control/animation-control.js +129 -0
  29. package/dist/components/common/animation-control/animation-controller.d.ts +16 -16
  30. package/dist/components/common/animation-control/animation-controller.js +270 -0
  31. package/dist/components/common/animation-control/animation-speed-slider.d.ts +12 -12
  32. package/dist/components/common/animation-control/animation-speed-slider.js +88 -0
  33. package/dist/components/common/animation-control/floating-time-display.d.ts +9 -9
  34. package/dist/components/common/animation-control/floating-time-display.js +149 -0
  35. package/dist/components/common/animation-control/playback-controls.d.ts +72 -72
  36. package/dist/components/common/animation-control/playback-controls.js +261 -0
  37. package/dist/components/common/animation-control/speed-control.d.ts +13 -13
  38. package/dist/components/common/animation-control/speed-control.js +70 -0
  39. package/dist/components/common/checkbox.d.ts +35 -35
  40. package/dist/components/common/checkbox.js +117 -0
  41. package/dist/components/common/color-legend.d.ts +43 -43
  42. package/dist/components/common/color-legend.js +205 -0
  43. package/dist/components/common/data-table/button.d.ts +8 -8
  44. package/dist/components/common/data-table/button.js +53 -0
  45. package/dist/components/common/data-table/canvas.d.ts +2 -2
  46. package/dist/components/common/data-table/canvas.js +43 -0
  47. package/dist/components/common/data-table/cell-size.d.ts +36 -36
  48. package/dist/components/common/data-table/cell-size.js +170 -0
  49. package/dist/components/common/data-table/grid.d.ts +7 -7
  50. package/dist/components/common/data-table/grid.js +90 -0
  51. package/dist/components/common/data-table/index.d.ts +143 -143
  52. package/dist/components/common/data-table/index.js +469 -0
  53. package/dist/components/common/data-table/option-dropdown.d.ts +14 -14
  54. package/dist/components/common/data-table/option-dropdown.js +99 -0
  55. package/dist/components/common/dataset-label.d.ts +10 -10
  56. package/dist/components/common/dataset-label.js +44 -0
  57. package/dist/components/common/error-boundary.d.ts +16 -16
  58. package/dist/components/common/error-boundary.js +76 -0
  59. package/dist/components/common/field-selector.d.ts +47 -47
  60. package/dist/components/common/field-selector.js +214 -0
  61. package/dist/components/common/field-token.d.ts +45 -45
  62. package/dist/components/common/field-token.js +47 -0
  63. package/dist/components/common/file-uploader/file-drop.d.ts +54 -54
  64. package/dist/components/common/file-uploader/file-drop.js +213 -0
  65. package/dist/components/common/file-uploader/file-upload-progress.d.ts +8 -8
  66. package/dist/components/common/file-uploader/file-upload-progress.js +103 -0
  67. package/dist/components/common/file-uploader/file-upload.d.ts +27 -27
  68. package/dist/components/common/file-uploader/file-upload.js +263 -0
  69. package/dist/components/common/file-uploader/upload-button.d.ts +8 -8
  70. package/dist/components/common/file-uploader/upload-button.js +76 -0
  71. package/dist/components/common/histogram-plot.d.ts +3 -3
  72. package/dist/components/common/histogram-plot.js +112 -0
  73. package/dist/components/common/icons/add.d.ts +9 -9
  74. package/dist/components/common/icons/add.js +58 -0
  75. package/dist/components/common/icons/anchor_window.d.ts +11 -11
  76. package/dist/components/common/icons/anchor_window.js +51 -0
  77. package/dist/components/common/icons/arrow-down-alt.d.ts +9 -9
  78. package/dist/components/common/icons/arrow-down-alt.js +58 -0
  79. package/dist/components/common/icons/arrow-down-solid.d.ts +9 -9
  80. package/dist/components/common/icons/arrow-down-solid.js +58 -0
  81. package/dist/components/common/icons/arrow-down.d.ts +9 -9
  82. package/dist/components/common/icons/arrow-down.js +58 -0
  83. package/dist/components/common/icons/arrow-left.d.ts +9 -9
  84. package/dist/components/common/icons/arrow-left.js +61 -0
  85. package/dist/components/common/icons/arrow-right.d.ts +9 -9
  86. package/dist/components/common/icons/arrow-right.js +58 -0
  87. package/dist/components/common/icons/arrow-up-alt.d.ts +9 -9
  88. package/dist/components/common/icons/arrow-up-alt.js +59 -0
  89. package/dist/components/common/icons/arrow-up-solid.d.ts +9 -9
  90. package/dist/components/common/icons/arrow-up-solid.js +58 -0
  91. package/dist/components/common/icons/arrow-up.d.ts +9 -9
  92. package/dist/components/common/icons/arrow-up.js +58 -0
  93. package/dist/components/common/icons/base.d.ts +29 -29
  94. package/dist/components/common/icons/base.js +94 -0
  95. package/dist/components/common/icons/bug.d.ts +9 -9
  96. package/dist/components/common/icons/bug.js +60 -0
  97. package/dist/components/common/icons/cancel.d.ts +9 -9
  98. package/dist/components/common/icons/cancel.js +58 -0
  99. package/dist/components/common/icons/checkmark.d.ts +10 -10
  100. package/dist/components/common/icons/checkmark.js +64 -0
  101. package/dist/components/common/icons/chevron-right.js +68 -0
  102. package/dist/components/common/icons/clipboard.d.ts +9 -9
  103. package/dist/components/common/icons/clipboard.js +59 -0
  104. package/dist/components/common/icons/clock.d.ts +9 -9
  105. package/dist/components/common/icons/clock.js +60 -0
  106. package/dist/components/common/icons/close.d.ts +9 -9
  107. package/dist/components/common/icons/close.js +63 -0
  108. package/dist/components/common/icons/code-alt.d.ts +9 -9
  109. package/dist/components/common/icons/code-alt.js +61 -0
  110. package/dist/components/common/icons/copy.d.ts +9 -9
  111. package/dist/components/common/icons/copy.js +63 -0
  112. package/dist/components/common/icons/crosshairs.d.ts +9 -9
  113. package/dist/components/common/icons/crosshairs.js +61 -0
  114. package/dist/components/common/icons/cube-3d.d.ts +9 -9
  115. package/dist/components/common/icons/cube-3d.js +62 -0
  116. package/dist/components/common/icons/cursor-click.d.ts +9 -9
  117. package/dist/components/common/icons/cursor-click.js +62 -0
  118. package/dist/components/common/icons/data-table.d.ts +10 -10
  119. package/dist/components/common/icons/data-table.js +59 -0
  120. package/dist/components/common/icons/db.d.ts +10 -10
  121. package/dist/components/common/icons/db.js +59 -0
  122. package/dist/components/common/icons/delete.d.ts +9 -9
  123. package/dist/components/common/icons/delete.js +60 -0
  124. package/dist/components/common/icons/docs.d.ts +9 -9
  125. package/dist/components/common/icons/docs.js +74 -0
  126. package/dist/components/common/icons/drag-n-drop.d.ts +9 -9
  127. package/dist/components/common/icons/drag-n-drop.js +60 -0
  128. package/dist/components/common/icons/draw-polygon.d.ts +10 -10
  129. package/dist/components/common/icons/draw-polygon.js +78 -0
  130. package/dist/components/common/icons/email.d.ts +9 -9
  131. package/dist/components/common/icons/email.js +62 -0
  132. package/dist/components/common/icons/expand.d.ts +9 -9
  133. package/dist/components/common/icons/expand.js +60 -0
  134. package/dist/components/common/icons/eye-seen.d.ts +9 -9
  135. package/dist/components/common/icons/eye-seen.js +60 -0
  136. package/dist/components/common/icons/eye-unseen.d.ts +9 -9
  137. package/dist/components/common/icons/eye-unseen.js +60 -0
  138. package/dist/components/common/icons/file-type.d.ts +8 -8
  139. package/dist/components/common/icons/file-type.js +52 -0
  140. package/dist/components/common/icons/file.d.ts +9 -9
  141. package/dist/components/common/icons/file.js +58 -0
  142. package/dist/components/common/icons/files.d.ts +9 -9
  143. package/dist/components/common/icons/files.js +58 -0
  144. package/dist/components/common/icons/filter-funnel.d.ts +9 -9
  145. package/dist/components/common/icons/filter-funnel.js +58 -0
  146. package/dist/components/common/icons/free-window.d.ts +11 -11
  147. package/dist/components/common/icons/free-window.js +51 -0
  148. package/dist/components/common/icons/gear.d.ts +9 -9
  149. package/dist/components/common/icons/gear.js +60 -0
  150. package/dist/components/common/icons/hash.d.ts +9 -9
  151. package/dist/components/common/icons/hash.js +58 -0
  152. package/dist/components/common/icons/histogram.d.ts +9 -9
  153. package/dist/components/common/icons/histogram.js +58 -0
  154. package/dist/components/common/icons/index.d.ts +78 -78
  155. package/dist/components/common/icons/index.js +551 -0
  156. package/dist/components/common/icons/info.d.ts +12 -12
  157. package/dist/components/common/icons/info.js +71 -0
  158. package/dist/components/common/icons/layers.d.ts +9 -9
  159. package/dist/components/common/icons/layers.js +58 -0
  160. package/dist/components/common/icons/left-arrow.d.ts +9 -9
  161. package/dist/components/common/icons/left-arrow.js +61 -0
  162. package/dist/components/common/icons/legend.d.ts +9 -9
  163. package/dist/components/common/icons/legend.js +58 -0
  164. package/dist/components/common/icons/line-chart.d.ts +9 -9
  165. package/dist/components/common/icons/line-chart.js +58 -0
  166. package/dist/components/common/icons/login.d.ts +9 -9
  167. package/dist/components/common/icons/login.js +61 -0
  168. package/dist/components/common/icons/logout.d.ts +9 -9
  169. package/dist/components/common/icons/logout.js +60 -0
  170. package/dist/components/common/icons/map-icon.d.ts +11 -11
  171. package/dist/components/common/icons/map-icon.js +65 -0
  172. package/dist/components/common/icons/map.d.ts +11 -11
  173. package/dist/components/common/icons/map.js +65 -0
  174. package/dist/components/common/icons/messages.d.ts +9 -9
  175. package/dist/components/common/icons/messages.js +58 -0
  176. package/dist/components/common/icons/minus.d.ts +9 -9
  177. package/dist/components/common/icons/minus.js +58 -0
  178. package/dist/components/common/icons/order-by-dataset.d.ts +12 -12
  179. package/dist/components/common/icons/order-by-dataset.js +51 -0
  180. package/dist/components/common/icons/order-by-list.d.ts +12 -12
  181. package/dist/components/common/icons/order-by-list.js +43 -0
  182. package/dist/components/common/icons/pause.d.ts +9 -9
  183. package/dist/components/common/icons/pause.js +58 -0
  184. package/dist/components/common/icons/picture.d.ts +9 -9
  185. package/dist/components/common/icons/picture.js +58 -0
  186. package/dist/components/common/icons/pin.d.ts +9 -9
  187. package/dist/components/common/icons/pin.js +62 -0
  188. package/dist/components/common/icons/play.d.ts +9 -9
  189. package/dist/components/common/icons/play.js +58 -0
  190. package/dist/components/common/icons/polygon.d.ts +10 -10
  191. package/dist/components/common/icons/polygon.js +80 -0
  192. package/dist/components/common/icons/rectangle.d.ts +10 -10
  193. package/dist/components/common/icons/rectangle.js +81 -0
  194. package/dist/components/common/icons/reduce.d.ts +9 -9
  195. package/dist/components/common/icons/reduce.js +61 -0
  196. package/dist/components/common/icons/reset.d.ts +9 -9
  197. package/dist/components/common/icons/reset.js +58 -0
  198. package/dist/components/common/icons/rocket.d.ts +9 -9
  199. package/dist/components/common/icons/rocket.js +58 -0
  200. package/dist/components/common/icons/save.d.ts +9 -9
  201. package/dist/components/common/icons/save.js +60 -0
  202. package/dist/components/common/icons/save2.d.ts +9 -9
  203. package/dist/components/common/icons/save2.js +64 -0
  204. package/dist/components/common/icons/search.d.ts +9 -9
  205. package/dist/components/common/icons/search.js +60 -0
  206. package/dist/components/common/icons/settings.d.ts +9 -9
  207. package/dist/components/common/icons/settings.js +60 -0
  208. package/dist/components/common/icons/share.d.ts +9 -9
  209. package/dist/components/common/icons/share.js +58 -0
  210. package/dist/components/common/icons/split.d.ts +9 -9
  211. package/dist/components/common/icons/split.js +86 -0
  212. package/dist/components/common/icons/square-select.d.ts +9 -9
  213. package/dist/components/common/icons/square-select.js +60 -0
  214. package/dist/components/common/icons/swap-horizontal.js +66 -0
  215. package/dist/components/common/icons/table.d.ts +9 -9
  216. package/dist/components/common/icons/table.js +58 -0
  217. package/dist/components/common/icons/trash.d.ts +9 -9
  218. package/dist/components/common/icons/trash.js +60 -0
  219. package/dist/components/common/icons/upload.d.ts +9 -9
  220. package/dist/components/common/icons/upload.js +58 -0
  221. package/dist/components/common/icons/vert-dots.d.ts +9 -9
  222. package/dist/components/common/icons/vert-dots.js +96 -0
  223. package/dist/components/common/icons/vert-three-dots.d.ts +9 -9
  224. package/dist/components/common/icons/vert-three-dots.js +71 -0
  225. package/dist/components/common/icons/warning.d.ts +10 -10
  226. package/dist/components/common/icons/warning.js +72 -0
  227. package/dist/components/common/image-preview.d.ts +15 -15
  228. package/dist/components/common/image-preview.js +79 -0
  229. package/dist/components/common/info-helper.d.ts +11 -11
  230. package/dist/components/common/info-helper.js +79 -0
  231. package/dist/components/common/item-selector/accessor.d.ts +7 -7
  232. package/dist/components/common/item-selector/accessor.js +54 -0
  233. package/dist/components/common/item-selector/chickleted-input.d.ts +21 -21
  234. package/dist/components/common/item-selector/chickleted-input.js +96 -0
  235. package/dist/components/common/item-selector/dropdown-list.d.ts +68 -68
  236. package/dist/components/common/item-selector/dropdown-list.js +279 -0
  237. package/dist/components/common/item-selector/item-selector-submenu.js +88 -0
  238. package/dist/components/common/item-selector/item-selector.d.ts +91 -91
  239. package/dist/components/common/item-selector/item-selector.js +282 -0
  240. package/dist/components/common/item-selector/typeahead.d.ts +115 -115
  241. package/dist/components/common/item-selector/typeahead.js +425 -0
  242. package/dist/components/common/line-chart.d.ts +34 -34
  243. package/dist/components/common/line-chart.js +127 -0
  244. package/dist/components/common/loading-spinner.d.ts +9 -9
  245. package/dist/components/common/loading-spinner.js +64 -0
  246. package/dist/components/common/logo.d.ts +8 -8
  247. package/dist/components/common/logo.js +85 -0
  248. package/dist/components/common/map-layer-selector.d.ts +13 -13
  249. package/dist/components/common/map-layer-selector.js +56 -0
  250. package/dist/components/common/modal.d.ts +49 -49
  251. package/dist/components/common/modal.js +165 -0
  252. package/dist/components/common/portaled.d.ts +527 -527
  253. package/dist/components/common/portaled.js +277 -0
  254. package/dist/components/common/progress-bar.d.ts +12 -12
  255. package/dist/components/common/progress-bar.js +64 -0
  256. package/dist/components/common/range-brush.d.ts +19 -19
  257. package/dist/components/common/range-brush.js +277 -0
  258. package/dist/components/common/range-plot.d.ts +35 -35
  259. package/dist/components/common/range-plot.js +130 -0
  260. package/dist/components/common/range-slider.d.ts +32 -32
  261. package/dist/components/common/range-slider.js +305 -0
  262. package/dist/components/common/slider/mouse-event.d.ts +27 -27
  263. package/dist/components/common/slider/mouse-event.js +115 -0
  264. package/dist/components/common/slider/slider-bar-handle.d.ts +29 -29
  265. package/dist/components/common/slider/slider-bar-handle.js +105 -0
  266. package/dist/components/common/slider/slider-handle.d.ts +33 -33
  267. package/dist/components/common/slider/slider-handle.js +151 -0
  268. package/dist/components/common/slider/slider.d.ts +70 -70
  269. package/dist/components/common/slider/slider.js +221 -0
  270. package/dist/components/common/styled-components.d.ts +119 -119
  271. package/dist/components/common/styled-components.js +300 -0
  272. package/dist/components/common/switch.d.ts +16 -16
  273. package/dist/components/common/switch.js +38 -0
  274. package/dist/components/common/time-range-slider-time-title.d.ts +9 -9
  275. package/dist/components/common/time-range-slider-time-title.js +79 -0
  276. package/dist/components/common/time-range-slider.d.ts +32 -32
  277. package/dist/components/common/time-range-slider.js +116 -0
  278. package/dist/components/common/time-slider-marker.d.ts +21 -21
  279. package/dist/components/common/time-slider-marker.js +136 -0
  280. package/dist/components/common/tippy-tooltip.d.ts +4 -4
  281. package/dist/components/common/tippy-tooltip.js +115 -0
  282. package/dist/components/common/toolbar-item.d.ts +14 -14
  283. package/dist/components/common/toolbar-item.js +75 -0
  284. package/dist/components/common/toolbar.d.ts +5 -5
  285. package/dist/components/common/toolbar.js +44 -0
  286. package/dist/components/common/vertical-toolbar.d.ts +3 -3
  287. package/dist/components/common/vertical-toolbar.js +33 -0
  288. package/dist/components/container.d.ts +39 -39
  289. package/dist/components/container.js +203 -0
  290. package/dist/components/context.d.ts +7 -7
  291. package/dist/components/context.js +38 -0
  292. package/dist/components/editor/constants.d.ts +17 -17
  293. package/dist/components/editor/constants.js +45 -0
  294. package/dist/components/editor/editor.d.ts +29 -29
  295. package/dist/components/editor/editor.js +226 -0
  296. package/dist/components/editor/feature-action-panel.d.ts +27 -27
  297. package/dist/components/editor/feature-action-panel.js +141 -0
  298. package/dist/components/editor/feature-styles.d.ts +24 -24
  299. package/dist/components/editor/feature-styles.js +67 -0
  300. package/dist/components/editor/handle-style.d.ts +38 -38
  301. package/dist/components/editor/handle-style.js +78 -0
  302. package/dist/components/filters/components.d.ts +1 -3
  303. package/dist/components/filters/components.js +31 -0
  304. package/dist/components/filters/filter-panels/filter-panel-with-field-select.d.ts +10 -10
  305. package/dist/components/filters/filter-panels/filter-panel-with-field-select.js +96 -0
  306. package/dist/components/filters/filter-panels/multi-select-filter-panel.d.ts +9 -9
  307. package/dist/components/filters/filter-panels/multi-select-filter-panel.js +66 -0
  308. package/dist/components/filters/filter-panels/new-filter-panel.d.ts +12 -12
  309. package/dist/components/filters/filter-panels/new-filter-panel.js +85 -0
  310. package/dist/components/filters/filter-panels/polygon-filter-panel.d.ts +9 -9
  311. package/dist/components/filters/filter-panels/polygon-filter-panel.js +85 -0
  312. package/dist/components/filters/filter-panels/range-filter-panel.d.ts +9 -9
  313. package/dist/components/filters/filter-panels/range-filter-panel.js +66 -0
  314. package/dist/components/filters/filter-panels/single-select-filter-panel.d.ts +9 -9
  315. package/dist/components/filters/filter-panels/single-select-filter-panel.js +66 -0
  316. package/dist/components/filters/filter-panels/time-range-filter-panel.d.ts +8 -8
  317. package/dist/components/filters/filter-panels/time-range-filter-panel.js +80 -0
  318. package/dist/components/filters/filter-panels/types.d.ts +36 -36
  319. package/dist/components/filters/filter-panels/types.js +6 -0
  320. package/dist/components/filters/index.d.ts +5 -5
  321. package/dist/components/filters/index.js +42 -0
  322. package/dist/components/filters/multi-select-filter.d.ts +3 -3
  323. package/dist/components/filters/multi-select-filter.js +48 -0
  324. package/dist/components/filters/polygon-filter.d.ts +4 -4
  325. package/dist/components/filters/polygon-filter.js +85 -0
  326. package/dist/components/filters/range-filter.d.ts +8 -8
  327. package/dist/components/filters/range-filter.js +48 -0
  328. package/dist/components/filters/single-select-filter.d.ts +3 -3
  329. package/dist/components/filters/single-select-filter.js +57 -0
  330. package/dist/components/filters/time-range-filter.d.ts +28 -28
  331. package/dist/components/filters/time-range-filter.js +75 -0
  332. package/dist/components/filters/time-widget.d.ts +14 -14
  333. package/dist/components/filters/time-widget.js +162 -0
  334. package/dist/components/filters/types.d.ts +53 -53
  335. package/dist/components/filters/types.js +6 -0
  336. package/dist/components/geocoder/geocoder.d.ts +33 -33
  337. package/dist/components/geocoder/geocoder.js +282 -0
  338. package/dist/components/geocoder-panel.d.ts +28 -28
  339. package/dist/components/geocoder-panel.js +192 -0
  340. package/dist/components/index.d.ts +165 -165
  341. package/dist/components/index.js +1474 -0
  342. package/dist/components/injector.d.ts +25 -25
  343. package/dist/components/injector.js +162 -0
  344. package/dist/components/kepler-gl.d.ts +302 -302
  345. package/dist/components/kepler-gl.js +487 -0
  346. package/dist/components/map/coordinate-info.d.ts +7 -7
  347. package/dist/components/map/coordinate-info.js +59 -0
  348. package/dist/components/map/layer-hover-info.d.ts +13 -13
  349. package/dist/components/map/layer-hover-info.js +167 -0
  350. package/dist/components/map/layer-selector-panel.d.ts +22 -22
  351. package/dist/components/map/layer-selector-panel.js +103 -0
  352. package/dist/components/map/locale-panel.d.ts +16 -16
  353. package/dist/components/map/locale-panel.js +103 -0
  354. package/dist/components/map/map-control-panel.d.ts +14 -14
  355. package/dist/components/map/map-control-panel.js +97 -0
  356. package/dist/components/map/map-control-toolbar.d.ts +2 -2
  357. package/dist/components/map/map-control-toolbar.js +35 -0
  358. package/dist/components/map/map-control-tooltip.d.ts +7 -7
  359. package/dist/components/map/map-control-tooltip.js +48 -0
  360. package/dist/components/map/map-control.d.ts +44 -44
  361. package/dist/components/map/map-control.js +79 -0
  362. package/dist/components/map/map-draw-panel.d.ts +21 -21
  363. package/dist/components/map/map-draw-panel.js +131 -0
  364. package/dist/components/map/map-legend-panel.d.ts +23 -23
  365. package/dist/components/map/map-legend-panel.js +152 -0
  366. package/dist/components/map/map-legend.d.ts +55 -55
  367. package/dist/components/map/map-legend.js +234 -0
  368. package/dist/components/map/map-popover.d.ts +37 -37
  369. package/dist/components/map/map-popover.js +191 -0
  370. package/dist/components/map/split-map-button.d.ts +19 -19
  371. package/dist/components/map/split-map-button.js +89 -0
  372. package/dist/components/map/toggle-3d-button.d.ts +16 -16
  373. package/dist/components/map/toggle-3d-button.js +79 -0
  374. package/dist/components/map-container.d.ts +58 -58
  375. package/dist/components/map-container.js +502 -0
  376. package/dist/components/maps-layout.d.ts +10 -10
  377. package/dist/components/maps-layout.js +57 -0
  378. package/dist/components/modal-container.d.ts +65 -65
  379. package/dist/components/modal-container.js +459 -0
  380. package/dist/components/modals/add-map-style-modal.d.ts +17 -17
  381. package/dist/components/modals/add-map-style-modal.js +250 -0
  382. package/dist/components/modals/cloud-tile.d.ts +15 -15
  383. package/dist/components/modals/cloud-tile.js +124 -0
  384. package/dist/components/modals/data-table-modal.d.ts +29 -29
  385. package/dist/components/modals/data-table-modal.js +223 -0
  386. package/dist/components/modals/delete-data-modal.d.ts +10 -10
  387. package/dist/components/modals/delete-data-modal.js +58 -0
  388. package/dist/components/modals/error-display.d.ts +6 -6
  389. package/dist/components/modals/error-display.js +44 -0
  390. package/dist/components/modals/export-data-modal.d.ts +25 -25
  391. package/dist/components/modals/export-data-modal.js +194 -0
  392. package/dist/components/modals/export-image-modal.d.ts +18 -18
  393. package/dist/components/modals/export-image-modal.js +139 -0
  394. package/dist/components/modals/export-map-modal/components.d.ts +8 -8
  395. package/dist/components/modals/export-map-modal/components.js +51 -0
  396. package/dist/components/modals/export-map-modal/export-html-map.d.ts +12 -12
  397. package/dist/components/modals/export-map-modal/export-html-map.js +140 -0
  398. package/dist/components/modals/export-map-modal/export-json-map.d.ts +9 -9
  399. package/dist/components/modals/export-map-modal/export-json-map.js +98 -0
  400. package/dist/components/modals/export-map-modal/export-map-modal.d.ts +27 -27
  401. package/dist/components/modals/export-map-modal/export-map-modal.js +101 -0
  402. package/dist/components/modals/image-modal-container.d.ts +18 -18
  403. package/dist/components/modals/image-modal-container.js +83 -0
  404. package/dist/components/modals/load-data-modal.d.ts +33 -33
  405. package/dist/components/modals/load-data-modal.js +93 -0
  406. package/dist/components/modals/load-storage-map.d.ts +26 -26
  407. package/dist/components/modals/load-storage-map.js +251 -0
  408. package/dist/components/modals/loading-dialog.d.ts +7 -7
  409. package/dist/components/modals/loading-dialog.js +54 -0
  410. package/dist/components/modals/modal-dialog.d.ts +2 -2
  411. package/dist/components/modals/modal-dialog.js +33 -0
  412. package/dist/components/modals/modal-tabs.d.ts +27 -27
  413. package/dist/components/modals/modal-tabs.js +99 -0
  414. package/dist/components/modals/overwrite-map-modal.d.ts +16 -16
  415. package/dist/components/modals/overwrite-map-modal.js +81 -0
  416. package/dist/components/modals/provider-modal-container.d.ts +23 -23
  417. package/dist/components/modals/provider-modal-container.js +79 -0
  418. package/dist/components/modals/save-map-modal.d.ts +29 -29
  419. package/dist/components/modals/save-map-modal.js +201 -0
  420. package/dist/components/modals/share-map-modal.d.ts +30 -30
  421. package/dist/components/modals/share-map-modal.js +188 -0
  422. package/dist/components/modals/status-panel.d.ts +13 -13
  423. package/dist/components/modals/status-panel.js +82 -0
  424. package/dist/components/modals/storage-map-viewer.d.ts +21 -21
  425. package/dist/components/modals/storage-map-viewer.js +115 -0
  426. package/dist/components/notification-panel/notification-item.d.ts +66 -66
  427. package/dist/components/notification-panel/notification-item.js +139 -0
  428. package/dist/components/notification-panel.d.ts +61 -61
  429. package/dist/components/notification-panel.js +74 -0
  430. package/dist/components/performance.d.ts +4 -4
  431. package/dist/components/performance.js +110 -0
  432. package/dist/components/plot-container.d.ts +24 -24
  433. package/dist/components/plot-container.js +240 -0
  434. package/dist/components/side-panel/cloud-storage-dropdown.d.ts +6 -6
  435. package/dist/components/side-panel/cloud-storage-dropdown.js +57 -0
  436. package/dist/components/side-panel/common/dataset-info.d.ts +3 -3
  437. package/dist/components/side-panel/common/dataset-info.js +50 -0
  438. package/dist/components/side-panel/common/dataset-tag.d.ts +3 -3
  439. package/dist/components/side-panel/common/dataset-tag.js +75 -0
  440. package/dist/components/side-panel/common/dataset-title.d.ts +8 -8
  441. package/dist/components/side-panel/common/dataset-title.js +185 -0
  442. package/dist/components/side-panel/common/source-data-catalog.d.ts +9 -9
  443. package/dist/components/side-panel/common/source-data-catalog.js +66 -0
  444. package/dist/components/side-panel/common/source-data-selector.d.ts +8 -8
  445. package/dist/components/side-panel/common/source-data-selector.js +119 -0
  446. package/dist/components/side-panel/common/types.d.ts +58 -58
  447. package/dist/components/side-panel/common/types.js +6 -0
  448. package/dist/components/side-panel/custom-panel.d.ts +9 -9
  449. package/dist/components/side-panel/custom-panel.js +56 -0
  450. package/dist/components/side-panel/filter-manager.d.ts +20 -20
  451. package/dist/components/side-panel/filter-manager.js +113 -0
  452. package/dist/components/side-panel/filter-panel/filter-panel-header.d.ts +21 -21
  453. package/dist/components/side-panel/filter-panel/filter-panel-header.js +67 -0
  454. package/dist/components/side-panel/filter-panel/filter-panel.d.ts +23 -23
  455. package/dist/components/side-panel/filter-panel/filter-panel.js +110 -0
  456. package/dist/components/side-panel/interaction-manager.d.ts +14 -14
  457. package/dist/components/side-panel/interaction-manager.js +51 -0
  458. package/dist/components/side-panel/interaction-panel/brush-config.d.ts +15 -15
  459. package/dist/components/side-panel/interaction-panel/brush-config.js +58 -0
  460. package/dist/components/side-panel/interaction-panel/interaction-panel.d.ts +19 -19
  461. package/dist/components/side-panel/interaction-panel/interaction-panel.js +137 -0
  462. package/dist/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.d.ts +28 -28
  463. package/dist/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +204 -0
  464. package/dist/components/side-panel/interaction-panel/tooltip-config.d.ts +38 -38
  465. package/dist/components/side-panel/interaction-panel/tooltip-config.js +155 -0
  466. package/dist/components/side-panel/layer-manager.d.ts +46 -46
  467. package/dist/components/side-panel/layer-manager.js +185 -0
  468. package/dist/components/side-panel/layer-panel/add-layer-button.d.ts +10 -10
  469. package/dist/components/side-panel/layer-panel/add-layer-button.js +147 -0
  470. package/dist/components/side-panel/layer-panel/color-dimension-scale-selector.d.ts +8 -8
  471. package/dist/components/side-panel/layer-panel/color-dimension-scale-selector.js +38 -0
  472. package/dist/components/side-panel/layer-panel/color-palette.d.ts +13 -13
  473. package/dist/components/side-panel/layer-panel/color-palette.js +79 -0
  474. package/dist/components/side-panel/layer-panel/color-range-selector.d.ts +129 -129
  475. package/dist/components/side-panel/layer-panel/color-range-selector.js +329 -0
  476. package/dist/components/side-panel/layer-panel/color-selector.d.ts +101 -101
  477. package/dist/components/side-panel/layer-panel/color-selector.js +177 -0
  478. package/dist/components/side-panel/layer-panel/column-selector.d.ts +22 -22
  479. package/dist/components/side-panel/layer-panel/column-selector.js +66 -0
  480. package/dist/components/side-panel/layer-panel/custom-markers-config-group.d.ts +6 -6
  481. package/dist/components/side-panel/layer-panel/custom-markers-config-group.js +36 -0
  482. package/dist/components/side-panel/layer-panel/custom-palette.d.ts +38 -38
  483. package/dist/components/side-panel/layer-panel/custom-palette.js +278 -0
  484. package/dist/components/side-panel/layer-panel/custom-picker.d.ts +67 -67
  485. package/dist/components/side-panel/layer-panel/custom-picker.js +106 -0
  486. package/dist/components/side-panel/layer-panel/dataset-layer-group.d.ts +24 -24
  487. package/dist/components/side-panel/layer-panel/dataset-layer-group.js +81 -0
  488. package/dist/components/side-panel/layer-panel/dataset-layer-section.d.ts +25 -25
  489. package/dist/components/side-panel/layer-panel/dataset-layer-section.js +74 -0
  490. package/dist/components/side-panel/layer-panel/dataset-section.d.ts +26 -26
  491. package/dist/components/side-panel/layer-panel/dataset-section.js +91 -0
  492. package/dist/components/side-panel/layer-panel/dimension-scale-selector.d.ts +10 -10
  493. package/dist/components/side-panel/layer-panel/dimension-scale-selector.js +53 -0
  494. package/dist/components/side-panel/layer-panel/hex-column-config.d.ts +62 -62
  495. package/dist/components/side-panel/layer-panel/hex-column-config.js +74 -0
  496. package/dist/components/side-panel/layer-panel/layer-aggregation-resolution.d.ts +8 -8
  497. package/dist/components/side-panel/layer-panel/layer-aggregation-resolution.js +18 -0
  498. package/dist/components/side-panel/layer-panel/layer-column-config.d.ts +20 -20
  499. package/dist/components/side-panel/layer-panel/layer-column-config.js +86 -0
  500. package/dist/components/side-panel/layer-panel/layer-config-group.d.ts +37 -37
  501. package/dist/components/side-panel/layer-panel/layer-config-group.js +209 -0
  502. package/dist/components/side-panel/layer-panel/layer-configurator.d.ts +415 -415
  503. package/dist/components/side-panel/layer-panel/layer-configurator.js +977 -0
  504. package/dist/components/side-panel/layer-panel/layer-list.d.ts +20 -20
  505. package/dist/components/side-panel/layer-panel/layer-list.js +168 -0
  506. package/dist/components/side-panel/layer-panel/layer-panel-header.d.ts +43 -43
  507. package/dist/components/side-panel/layer-panel/layer-panel-header.js +194 -0
  508. package/dist/components/side-panel/layer-panel/layer-panel.d.ts +40 -40
  509. package/dist/components/side-panel/layer-panel/layer-panel.js +161 -0
  510. package/dist/components/side-panel/layer-panel/layer-type-dropdown-list.d.ts +17 -17
  511. package/dist/components/side-panel/layer-panel/layer-type-dropdown-list.js +95 -0
  512. package/dist/components/side-panel/layer-panel/layer-type-list-item.d.ts +11 -11
  513. package/dist/components/side-panel/layer-panel/layer-type-list-item.js +75 -0
  514. package/dist/components/side-panel/layer-panel/layer-type-selector.d.ts +23 -23
  515. package/dist/components/side-panel/layer-panel/layer-type-selector.js +87 -0
  516. package/dist/components/side-panel/layer-panel/layer-visibility-by-zoom.d.ts +23 -23
  517. package/dist/components/side-panel/layer-panel/layer-visibility-by-zoom.js +106 -0
  518. package/dist/components/side-panel/layer-panel/panel-view-list-toggle.d.ts +36 -36
  519. package/dist/components/side-panel/layer-panel/panel-view-list-toggle.js +116 -0
  520. package/dist/components/side-panel/layer-panel/single-color-palette.d.ts +12 -12
  521. package/dist/components/side-panel/layer-panel/single-color-palette.js +68 -0
  522. package/dist/components/side-panel/layer-panel/text-label-panel.d.ts +18 -18
  523. package/dist/components/side-panel/layer-panel/text-label-panel.js +157 -0
  524. package/dist/components/side-panel/layer-panel/vis-config-by-field-selector.d.ts +35 -35
  525. package/dist/components/side-panel/layer-panel/vis-config-by-field-selector.js +148 -0
  526. package/dist/components/side-panel/layer-panel/vis-config-slider.d.ts +20 -20
  527. package/dist/components/side-panel/layer-panel/vis-config-slider.js +177 -0
  528. package/dist/components/side-panel/layer-panel/vis-config-switch.d.ts +16 -16
  529. package/dist/components/side-panel/layer-panel/vis-config-switch.js +73 -0
  530. package/dist/components/side-panel/map-manager.d.ts +21 -21
  531. package/dist/components/side-panel/map-manager.js +133 -0
  532. package/dist/components/side-panel/map-style-panel/map-layer-selector.d.ts +19 -19
  533. package/dist/components/side-panel/map-style-panel/map-layer-selector.js +103 -0
  534. package/dist/components/side-panel/map-style-panel/map-style-selector.d.ts +16 -16
  535. package/dist/components/side-panel/map-style-panel/map-style-selector.js +80 -0
  536. package/dist/components/side-panel/panel-dropdown.d.ts +18 -18
  537. package/dist/components/side-panel/panel-dropdown.js +71 -0
  538. package/dist/components/side-panel/panel-header-action.d.ts +20 -20
  539. package/dist/components/side-panel/panel-header-action.js +103 -0
  540. package/dist/components/side-panel/panel-header.d.ts +78 -78
  541. package/dist/components/side-panel/panel-header.js +301 -0
  542. package/dist/components/side-panel/panel-tab.d.ts +20 -20
  543. package/dist/components/side-panel/panel-tab.js +72 -0
  544. package/dist/components/side-panel/panel-title.d.ts +4 -4
  545. package/dist/components/side-panel/panel-title.js +44 -0
  546. package/dist/components/side-panel/panel-toggle.d.ts +14 -14
  547. package/dist/components/side-panel/panel-toggle.js +65 -0
  548. package/dist/components/side-panel/side-bar.d.ts +76 -76
  549. package/dist/components/side-panel/side-bar.js +140 -0
  550. package/dist/components/side-panel.d.ts +134 -134
  551. package/dist/components/side-panel.js +235 -0
  552. package/dist/components/types.d.ts +44 -44
  553. package/dist/components/types.js +6 -0
  554. package/dist/connect/keplergl-connect.d.ts +5 -5
  555. package/dist/connect/keplergl-connect.js +59 -0
  556. package/dist/connect/with-local-selector.d.ts +6 -6
  557. package/dist/connect/with-local-selector.js +102 -0
  558. package/dist/constants/action-types.d.ts +111 -111
  559. package/dist/constants/action-types.js +184 -0
  560. package/dist/constants/color-palette.d.ts +491 -491
  561. package/dist/constants/color-palette.js +536 -0
  562. package/dist/constants/color-ranges.d.ts +24 -24
  563. package/dist/constants/color-ranges.js +83 -0
  564. package/dist/constants/custom-color-ranges.d.ts +37 -37
  565. package/dist/constants/custom-color-ranges.js +410 -0
  566. package/dist/constants/default-settings.d.ts +773 -773
  567. package/dist/constants/default-settings.js +832 -0
  568. package/dist/constants/index.d.ts +9 -9
  569. package/dist/constants/index.js +387 -0
  570. package/dist/constants/keyevent.d.ts +2 -2
  571. package/dist/constants/keyevent.js +43 -0
  572. package/dist/constants/tooltip.d.ts +165 -165
  573. package/dist/constants/tooltip.js +202 -0
  574. package/dist/constants/user-feedbacks.d.ts +5 -5
  575. package/dist/constants/user-feedbacks.js +32 -0
  576. package/dist/constants/user-guides.d.ts +9 -9
  577. package/dist/constants/user-guides.js +36 -0
  578. package/dist/deckgl-layers/3d-building-layer/3d-building-layer.d.ts +13 -13
  579. package/dist/deckgl-layers/3d-building-layer/3d-building-layer.js +92 -0
  580. package/dist/deckgl-layers/3d-building-layer/3d-building-utils.d.ts +7 -7
  581. package/dist/deckgl-layers/3d-building-layer/3d-building-utils.js +181 -0
  582. package/dist/deckgl-layers/3d-building-layer/types.d.ts +37 -0
  583. package/dist/deckgl-layers/3d-building-layer/types.js +6 -0
  584. package/dist/deckgl-layers/cluster-layer/cluster-layer.js +312 -0
  585. package/dist/deckgl-layers/column-layer/enhanced-column-layer.d.ts +6 -6
  586. package/dist/deckgl-layers/column-layer/enhanced-column-layer.js +75 -0
  587. package/dist/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.d.ts +13 -13
  588. package/dist/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.js +96 -0
  589. package/dist/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.d.ts +13 -13
  590. package/dist/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.js +96 -0
  591. package/dist/deckgl-layers/layer-utils/cluster-utils.js +107 -0
  592. package/dist/deckgl-layers/layer-utils/cpu-aggregator.d.ts +91 -91
  593. package/dist/deckgl-layers/layer-utils/cpu-aggregator.js +585 -0
  594. package/dist/deckgl-layers/layer-utils/shader-utils.d.ts +1 -1
  595. package/dist/deckgl-layers/layer-utils/shader-utils.js +46 -0
  596. package/dist/deckgl-layers/line-layer/line-layer.d.ts +12 -12
  597. package/dist/deckgl-layers/line-layer/line-layer.js +106 -0
  598. package/dist/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.d.ts +8 -8
  599. package/dist/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.js +80 -0
  600. package/dist/deckgl-layers/svg-icon-layer/svg-icon-layer.d.ts +18 -18
  601. package/dist/deckgl-layers/svg-icon-layer/svg-icon-layer.js +123 -0
  602. package/dist/index.d.ts +11 -11
  603. package/dist/index.js +179 -0
  604. package/dist/layers/aggregation-layer.d.ts +70 -70
  605. package/dist/layers/aggregation-layer.js +392 -0
  606. package/dist/layers/arc-layer/arc-layer-icon.d.ts +16 -16
  607. package/dist/layers/arc-layer/arc-layer-icon.js +76 -0
  608. package/dist/layers/arc-layer/arc-layer.d.ts +143 -143
  609. package/dist/layers/arc-layer/arc-layer.js +252 -0
  610. package/dist/layers/base-layer.d.ts +436 -436
  611. package/dist/layers/base-layer.js +1703 -0
  612. package/dist/layers/cluster-layer/cluster-layer-icon.d.ts +16 -16
  613. package/dist/layers/cluster-layer/cluster-layer-icon.js +79 -0
  614. package/dist/layers/cluster-layer/cluster-layer.d.ts +39 -39
  615. package/dist/layers/cluster-layer/cluster-layer.js +139 -0
  616. package/dist/layers/default-layer-icon.d.ts +14 -14
  617. package/dist/layers/default-layer-icon.js +86 -0
  618. package/dist/layers/geojson-layer/geojson-layer-icon.d.ts +15 -15
  619. package/dist/layers/geojson-layer/geojson-layer-icon.js +90 -0
  620. package/dist/layers/geojson-layer/geojson-layer.d.ts +227 -230
  621. package/dist/layers/geojson-layer/geojson-layer.js +423 -0
  622. package/dist/layers/geojson-layer/geojson-utils.d.ts +44 -44
  623. package/dist/layers/geojson-layer/geojson-utils.js +184 -0
  624. package/dist/layers/grid-layer/grid-layer-icon.d.ts +15 -15
  625. package/dist/layers/grid-layer/grid-layer-icon.js +135 -0
  626. package/dist/layers/grid-layer/grid-layer.d.ts +74 -74
  627. package/dist/layers/grid-layer/grid-layer.js +104 -0
  628. package/dist/layers/grid-layer/grid-utils.d.ts +24 -24
  629. package/dist/layers/grid-layer/grid-utils.js +59 -0
  630. package/dist/layers/h3-hexagon-layer/h3-hexagon-layer-icon.d.ts +16 -16
  631. package/dist/layers/h3-hexagon-layer/h3-hexagon-layer-icon.js +70 -0
  632. package/dist/layers/h3-hexagon-layer/h3-hexagon-layer.d.ts +170 -170
  633. package/dist/layers/h3-hexagon-layer/h3-hexagon-layer.js +321 -0
  634. package/dist/layers/h3-hexagon-layer/h3-utils.d.ts +20 -20
  635. package/dist/layers/h3-hexagon-layer/h3-utils.js +86 -0
  636. package/dist/layers/heatmap-layer/heatmap-layer-icon.d.ts +15 -15
  637. package/dist/layers/heatmap-layer/heatmap-layer-icon.js +87 -0
  638. package/dist/layers/heatmap-layer/heatmap-layer.d.ts +144 -144
  639. package/dist/layers/heatmap-layer/heatmap-layer.js +236 -0
  640. package/dist/layers/hexagon-layer/hexagon-layer-icon.d.ts +15 -15
  641. package/dist/layers/hexagon-layer/hexagon-layer-icon.js +99 -0
  642. package/dist/layers/hexagon-layer/hexagon-layer.d.ts +78 -78
  643. package/dist/layers/hexagon-layer/hexagon-layer.js +108 -0
  644. package/dist/layers/hexagon-layer/hexagon-utils.d.ts +7 -7
  645. package/dist/layers/hexagon-layer/hexagon-utils.js +62 -0
  646. package/dist/layers/icon-layer/icon-info-modal.d.ts +3 -3
  647. package/dist/layers/icon-layer/icon-info-modal.js +115 -0
  648. package/dist/layers/icon-layer/icon-layer-icon.d.ts +15 -15
  649. package/dist/layers/icon-layer/icon-layer-icon.js +72 -0
  650. package/dist/layers/icon-layer/icon-layer.d.ts +119 -119
  651. package/dist/layers/icon-layer/icon-layer.js +366 -0
  652. package/dist/layers/index.d.ts +53 -53
  653. package/dist/layers/index.js +105 -0
  654. package/dist/layers/layer-factory.d.ts +150 -150
  655. package/dist/layers/layer-factory.js +517 -0
  656. package/dist/layers/layer-text-label.d.ts +7 -7
  657. package/dist/layers/layer-text-label.js +60 -0
  658. package/dist/layers/layer-update.d.ts +9 -9
  659. package/dist/layers/layer-update.js +73 -0
  660. package/dist/layers/line-layer/line-layer-icon.d.ts +15 -15
  661. package/dist/layers/line-layer/line-layer-icon.js +78 -0
  662. package/dist/layers/line-layer/line-layer.d.ts +136 -136
  663. package/dist/layers/line-layer/line-layer.js +191 -0
  664. package/dist/layers/mapbox-utils.d.ts +57 -57
  665. package/dist/layers/mapbox-utils.js +186 -0
  666. package/dist/layers/mapboxgl-layer.d.ts +87 -87
  667. package/dist/layers/mapboxgl-layer.js +201 -0
  668. package/dist/layers/point-layer/point-layer-icon.d.ts +15 -15
  669. package/dist/layers/point-layer/point-layer-icon.js +93 -0
  670. package/dist/layers/point-layer/point-layer.d.ts +272 -272
  671. package/dist/layers/point-layer/point-layer.js +457 -0
  672. package/dist/layers/s2-geometry-layer/s2-geometry-layer.d.ts +189 -189
  673. package/dist/layers/s2-geometry-layer/s2-geometry-layer.js +306 -0
  674. package/dist/layers/s2-geometry-layer/s2-layer-icon.d.ts +15 -15
  675. package/dist/layers/s2-geometry-layer/s2-layer-icon.js +69 -0
  676. package/dist/layers/s2-geometry-layer/s2-utils.d.ts +7 -7
  677. package/dist/layers/s2-geometry-layer/s2-utils.js +51 -0
  678. package/dist/layers/scenegraph-layer/scenegraph-info-modal.d.ts +3 -3
  679. package/dist/layers/scenegraph-layer/scenegraph-info-modal.js +54 -0
  680. package/dist/layers/scenegraph-layer/scenegraph-layer-icon.d.ts +15 -15
  681. package/dist/layers/scenegraph-layer/scenegraph-layer-icon.js +150 -0
  682. package/dist/layers/scenegraph-layer/scenegraph-layer.d.ts +80 -80
  683. package/dist/layers/scenegraph-layer/scenegraph-layer.js +230 -0
  684. package/dist/layers/trip-layer/trip-info-modal.d.ts +3 -3
  685. package/dist/layers/trip-layer/trip-info-modal.js +59 -0
  686. package/dist/layers/trip-layer/trip-layer-icon.d.ts +15 -15
  687. package/dist/layers/trip-layer/trip-layer-icon.js +88 -0
  688. package/dist/layers/trip-layer/trip-layer.d.ts +157 -157
  689. package/dist/layers/trip-layer/trip-layer.js +369 -0
  690. package/dist/layers/trip-layer/trip-utils.d.ts +31 -31
  691. package/dist/layers/trip-layer/trip-utils.js +180 -0
  692. package/dist/layers/types.d.ts +15 -15
  693. package/dist/layers/types.js +44 -0
  694. package/dist/localization/formatted-message.d.ts +12 -12
  695. package/dist/localization/formatted-message.js +39 -0
  696. package/dist/localization/index.d.ts +5 -5
  697. package/dist/localization/index.js +54 -0
  698. package/dist/localization/locales.d.ts +27 -27
  699. package/dist/localization/locales.js +59 -0
  700. package/dist/localization/messages.d.ts +4 -4
  701. package/dist/localization/messages.js +37 -0
  702. package/dist/localization/translations/ca.d.ts +438 -438
  703. package/dist/localization/translations/ca.js +466 -0
  704. package/dist/localization/translations/cn.d.ts +441 -441
  705. package/dist/localization/translations/cn.js +469 -0
  706. package/dist/localization/translations/en.d.ts +466 -466
  707. package/dist/localization/translations/en.js +494 -0
  708. package/dist/localization/translations/es.d.ts +438 -438
  709. package/dist/localization/translations/es.js +466 -0
  710. package/dist/localization/translations/fi.d.ts +410 -410
  711. package/dist/localization/translations/fi.js +438 -0
  712. package/dist/localization/translations/ja.d.ts +439 -439
  713. package/dist/localization/translations/ja.js +467 -0
  714. package/dist/localization/translations/pt.d.ts +410 -410
  715. package/dist/localization/translations/pt.js +438 -0
  716. package/dist/localization/translations/ru.d.ts +447 -447
  717. package/dist/localization/translations/ru.js +475 -0
  718. package/dist/middleware/index.d.ts +8 -8
  719. package/dist/middleware/index.js +44 -0
  720. package/dist/processors/data-processor.d.ts +242 -242
  721. package/dist/processors/data-processor.js +721 -0
  722. package/dist/processors/file-handler.d.ts +28 -28
  723. package/dist/processors/file-handler.js +357 -0
  724. package/dist/processors/index.d.ts +3 -3
  725. package/dist/processors/index.js +39 -0
  726. package/dist/processors/types.d.ts +21 -21
  727. package/dist/processors/types.js +6 -0
  728. package/dist/reducers/combined-updaters.d.ts +52 -52
  729. package/dist/reducers/combined-updaters.js +180 -0
  730. package/dist/reducers/composer-helpers.d.ts +21 -21
  731. package/dist/reducers/composer-helpers.js +111 -0
  732. package/dist/reducers/composers.d.ts +12 -12
  733. package/dist/reducers/composers.js +40 -0
  734. package/dist/reducers/core.d.ts +65 -65
  735. package/dist/reducers/core.js +119 -0
  736. package/dist/reducers/index.d.ts +19 -19
  737. package/dist/reducers/index.js +137 -0
  738. package/dist/reducers/map-state-updaters.d.ts +96 -96
  739. package/dist/reducers/map-state-updaters.js +220 -0
  740. package/dist/reducers/map-state.d.ts +4 -4
  741. package/dist/reducers/map-state.js +52 -0
  742. package/dist/reducers/map-style-updaters.d.ts +204 -204
  743. package/dist/reducers/map-style-updaters.js +473 -0
  744. package/dist/reducers/map-style.d.ts +16 -16
  745. package/dist/reducers/map-style.js +51 -0
  746. package/dist/reducers/provider-state-updaters.d.ts +41 -41
  747. package/dist/reducers/provider-state-updaters.js +421 -0
  748. package/dist/reducers/provider-state.d.ts +4 -4
  749. package/dist/reducers/provider-state.js +53 -0
  750. package/dist/reducers/root.d.ts +24 -24
  751. package/dist/reducers/root.js +212 -0
  752. package/dist/reducers/types.d.ts +16 -16
  753. package/dist/reducers/types.js +6 -0
  754. package/dist/reducers/ui-state-updaters.d.ts +433 -433
  755. package/dist/reducers/ui-state-updaters.js +744 -0
  756. package/dist/reducers/ui-state.d.ts +3 -3
  757. package/dist/reducers/ui-state.js +54 -0
  758. package/dist/reducers/vis-state-merger.d.ts +110 -110
  759. package/dist/reducers/vis-state-merger.js +569 -0
  760. package/dist/reducers/vis-state-selectors.d.ts +10 -10
  761. package/dist/reducers/vis-state-selectors.js +47 -0
  762. package/dist/reducers/vis-state-updaters.d.ts +645 -645
  763. package/dist/reducers/vis-state-updaters.js +2102 -0
  764. package/dist/reducers/vis-state.d.ts +4 -4
  765. package/dist/reducers/vis-state.js +53 -0
  766. package/dist/schemas/dataset-schema.d.ts +17 -17
  767. package/dist/schemas/dataset-schema.js +166 -0
  768. package/dist/schemas/index.d.ts +8 -8
  769. package/dist/schemas/index.js +125 -0
  770. package/dist/schemas/map-state-schema.d.ts +23 -23
  771. package/dist/schemas/map-state-schema.js +53 -0
  772. package/dist/schemas/map-style-schema.d.ts +38 -38
  773. package/dist/schemas/map-style-schema.js +106 -0
  774. package/dist/schemas/schema-manager.d.ts +271 -271
  775. package/dist/schemas/schema-manager.js +246 -0
  776. package/dist/schemas/schema-utils.d.ts +11 -11
  777. package/dist/schemas/schema-utils.js +58 -0
  778. package/dist/schemas/schema.d.ts +37 -37
  779. package/dist/schemas/schema.js +119 -0
  780. package/dist/schemas/versions.d.ts +5 -5
  781. package/dist/schemas/versions.js +34 -0
  782. package/dist/schemas/vis-state-schema.d.ts +214 -214
  783. package/dist/schemas/vis-state-schema.js +886 -0
  784. package/dist/styles/base.d.ts +1530 -1530
  785. package/dist/styles/base.js +1301 -0
  786. package/dist/styles/index.d.ts +2 -2
  787. package/dist/styles/index.js +28 -0
  788. package/dist/styles/media-breakpoints.d.ts +13 -13
  789. package/dist/styles/media-breakpoints.js +70 -0
  790. package/dist/tasks/tasks.d.ts +15 -15
  791. package/dist/tasks/tasks.js +94 -0
  792. package/dist/templates/export-map-html.d.ts +9 -9
  793. package/dist/templates/export-map-html.js +42 -0
  794. package/dist/utils/aggregate-utils.d.ts +3 -3
  795. package/dist/utils/aggregate-utils.js +71 -0
  796. package/dist/utils/color-utils.d.ts +44 -44
  797. package/dist/utils/color-utils.js +144 -0
  798. package/dist/utils/custom-scales.js +22 -0
  799. package/dist/utils/data-scale-utils.d.ts +23 -23
  800. package/dist/utils/data-scale-utils.js +70 -0
  801. package/dist/utils/data-utils.d.ts +115 -115
  802. package/dist/utils/data-utils.js +441 -0
  803. package/dist/utils/dataset-utils.d.ts +38 -38
  804. package/dist/utils/dataset-utils.js +236 -0
  805. package/dist/utils/dom-to-image.d.ts +73 -73
  806. package/dist/utils/dom-to-image.js +479 -0
  807. package/dist/utils/dom-utils.d.ts +20 -20
  808. package/dist/utils/dom-utils.js +343 -0
  809. package/dist/utils/export-utils.d.ts +56 -56
  810. package/dist/utils/export-utils.js +266 -0
  811. package/dist/utils/filter-utils.d.ts +267 -267
  812. package/dist/utils/filter-utils.js +1081 -0
  813. package/dist/utils/gl-utils.d.ts +1 -1
  814. package/dist/utils/gl-utils.js +43 -0
  815. package/dist/utils/gpu-filter-utils.d.ts +28 -28
  816. package/dist/utils/gpu-filter-utils.js +241 -0
  817. package/dist/utils/index.d.ts +22 -22
  818. package/dist/utils/index.js +361 -0
  819. package/dist/utils/interaction-utils.d.ts +36 -36
  820. package/dist/utils/interaction-utils.js +170 -0
  821. package/dist/utils/layer-utils.d.ts +54 -54
  822. package/dist/utils/layer-utils.js +200 -0
  823. package/dist/utils/locale-utils.d.ts +2 -2
  824. package/dist/utils/locale-utils.js +56 -0
  825. package/dist/utils/map-info-utils.d.ts +1 -1
  826. package/dist/utils/map-info-utils.js +31 -0
  827. package/dist/utils/map-style-utils/mapbox-gl-style-editor.d.ts +64 -64
  828. package/dist/utils/map-style-utils/mapbox-gl-style-editor.js +213 -0
  829. package/dist/utils/map-style-utils/mapbox-utils.d.ts +3 -3
  830. package/dist/utils/map-style-utils/mapbox-utils.js +33 -0
  831. package/dist/utils/mapbox-utils.d.ts +7 -7
  832. package/dist/utils/mapbox-utils.js +36 -0
  833. package/dist/utils/notifications-utils.d.ts +54 -54
  834. package/dist/utils/notifications-utils.js +90 -0
  835. package/dist/utils/observe-dimensions.d.ts +15 -15
  836. package/dist/utils/observe-dimensions.js +142 -0
  837. package/dist/utils/projection-utils.d.ts +12 -12
  838. package/dist/utils/projection-utils.js +72 -0
  839. package/dist/utils/searcher-utils.d.ts +1 -1
  840. package/dist/utils/searcher-utils.js +42 -0
  841. package/dist/utils/split-map-utils.d.ts +29 -29
  842. package/dist/utils/split-map-utils.js +112 -0
  843. package/dist/utils/table-utils/data-container-interface.d.ts +115 -115
  844. package/dist/utils/table-utils/data-container-interface.js +6 -0
  845. package/dist/utils/table-utils/data-container-utils.d.ts +29 -29
  846. package/dist/utils/table-utils/data-container-utils.js +84 -0
  847. package/dist/utils/table-utils/data-row.d.ts +59 -59
  848. package/dist/utils/table-utils/data-row.js +124 -0
  849. package/dist/utils/table-utils/index.d.ts +1 -1
  850. package/dist/utils/table-utils/index.js +19 -0
  851. package/dist/utils/table-utils/indexed-data-container.d.ts +34 -34
  852. package/dist/utils/table-utils/indexed-data-container.js +228 -0
  853. package/dist/utils/table-utils/kepler-table.d.ts +168 -168
  854. package/dist/utils/table-utils/kepler-table.js +554 -0
  855. package/dist/utils/table-utils/row-data-container.d.ts +31 -31
  856. package/dist/utils/table-utils/row-data-container.js +220 -0
  857. package/dist/utils/utils.d.ts +98 -98
  858. package/dist/utils/utils.js +240 -0
  859. package/package.json +61 -25
  860. package/src/index.ts +1 -1
  861. package/dist/bundle.js +0 -75163
  862. package/dist/bundle.js.map +0 -1
  863. package/dist/deckgl-layers/layer-utils/cluster-utils.d.ts +0 -12
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _dataUtils = require("../../utils/data-utils");
10
+ var _icons = require("../common/icons");
11
+ var _layerHoverInfo = require("./layer-hover-info");
12
+ // Copyright (c) 2022 Uber Technologies, Inc.
13
+ //
14
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
15
+ // of this software and associated documentation files (the "Software"), to deal
16
+ // in the Software without restriction, including without limitation the rights
17
+ // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
18
+ // copies of the Software, and to permit persons to whom the Software is
19
+ // furnished to do so, subject to the following conditions:
20
+ //
21
+ // The above copyright notice and this permission notice shall be included in
22
+ // all copies or substantial portions of the Software.
23
+ //
24
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
25
+ // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
26
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
27
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
28
+ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
29
+ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
30
+ // THE SOFTWARE.
31
+
32
+ // 6th decimal is worth up to 0.11 m
33
+ // https://gis.stackexchange.com/questions/8650/measuring-accuracy-of-latitude-and-longitude
34
+ var DECIMAL = 6;
35
+ var DECIMAL_Z = 1;
36
+ var CoordinateInfoFactory = function CoordinateInfoFactory() {
37
+ var CoordinateInfo = function CoordinateInfo(_ref) {
38
+ var coordinate = _ref.coordinate,
39
+ zoom = _ref.zoom;
40
+ return /*#__PURE__*/_react["default"].createElement("div", {
41
+ className: "coordingate-hover-info"
42
+ }, /*#__PURE__*/_react["default"].createElement(_layerHoverInfo.StyledLayerName, {
43
+ className: "map-popover__layer-name"
44
+ }, /*#__PURE__*/_react["default"].createElement(_icons.CursorClick, {
45
+ height: "12px"
46
+ }), "Coordinate"), /*#__PURE__*/_react["default"].createElement("table", null, /*#__PURE__*/_react["default"].createElement("tbody", null, /*#__PURE__*/_react["default"].createElement("tr", {
47
+ className: "row"
48
+ }, /*#__PURE__*/_react["default"].createElement("td", {
49
+ className: "row__value"
50
+ }, (0, _dataUtils.preciseRound)(coordinate[1], DECIMAL), ","), /*#__PURE__*/_react["default"].createElement("td", {
51
+ className: "row__value"
52
+ }, (0, _dataUtils.preciseRound)(coordinate[0], DECIMAL), ","), /*#__PURE__*/_react["default"].createElement("td", {
53
+ className: "row__value"
54
+ }, (0, _dataUtils.preciseRound)(zoom, DECIMAL_Z), "z")))));
55
+ };
56
+ return CoordinateInfo;
57
+ };
58
+ var _default = exports["default"] = CoordinateInfoFactory;
59
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9kYXRhVXRpbHMiLCJfaWNvbnMiLCJfbGF5ZXJIb3ZlckluZm8iLCJERUNJTUFMIiwiREVDSU1BTF9aIiwiQ29vcmRpbmF0ZUluZm9GYWN0b3J5IiwiQ29vcmRpbmF0ZUluZm8iLCJfcmVmIiwiY29vcmRpbmF0ZSIsInpvb20iLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwiU3R5bGVkTGF5ZXJOYW1lIiwiQ3Vyc29yQ2xpY2siLCJoZWlnaHQiLCJwcmVjaXNlUm91bmQiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tYXAvY29vcmRpbmF0ZS1pbmZvLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMjIgVWJlciBUZWNobm9sb2dpZXMsIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHtwcmVjaXNlUm91bmR9IGZyb20gJ3V0aWxzL2RhdGEtdXRpbHMnO1xuaW1wb3J0IHtDdXJzb3JDbGlja30gZnJvbSAnY29tcG9uZW50cy9jb21tb24vaWNvbnMnO1xuaW1wb3J0IHtTdHlsZWRMYXllck5hbWV9IGZyb20gJy4vbGF5ZXItaG92ZXItaW5mbyc7XG5cbi8vIDZ0aCBkZWNpbWFsIGlzIHdvcnRoIHVwIHRvIDAuMTEgbVxuLy8gaHR0cHM6Ly9naXMuc3RhY2tleGNoYW5nZS5jb20vcXVlc3Rpb25zLzg2NTAvbWVhc3VyaW5nLWFjY3VyYWN5LW9mLWxhdGl0dWRlLWFuZC1sb25naXR1ZGVcbmNvbnN0IERFQ0lNQUwgPSA2O1xuY29uc3QgREVDSU1BTF9aID0gMTtcblxuZXhwb3J0IGludGVyZmFjZSBDb29yZGluYXRlSW5mb1Byb3BzIHtcbiAgY29vcmRpbmF0ZTogbnVtYmVyW107XG4gIHpvb206IG51bWJlcjtcbn1cblxuY29uc3QgQ29vcmRpbmF0ZUluZm9GYWN0b3J5ID0gKCkgPT4ge1xuICBjb25zdCBDb29yZGluYXRlSW5mbzogUmVhY3QuRkM8Q29vcmRpbmF0ZUluZm9Qcm9wcz4gPSAoe2Nvb3JkaW5hdGUsIHpvb219KSA9PiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJjb29yZGluZ2F0ZS1ob3Zlci1pbmZvXCI+XG4gICAgICA8U3R5bGVkTGF5ZXJOYW1lIGNsYXNzTmFtZT1cIm1hcC1wb3BvdmVyX19sYXllci1uYW1lXCI+XG4gICAgICAgIDxDdXJzb3JDbGljayBoZWlnaHQ9XCIxMnB4XCIgLz5cbiAgICAgICAgQ29vcmRpbmF0ZVxuICAgICAgPC9TdHlsZWRMYXllck5hbWU+XG4gICAgICA8dGFibGU+XG4gICAgICAgIDx0Ym9keT5cbiAgICAgICAgICA8dHIgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICA8dGQgY2xhc3NOYW1lPVwicm93X192YWx1ZVwiPntwcmVjaXNlUm91bmQoY29vcmRpbmF0ZVsxXSwgREVDSU1BTCl9LDwvdGQ+XG4gICAgICAgICAgICA8dGQgY2xhc3NOYW1lPVwicm93X192YWx1ZVwiPntwcmVjaXNlUm91bmQoY29vcmRpbmF0ZVswXSwgREVDSU1BTCl9LDwvdGQ+XG4gICAgICAgICAgICA8dGQgY2xhc3NOYW1lPVwicm93X192YWx1ZVwiPntwcmVjaXNlUm91bmQoem9vbSwgREVDSU1BTF9aKX16PC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICA8L3Rib2R5PlxuICAgICAgPC90YWJsZT5cbiAgICA8L2Rpdj5cbiAgKTtcblxuICByZXR1cm4gQ29vcmRpbmF0ZUluZm87XG59O1xuXG5leHBvcnQgZGVmYXVsdCBDb29yZGluYXRlSW5mb0ZhY3Rvcnk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFvQkEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsVUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsTUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsZUFBQSxHQUFBSCxPQUFBO0FBdkJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQU9BO0FBQ0E7QUFDQSxJQUFNSSxPQUFPLEdBQUcsQ0FBQztBQUNqQixJQUFNQyxTQUFTLEdBQUcsQ0FBQztBQU9uQixJQUFNQyxxQkFBcUIsR0FBRyxTQUF4QkEscUJBQXFCQSxDQUFBLEVBQVM7RUFDbEMsSUFBTUMsY0FBNkMsR0FBRyxTQUFoREEsY0FBNkNBLENBQUFDLElBQUE7SUFBQSxJQUFLQyxVQUFVLEdBQUFELElBQUEsQ0FBVkMsVUFBVTtNQUFFQyxJQUFJLEdBQUFGLElBQUEsQ0FBSkUsSUFBSTtJQUFBLG9CQUN0RVosTUFBQSxZQUFBYSxhQUFBO01BQUtDLFNBQVMsRUFBQztJQUF3QixnQkFDckNkLE1BQUEsWUFBQWEsYUFBQSxDQUFDUixlQUFBLENBQUFVLGVBQWU7TUFBQ0QsU0FBUyxFQUFDO0lBQXlCLGdCQUNsRGQsTUFBQSxZQUFBYSxhQUFBLENBQUNULE1BQUEsQ0FBQVksV0FBVztNQUFDQyxNQUFNLEVBQUM7SUFBTSxDQUFFLENBQUMsY0FFZCxDQUFDLGVBQ2xCakIsTUFBQSxZQUFBYSxhQUFBLDZCQUNFYixNQUFBLFlBQUFhLGFBQUEsNkJBQ0ViLE1BQUEsWUFBQWEsYUFBQTtNQUFJQyxTQUFTLEVBQUM7SUFBSyxnQkFDakJkLE1BQUEsWUFBQWEsYUFBQTtNQUFJQyxTQUFTLEVBQUM7SUFBWSxHQUFFLElBQUFJLHVCQUFZLEVBQUNQLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRUwsT0FBTyxDQUFDLEVBQUMsR0FBSyxDQUFDLGVBQ3ZFTixNQUFBLFlBQUFhLGFBQUE7TUFBSUMsU0FBUyxFQUFDO0lBQVksR0FBRSxJQUFBSSx1QkFBWSxFQUFDUCxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUVMLE9BQU8sQ0FBQyxFQUFDLEdBQUssQ0FBQyxlQUN2RU4sTUFBQSxZQUFBYSxhQUFBO01BQUlDLFNBQVMsRUFBQztJQUFZLEdBQUUsSUFBQUksdUJBQVksRUFBQ04sSUFBSSxFQUFFTCxTQUFTLENBQUMsRUFBQyxHQUFLLENBQzdELENBQ0MsQ0FDRixDQUNKLENBQUM7RUFBQSxDQUNQO0VBRUQsT0FBT0UsY0FBYztBQUN2QixDQUFDO0FBQUMsSUFBQVUsUUFBQSxHQUFBQyxPQUFBLGNBRWFaLHFCQUFxQiIsImlnbm9yZUxpc3QiOltdfQ==
@@ -1,13 +1,13 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- export declare const StyledLayerName: import("styled-components").StyledComponent<"div", any, {}, never>;
4
- declare const LayerHoverInfoFactory: () => {
5
- (props: any): React.JSX.Element;
6
- propTypes: {
7
- fields: PropTypes.Requireable<any[]>;
8
- fieldsToShow: PropTypes.Requireable<any[]>;
9
- layer: PropTypes.Requireable<object>;
10
- data: PropTypes.Requireable<object>;
11
- };
12
- };
13
- export default LayerHoverInfoFactory;
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ export declare const StyledLayerName: import("styled-components").StyledComponent<"div", any, {}, never>;
4
+ declare const LayerHoverInfoFactory: () => {
5
+ (props: any): React.JSX.Element;
6
+ propTypes: {
7
+ fields: PropTypes.Requireable<any[]>;
8
+ fieldsToShow: PropTypes.Requireable<any[]>;
9
+ layer: PropTypes.Requireable<object>;
10
+ data: PropTypes.Requireable<object>;
11
+ };
12
+ };
13
+ export default LayerHoverInfoFactory;
@@ -0,0 +1,167 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = exports.StyledLayerName = void 0;
8
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
11
+ var _styledComponents2 = require("../common/styled-components");
12
+ var _icons = require("../common/icons");
13
+ var _propTypes = _interopRequireDefault(require("prop-types"));
14
+ var _dataUtils = require("../../utils/data-utils");
15
+ var _interactionUtils = require("../../utils/interaction-utils");
16
+ var _templateObject, _templateObject2; // Copyright (c) 2022 Uber Technologies, Inc.
17
+ //
18
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
19
+ // of this software and associated documentation files (the "Software"), to deal
20
+ // in the Software without restriction, including without limitation the rights
21
+ // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
22
+ // copies of the Software, and to permit persons to whom the Software is
23
+ // furnished to do so, subject to the following conditions:
24
+ //
25
+ // The above copyright notice and this permission notice shall be included in
26
+ // all copies or substantial portions of the Software.
27
+ //
28
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
29
+ // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
30
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
31
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
32
+ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
33
+ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
34
+ // THE SOFTWARE.
35
+ var StyledLayerName = exports.StyledLayerName = (0, _styledComponents["default"])(_styledComponents2.CenterFlexbox)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-size: 12px;\n letter-spacing: 0.43px;\n text-transform: capitalize;\n\n svg {\n margin-right: 4px;\n }\n"])), function (props) {
36
+ return props.theme.textColorHl;
37
+ });
38
+ var StyledTable = _styledComponents["default"].table(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n & .row__delta-value {\n text-align: right;\n\n &.positive {\n color: ", ";\n }\n\n &.negative {\n color: ", ";\n }\n }\n"])), function (props) {
39
+ return props.theme.primaryBtnBgd;
40
+ }, function (props) {
41
+ return props.theme.negativeBtnActBgd;
42
+ });
43
+ /** @type {import('./layer-hover-info').RowComponent} */
44
+ var Row = function Row(_ref) {
45
+ var name = _ref.name,
46
+ value = _ref.value,
47
+ deltaValue = _ref.deltaValue,
48
+ url = _ref.url;
49
+ // Set 'url' to 'value' if it looks like a url
50
+ if (!url && value && typeof value === 'string' && value.match(/^http/)) {
51
+ url = value;
52
+ }
53
+ var asImg = /<img>/.test(name);
54
+ return /*#__PURE__*/_react["default"].createElement("tr", {
55
+ className: "row",
56
+ key: name
57
+ }, /*#__PURE__*/_react["default"].createElement("td", {
58
+ className: "row__name"
59
+ }, name), /*#__PURE__*/_react["default"].createElement("td", {
60
+ className: "row__value"
61
+ }, asImg ? /*#__PURE__*/_react["default"].createElement("img", {
62
+ src: value
63
+ }) : url ? /*#__PURE__*/_react["default"].createElement("a", {
64
+ target: "_blank",
65
+ rel: "noopener noreferrer",
66
+ href: url
67
+ }, value) : value), (0, _dataUtils.notNullorUndefined)(deltaValue) && /*#__PURE__*/_react["default"].createElement("td", {
68
+ className: "row__delta-value ".concat(deltaValue.toString().charAt(0) === '+' ? 'positive' : 'negative')
69
+ }, deltaValue));
70
+ };
71
+ var EntryInfo = function EntryInfo(_ref2) {
72
+ var fieldsToShow = _ref2.fieldsToShow,
73
+ fields = _ref2.fields,
74
+ data = _ref2.data,
75
+ primaryData = _ref2.primaryData,
76
+ compareType = _ref2.compareType;
77
+ return /*#__PURE__*/_react["default"].createElement("tbody", null, fieldsToShow.map(function (item) {
78
+ return /*#__PURE__*/_react["default"].createElement(EntryInfoRow, {
79
+ key: item.name,
80
+ item: item,
81
+ fields: fields,
82
+ data: data,
83
+ primaryData: primaryData,
84
+ compareType: compareType
85
+ });
86
+ }));
87
+ };
88
+ var EntryInfoRow = function EntryInfoRow(_ref3) {
89
+ var item = _ref3.item,
90
+ fields = _ref3.fields,
91
+ data = _ref3.data,
92
+ primaryData = _ref3.primaryData,
93
+ compareType = _ref3.compareType;
94
+ var fieldIdx = fields.findIndex(function (f) {
95
+ return f.name === item.name;
96
+ });
97
+ if (fieldIdx < 0) {
98
+ return null;
99
+ }
100
+ var field = fields[fieldIdx];
101
+ var displayValue = (0, _interactionUtils.getTooltipDisplayValue)({
102
+ item: item,
103
+ field: field,
104
+ data: data,
105
+ fieldIdx: fieldIdx
106
+ });
107
+ var displayDeltaValue = (0, _interactionUtils.getTooltipDisplayDeltaValue)({
108
+ item: item,
109
+ field: field,
110
+ data: data,
111
+ fieldIdx: fieldIdx,
112
+ primaryData: primaryData,
113
+ compareType: compareType
114
+ });
115
+ return /*#__PURE__*/_react["default"].createElement(Row, {
116
+ name: field.displayName || field.name,
117
+ value: displayValue,
118
+ deltaValue: displayDeltaValue
119
+ });
120
+ };
121
+
122
+ // TODO: supporting comparative value for aggregated cells as well
123
+ var CellInfo = function CellInfo(_ref4) {
124
+ var data = _ref4.data,
125
+ layer = _ref4.layer;
126
+ var _layer$config = layer.config,
127
+ colorField = _layer$config.colorField,
128
+ sizeField = _layer$config.sizeField;
129
+ return /*#__PURE__*/_react["default"].createElement("tbody", null, /*#__PURE__*/_react["default"].createElement(Row, {
130
+ name: 'total points',
131
+ key: "count",
132
+ value: data.points && data.points.length
133
+ }), colorField && layer.visualChannels.color ? /*#__PURE__*/_react["default"].createElement(Row, {
134
+ name: layer.getVisualChannelDescription('color').measure,
135
+ key: "color",
136
+ value: data.colorValue || 'N/A'
137
+ }) : null, sizeField && layer.visualChannels.size ? /*#__PURE__*/_react["default"].createElement(Row, {
138
+ name: layer.getVisualChannelDescription('size').measure,
139
+ key: "size",
140
+ value: data.elevationValue || 'N/A'
141
+ }) : null);
142
+ };
143
+ var LayerHoverInfoFactory = function LayerHoverInfoFactory() {
144
+ var LayerHoverInfo = function LayerHoverInfo(props) {
145
+ var data = props.data,
146
+ layer = props.layer;
147
+ if (!data || !layer) {
148
+ return null;
149
+ }
150
+ return /*#__PURE__*/_react["default"].createElement("div", {
151
+ className: "map-popover__layer-info"
152
+ }, /*#__PURE__*/_react["default"].createElement(StyledLayerName, {
153
+ className: "map-popover__layer-name"
154
+ }, /*#__PURE__*/_react["default"].createElement(_icons.Layers, {
155
+ height: "12px"
156
+ }), props.layer.config.label), /*#__PURE__*/_react["default"].createElement(StyledTable, null, props.layer.isAggregated ? /*#__PURE__*/_react["default"].createElement(CellInfo, props) : /*#__PURE__*/_react["default"].createElement(EntryInfo, props)));
157
+ };
158
+ LayerHoverInfo.propTypes = {
159
+ fields: _propTypes["default"].arrayOf(_propTypes["default"].any),
160
+ fieldsToShow: _propTypes["default"].arrayOf(_propTypes["default"].any),
161
+ layer: _propTypes["default"].object,
162
+ data: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].any), _propTypes["default"].object])
163
+ };
164
+ return LayerHoverInfo;
165
+ };
166
+ var _default = exports["default"] = LayerHoverInfoFactory;
167
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zdHlsZWRDb21wb25lbnRzIiwiX3N0eWxlZENvbXBvbmVudHMyIiwiX2ljb25zIiwiX3Byb3BUeXBlcyIsIl9kYXRhVXRpbHMiLCJfaW50ZXJhY3Rpb25VdGlscyIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJTdHlsZWRMYXllck5hbWUiLCJleHBvcnRzIiwic3R5bGVkIiwiQ2VudGVyRmxleGJveCIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCJ0aGVtZSIsInRleHRDb2xvckhsIiwiU3R5bGVkVGFibGUiLCJ0YWJsZSIsInByaW1hcnlCdG5CZ2QiLCJuZWdhdGl2ZUJ0bkFjdEJnZCIsIlJvdyIsIl9yZWYiLCJuYW1lIiwidmFsdWUiLCJkZWx0YVZhbHVlIiwidXJsIiwibWF0Y2giLCJhc0ltZyIsInRlc3QiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwia2V5Iiwic3JjIiwidGFyZ2V0IiwicmVsIiwiaHJlZiIsIm5vdE51bGxvclVuZGVmaW5lZCIsImNvbmNhdCIsInRvU3RyaW5nIiwiY2hhckF0IiwiRW50cnlJbmZvIiwiX3JlZjIiLCJmaWVsZHNUb1Nob3ciLCJmaWVsZHMiLCJkYXRhIiwicHJpbWFyeURhdGEiLCJjb21wYXJlVHlwZSIsIm1hcCIsIml0ZW0iLCJFbnRyeUluZm9Sb3ciLCJfcmVmMyIsImZpZWxkSWR4IiwiZmluZEluZGV4IiwiZiIsImZpZWxkIiwiZGlzcGxheVZhbHVlIiwiZ2V0VG9vbHRpcERpc3BsYXlWYWx1ZSIsImRpc3BsYXlEZWx0YVZhbHVlIiwiZ2V0VG9vbHRpcERpc3BsYXlEZWx0YVZhbHVlIiwiZGlzcGxheU5hbWUiLCJDZWxsSW5mbyIsIl9yZWY0IiwibGF5ZXIiLCJfbGF5ZXIkY29uZmlnIiwiY29uZmlnIiwiY29sb3JGaWVsZCIsInNpemVGaWVsZCIsInBvaW50cyIsImxlbmd0aCIsInZpc3VhbENoYW5uZWxzIiwiY29sb3IiLCJnZXRWaXN1YWxDaGFubmVsRGVzY3JpcHRpb24iLCJtZWFzdXJlIiwiY29sb3JWYWx1ZSIsInNpemUiLCJlbGV2YXRpb25WYWx1ZSIsIkxheWVySG92ZXJJbmZvRmFjdG9yeSIsIkxheWVySG92ZXJJbmZvIiwiTGF5ZXJzIiwiaGVpZ2h0IiwibGFiZWwiLCJpc0FnZ3JlZ2F0ZWQiLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJhcnJheU9mIiwiYW55Iiwib2JqZWN0Iiwib25lT2ZUeXBlIiwiX2RlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tYXAvbGF5ZXItaG92ZXItaW5mby50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHtDZW50ZXJGbGV4Ym94fSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9zdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge0xheWVyc30gZnJvbSAnY29tcG9uZW50cy9jb21tb24vaWNvbnMnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7bm90TnVsbG9yVW5kZWZpbmVkfSBmcm9tICd1dGlscy9kYXRhLXV0aWxzJztcbmltcG9ydCB7Z2V0VG9vbHRpcERpc3BsYXlWYWx1ZSwgZ2V0VG9vbHRpcERpc3BsYXlEZWx0YVZhbHVlfSBmcm9tICd1dGlscy9pbnRlcmFjdGlvbi11dGlscyc7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRMYXllck5hbWUgPSBzdHlsZWQoQ2VudGVyRmxleGJveClgXG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsZXR0ZXItc3BhY2luZzogMC40M3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWRUYWJsZSA9IHN0eWxlZC50YWJsZWBcbiAgJiAucm93X19kZWx0YS12YWx1ZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAmLnBvc2l0aXZlIHtcbiAgICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnByaW1hcnlCdG5CZ2R9O1xuICAgIH1cblxuICAgICYubmVnYXRpdmUge1xuICAgICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubmVnYXRpdmVCdG5BY3RCZ2R9O1xuICAgIH1cbiAgfVxuYDtcblxuaW50ZXJmYWNlIFJvd1Byb3BzIHtcbiAgbmFtZTogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xuICBkZWx0YVZhbHVlPzogc3RyaW5nIHwgbnVsbDtcbiAgdXJsPzogc3RyaW5nO1xufVxuXG4vKiogQHR5cGUge2ltcG9ydCgnLi9sYXllci1ob3Zlci1pbmZvJykuUm93Q29tcG9uZW50fSAqL1xuY29uc3QgUm93OiBSZWFjdC5GQzxSb3dQcm9wcz4gPSAoe25hbWUsIHZhbHVlLCBkZWx0YVZhbHVlLCB1cmx9KSA9PiB7XG4gIC8vIFNldCAndXJsJyB0byAndmFsdWUnIGlmIGl0IGxvb2tzIGxpa2UgYSB1cmxcbiAgaWYgKCF1cmwgJiYgdmFsdWUgJiYgdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyAmJiB2YWx1ZS5tYXRjaCgvXmh0dHAvKSkge1xuICAgIHVybCA9IHZhbHVlO1xuICB9XG5cbiAgY29uc3QgYXNJbWcgPSAvPGltZz4vLnRlc3QobmFtZSk7XG4gIHJldHVybiAoXG4gICAgPHRyIGNsYXNzTmFtZT1cInJvd1wiIGtleT17bmFtZX0+XG4gICAgICA8dGQgY2xhc3NOYW1lPVwicm93X19uYW1lXCI+e25hbWV9PC90ZD5cbiAgICAgIDx0ZCBjbGFzc05hbWU9XCJyb3dfX3ZhbHVlXCI+XG4gICAgICAgIHthc0ltZyA/IChcbiAgICAgICAgICA8aW1nIHNyYz17dmFsdWV9IC8+XG4gICAgICAgICkgOiB1cmwgPyAoXG4gICAgICAgICAgPGEgdGFyZ2V0PVwiX2JsYW5rXCIgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiIGhyZWY9e3VybH0+XG4gICAgICAgICAgICB7dmFsdWV9XG4gICAgICAgICAgPC9hPlxuICAgICAgICApIDogKFxuICAgICAgICAgIHZhbHVlXG4gICAgICAgICl9XG4gICAgICA8L3RkPlxuICAgICAge25vdE51bGxvclVuZGVmaW5lZChkZWx0YVZhbHVlKSAmJiAoXG4gICAgICAgIDx0ZFxuICAgICAgICAgIGNsYXNzTmFtZT17YHJvd19fZGVsdGEtdmFsdWUgJHtcbiAgICAgICAgICAgIGRlbHRhVmFsdWUudG9TdHJpbmcoKS5jaGFyQXQoMCkgPT09ICcrJyA/ICdwb3NpdGl2ZScgOiAnbmVnYXRpdmUnXG4gICAgICAgICAgfWB9XG4gICAgICAgID5cbiAgICAgICAgICB7ZGVsdGFWYWx1ZX1cbiAgICAgICAgPC90ZD5cbiAgICAgICl9XG4gICAgPC90cj5cbiAgKTtcbn07XG5cbmNvbnN0IEVudHJ5SW5mbyA9ICh7ZmllbGRzVG9TaG93LCBmaWVsZHMsIGRhdGEsIHByaW1hcnlEYXRhLCBjb21wYXJlVHlwZX0pID0+IChcbiAgPHRib2R5PlxuICAgIHtmaWVsZHNUb1Nob3cubWFwKGl0ZW0gPT4gKFxuICAgICAgPEVudHJ5SW5mb1Jvd1xuICAgICAgICBrZXk9e2l0ZW0ubmFtZX1cbiAgICAgICAgaXRlbT17aXRlbX1cbiAgICAgICAgZmllbGRzPXtmaWVsZHN9XG4gICAgICAgIGRhdGE9e2RhdGF9XG4gICAgICAgIHByaW1hcnlEYXRhPXtwcmltYXJ5RGF0YX1cbiAgICAgICAgY29tcGFyZVR5cGU9e2NvbXBhcmVUeXBlfVxuICAgICAgLz5cbiAgICApKX1cbiAgPC90Ym9keT5cbik7XG5cbmNvbnN0IEVudHJ5SW5mb1JvdyA9ICh7aXRlbSwgZmllbGRzLCBkYXRhLCBwcmltYXJ5RGF0YSwgY29tcGFyZVR5cGV9KSA9PiB7XG4gIGNvbnN0IGZpZWxkSWR4ID0gZmllbGRzLmZpbmRJbmRleChmID0+IGYubmFtZSA9PT0gaXRlbS5uYW1lKTtcbiAgaWYgKGZpZWxkSWR4IDwgMCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIGNvbnN0IGZpZWxkID0gZmllbGRzW2ZpZWxkSWR4XTtcbiAgY29uc3QgZGlzcGxheVZhbHVlID0gZ2V0VG9vbHRpcERpc3BsYXlWYWx1ZSh7aXRlbSwgZmllbGQsIGRhdGEsIGZpZWxkSWR4fSk7XG5cbiAgY29uc3QgZGlzcGxheURlbHRhVmFsdWUgPSBnZXRUb29sdGlwRGlzcGxheURlbHRhVmFsdWUoe1xuICAgIGl0ZW0sXG4gICAgZmllbGQsXG4gICAgZGF0YSxcbiAgICBmaWVsZElkeCxcbiAgICBwcmltYXJ5RGF0YSxcbiAgICBjb21wYXJlVHlwZVxuICB9KTtcblxuICByZXR1cm4gKFxuICAgIDxSb3dcbiAgICAgIG5hbWU9e2ZpZWxkLmRpc3BsYXlOYW1lIHx8IGZpZWxkLm5hbWV9XG4gICAgICB2YWx1ZT17ZGlzcGxheVZhbHVlfVxuICAgICAgZGVsdGFWYWx1ZT17ZGlzcGxheURlbHRhVmFsdWV9XG4gICAgLz5cbiAgKTtcbn07XG5cbi8vIFRPRE86IHN1cHBvcnRpbmcgY29tcGFyYXRpdmUgdmFsdWUgZm9yIGFnZ3JlZ2F0ZWQgY2VsbHMgYXMgd2VsbFxuY29uc3QgQ2VsbEluZm8gPSAoe2RhdGEsIGxheWVyfSkgPT4ge1xuICBjb25zdCB7Y29sb3JGaWVsZCwgc2l6ZUZpZWxkfSA9IGxheWVyLmNvbmZpZztcblxuICByZXR1cm4gKFxuICAgIDx0Ym9keT5cbiAgICAgIDxSb3cgbmFtZT17J3RvdGFsIHBvaW50cyd9IGtleT1cImNvdW50XCIgdmFsdWU9e2RhdGEucG9pbnRzICYmIGRhdGEucG9pbnRzLmxlbmd0aH0gLz5cbiAgICAgIHtjb2xvckZpZWxkICYmIGxheWVyLnZpc3VhbENoYW5uZWxzLmNvbG9yID8gKFxuICAgICAgICA8Um93XG4gICAgICAgICAgbmFtZT17bGF5ZXIuZ2V0VmlzdWFsQ2hhbm5lbERlc2NyaXB0aW9uKCdjb2xvcicpLm1lYXN1cmV9XG4gICAgICAgICAga2V5PVwiY29sb3JcIlxuICAgICAgICAgIHZhbHVlPXtkYXRhLmNvbG9yVmFsdWUgfHwgJ04vQSd9XG4gICAgICAgIC8+XG4gICAgICApIDogbnVsbH1cbiAgICAgIHtzaXplRmllbGQgJiYgbGF5ZXIudmlzdWFsQ2hhbm5lbHMuc2l6ZSA/IChcbiAgICAgICAgPFJvd1xuICAgICAgICAgIG5hbWU9e2xheWVyLmdldFZpc3VhbENoYW5uZWxEZXNjcmlwdGlvbignc2l6ZScpLm1lYXN1cmV9XG4gICAgICAgICAga2V5PVwic2l6ZVwiXG4gICAgICAgICAgdmFsdWU9e2RhdGEuZWxldmF0aW9uVmFsdWUgfHwgJ04vQSd9XG4gICAgICAgIC8+XG4gICAgICApIDogbnVsbH1cbiAgICA8L3Rib2R5PlxuICApO1xufTtcblxuY29uc3QgTGF5ZXJIb3ZlckluZm9GYWN0b3J5ID0gKCkgPT4ge1xuICBjb25zdCBMYXllckhvdmVySW5mbyA9IHByb3BzID0+IHtcbiAgICBjb25zdCB7ZGF0YSwgbGF5ZXJ9ID0gcHJvcHM7XG5cbiAgICBpZiAoIWRhdGEgfHwgIWxheWVyKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJtYXAtcG9wb3Zlcl9fbGF5ZXItaW5mb1wiPlxuICAgICAgICA8U3R5bGVkTGF5ZXJOYW1lIGNsYXNzTmFtZT1cIm1hcC1wb3BvdmVyX19sYXllci1uYW1lXCI+XG4gICAgICAgICAgPExheWVycyBoZWlnaHQ9XCIxMnB4XCIgLz5cbiAgICAgICAgICB7cHJvcHMubGF5ZXIuY29uZmlnLmxhYmVsfVxuICAgICAgICA8L1N0eWxlZExheWVyTmFtZT5cbiAgICAgICAgPFN0eWxlZFRhYmxlPlxuICAgICAgICAgIHtwcm9wcy5sYXllci5pc0FnZ3JlZ2F0ZWQgPyA8Q2VsbEluZm8gey4uLnByb3BzfSAvPiA6IDxFbnRyeUluZm8gey4uLnByb3BzfSAvPn1cbiAgICAgICAgPC9TdHlsZWRUYWJsZT5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH07XG5cbiAgTGF5ZXJIb3ZlckluZm8ucHJvcFR5cGVzID0ge1xuICAgIGZpZWxkczogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLmFueSksXG4gICAgZmllbGRzVG9TaG93OiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSxcbiAgICBsYXllcjogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBkYXRhOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSwgUHJvcFR5cGVzLm9iamVjdF0pXG4gIH07XG4gIHJldHVybiBMYXllckhvdmVySW5mbztcbn07XG5cbmV4cG9ydCBkZWZhdWx0IExheWVySG92ZXJJbmZvRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFvQkEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsaUJBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLGtCQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxNQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxVQUFBLEdBQUFMLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSyxVQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxpQkFBQSxHQUFBTixPQUFBO0FBQTRGLElBQUFP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
@@ -1,22 +1,22 @@
1
- import React from 'react';
2
- import MapControlTooltipFactory from './map-control-tooltip';
3
- import MapControlPanelFactory from './map-control-panel';
4
- import { Layer } from 'layers';
5
- import { MapControls } from 'reducers';
6
- export type LayerSelectorPanelProps = {
7
- onMapToggleLayer: (layerId: string) => void;
8
- onToggleMapControl: (control: string) => void;
9
- layers: ReadonlyArray<Layer>;
10
- layersToRender: {
11
- [key: string]: boolean;
12
- };
13
- isSplit: boolean;
14
- mapControls: MapControls;
15
- readOnly: boolean;
16
- iconLayersComponent: any;
17
- };
18
- declare function LayerSelectorPanelFactory(MapControlTooltip: ReturnType<typeof MapControlTooltipFactory>, MapControlPanel: ReturnType<typeof MapControlPanelFactory>): React.NamedExoticComponent<LayerSelectorPanelProps>;
19
- declare namespace LayerSelectorPanelFactory {
20
- var deps: (typeof MapControlTooltipFactory | typeof MapControlPanelFactory)[];
21
- }
22
- export default LayerSelectorPanelFactory;
1
+ import React from 'react';
2
+ import MapControlTooltipFactory from './map-control-tooltip';
3
+ import MapControlPanelFactory from './map-control-panel';
4
+ import { Layer } from 'layers';
5
+ import { MapControls } from 'reducers';
6
+ export type LayerSelectorPanelProps = {
7
+ onMapToggleLayer: (layerId: string) => void;
8
+ onToggleMapControl: (control: string) => void;
9
+ layers: ReadonlyArray<Layer>;
10
+ layersToRender: {
11
+ [key: string]: boolean;
12
+ };
13
+ isSplit: boolean;
14
+ mapControls: MapControls;
15
+ readOnly: boolean;
16
+ iconLayersComponent: any;
17
+ };
18
+ declare function LayerSelectorPanelFactory(MapControlTooltip: ReturnType<typeof MapControlTooltipFactory>, MapControlPanel: ReturnType<typeof MapControlPanelFactory>): React.NamedExoticComponent<LayerSelectorPanelProps>;
19
+ declare namespace LayerSelectorPanelFactory {
20
+ var deps: (typeof MapControlTooltipFactory | typeof MapControlPanelFactory)[];
21
+ }
22
+ export default LayerSelectorPanelFactory;
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _react = _interopRequireWildcard(require("react"));
10
+ var _classnames = _interopRequireDefault(require("classnames"));
11
+ var _styledComponents = require("../common/styled-components");
12
+ var _icons = require("../common/icons");
13
+ var _mapLayerSelector = _interopRequireDefault(require("../common/map-layer-selector"));
14
+ var _mapControlTooltip = _interopRequireDefault(require("./map-control-tooltip"));
15
+ var _mapControlPanel = _interopRequireDefault(require("./map-control-panel"));
16
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
17
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
18
+ // Copyright (c) 2022 Uber Technologies, Inc.
19
+ //
20
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
21
+ // of this software and associated documentation files (the "Software"), to deal
22
+ // in the Software without restriction, including without limitation the rights
23
+ // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
24
+ // copies of the Software, and to permit persons to whom the Software is
25
+ // furnished to do so, subject to the following conditions:
26
+ //
27
+ // The above copyright notice and this permission notice shall be included in
28
+ // all copies or substantial portions of the Software.
29
+ //
30
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
31
+ // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
32
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
33
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
34
+ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
35
+ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
36
+ // THE SOFTWARE.
37
+
38
+ LayerSelectorPanelFactory.deps = [_mapControlTooltip["default"], _mapControlPanel["default"]];
39
+ function LayerSelectorPanelFactory(MapControlTooltip, MapControlPanel) {
40
+ /** @type {import('./layer-selector-panel').LayerSelectorPanelComponent} */
41
+ var LayerSelectorPanel = function LayerSelectorPanel(_ref) {
42
+ var onMapToggleLayer = _ref.onMapToggleLayer,
43
+ onToggleMapControl = _ref.onToggleMapControl,
44
+ layers = _ref.layers,
45
+ layersToRender = _ref.layersToRender,
46
+ isSplit = _ref.isSplit,
47
+ mapControls = _ref.mapControls,
48
+ readOnly = _ref.readOnly,
49
+ iconLayersComponent = _ref.iconLayersComponent;
50
+ var visibleLayers = (mapControls === null || mapControls === void 0 ? void 0 : mapControls.visibleLayers) || {};
51
+ var _ref2 = visibleLayers || {},
52
+ isActive = _ref2.active,
53
+ show = _ref2.show,
54
+ disableClose = _ref2.disableClose;
55
+ var legendLayers = (0, _react.useMemo)(function () {
56
+ return layers.filter(function (_ref3) {
57
+ var config = _ref3.config;
58
+ return config.isVisible;
59
+ }).map(function (_ref4) {
60
+ var id = _ref4.id,
61
+ config = _ref4.config;
62
+ return {
63
+ id: id,
64
+ name: config.label,
65
+ // layer
66
+ isVisible: layersToRender[id]
67
+ };
68
+ });
69
+ }, [layers, layersToRender]);
70
+ var isVisible = (0, _react.useMemo)(function () {
71
+ return isSplit && show && readOnly !== true;
72
+ }, [isSplit, show, readOnly]);
73
+ var onToggleMenuPanel = (0, _react.useCallback)(function (event) {
74
+ event.preventDefault();
75
+ onToggleMapControl('visibleLayers');
76
+ }, [onToggleMapControl]);
77
+ return isVisible ? !isActive ? /*#__PURE__*/_react["default"].createElement(_styledComponents.MapControlButton, {
78
+ key: 1,
79
+ onClick: onToggleMenuPanel,
80
+ className: (0, _classnames["default"])('map-control-button', 'toggle-layer', {
81
+ isActive: isActive
82
+ }),
83
+ "data-tip": true,
84
+ "data-for": "toggle-layer"
85
+ }, iconLayersComponent ? iconLayersComponent : /*#__PURE__*/_react["default"].createElement(_icons.Layers, {
86
+ height: "22px"
87
+ }), /*#__PURE__*/_react["default"].createElement(MapControlTooltip, {
88
+ id: "toggle-layer",
89
+ message: isActive ? 'tooltip.hideLayerPanel' : 'tooltip.showLayerPanel'
90
+ })) : /*#__PURE__*/_react["default"].createElement(MapControlPanel, {
91
+ header: "header.visibleLayers",
92
+ onClick: onToggleMenuPanel,
93
+ disableClose: disableClose
94
+ }, /*#__PURE__*/_react["default"].createElement(_mapLayerSelector["default"], {
95
+ layers: legendLayers,
96
+ onMapToggleLayer: onMapToggleLayer
97
+ })) : null;
98
+ };
99
+ LayerSelectorPanel.displayName = 'LayerSelectorPanel';
100
+ return /*#__PURE__*/_react["default"].memo(LayerSelectorPanel);
101
+ }
102
+ var _default = exports["default"] = LayerSelectorPanelFactory;
103
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pY29ucyIsIl9tYXBMYXllclNlbGVjdG9yIiwiX21hcENvbnRyb2xUb29sdGlwIiwiX21hcENvbnRyb2xQYW5lbCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIkxheWVyU2VsZWN0b3JQYW5lbEZhY3RvcnkiLCJkZXBzIiwiTWFwQ29udHJvbFRvb2x0aXBGYWN0b3J5IiwiTWFwQ29udHJvbFBhbmVsRmFjdG9yeSIsIk1hcENvbnRyb2xUb29sdGlwIiwiTWFwQ29udHJvbFBhbmVsIiwiTGF5ZXJTZWxlY3RvclBhbmVsIiwiX3JlZiIsIm9uTWFwVG9nZ2xlTGF5ZXIiLCJvblRvZ2dsZU1hcENvbnRyb2wiLCJsYXllcnMiLCJsYXllcnNUb1JlbmRlciIsImlzU3BsaXQiLCJtYXBDb250cm9scyIsInJlYWRPbmx5IiwiaWNvbkxheWVyc0NvbXBvbmVudCIsInZpc2libGVMYXllcnMiLCJfcmVmMiIsImlzQWN0aXZlIiwiYWN0aXZlIiwic2hvdyIsImRpc2FibGVDbG9zZSIsImxlZ2VuZExheWVycyIsInVzZU1lbW8iLCJmaWx0ZXIiLCJfcmVmMyIsImNvbmZpZyIsImlzVmlzaWJsZSIsIm1hcCIsIl9yZWY0IiwiaWQiLCJuYW1lIiwibGFiZWwiLCJvblRvZ2dsZU1lbnVQYW5lbCIsInVzZUNhbGxiYWNrIiwiZXZlbnQiLCJwcmV2ZW50RGVmYXVsdCIsImNyZWF0ZUVsZW1lbnQiLCJNYXBDb250cm9sQnV0dG9uIiwia2V5Iiwib25DbGljayIsImNsYXNzTmFtZSIsImNsYXNzbmFtZXMiLCJMYXllcnMiLCJoZWlnaHQiLCJtZXNzYWdlIiwiaGVhZGVyIiwiZGlzcGxheU5hbWUiLCJSZWFjdCIsIm1lbW8iLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tYXAvbGF5ZXItc2VsZWN0b3ItcGFuZWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge3VzZUNhbGxiYWNrLCB1c2VNZW1vfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgY2xhc3NuYW1lcyBmcm9tICdjbGFzc25hbWVzJztcblxuaW1wb3J0IHtNYXBDb250cm9sQnV0dG9ufSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9zdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge0xheWVyc30gZnJvbSAnLi4vY29tbW9uL2ljb25zJztcbmltcG9ydCBNYXBMYXllclNlbGVjdG9yIGZyb20gJy4uL2NvbW1vbi9tYXAtbGF5ZXItc2VsZWN0b3InO1xuaW1wb3J0IE1hcENvbnRyb2xUb29sdGlwRmFjdG9yeSBmcm9tICcuL21hcC1jb250cm9sLXRvb2x0aXAnO1xuaW1wb3J0IE1hcENvbnRyb2xQYW5lbEZhY3RvcnkgZnJvbSAnLi9tYXAtY29udHJvbC1wYW5lbCc7XG5pbXBvcnQge0xheWVyfSBmcm9tICdsYXllcnMnO1xuaW1wb3J0IHtNYXBDb250cm9sLCBNYXBDb250cm9sc30gZnJvbSAncmVkdWNlcnMnO1xuXG5MYXllclNlbGVjdG9yUGFuZWxGYWN0b3J5LmRlcHMgPSBbTWFwQ29udHJvbFRvb2x0aXBGYWN0b3J5LCBNYXBDb250cm9sUGFuZWxGYWN0b3J5XTtcblxuZXhwb3J0IHR5cGUgTGF5ZXJTZWxlY3RvclBhbmVsUHJvcHMgPSB7XG4gIG9uTWFwVG9nZ2xlTGF5ZXI6IChsYXllcklkOiBzdHJpbmcpID0+IHZvaWQ7XG4gIG9uVG9nZ2xlTWFwQ29udHJvbDogKGNvbnRyb2w6IHN0cmluZykgPT4gdm9pZDtcbiAgbGF5ZXJzOiBSZWFkb25seUFycmF5PExheWVyPjtcbiAgbGF5ZXJzVG9SZW5kZXI6IHtba2V5OiBzdHJpbmddOiBib29sZWFufTtcbiAgaXNTcGxpdDogYm9vbGVhbjtcbiAgbWFwQ29udHJvbHM6IE1hcENvbnRyb2xzO1xuICByZWFkT25seTogYm9vbGVhbjtcbiAgaWNvbkxheWVyc0NvbXBvbmVudDogYW55O1xufTtcblxuZnVuY3Rpb24gTGF5ZXJTZWxlY3RvclBhbmVsRmFjdG9yeShcbiAgTWFwQ29udHJvbFRvb2x0aXA6IFJldHVyblR5cGU8dHlwZW9mIE1hcENvbnRyb2xUb29sdGlwRmFjdG9yeT4sXG4gIE1hcENvbnRyb2xQYW5lbDogUmV0dXJuVHlwZTx0eXBlb2YgTWFwQ29udHJvbFBhbmVsRmFjdG9yeT5cbikge1xuICAvKiogQHR5cGUge2ltcG9ydCgnLi9sYXllci1zZWxlY3Rvci1wYW5lbCcpLkxheWVyU2VsZWN0b3JQYW5lbENvbXBvbmVudH0gKi9cbiAgY29uc3QgTGF5ZXJTZWxlY3RvclBhbmVsOiBSZWFjdC5GQzxMYXllclNlbGVjdG9yUGFuZWxQcm9wcz4gPSAoe1xuICAgIG9uTWFwVG9nZ2xlTGF5ZXIsXG4gICAgb25Ub2dnbGVNYXBDb250cm9sLFxuICAgIGxheWVycyxcbiAgICBsYXllcnNUb1JlbmRlcixcbiAgICBpc1NwbGl0LFxuICAgIG1hcENvbnRyb2xzLFxuICAgIHJlYWRPbmx5LFxuICAgIGljb25MYXllcnNDb21wb25lbnRcbiAgfSkgPT4ge1xuICAgIGNvbnN0IHZpc2libGVMYXllcnMgPSBtYXBDb250cm9scz8udmlzaWJsZUxheWVycyB8fCAoe30gYXMgTWFwQ29udHJvbCk7XG4gICAgY29uc3Qge2FjdGl2ZTogaXNBY3RpdmUsIHNob3csIGRpc2FibGVDbG9zZX0gPSB2aXNpYmxlTGF5ZXJzIHx8IHt9O1xuXG4gICAgY29uc3QgbGVnZW5kTGF5ZXJzID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGxheWVyc1xuICAgICAgICAgIC5maWx0ZXIoKHtjb25maWd9KSA9PiBjb25maWcuaXNWaXNpYmxlKVxuICAgICAgICAgIC5tYXAoKHtpZCwgY29uZmlnfSkgPT4gKHtcbiAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgbmFtZTogY29uZmlnLmxhYmVsLFxuICAgICAgICAgICAgLy8gbGF5ZXJcbiAgICAgICAgICAgIGlzVmlzaWJsZTogbGF5ZXJzVG9SZW5kZXJbaWRdXG4gICAgICAgICAgfSkpLFxuICAgICAgW2xheWVycywgbGF5ZXJzVG9SZW5kZXJdXG4gICAgKTtcblxuICAgIGNvbnN0IGlzVmlzaWJsZSA9IHVzZU1lbW8oKCkgPT4gaXNTcGxpdCAmJiBzaG93ICYmIHJlYWRPbmx5ICE9PSB0cnVlLCBbXG4gICAgICBpc1NwbGl0LFxuICAgICAgc2hvdyxcbiAgICAgIHJlYWRPbmx5XG4gICAgXSk7XG5cbiAgICBjb25zdCBvblRvZ2dsZU1lbnVQYW5lbCA9IHVzZUNhbGxiYWNrKFxuICAgICAgZXZlbnQgPT4ge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBvblRvZ2dsZU1hcENvbnRyb2woJ3Zpc2libGVMYXllcnMnKTtcbiAgICAgIH0sXG4gICAgICBbb25Ub2dnbGVNYXBDb250cm9sXVxuICAgICk7XG5cbiAgICByZXR1cm4gaXNWaXNpYmxlID8gKFxuICAgICAgIWlzQWN0aXZlID8gKFxuICAgICAgICA8TWFwQ29udHJvbEJ1dHRvblxuICAgICAgICAgIGtleT17MX1cbiAgICAgICAgICBvbkNsaWNrPXtvblRvZ2dsZU1lbnVQYW5lbH1cbiAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzbmFtZXMoJ21hcC1jb250cm9sLWJ1dHRvbicsICd0b2dnbGUtbGF5ZXInLCB7aXNBY3RpdmV9KX1cbiAgICAgICAgICBkYXRhLXRpcFxuICAgICAgICAgIGRhdGEtZm9yPVwidG9nZ2xlLWxheWVyXCJcbiAgICAgICAgPlxuICAgICAgICAgIHtpY29uTGF5ZXJzQ29tcG9uZW50ID8gaWNvbkxheWVyc0NvbXBvbmVudCA6IDxMYXllcnMgaGVpZ2h0PVwiMjJweFwiIC8+fVxuICAgICAgICAgIDxNYXBDb250cm9sVG9vbHRpcFxuICAgICAgICAgICAgaWQ9XCJ0b2dnbGUtbGF5ZXJcIlxuICAgICAgICAgICAgbWVzc2FnZT17aXNBY3RpdmUgPyAndG9vbHRpcC5oaWRlTGF5ZXJQYW5lbCcgOiAndG9vbHRpcC5zaG93TGF5ZXJQYW5lbCd9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9NYXBDb250cm9sQnV0dG9uPlxuICAgICAgKSA6IChcbiAgICAgICAgPE1hcENvbnRyb2xQYW5lbFxuICAgICAgICAgIGhlYWRlcj1cImhlYWRlci52aXNpYmxlTGF5ZXJzXCJcbiAgICAgICAgICBvbkNsaWNrPXtvblRvZ2dsZU1lbnVQYW5lbH1cbiAgICAgICAgICBkaXNhYmxlQ2xvc2U9e2Rpc2FibGVDbG9zZX1cbiAgICAgICAgPlxuICAgICAgICAgIDxNYXBMYXllclNlbGVjdG9yIGxheWVycz17bGVnZW5kTGF5ZXJzfSBvbk1hcFRvZ2dsZUxheWVyPXtvbk1hcFRvZ2dsZUxheWVyfSAvPlxuICAgICAgICA8L01hcENvbnRyb2xQYW5lbD5cbiAgICAgIClcbiAgICApIDogbnVsbDtcbiAgfTtcblxuICBMYXllclNlbGVjdG9yUGFuZWwuZGlzcGxheU5hbWUgPSAnTGF5ZXJTZWxlY3RvclBhbmVsJztcblxuICByZXR1cm4gUmVhY3QubWVtbyhMYXllclNlbGVjdG9yUGFuZWwpO1xufVxuXG5leHBvcnQgZGVmYXVsdCBMYXllclNlbGVjdG9yUGFuZWxGYWN0b3J5O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQW9CQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFFQSxJQUFBRyxpQkFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssaUJBQUEsR0FBQUgsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFNLGtCQUFBLEdBQUFKLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBTyxnQkFBQSxHQUFBTCxzQkFBQSxDQUFBRixPQUFBO0FBQXlELFNBQUFRLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBVix3QkFBQVUsQ0FBQSxFQUFBRSxDQUFBLFNBQUFBLENBQUEsSUFBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFVBQUEsU0FBQUosQ0FBQSxlQUFBQSxDQUFBLGdCQUFBSyxPQUFBLENBQUFMLENBQUEsMEJBQUFBLENBQUEsc0JBQUFBLENBQUEsUUFBQUcsQ0FBQSxHQUFBSix3QkFBQSxDQUFBRyxDQUFBLE9BQUFDLENBQUEsSUFBQUEsQ0FBQSxDQUFBRyxHQUFBLENBQUFOLENBQUEsVUFBQUcsQ0FBQSxDQUFBSSxHQUFBLENBQUFQLENBQUEsT0FBQVEsQ0FBQSxLQUFBQyxTQUFBLFVBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxjQUFBLElBQUFELE1BQUEsQ0FBQUUsd0JBQUEsV0FBQUMsQ0FBQSxJQUFBZCxDQUFBLG9CQUFBYyxDQUFBLE9BQUFDLGNBQUEsQ0FBQUMs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
@@ -1,16 +1,16 @@
1
- import React from 'react';
2
- import MapControlTooltipFactory from './map-control-tooltip';
3
- import MapControlToolbarFactory from './map-control-toolbar';
4
- import { MapControls } from 'reducers';
5
- export type LocalePanelProps = {
6
- availableLocales: ReadonlyArray<string>;
7
- onSetLocale: (locale: string) => void;
8
- locale: string;
9
- onToggleMapControl: (control: string) => void;
10
- mapControls: MapControls;
11
- };
12
- declare function LocalePanelFactory(MapControlTooltip: ReturnType<typeof MapControlTooltipFactory>, MapControlToolbar: ReturnType<typeof MapControlToolbarFactory>): React.FC<LocalePanelProps>;
13
- declare namespace LocalePanelFactory {
14
- var deps: (typeof MapControlTooltipFactory | typeof MapControlToolbarFactory)[];
15
- }
16
- export default LocalePanelFactory;
1
+ import React from 'react';
2
+ import MapControlTooltipFactory from './map-control-tooltip';
3
+ import MapControlToolbarFactory from './map-control-toolbar';
4
+ import { MapControls } from 'reducers';
5
+ export type LocalePanelProps = {
6
+ availableLocales: ReadonlyArray<string>;
7
+ onSetLocale: (locale: string) => void;
8
+ locale: string;
9
+ onToggleMapControl: (control: string) => void;
10
+ mapControls: MapControls;
11
+ };
12
+ declare function LocalePanelFactory(MapControlTooltip: ReturnType<typeof MapControlTooltipFactory>, MapControlToolbar: ReturnType<typeof MapControlToolbarFactory>): React.FC<LocalePanelProps>;
13
+ declare namespace LocalePanelFactory {
14
+ var deps: (typeof MapControlTooltipFactory | typeof MapControlToolbarFactory)[];
15
+ }
16
+ export default LocalePanelFactory;
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _react = _interopRequireWildcard(require("react"));
10
+ var _classnames = _interopRequireDefault(require("classnames"));
11
+ var _toolbarItem = _interopRequireDefault(require("../common/toolbar-item"));
12
+ var _styledComponents = require("../common/styled-components");
13
+ var _mapControlTooltip = _interopRequireDefault(require("./map-control-tooltip"));
14
+ var _mapControlToolbar = _interopRequireDefault(require("./map-control-toolbar"));
15
+ var _localization = require("../../localization");
16
+ var _tippyTooltip = _interopRequireDefault(require("../common/tippy-tooltip"));
17
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
19
+ // Copyright (c) 2022 Uber Technologies, Inc.
20
+ //
21
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
22
+ // of this software and associated documentation files (the "Software"), to deal
23
+ // in the Software without restriction, including without limitation the rights
24
+ // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
25
+ // copies of the Software, and to permit persons to whom the Software is
26
+ // furnished to do so, subject to the following conditions:
27
+ //
28
+ // The above copyright notice and this permission notice shall be included in
29
+ // all copies or substantial portions of the Software.
30
+ //
31
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
32
+ // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
33
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
34
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
35
+ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
36
+ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
37
+ // THE SOFTWARE.
38
+
39
+ LocalePanelFactory.deps = [_mapControlTooltip["default"], _mapControlToolbar["default"]];
40
+ function LocalePanelFactory(MapControlTooltip, MapControlToolbar) {
41
+ /** @type {import('./locale-panel').LocalePanelComponent} */
42
+ var LocalePanel = /*#__PURE__*/_react["default"].memo(function (_ref) {
43
+ var availableLocales = _ref.availableLocales,
44
+ onToggleMapControl = _ref.onToggleMapControl,
45
+ onSetLocale = _ref.onSetLocale,
46
+ currentLocal = _ref.locale,
47
+ mapControls = _ref.mapControls;
48
+ var _ref2 = mapControls.mapLocale || {},
49
+ isActive = _ref2.active,
50
+ show = _ref2.show;
51
+ var onClickItem = (0, _react.useCallback)(function (locale) {
52
+ onSetLocale(locale);
53
+ }, [onSetLocale]);
54
+ var onClickButton = (0, _react.useCallback)(function (e) {
55
+ e.preventDefault();
56
+ onToggleMapControl('mapLocale');
57
+ }, [onToggleMapControl]);
58
+ var getLabel = (0, _react.useCallback)(function (locale) {
59
+ return "toolbar.".concat(locale);
60
+ }, []);
61
+ if (!show) {
62
+ return null;
63
+ }
64
+ return /*#__PURE__*/_react["default"].createElement("div", {
65
+ className: "map-locale-controls",
66
+ style: {
67
+ position: 'relative'
68
+ }
69
+ }, isActive ? /*#__PURE__*/_react["default"].createElement(MapControlToolbar, {
70
+ show: isActive
71
+ }, availableLocales.map(function (locale) {
72
+ return /*#__PURE__*/_react["default"].createElement(_toolbarItem["default"], {
73
+ key: locale,
74
+ onClick: function onClick() {
75
+ return onClickItem(locale);
76
+ },
77
+ label: getLabel(locale),
78
+ active: currentLocal === locale
79
+ });
80
+ })) : null, /*#__PURE__*/_react["default"].createElement(_tippyTooltip["default"], {
81
+ placement: "left",
82
+ render: function render() {
83
+ return /*#__PURE__*/_react["default"].createElement("div", {
84
+ id: "locale"
85
+ }, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
86
+ id: "tooltip.selectLocale"
87
+ }));
88
+ }
89
+ }, /*#__PURE__*/_react["default"].createElement(_styledComponents.MapControlButton, {
90
+ className: (0, _classnames["default"])('map-control-button', 'map-locale', {
91
+ isActive: isActive
92
+ }),
93
+ onClick: onClickButton,
94
+ active: isActive
95
+ }, /*#__PURE__*/_react["default"].createElement("span", {
96
+ className: "map-control-button__locale"
97
+ }, currentLocal.toUpperCase()))));
98
+ });
99
+ LocalePanel.displayName = 'LocalePanel';
100
+ return LocalePanel;
101
+ }
102
+ var _default = exports["default"] = LocalePanelFactory;
103
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfdG9vbGJhckl0ZW0iLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9tYXBDb250cm9sVG9vbHRpcCIsIl9tYXBDb250cm9sVG9vbGJhciIsIl9sb2NhbGl6YXRpb24iLCJfdGlwcHlUb29sdGlwIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiTG9jYWxlUGFuZWxGYWN0b3J5IiwiZGVwcyIsIk1hcENvbnRyb2xUb29sdGlwRmFjdG9yeSIsIk1hcENvbnRyb2xUb29sYmFyRmFjdG9yeSIsIk1hcENvbnRyb2xUb29sdGlwIiwiTWFwQ29udHJvbFRvb2xiYXIiLCJMb2NhbGVQYW5lbCIsIlJlYWN0IiwibWVtbyIsIl9yZWYiLCJhdmFpbGFibGVMb2NhbGVzIiwib25Ub2dnbGVNYXBDb250cm9sIiwib25TZXRMb2NhbGUiLCJjdXJyZW50TG9jYWwiLCJsb2NhbGUiLCJtYXBDb250cm9scyIsIl9yZWYyIiwibWFwTG9jYWxlIiwiaXNBY3RpdmUiLCJhY3RpdmUiLCJzaG93Iiwib25DbGlja0l0ZW0iLCJ1c2VDYWxsYmFjayIsIm9uQ2xpY2tCdXR0b24iLCJwcmV2ZW50RGVmYXVsdCIsImdldExhYmVsIiwiY29uY2F0IiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsInN0eWxlIiwicG9zaXRpb24iLCJtYXAiLCJrZXkiLCJvbkNsaWNrIiwibGFiZWwiLCJwbGFjZW1lbnQiLCJyZW5kZXIiLCJpZCIsIkZvcm1hdHRlZE1lc3NhZ2UiLCJNYXBDb250cm9sQnV0dG9uIiwiY2xhc3NuYW1lcyIsInRvVXBwZXJDYXNlIiwiZGlzcGxheU5hbWUiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tYXAvbG9jYWxlLXBhbmVsLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMjIgVWJlciBUZWNobm9sb2dpZXMsIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5pbXBvcnQgUmVhY3QsIHt1c2VDYWxsYmFja30gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGNsYXNzbmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5cbmltcG9ydCBUb29sYmFySXRlbSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi90b29sYmFyLWl0ZW0nO1xuaW1wb3J0IHtNYXBDb250cm9sQnV0dG9ufSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9zdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgTWFwQ29udHJvbFRvb2x0aXBGYWN0b3J5IGZyb20gJy4vbWFwLWNvbnRyb2wtdG9vbHRpcCc7XG5pbXBvcnQgTWFwQ29udHJvbFRvb2xiYXJGYWN0b3J5IGZyb20gJy4vbWFwLWNvbnRyb2wtdG9vbGJhcic7XG5pbXBvcnQge0Zvcm1hdHRlZE1lc3NhZ2V9IGZyb20gJy4uLy4uL2xvY2FsaXphdGlvbic7XG5pbXBvcnQgVGlwcHlUb29sdGlwIGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL3RpcHB5LXRvb2x0aXAnO1xuaW1wb3J0IHtNYXBDb250cm9sc30gZnJvbSAncmVkdWNlcnMnO1xuXG5Mb2NhbGVQYW5lbEZhY3RvcnkuZGVwcyA9IFtNYXBDb250cm9sVG9vbHRpcEZhY3RvcnksIE1hcENvbnRyb2xUb29sYmFyRmFjdG9yeV07XG5cbmV4cG9ydCB0eXBlIExvY2FsZVBhbmVsUHJvcHMgPSB7XG4gIGF2YWlsYWJsZUxvY2FsZXM6IFJlYWRvbmx5QXJyYXk8c3RyaW5nPjtcbiAgb25TZXRMb2NhbGU6IChsb2NhbGU6IHN0cmluZykgPT4gdm9pZDtcbiAgbG9jYWxlOiBzdHJpbmc7XG4gIG9uVG9nZ2xlTWFwQ29udHJvbDogKGNvbnRyb2w6IHN0cmluZykgPT4gdm9pZDtcbiAgbWFwQ29udHJvbHM6IE1hcENvbnRyb2xzO1xufTtcblxuZnVuY3Rpb24gTG9jYWxlUGFuZWxGYWN0b3J5KFxuICBNYXBDb250cm9sVG9vbHRpcDogUmV0dXJuVHlwZTx0eXBlb2YgTWFwQ29udHJvbFRvb2x0aXBGYWN0b3J5PixcbiAgTWFwQ29udHJvbFRvb2xiYXI6IFJldHVyblR5cGU8dHlwZW9mIE1hcENvbnRyb2xUb29sYmFyRmFjdG9yeT5cbikge1xuICAvKiogQHR5cGUge2ltcG9ydCgnLi9sb2NhbGUtcGFuZWwnKS5Mb2NhbGVQYW5lbENvbXBvbmVudH0gKi9cbiAgY29uc3QgTG9jYWxlUGFuZWw6IFJlYWN0LkZDPExvY2FsZVBhbmVsUHJvcHM+ID0gUmVhY3QubWVtbyhcbiAgICAoe2F2YWlsYWJsZUxvY2FsZXMsIG9uVG9nZ2xlTWFwQ29udHJvbCwgb25TZXRMb2NhbGUsIGxvY2FsZTogY3VycmVudExvY2FsLCBtYXBDb250cm9sc30pID0+IHtcbiAgICAgIGNvbnN0IHthY3RpdmU6IGlzQWN0aXZlLCBzaG93fSA9IG1hcENvbnRyb2xzLm1hcExvY2FsZSB8fCB7fTtcblxuICAgICAgY29uc3Qgb25DbGlja0l0ZW0gPSB1c2VDYWxsYmFjayhcbiAgICAgICAgbG9jYWxlID0+IHtcbiAgICAgICAgICBvblNldExvY2FsZShsb2NhbGUpO1xuICAgICAgICB9LFxuICAgICAgICBbb25TZXRMb2NhbGVdXG4gICAgICApO1xuXG4gICAgICBjb25zdCBvbkNsaWNrQnV0dG9uID0gdXNlQ2FsbGJhY2soXG4gICAgICAgIGUgPT4ge1xuICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICBvblRvZ2dsZU1hcENvbnRyb2woJ21hcExvY2FsZScpO1xuICAgICAgICB9LFxuICAgICAgICBbb25Ub2dnbGVNYXBDb250cm9sXVxuICAgICAgKTtcbiAgICAgIGNvbnN0IGdldExhYmVsID0gdXNlQ2FsbGJhY2sobG9jYWxlID0+IGB0b29sYmFyLiR7bG9jYWxlfWAsIFtdKTtcblxuICAgICAgaWYgKCFzaG93KSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtYXAtbG9jYWxlLWNvbnRyb2xzXCIgc3R5bGU9e3twb3NpdGlvbjogJ3JlbGF0aXZlJ319PlxuICAgICAgICAgIHtpc0FjdGl2ZSA/IChcbiAgICAgICAgICAgIDxNYXBDb250cm9sVG9vbGJhciBzaG93PXtpc0FjdGl2ZX0+XG4gICAgICAgICAgICAgIHthdmFpbGFibGVMb2NhbGVzLm1hcChsb2NhbGUgPT4gKFxuICAgICAgICAgICAgICAgIDxUb29sYmFySXRlbVxuICAgICAgICAgICAgICAgICAga2V5PXtsb2NhbGV9XG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNsaWNrSXRlbShsb2NhbGUpfVxuICAgICAgICAgICAgICAgICAgbGFiZWw9e2dldExhYmVsKGxvY2FsZSl9XG4gICAgICAgICAgICAgICAgICBhY3RpdmU9e2N1cnJlbnRMb2NhbCA9PT0gbG9jYWxlfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9NYXBDb250cm9sVG9vbGJhcj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICA8VGlwcHlUb29sdGlwXG4gICAgICAgICAgICBwbGFjZW1lbnQ9XCJsZWZ0XCJcbiAgICAgICAgICAgIHJlbmRlcj17KCkgPT4gKFxuICAgICAgICAgICAgICA8ZGl2IGlkPVwibG9jYWxlXCI+XG4gICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJ0b29sdGlwLnNlbGVjdExvY2FsZVwiIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8TWFwQ29udHJvbEJ1dHRvblxuICAgICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzbmFtZXMoJ21hcC1jb250cm9sLWJ1dHRvbicsICdtYXAtbG9jYWxlJywge2lzQWN0aXZlfSl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ2xpY2tCdXR0b259XG4gICAgICAgICAgICAgIGFjdGl2ZT17aXNBY3RpdmV9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cIm1hcC1jb250cm9sLWJ1dHRvbl9fbG9jYWxlXCI+e2N1cnJlbnRMb2NhbC50b1VwcGVyQ2FzZSgpfTwvc3Bhbj5cbiAgICAgICAgICAgIDwvTWFwQ29udHJvbEJ1dHRvbj5cbiAgICAgICAgICA8L1RpcHB5VG9vbHRpcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgKTtcblxuICBMb2NhbGVQYW5lbC5kaXNwbGF5TmFtZSA9ICdMb2NhbGVQYW5lbCc7XG5cbiAgcmV0dXJuIExvY2FsZVBhbmVsO1xufVxuXG5leHBvcnQgZGVmYXVsdCBMb2NhbGVQYW5lbEZhY3Rvcnk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBb0JBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFdBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUVBLElBQUFHLFlBQUEsR0FBQUQsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFJLGlCQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxrQkFBQSxHQUFB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