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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (530) hide show
  1. package/dist/bottom-widget.d.ts +11 -38
  2. package/dist/bottom-widget.js +43 -99
  3. package/dist/common/action-panel.d.ts +2 -2
  4. package/dist/common/action-panel.js +4 -4
  5. package/dist/common/animation-control/animation-control.d.ts +19 -18
  6. package/dist/common/animation-control/animation-control.js +59 -81
  7. package/dist/common/animation-control/animation-controller.d.ts +6 -2
  8. package/dist/common/animation-control/animation-controller.js +50 -36
  9. package/dist/common/animation-control/animation-speed-slider.js +2 -2
  10. package/dist/common/animation-control/animation-window-control.js +1 -1
  11. package/dist/common/animation-control/floating-time-display.d.ts +2 -2
  12. package/dist/common/animation-control/floating-time-display.js +2 -2
  13. package/dist/common/animation-control/play-control.d.ts +2 -2
  14. package/dist/common/animation-control/play-control.js +1 -1
  15. package/dist/common/animation-control/playback-controls.d.ts +7 -7
  16. package/dist/common/animation-control/playback-controls.js +6 -6
  17. package/dist/common/animation-control/reset-control.d.ts +2 -2
  18. package/dist/common/animation-control/reset-control.js +1 -1
  19. package/dist/common/animation-control/speed-control.d.ts +2 -2
  20. package/dist/common/animation-control/speed-control.js +2 -2
  21. package/dist/common/animation-control/window-action-control.d.ts +2 -2
  22. package/dist/common/animation-control/window-action-control.js +1 -1
  23. package/dist/common/checkbox.d.ts +2 -2
  24. package/dist/common/checkbox.js +3 -3
  25. package/dist/common/color-legend.d.ts +3 -3
  26. package/dist/common/color-legend.js +11 -17
  27. package/dist/common/data-table/button.d.ts +1 -1
  28. package/dist/common/data-table/button.js +2 -2
  29. package/dist/common/data-table/canvas.js +2 -2
  30. package/dist/common/data-table/cell-size.js +44 -13
  31. package/dist/common/data-table/display-format.d.ts +25 -0
  32. package/dist/common/data-table/display-format.js +169 -0
  33. package/dist/common/data-table/grid.d.ts +5 -2
  34. package/dist/common/data-table/grid.js +45 -5
  35. package/dist/common/data-table/header-cell.d.ts +4 -1
  36. package/dist/common/data-table/header-cell.js +66 -29
  37. package/dist/common/data-table/index.d.ts +27 -34
  38. package/dist/common/data-table/index.js +148 -62
  39. package/dist/common/data-table/option-dropdown.d.ts +17 -3
  40. package/dist/common/data-table/option-dropdown.js +86 -13
  41. package/dist/common/dataset-label.d.ts +2 -2
  42. package/dist/common/dataset-label.js +3 -3
  43. package/dist/common/error-boundary.d.ts +6 -2
  44. package/dist/common/error-boundary.js +2 -2
  45. package/dist/common/field-selector.d.ts +9 -3
  46. package/dist/common/field-selector.js +3 -3
  47. package/dist/common/field-token.d.ts +8 -0
  48. package/dist/common/field-token.js +7 -3
  49. package/dist/common/file-uploader/file-drop.d.ts +3 -2
  50. package/dist/common/file-uploader/file-drop.js +2 -2
  51. package/dist/common/file-uploader/file-upload-progress.js +2 -2
  52. package/dist/common/file-uploader/file-upload.d.ts +2 -6
  53. package/dist/common/file-uploader/file-upload.js +2 -2
  54. package/dist/common/file-uploader/upload-button.d.ts +1 -0
  55. package/dist/common/file-uploader/upload-button.js +2 -2
  56. package/dist/common/histogram-plot.d.ts +2 -2
  57. package/dist/common/histogram-plot.js +18 -12
  58. package/dist/common/icon-button.d.ts +2 -1
  59. package/dist/common/icon-button.js +2 -2
  60. package/dist/common/icons/add.d.ts +2 -2
  61. package/dist/common/icons/add.js +2 -2
  62. package/dist/common/icons/anchor_window.d.ts +2 -2
  63. package/dist/common/icons/anchor_window.js +2 -2
  64. package/dist/common/icons/arrow-down-alt.d.ts +2 -2
  65. package/dist/common/icons/arrow-down-alt.js +2 -2
  66. package/dist/common/icons/arrow-down-solid.d.ts +2 -2
  67. package/dist/common/icons/arrow-down-solid.js +2 -2
  68. package/dist/common/icons/arrow-down.d.ts +2 -2
  69. package/dist/common/icons/arrow-down.js +2 -2
  70. package/dist/common/icons/arrow-left.d.ts +2 -2
  71. package/dist/common/icons/arrow-left.js +2 -2
  72. package/dist/common/icons/arrow-right.d.ts +2 -2
  73. package/dist/common/icons/arrow-right.js +2 -2
  74. package/dist/common/icons/arrow-up-alt.d.ts +2 -2
  75. package/dist/common/icons/arrow-up-alt.js +2 -2
  76. package/dist/common/icons/arrow-up-solid.d.ts +2 -2
  77. package/dist/common/icons/arrow-up-solid.js +2 -2
  78. package/dist/common/icons/arrow-up.d.ts +2 -2
  79. package/dist/common/icons/arrow-up.js +2 -2
  80. package/dist/common/icons/base.d.ts +1 -1
  81. package/dist/common/icons/base.js +2 -2
  82. package/dist/common/icons/bug.d.ts +2 -2
  83. package/dist/common/icons/bug.js +2 -2
  84. package/dist/common/icons/cancel.d.ts +2 -2
  85. package/dist/common/icons/cancel.js +2 -2
  86. package/dist/common/icons/checkmark.d.ts +2 -2
  87. package/dist/common/icons/checkmark.js +2 -2
  88. package/dist/common/icons/clipboard.d.ts +2 -2
  89. package/dist/common/icons/clipboard.js +2 -2
  90. package/dist/common/icons/clock.d.ts +2 -2
  91. package/dist/common/icons/clock.js +2 -2
  92. package/dist/common/icons/close.d.ts +2 -2
  93. package/dist/common/icons/close.js +2 -2
  94. package/dist/common/icons/code-alt.d.ts +2 -2
  95. package/dist/common/icons/code-alt.js +2 -2
  96. package/dist/common/icons/copy.d.ts +2 -2
  97. package/dist/common/icons/copy.js +2 -2
  98. package/dist/common/icons/crosshairs.d.ts +2 -2
  99. package/dist/common/icons/crosshairs.js +2 -2
  100. package/dist/common/icons/cube-3d.d.ts +2 -2
  101. package/dist/common/icons/cube-3d.js +2 -2
  102. package/dist/common/icons/cursor-click.d.ts +2 -2
  103. package/dist/common/icons/cursor-click.js +2 -2
  104. package/dist/common/icons/cursor-point.d.ts +14 -0
  105. package/dist/common/icons/cursor-point.js +89 -0
  106. package/dist/common/icons/data-table.d.ts +2 -2
  107. package/dist/common/icons/data-table.js +2 -2
  108. package/dist/common/icons/db.d.ts +2 -2
  109. package/dist/common/icons/db.js +2 -2
  110. package/dist/common/icons/delete.d.ts +2 -2
  111. package/dist/common/icons/delete.js +2 -2
  112. package/dist/common/icons/docs.d.ts +2 -2
  113. package/dist/common/icons/docs.js +2 -2
  114. package/dist/common/icons/drag-n-drop.d.ts +2 -2
  115. package/dist/common/icons/drag-n-drop.js +2 -2
  116. package/dist/common/icons/draw-polygon.d.ts +2 -2
  117. package/dist/common/icons/draw-polygon.js +2 -2
  118. package/dist/common/icons/email.d.ts +2 -2
  119. package/dist/common/icons/email.js +2 -2
  120. package/dist/common/icons/expand.d.ts +2 -2
  121. package/dist/common/icons/expand.js +2 -2
  122. package/dist/common/icons/eye-seen.d.ts +2 -2
  123. package/dist/common/icons/eye-seen.js +2 -2
  124. package/dist/common/icons/eye-unseen.d.ts +2 -2
  125. package/dist/common/icons/eye-unseen.js +2 -2
  126. package/dist/common/icons/file-type.d.ts +2 -2
  127. package/dist/common/icons/file-type.js +2 -2
  128. package/dist/common/icons/file.d.ts +2 -2
  129. package/dist/common/icons/file.js +2 -2
  130. package/dist/common/icons/files.d.ts +1 -1
  131. package/dist/common/icons/files.js +2 -2
  132. package/dist/common/icons/filter-funnel.d.ts +2 -2
  133. package/dist/common/icons/filter-funnel.js +2 -2
  134. package/dist/common/icons/free-window.d.ts +2 -2
  135. package/dist/common/icons/free-window.js +2 -2
  136. package/dist/common/icons/gear.d.ts +2 -2
  137. package/dist/common/icons/gear.js +2 -2
  138. package/dist/common/icons/hash.d.ts +2 -2
  139. package/dist/common/icons/hash.js +2 -2
  140. package/dist/common/icons/histogram.d.ts +1 -1
  141. package/dist/common/icons/histogram.js +2 -2
  142. package/dist/common/icons/index.d.ts +1 -0
  143. package/dist/common/icons/index.js +10 -2
  144. package/dist/common/icons/info.d.ts +2 -2
  145. package/dist/common/icons/info.js +2 -2
  146. package/dist/common/icons/layers.d.ts +2 -2
  147. package/dist/common/icons/layers.js +2 -2
  148. package/dist/common/icons/left-arrow.d.ts +2 -2
  149. package/dist/common/icons/left-arrow.js +2 -2
  150. package/dist/common/icons/legend.d.ts +2 -2
  151. package/dist/common/icons/legend.js +2 -2
  152. package/dist/common/icons/line-chart.d.ts +2 -2
  153. package/dist/common/icons/line-chart.js +2 -2
  154. package/dist/common/icons/login.d.ts +2 -2
  155. package/dist/common/icons/login.js +2 -2
  156. package/dist/common/icons/logout.d.ts +2 -2
  157. package/dist/common/icons/logout.js +2 -2
  158. package/dist/common/icons/map-icon.d.ts +2 -2
  159. package/dist/common/icons/map-icon.js +2 -2
  160. package/dist/common/icons/map.d.ts +2 -2
  161. package/dist/common/icons/map.js +2 -2
  162. package/dist/common/icons/messages.d.ts +2 -2
  163. package/dist/common/icons/messages.js +2 -2
  164. package/dist/common/icons/minus.d.ts +2 -2
  165. package/dist/common/icons/minus.js +2 -2
  166. package/dist/common/icons/order-by-dataset.d.ts +2 -2
  167. package/dist/common/icons/order-by-dataset.js +2 -2
  168. package/dist/common/icons/order-by-list.d.ts +2 -2
  169. package/dist/common/icons/order-by-list.js +2 -2
  170. package/dist/common/icons/pause.d.ts +2 -2
  171. package/dist/common/icons/pause.js +2 -2
  172. package/dist/common/icons/picture.d.ts +1 -1
  173. package/dist/common/icons/picture.js +2 -2
  174. package/dist/common/icons/pin.d.ts +2 -2
  175. package/dist/common/icons/pin.js +2 -2
  176. package/dist/common/icons/play.d.ts +2 -2
  177. package/dist/common/icons/play.js +2 -2
  178. package/dist/common/icons/polygon.d.ts +2 -2
  179. package/dist/common/icons/polygon.js +2 -2
  180. package/dist/common/icons/rectangle.d.ts +2 -2
  181. package/dist/common/icons/rectangle.js +2 -2
  182. package/dist/common/icons/reduce.d.ts +2 -2
  183. package/dist/common/icons/reduce.js +2 -2
  184. package/dist/common/icons/reset.d.ts +2 -2
  185. package/dist/common/icons/reset.js +2 -2
  186. package/dist/common/icons/rocket.d.ts +2 -2
  187. package/dist/common/icons/rocket.js +2 -2
  188. package/dist/common/icons/save.d.ts +2 -2
  189. package/dist/common/icons/save.js +2 -2
  190. package/dist/common/icons/save2.d.ts +2 -2
  191. package/dist/common/icons/save2.js +2 -2
  192. package/dist/common/icons/search.d.ts +2 -2
  193. package/dist/common/icons/search.js +2 -2
  194. package/dist/common/icons/settings.d.ts +2 -2
  195. package/dist/common/icons/settings.js +2 -2
  196. package/dist/common/icons/share.d.ts +2 -2
  197. package/dist/common/icons/share.js +2 -2
  198. package/dist/common/icons/split.d.ts +2 -2
  199. package/dist/common/icons/split.js +2 -2
  200. package/dist/common/icons/square-select.d.ts +2 -2
  201. package/dist/common/icons/square-select.js +2 -2
  202. package/dist/common/icons/trash.d.ts +2 -2
  203. package/dist/common/icons/trash.js +2 -2
  204. package/dist/common/icons/vert-dots.d.ts +2 -2
  205. package/dist/common/icons/vert-dots.js +2 -2
  206. package/dist/common/icons/vert-three-dots.d.ts +2 -2
  207. package/dist/common/icons/vert-three-dots.js +2 -2
  208. package/dist/common/icons/warning-sign.d.ts +2 -2
  209. package/dist/common/icons/warning-sign.js +2 -2
  210. package/dist/common/icons/warning.d.ts +2 -2
  211. package/dist/common/icons/warning.js +2 -2
  212. package/dist/common/image-preview.d.ts +2 -2
  213. package/dist/common/image-preview.js +2 -2
  214. package/dist/common/index.d.ts +1 -1
  215. package/dist/common/index.js +8 -2
  216. package/dist/common/info-helper.d.ts +2 -2
  217. package/dist/common/info-helper.js +2 -2
  218. package/dist/common/item-selector/accessor.js +2 -2
  219. package/dist/common/item-selector/chickleted-input.js +2 -2
  220. package/dist/common/item-selector/dropdown-list.d.ts +28 -8
  221. package/dist/common/item-selector/dropdown-list.js +144 -25
  222. package/dist/common/item-selector/item-selector.d.ts +2 -3
  223. package/dist/common/item-selector/item-selector.js +7 -3
  224. package/dist/common/item-selector/typeahead.d.ts +16 -12
  225. package/dist/common/item-selector/typeahead.js +24 -13
  226. package/dist/common/line-chart.d.ts +2 -2
  227. package/dist/common/line-chart.js +2 -2
  228. package/dist/common/loading-spinner.js +2 -2
  229. package/dist/common/logo.d.ts +2 -2
  230. package/dist/common/logo.js +2 -2
  231. package/dist/common/map-layer-selector.d.ts +2 -2
  232. package/dist/common/map-layer-selector.js +3 -4
  233. package/dist/common/modal.d.ts +24 -11
  234. package/dist/common/modal.js +2 -2
  235. package/dist/common/portaled.d.ts +513 -2
  236. package/dist/common/portaled.js +2 -2
  237. package/dist/common/progress-bar.d.ts +2 -2
  238. package/dist/common/progress-bar.js +2 -2
  239. package/dist/common/range-brush.js +2 -2
  240. package/dist/common/range-plot.d.ts +6 -2
  241. package/dist/common/range-plot.js +4 -3
  242. package/dist/common/range-slider.d.ts +5 -1
  243. package/dist/common/range-slider.js +9 -3
  244. package/dist/common/slider/mouse-event.js +2 -2
  245. package/dist/common/slider/slider-bar-handle.d.ts +2 -2
  246. package/dist/common/slider/slider-bar-handle.js +2 -2
  247. package/dist/common/slider/slider-handle.d.ts +1 -1
  248. package/dist/common/slider/slider-handle.js +2 -2
  249. package/dist/common/slider/slider.d.ts +7 -5
  250. package/dist/common/slider/slider.js +8 -5
  251. package/dist/common/styled-components.d.ts +5 -0
  252. package/dist/common/styled-components.js +161 -47
  253. package/dist/common/switch.d.ts +3 -2
  254. package/dist/common/switch.js +2 -2
  255. package/dist/common/time-range-slider-time-title.d.ts +2 -2
  256. package/dist/common/time-range-slider-time-title.js +2 -2
  257. package/dist/common/time-range-slider.d.ts +6 -3
  258. package/dist/common/time-range-slider.js +33 -14
  259. package/dist/common/time-slider-marker.d.ts +1 -1
  260. package/dist/common/time-slider-marker.js +3 -3
  261. package/dist/common/timeline-slider.d.ts +13 -0
  262. package/dist/common/timeline-slider.js +173 -0
  263. package/dist/common/tippy-tooltip.d.ts +4 -2
  264. package/dist/common/tippy-tooltip.js +23 -11
  265. package/dist/common/toolbar-item.d.ts +1 -1
  266. package/dist/common/toolbar-item.js +6 -4
  267. package/dist/common/toolbar.js +2 -2
  268. package/dist/common/vertical-toolbar.js +2 -2
  269. package/dist/connect/keplergl-connect.d.ts +5 -1
  270. package/dist/connect/keplergl-connect.js +2 -2
  271. package/dist/connect/with-local-selector.js +2 -2
  272. package/dist/container.js +2 -2
  273. package/dist/context.js +4 -3
  274. package/dist/dnd-context.d.ts +13 -0
  275. package/dist/dnd-context.js +252 -0
  276. package/dist/editor/editor.d.ts +11 -10
  277. package/dist/editor/editor.js +97 -103
  278. package/dist/editor/feature-action-panel.d.ts +8 -6
  279. package/dist/editor/feature-action-panel.js +75 -22
  280. package/dist/effects/effect-configurator.d.ts +18 -0
  281. package/dist/effects/effect-configurator.js +237 -0
  282. package/dist/effects/effect-list.d.ts +15 -0
  283. package/dist/effects/effect-list.js +173 -0
  284. package/dist/effects/effect-manager.d.ts +21 -0
  285. package/dist/effects/effect-manager.js +129 -0
  286. package/dist/effects/effect-panel-header.d.ts +33 -0
  287. package/dist/effects/effect-panel-header.js +174 -0
  288. package/dist/effects/effect-panel.d.ts +24 -0
  289. package/dist/effects/effect-panel.js +162 -0
  290. package/dist/effects/effect-time-configurator.d.ts +13 -0
  291. package/dist/effects/effect-time-configurator.js +191 -0
  292. package/dist/effects/effect-type-selector.d.ts +11 -0
  293. package/dist/effects/effect-type-selector.js +117 -0
  294. package/dist/effects/side-panel-title.d.ts +7 -0
  295. package/dist/effects/side-panel-title.js +67 -0
  296. package/dist/filter-animation-controller.d.ts +17 -0
  297. package/dist/filter-animation-controller.js +91 -0
  298. package/dist/filters/components.js +2 -2
  299. package/dist/filters/filter-panels/filter-panel-with-field-select.js +3 -3
  300. package/dist/filters/filter-panels/multi-select-filter-panel.js +3 -3
  301. package/dist/filters/filter-panels/new-filter-panel.js +2 -2
  302. package/dist/filters/filter-panels/polygon-filter-panel.js +3 -3
  303. package/dist/filters/filter-panels/range-filter-panel.js +3 -3
  304. package/dist/filters/filter-panels/single-select-filter-panel.js +3 -3
  305. package/dist/filters/filter-panels/time-range-filter-panel.js +25 -8
  306. package/dist/filters/filter-panels/types.d.ts +2 -1
  307. package/dist/filters/filter-panels/types.js +1 -1
  308. package/dist/filters/index.d.ts +2 -0
  309. package/dist/filters/index.js +18 -2
  310. package/dist/filters/multi-select-filter.js +2 -2
  311. package/dist/filters/polygon-filter.js +14 -4
  312. package/dist/filters/range-filter.js +6 -4
  313. package/dist/filters/single-select-filter.js +2 -2
  314. package/dist/filters/time-range-filter.d.ts +2 -1
  315. package/dist/filters/time-range-filter.js +10 -7
  316. package/dist/filters/time-widget-top.d.ts +8 -0
  317. package/dist/filters/time-widget-top.js +123 -0
  318. package/dist/filters/time-widget.d.ts +3 -7
  319. package/dist/filters/time-widget.js +35 -92
  320. package/dist/filters/types.d.ts +7 -3
  321. package/dist/filters/types.js +1 -1
  322. package/dist/geocoder/geocoder.d.ts +1 -3
  323. package/dist/geocoder/geocoder.js +2 -2
  324. package/dist/geocoder-panel.d.ts +9 -3
  325. package/dist/geocoder-panel.js +30 -19
  326. package/dist/hooks/useFeatureFlags.js +1 -1
  327. package/dist/index.d.ts +68 -20
  328. package/dist/index.js +599 -99
  329. package/dist/injector.d.ts +4 -4
  330. package/dist/injector.js +2 -2
  331. package/dist/kepler-gl.d.ts +58 -17
  332. package/dist/kepler-gl.js +78 -31
  333. package/dist/layer-animation-controller.d.ts +13 -0
  334. package/dist/layer-animation-controller.js +76 -0
  335. package/dist/map/coordinate-info.js +2 -2
  336. package/dist/map/effects/effect-control.d.ts +16 -0
  337. package/dist/map/effects/effect-control.js +81 -0
  338. package/dist/map/layer-hover-info.d.ts +2 -2
  339. package/dist/map/layer-hover-info.js +26 -10
  340. package/dist/map/layer-selector-panel.js +2 -2
  341. package/dist/map/lazy-tippy.js +1 -1
  342. package/dist/map/locale-panel.d.ts +1 -1
  343. package/dist/map/locale-panel.js +2 -2
  344. package/dist/map/map-control-panel.d.ts +6 -0
  345. package/dist/map/map-control-panel.js +65 -9
  346. package/dist/map/map-control-toolbar.js +3 -3
  347. package/dist/map/map-control-tooltip.js +2 -2
  348. package/dist/map/map-control.d.ts +15 -7
  349. package/dist/map/map-control.js +6 -7
  350. package/dist/map/map-draw-panel.d.ts +2 -2
  351. package/dist/map/map-draw-panel.js +2 -9
  352. package/dist/map/map-legend-panel.d.ts +12 -1
  353. package/dist/map/map-legend-panel.js +27 -14
  354. package/dist/map/map-legend.d.ts +1 -1
  355. package/dist/map/map-legend.js +2 -2
  356. package/dist/map/map-popover-content.d.ts +28 -0
  357. package/dist/map/map-popover-content.js +51 -0
  358. package/dist/map/map-popover.d.ts +11 -14
  359. package/dist/map/map-popover.js +94 -15
  360. package/dist/map/split-map-button.js +2 -2
  361. package/dist/map/toggle-3d-button.js +2 -2
  362. package/dist/map-container.d.ts +33 -9
  363. package/dist/map-container.js +530 -161
  364. package/dist/map-view-state-context.d.ts +12 -0
  365. package/dist/map-view-state-context.js +116 -0
  366. package/dist/maps-layout.d.ts +5 -2
  367. package/dist/maps-layout.js +7 -3
  368. package/dist/modal-container.d.ts +2 -6
  369. package/dist/modal-container.js +8 -6
  370. package/dist/modals/add-map-style-modal.d.ts +1 -3
  371. package/dist/modals/add-map-style-modal.js +12 -6
  372. package/dist/modals/cloud-tile.js +2 -2
  373. package/dist/modals/data-table-modal.d.ts +11 -2
  374. package/dist/modals/data-table-modal.js +75 -24
  375. package/dist/modals/delete-data-modal.js +2 -2
  376. package/dist/modals/error-display.js +2 -2
  377. package/dist/modals/export-data-modal.d.ts +1 -3
  378. package/dist/modals/export-data-modal.js +2 -2
  379. package/dist/modals/export-image-modal.d.ts +1 -3
  380. package/dist/modals/export-image-modal.js +2 -2
  381. package/dist/modals/export-map-modal/components.d.ts +2 -2
  382. package/dist/modals/export-map-modal/components.js +2 -2
  383. package/dist/modals/export-map-modal/export-html-map.js +2 -2
  384. package/dist/modals/export-map-modal/export-json-map.d.ts +1 -1
  385. package/dist/modals/export-map-modal/export-json-map.js +2 -2
  386. package/dist/modals/export-map-modal/export-map-modal.d.ts +2 -2
  387. package/dist/modals/export-map-modal/export-map-modal.js +2 -2
  388. package/dist/modals/image-modal-container.d.ts +1 -0
  389. package/dist/modals/image-modal-container.js +2 -2
  390. package/dist/modals/load-data-modal.js +2 -2
  391. package/dist/modals/load-storage-map.js +2 -2
  392. package/dist/modals/loading-dialog.js +2 -2
  393. package/dist/modals/modal-dialog.js +2 -2
  394. package/dist/modals/modal-tabs.d.ts +1 -1
  395. package/dist/modals/modal-tabs.js +2 -2
  396. package/dist/modals/overwrite-map-modal.js +2 -2
  397. package/dist/modals/provider-modal-container.d.ts +3 -2
  398. package/dist/modals/provider-modal-container.js +2 -2
  399. package/dist/modals/save-map-modal.js +2 -2
  400. package/dist/modals/share-map-modal.js +2 -2
  401. package/dist/modals/status-panel.js +2 -2
  402. package/dist/modals/storage-map-viewer.d.ts +1 -1
  403. package/dist/modals/storage-map-viewer.js +2 -2
  404. package/dist/notification-panel/notification-item.d.ts +7 -10
  405. package/dist/notification-panel/notification-item.js +45 -13
  406. package/dist/notification-panel.js +2 -2
  407. package/dist/plot-container.js +20 -8
  408. package/dist/side-panel/add-by-dataset-button.d.ts +12 -0
  409. package/dist/side-panel/add-by-dataset-button.js +173 -0
  410. package/dist/side-panel/cloud-storage-dropdown.d.ts +2 -2
  411. package/dist/side-panel/cloud-storage-dropdown.js +2 -2
  412. package/dist/side-panel/common/dataset-info.d.ts +10 -3
  413. package/dist/side-panel/common/dataset-info.js +2 -2
  414. package/dist/side-panel/common/dataset-tag.d.ts +15 -1
  415. package/dist/side-panel/common/dataset-tag.js +14 -11
  416. package/dist/side-panel/common/dataset-title.d.ts +16 -2
  417. package/dist/side-panel/common/dataset-title.js +71 -105
  418. package/dist/side-panel/common/source-data-catalog.d.ts +22 -3
  419. package/dist/side-panel/common/source-data-catalog.js +2 -2
  420. package/dist/side-panel/common/source-data-selector.js +2 -2
  421. package/dist/side-panel/common/types.d.ts +7 -27
  422. package/dist/side-panel/common/types.js +1 -1
  423. package/dist/side-panel/custom-panel.d.ts +6 -7
  424. package/dist/side-panel/custom-panel.js +2 -2
  425. package/dist/side-panel/filter-manager.d.ts +18 -6
  426. package/dist/side-panel/filter-manager.js +176 -65
  427. package/dist/side-panel/filter-panel/add-filter-button.d.ts +8 -0
  428. package/dist/side-panel/filter-panel/add-filter-button.js +50 -0
  429. package/dist/side-panel/filter-panel/filter-panel-header.d.ts +6 -3
  430. package/dist/side-panel/filter-panel/filter-panel-header.js +4 -4
  431. package/dist/side-panel/filter-panel/filter-panel.js +2 -2
  432. package/dist/side-panel/interaction-manager.d.ts +6 -3
  433. package/dist/side-panel/interaction-manager.js +21 -8
  434. package/dist/side-panel/interaction-panel/brush-config.d.ts +2 -2
  435. package/dist/side-panel/interaction-panel/brush-config.js +2 -2
  436. package/dist/side-panel/interaction-panel/interaction-panel.d.ts +5 -2
  437. package/dist/side-panel/interaction-panel/interaction-panel.js +12 -5
  438. package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.d.ts +3 -9
  439. package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +25 -42
  440. package/dist/side-panel/interaction-panel/tooltip-config.d.ts +2 -3
  441. package/dist/side-panel/interaction-panel/tooltip-config.js +9 -7
  442. package/dist/side-panel/layer-manager.d.ts +8 -10
  443. package/dist/side-panel/layer-manager.js +71 -37
  444. package/dist/side-panel/layer-panel/add-layer-button.d.ts +3 -5
  445. package/dist/side-panel/layer-panel/add-layer-button.js +13 -139
  446. package/dist/side-panel/layer-panel/color-palette.js +2 -2
  447. package/dist/side-panel/layer-panel/color-range-selector.d.ts +1 -1
  448. package/dist/side-panel/layer-panel/color-range-selector.js +2 -2
  449. package/dist/side-panel/layer-panel/color-selector.d.ts +15 -24
  450. package/dist/side-panel/layer-panel/color-selector.js +175 -127
  451. package/dist/side-panel/layer-panel/column-selector.js +2 -2
  452. package/dist/side-panel/layer-panel/custom-palette.d.ts +7 -2
  453. package/dist/side-panel/layer-panel/custom-palette.js +6 -5
  454. package/dist/side-panel/layer-panel/custom-picker.d.ts +9 -36
  455. package/dist/side-panel/layer-panel/custom-picker.js +2 -2
  456. package/dist/side-panel/layer-panel/dataset-layer-group.d.ts +1 -1
  457. package/dist/side-panel/layer-panel/dataset-layer-group.js +3 -2
  458. package/dist/side-panel/layer-panel/dataset-layer-section.d.ts +3 -2
  459. package/dist/side-panel/layer-panel/dataset-layer-section.js +5 -4
  460. package/dist/side-panel/layer-panel/dataset-section.d.ts +2 -3
  461. package/dist/side-panel/layer-panel/dataset-section.js +6 -7
  462. package/dist/side-panel/layer-panel/dimension-scale-selector.js +2 -2
  463. package/dist/side-panel/layer-panel/how-to-button.js +2 -2
  464. package/dist/side-panel/layer-panel/layer-color-selector.d.ts +42 -0
  465. package/dist/side-panel/layer-panel/layer-color-selector.js +134 -0
  466. package/dist/side-panel/layer-panel/layer-column-config.d.ts +15 -9
  467. package/dist/side-panel/layer-panel/layer-column-config.js +35 -13
  468. package/dist/side-panel/layer-panel/layer-config-group.d.ts +11 -2
  469. package/dist/side-panel/layer-panel/layer-config-group.js +19 -11
  470. package/dist/side-panel/layer-panel/layer-configurator.d.ts +10 -35
  471. package/dist/side-panel/layer-panel/layer-configurator.js +61 -110
  472. package/dist/side-panel/layer-panel/layer-error-message.d.ts +6 -0
  473. package/dist/side-panel/layer-panel/layer-error-message.js +58 -0
  474. package/dist/side-panel/layer-panel/layer-list.d.ts +4 -3
  475. package/dist/side-panel/layer-panel/layer-list.js +112 -89
  476. package/dist/side-panel/layer-panel/layer-panel-header.d.ts +22 -10
  477. package/dist/side-panel/layer-panel/layer-panel-header.js +106 -67
  478. package/dist/side-panel/layer-panel/layer-panel.d.ts +3 -1
  479. package/dist/side-panel/layer-panel/layer-panel.js +24 -11
  480. package/dist/side-panel/layer-panel/layer-type-dropdown-list.js +2 -2
  481. package/dist/side-panel/layer-panel/layer-type-list-item.d.ts +12 -3
  482. package/dist/side-panel/layer-panel/layer-type-list-item.js +12 -4
  483. package/dist/side-panel/layer-panel/layer-type-selector.d.ts +2 -1
  484. package/dist/side-panel/layer-panel/layer-type-selector.js +5 -3
  485. package/dist/side-panel/layer-panel/single-color-palette.d.ts +1 -1
  486. package/dist/side-panel/layer-panel/single-color-palette.js +2 -2
  487. package/dist/side-panel/layer-panel/text-label-panel.d.ts +4 -2
  488. package/dist/side-panel/layer-panel/text-label-panel.js +62 -15
  489. package/dist/side-panel/layer-panel/vis-config-by-field-selector.d.ts +1 -3
  490. package/dist/side-panel/layer-panel/vis-config-by-field-selector.js +2 -2
  491. package/dist/side-panel/layer-panel/vis-config-slider.js +2 -2
  492. package/dist/side-panel/layer-panel/vis-config-switch.js +2 -2
  493. package/dist/side-panel/map-manager.d.ts +13 -6
  494. package/dist/side-panel/map-manager.js +56 -45
  495. package/dist/side-panel/map-style-panel/map-layer-group-color-picker.d.ts +14 -0
  496. package/dist/side-panel/map-style-panel/map-layer-group-color-picker.js +116 -0
  497. package/dist/side-panel/map-style-panel/map-layer-group-item.d.ts +29 -0
  498. package/dist/side-panel/map-style-panel/map-layer-group-item.js +131 -0
  499. package/dist/side-panel/map-style-panel/map-layer-selector.d.ts +16 -12
  500. package/dist/side-panel/map-style-panel/map-layer-selector.js +34 -51
  501. package/dist/side-panel/map-style-panel/map-style-selector.d.ts +11 -4
  502. package/dist/side-panel/map-style-panel/map-style-selector.js +54 -20
  503. package/dist/side-panel/panel-dropdown.d.ts +3 -2
  504. package/dist/side-panel/panel-dropdown.js +2 -2
  505. package/dist/side-panel/panel-header-action.d.ts +4 -2
  506. package/dist/side-panel/panel-header-action.js +11 -4
  507. package/dist/side-panel/panel-header.d.ts +13 -8
  508. package/dist/side-panel/panel-header.js +2 -2
  509. package/dist/side-panel/panel-tab.d.ts +2 -2
  510. package/dist/side-panel/panel-tab.js +2 -2
  511. package/dist/side-panel/panel-title.d.ts +6 -3
  512. package/dist/side-panel/panel-title.js +31 -14
  513. package/dist/side-panel/panel-toggle.d.ts +1 -1
  514. package/dist/side-panel/panel-toggle.js +2 -2
  515. package/dist/side-panel/{layer-panel/panel-view-list-toggle.d.ts → panel-view-list-toggle.d.ts} +19 -8
  516. package/dist/side-panel/panel-view-list-toggle.js +143 -0
  517. package/dist/side-panel/side-bar.d.ts +15 -16
  518. package/dist/side-panel/side-bar.js +8 -6
  519. package/dist/side-panel.d.ts +2 -117
  520. package/dist/side-panel.js +14 -20
  521. package/dist/types.d.ts +16 -9
  522. package/dist/types.js +1 -1
  523. package/package.json +41 -34
  524. package/dist/editor/constants.d.ts +0 -17
  525. package/dist/editor/constants.js +0 -47
  526. package/dist/editor/feature-styles.d.ts +0 -37
  527. package/dist/editor/feature-styles.js +0 -92
  528. package/dist/editor/handle-style.d.ts +0 -42
  529. package/dist/editor/handle-style.js +0 -100
  530. package/dist/side-panel/layer-panel/panel-view-list-toggle.js +0 -143
@@ -1,4 +1,4 @@
1
- // Copyright (c) 2022 Uber Technologies, Inc.
1
+ // Copyright (c) 2023 Uber Technologies, Inc.
2
2
  //
3
3
  // Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  // of this software and associated documentation files (the "Software"), to deal
@@ -144,4 +144,4 @@ var StorageAssetsViewer = /*#__PURE__*/function (_React$Component) {
144
144
 
145
145
  var _default = StorageAssetsViewer;
146
146
  exports["default"] = _default;
147
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb2RhbHMvc3RvcmFnZS1tYXAtdmlld2VyLnRzeCJdLCJuYW1lcyI6WyJpbWFnZUgiLCJTdHlsZWRBc3NldEdhbGxlcnkiLCJzdHlsZWQiLCJkaXYiLCJhdHRycyIsImNsYXNzTmFtZSIsIlN0eWxlZEFzc2V0SXRlbSIsInByb3BzIiwidGhlbWUiLCJ0ZXh0Q29sb3JMVCIsIkJhY2tMaW5rIiwidGl0bGVDb2xvckxUIiwiU3R5bGVkRXJyb3IiLCJnZXREdXJhdGlvbiIsImxhc3QiLCJtb21lbnQiLCJkdXJhdGlvbiIsIkRhdGUiLCJ2YWx1ZU9mIiwiaHVtYW5pemUiLCJBc3NldEl0ZW0iLCJhc3NldCIsIm9uQ2xpY2siLCJpbWFnZVVybCIsImxhYmVsIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsImxhc3RVcGRhdGVkIiwiU3RvcmFnZUFzc2V0c1ZpZXdlciIsImFzc2V0cyIsIm9uTG9hZEFzc2V0IiwiYmFjayIsImVycm9yIiwibWVzc2FnZSIsIm1hcCIsInNwIiwiaWQiLCJSZWFjdCIsIkNvbXBvbmVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0JBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7OztBQUVBLElBQU1BLE1BQU0sR0FBRyxHQUFmOztBQUVBLElBQU1DLGtCQUFrQixHQUFHQyw2QkFBT0MsR0FBUCxDQUFXQyxLQUFYLENBQWlCO0FBQzFDQyxFQUFBQSxTQUFTLEVBQUU7QUFEK0IsQ0FBakIsQ0FBSCw4SkFBeEI7O0FBUUEsSUFBTUMsZUFBZSxHQUFHSiw2QkFBT0MsR0FBUCxDQUFXQyxLQUFYLENBQWlCO0FBQ3ZDQyxFQUFBQSxTQUFTLEVBQUU7QUFENEIsQ0FBakIsQ0FBSCxtb0NBbUJSLFVBQUFFLEtBQUs7QUFBQSxTQUFJQSxLQUFLLENBQUNDLEtBQU4sQ0FBWUMsV0FBaEI7QUFBQSxDQW5CRyxFQWdDUFQsTUFoQ08sRUEyRFIsVUFBQU8sS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZQyxXQUFoQjtBQUFBLENBM0RHLENBQXJCOztBQStEQSxJQUFNQyxRQUFRLEdBQUdSLDZCQUFPQyxHQUFWLGlWQUlILFVBQUFJLEtBQUs7QUFBQSxTQUFJQSxLQUFLLENBQUNDLEtBQU4sQ0FBWUcsWUFBaEI7QUFBQSxDQUpGLENBQWQ7O0FBb0JBLElBQU1DLFdBQVcsR0FBR1YsNkJBQU9DLEdBQVYscUpBQWpCOztBQU1BLElBQU1VLFdBQVcsR0FBRyxTQUFkQSxXQUFjO0FBQUEsTUFBQ0MsSUFBRCx1RUFBZ0IsQ0FBaEI7QUFBQSxTQUFzQkMsbUJBQU9DLFFBQVAsQ0FBZ0IsSUFBSUMsSUFBSixHQUFXQyxPQUFYLEtBQXVCSixJQUF2QyxFQUE2Q0ssUUFBN0MsRUFBdEI7QUFBQSxDQUFwQjs7QUFnQkEsSUFBTUMsU0FBbUMsR0FBRyxTQUF0Q0EsU0FBc0M7QUFBQSxNQUFFQyxLQUFGLFFBQUVBLEtBQUY7QUFBQSxNQUFTQyxPQUFULFFBQVNBLE9BQVQ7QUFBQSxzQkFDMUMsZ0NBQUMsZUFBRCxxQkFDRTtBQUFLLElBQUEsU0FBUyxFQUFDLGNBQWY7QUFBOEIsSUFBQSxPQUFPLEVBQUVBO0FBQXZDLEtBQ0dELEtBQUssQ0FBQ0UsUUFBTixpQkFBa0I7QUFBSyxJQUFBLEdBQUcsRUFBRUYsS0FBSyxDQUFDRTtBQUFoQixJQURyQixDQURGLGVBSUU7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLEtBQStCRixLQUFLLENBQUNHLEtBQU4sSUFBZUgsS0FBSyxDQUFDSSxLQUFwRCxDQUpGLGVBS0U7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLEtBQXdDSixLQUFLLENBQUNLLFdBQTlDLENBTEYsRUFNR0wsS0FBSyxDQUFDTSxXQUFOLGdCQUNDO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixrQkFDRSxnQ0FBQyw4QkFBRDtBQUNFLElBQUEsRUFBRSxFQUFFLHFDQUROO0FBRUUsSUFBQSxNQUFNLEVBQUU7QUFBQ0EsTUFBQUEsV0FBVyxFQUFFZCxXQUFXLENBQUNRLEtBQUssQ0FBQ00sV0FBUDtBQUF6QjtBQUZWLElBREYsQ0FERCxHQU9HLElBYk4sQ0FEMEM7QUFBQSxDQUE1Qzs7SUF5Qk1DLG1COzs7Ozs7Ozs7Ozs7V0FDSixrQkFBUztBQUFBLHdCQUNvQyxLQUFLckIsS0FEekM7QUFBQSxVQUNBc0IsTUFEQSxlQUNBQSxNQURBO0FBQUEsVUFDUUMsV0FEUixlQUNRQSxXQURSO0FBQUEsVUFDcUJDLElBRHJCLGVBQ3FCQSxJQURyQjtBQUFBLFVBQzJCQyxLQUQzQixlQUMyQkEsS0FEM0I7QUFHUCwwQkFDRTtBQUFLLFFBQUEsU0FBUyxFQUFDO0FBQWYsc0JBQ0UsZ0NBQUMsUUFBRDtBQUFVLFFBQUEsT0FBTyxFQUFFRDtBQUFuQixzQkFDRSxnQ0FBQyxnQkFBRDtBQUFXLFFBQUEsTUFBTSxFQUFDO0FBQWxCLFFBREYsZUFFRSwyREFDRSxnQ0FBQyw4QkFBRDtBQUFrQixRQUFBLEVBQUUsRUFBRTtBQUF0QixRQURGLENBRkYsQ0FERixFQU9HQyxLQUFLLGlCQUFJLGdDQUFDLFdBQUQsUUFBY0EsS0FBSyxDQUFDQyxPQUFwQixDQVBaLGVBUUUsZ0NBQUMsa0JBQUQsUUFDR0osTUFBTSxDQUFDSyxHQUFQLENBQVcsVUFBQUMsRUFBRTtBQUFBLDRCQUNaLGdDQUFDLFNBQUQ7QUFBVyxVQUFBLEtBQUssRUFBRUEsRUFBbEI7QUFBc0IsVUFBQSxHQUFHLEVBQUVBLEVBQUUsQ0FBQ0MsRUFBOUI7QUFBa0MsVUFBQSxPQUFPLEVBQUU7QUFBQSxtQkFBTU4sV0FBVyxDQUFDSyxFQUFELENBQWpCO0FBQUE7QUFBM0MsVUFEWTtBQUFBLE9BQWIsQ0FESCxDQVJGLENBREY7QUFnQkQ7OztFQXBCK0JFLGtCQUFNQyxTOztlQXVCekJWLG1CIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHtMZWZ0QXJyb3d9IGZyb20gJy4uL2NvbW1vbi9pY29ucyc7XG5pbXBvcnQge0Zvcm1hdHRlZE1lc3NhZ2V9IGZyb20gJ0BrZXBsZXIuZ2wvbG9jYWxpemF0aW9uJztcblxuY29uc3QgaW1hZ2VIID0gMTA4O1xuXG5jb25zdCBTdHlsZWRBc3NldEdhbGxlcnkgPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnc3RvcmFnZS1hc3NldC1nYWxsZXJ5J1xufSlgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZmxleC13cmFwOiB3cmFwO1xuYDtcblxuY29uc3QgU3R5bGVkQXNzZXRJdGVtID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ2Fzc2V0X19pdGVtJ1xufSlgXG4gIHdpZHRoOiAyMyU7XG4gIG1hcmdpbi1yaWdodDogMiU7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGhlaWdodDogMjQ1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICA6bGFzdCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmFzc2V0X190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9yTFR9O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgfVxuXG4gIC5hc3NldF9faW1hZ2Uge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgb3BhY2l0eTogMC45O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBoZWlnaHQ6ICR7aW1hZ2VIfXB4O1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgLmFzc2V0X19pbWFnZV9fY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgfVxuXG4gIC5hc3NldF9fbGFzdC11cGRhdGVkIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9yTFR9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrTGluayA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGl0bGVDb2xvckxUfTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gIDpob3ZlciB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbiAgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbmA7XG5cbmNvbnN0IFN0eWxlZEVycm9yID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6IHJlZDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuYDtcblxuY29uc3QgZ2V0RHVyYXRpb24gPSAobGFzdDogbnVtYmVyID0gMCkgPT4gbW9tZW50LmR1cmF0aW9uKG5ldyBEYXRlKCkudmFsdWVPZigpIC0gbGFzdCkuaHVtYW5pemUoKTtcblxuaW50ZXJmYWNlIEFzc2V0IHtcbiAgaW1hZ2VVcmw/OiBzdHJpbmc7XG4gIGxhYmVsPzogc3RyaW5nO1xuICB0aXRsZT86IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGxhc3RVcGRhdGVkPzogbnVtYmVyO1xuICBpZD86IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIEFzc2V0SXRlbVByb3BzIHtcbiAgYXNzZXQ6IEFzc2V0O1xuICBvbkNsaWNrOiBSZWFjdC5Nb3VzZUV2ZW50SGFuZGxlcjxIVE1MRGl2RWxlbWVudD47XG59XG5cbmNvbnN0IEFzc2V0SXRlbTogUmVhY3QuRkM8QXNzZXRJdGVtUHJvcHM+ID0gKHthc3NldCwgb25DbGlja30pID0+IChcbiAgPFN0eWxlZEFzc2V0SXRlbT5cbiAgICA8ZGl2IGNsYXNzTmFtZT1cImFzc2V0X19pbWFnZVwiIG9uQ2xpY2s9e29uQ2xpY2t9PlxuICAgICAge2Fzc2V0LmltYWdlVXJsICYmIDxpbWcgc3JjPXthc3NldC5pbWFnZVVybH0gLz59XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzc05hbWU9XCJhc3NldF9fdGl0bGVcIj57YXNzZXQubGFiZWwgfHwgYXNzZXQudGl0bGV9PC9kaXY+XG4gICAgPGRpdiBjbGFzc05hbWU9XCJhc3NldF9faW1hZ2VfX2NhcHRpb25cIj57YXNzZXQuZGVzY3JpcHRpb259PC9kaXY+XG4gICAge2Fzc2V0Lmxhc3RVcGRhdGVkID8gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJhc3NldF9fbGFzdC11cGRhdGVkXCI+XG4gICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgaWQ9eydtb2RhbC5zdG9yYWdlTWFwVmlld2VyLmxhc3RNb2RpZmllZCd9XG4gICAgICAgICAgdmFsdWVzPXt7bGFzdFVwZGF0ZWQ6IGdldER1cmF0aW9uKGFzc2V0Lmxhc3RVcGRhdGVkKX19XG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICApIDogbnVsbH1cbiAgPC9TdHlsZWRBc3NldEl0ZW0+XG4pO1xuXG5pbnRlcmZhY2UgU3RvcmFnZUFzc2V0c1ZpZXdlclByb3BzIHtcbiAgYXNzZXRzOiBBc3NldFtdO1xuICBvbkxvYWRBc3NldDogKGFzc2V0OiBBc3NldCkgPT4gdm9pZDtcbiAgYmFjaz86IFJlYWN0Lk1vdXNlRXZlbnRIYW5kbGVyPEhUTUxEaXZFbGVtZW50PjtcbiAgZXJyb3I/OiB7bWVzc2FnZT86IHN0cmluZ307XG59XG5cbmNsYXNzIFN0b3JhZ2VBc3NldHNWaWV3ZXIgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQ8U3RvcmFnZUFzc2V0c1ZpZXdlclByb3BzPiB7XG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7YXNzZXRzLCBvbkxvYWRBc3NldCwgYmFjaywgZXJyb3J9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInN0b3JhZ2UtYXNzZXQtdmlld2VyXCI+XG4gICAgICAgIDxCYWNrTGluayBvbkNsaWNrPXtiYWNrfT5cbiAgICAgICAgICA8TGVmdEFycm93IGhlaWdodD1cIjEycHhcIiAvPlxuICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5zdG9yYWdlTWFwVmlld2VyLmJhY2snfSAvPlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9CYWNrTGluaz5cbiAgICAgICAge2Vycm9yICYmIDxTdHlsZWRFcnJvcj57ZXJyb3IubWVzc2FnZX08L1N0eWxlZEVycm9yPn1cbiAgICAgICAgPFN0eWxlZEFzc2V0R2FsbGVyeT5cbiAgICAgICAgICB7YXNzZXRzLm1hcChzcCA9PiAoXG4gICAgICAgICAgICA8QXNzZXRJdGVtIGFzc2V0PXtzcH0ga2V5PXtzcC5pZH0gb25DbGljaz17KCkgPT4gb25Mb2FkQXNzZXQoc3ApfSAvPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L1N0eWxlZEFzc2V0R2FsbGVyeT5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgU3RvcmFnZUFzc2V0c1ZpZXdlcjtcbiJdfQ==
147
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb2RhbHMvc3RvcmFnZS1tYXAtdmlld2VyLnRzeCJdLCJuYW1lcyI6WyJpbWFnZUgiLCJTdHlsZWRBc3NldEdhbGxlcnkiLCJzdHlsZWQiLCJkaXYiLCJhdHRycyIsImNsYXNzTmFtZSIsIlN0eWxlZEFzc2V0SXRlbSIsInByb3BzIiwidGhlbWUiLCJ0ZXh0Q29sb3JMVCIsIkJhY2tMaW5rIiwidGl0bGVDb2xvckxUIiwiU3R5bGVkRXJyb3IiLCJnZXREdXJhdGlvbiIsImxhc3QiLCJtb21lbnQiLCJkdXJhdGlvbiIsIkRhdGUiLCJ2YWx1ZU9mIiwiaHVtYW5pemUiLCJBc3NldEl0ZW0iLCJhc3NldCIsIm9uQ2xpY2siLCJpbWFnZVVybCIsImxhYmVsIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsImxhc3RVcGRhdGVkIiwiU3RvcmFnZUFzc2V0c1ZpZXdlciIsImFzc2V0cyIsIm9uTG9hZEFzc2V0IiwiYmFjayIsImVycm9yIiwibWVzc2FnZSIsIm1hcCIsInNwIiwiaWQiLCJSZWFjdCIsIkNvbXBvbmVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0JBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7OztBQUVBLElBQU1BLE1BQU0sR0FBRyxHQUFmOztBQUVBLElBQU1DLGtCQUFrQixHQUFHQyw2QkFBT0MsR0FBUCxDQUFXQyxLQUFYLENBQWlCO0FBQzFDQyxFQUFBQSxTQUFTLEVBQUU7QUFEK0IsQ0FBakIsQ0FBSCw4SkFBeEI7O0FBUUEsSUFBTUMsZUFBZSxHQUFHSiw2QkFBT0MsR0FBUCxDQUFXQyxLQUFYLENBQWlCO0FBQ3ZDQyxFQUFBQSxTQUFTLEVBQUU7QUFENEIsQ0FBakIsQ0FBSCxtb0NBbUJSLFVBQUFFLEtBQUs7QUFBQSxTQUFJQSxLQUFLLENBQUNDLEtBQU4sQ0FBWUMsV0FBaEI7QUFBQSxDQW5CRyxFQWdDUFQsTUFoQ08sRUEyRFIsVUFBQU8sS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZQyxXQUFoQjtBQUFBLENBM0RHLENBQXJCOztBQStEQSxJQUFNQyxRQUFRLEdBQUdSLDZCQUFPQyxHQUFWLGlWQUlILFVBQUFJLEtBQUs7QUFBQSxTQUFJQSxLQUFLLENBQUNDLEtBQU4sQ0FBWUcsWUFBaEI7QUFBQSxDQUpGLENBQWQ7O0FBb0JBLElBQU1DLFdBQVcsR0FBR1YsNkJBQU9DLEdBQVYscUpBQWpCOztBQU1BLElBQU1VLFdBQVcsR0FBRyxTQUFkQSxXQUFjO0FBQUEsTUFBQ0MsSUFBRCx1RUFBZ0IsQ0FBaEI7QUFBQSxTQUFzQkMsbUJBQU9DLFFBQVAsQ0FBZ0IsSUFBSUMsSUFBSixHQUFXQyxPQUFYLEtBQXVCSixJQUF2QyxFQUE2Q0ssUUFBN0MsRUFBdEI7QUFBQSxDQUFwQjs7QUFnQkEsSUFBTUMsU0FBbUMsR0FBRyxTQUF0Q0EsU0FBc0M7QUFBQSxNQUFFQyxLQUFGLFFBQUVBLEtBQUY7QUFBQSxNQUFTQyxPQUFULFFBQVNBLE9BQVQ7QUFBQSxzQkFDMUMsZ0NBQUMsZUFBRCxxQkFDRTtBQUFLLElBQUEsU0FBUyxFQUFDLGNBQWY7QUFBOEIsSUFBQSxPQUFPLEVBQUVBO0FBQXZDLEtBQ0dELEtBQUssQ0FBQ0UsUUFBTixpQkFBa0I7QUFBSyxJQUFBLEdBQUcsRUFBRUYsS0FBSyxDQUFDRTtBQUFoQixJQURyQixDQURGLGVBSUU7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLEtBQStCRixLQUFLLENBQUNHLEtBQU4sSUFBZUgsS0FBSyxDQUFDSSxLQUFwRCxDQUpGLGVBS0U7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLEtBQXdDSixLQUFLLENBQUNLLFdBQTlDLENBTEYsRUFNR0wsS0FBSyxDQUFDTSxXQUFOLGdCQUNDO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixrQkFDRSxnQ0FBQyw4QkFBRDtBQUNFLElBQUEsRUFBRSxFQUFFLHFDQUROO0FBRUUsSUFBQSxNQUFNLEVBQUU7QUFBQ0EsTUFBQUEsV0FBVyxFQUFFZCxXQUFXLENBQUNRLEtBQUssQ0FBQ00sV0FBUDtBQUF6QjtBQUZWLElBREYsQ0FERCxHQU9HLElBYk4sQ0FEMEM7QUFBQSxDQUE1Qzs7SUF5Qk1DLG1COzs7Ozs7Ozs7Ozs7V0FDSixrQkFBUztBQUFBLHdCQUNvQyxLQUFLckIsS0FEekM7QUFBQSxVQUNBc0IsTUFEQSxlQUNBQSxNQURBO0FBQUEsVUFDUUMsV0FEUixlQUNRQSxXQURSO0FBQUEsVUFDcUJDLElBRHJCLGVBQ3FCQSxJQURyQjtBQUFBLFVBQzJCQyxLQUQzQixlQUMyQkEsS0FEM0I7QUFHUCwwQkFDRTtBQUFLLFFBQUEsU0FBUyxFQUFDO0FBQWYsc0JBQ0UsZ0NBQUMsUUFBRDtBQUFVLFFBQUEsT0FBTyxFQUFFRDtBQUFuQixzQkFDRSxnQ0FBQyxnQkFBRDtBQUFXLFFBQUEsTUFBTSxFQUFDO0FBQWxCLFFBREYsZUFFRSwyREFDRSxnQ0FBQyw4QkFBRDtBQUFrQixRQUFBLEVBQUUsRUFBRTtBQUF0QixRQURGLENBRkYsQ0FERixFQU9HQyxLQUFLLGlCQUFJLGdDQUFDLFdBQUQsUUFBY0EsS0FBSyxDQUFDQyxPQUFwQixDQVBaLGVBUUUsZ0NBQUMsa0JBQUQsUUFDR0osTUFBTSxDQUFDSyxHQUFQLENBQVcsVUFBQUMsRUFBRTtBQUFBLDRCQUNaLGdDQUFDLFNBQUQ7QUFBVyxVQUFBLEtBQUssRUFBRUEsRUFBbEI7QUFBc0IsVUFBQSxHQUFHLEVBQUVBLEVBQUUsQ0FBQ0MsRUFBOUI7QUFBa0MsVUFBQSxPQUFPLEVBQUU7QUFBQSxtQkFBTU4sV0FBVyxDQUFDSyxFQUFELENBQWpCO0FBQUE7QUFBM0MsVUFEWTtBQUFBLE9BQWIsQ0FESCxDQVJGLENBREY7QUFnQkQ7OztFQXBCK0JFLGtCQUFNQyxTOztlQXVCekJWLG1CIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIzIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHtMZWZ0QXJyb3d9IGZyb20gJy4uL2NvbW1vbi9pY29ucyc7XG5pbXBvcnQge0Zvcm1hdHRlZE1lc3NhZ2V9IGZyb20gJ0BrZXBsZXIuZ2wvbG9jYWxpemF0aW9uJztcblxuY29uc3QgaW1hZ2VIID0gMTA4O1xuXG5jb25zdCBTdHlsZWRBc3NldEdhbGxlcnkgPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnc3RvcmFnZS1hc3NldC1nYWxsZXJ5J1xufSlgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZmxleC13cmFwOiB3cmFwO1xuYDtcblxuY29uc3QgU3R5bGVkQXNzZXRJdGVtID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ2Fzc2V0X19pdGVtJ1xufSlgXG4gIHdpZHRoOiAyMyU7XG4gIG1hcmdpbi1yaWdodDogMiU7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGhlaWdodDogMjQ1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICA6bGFzdCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmFzc2V0X190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9yTFR9O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgfVxuXG4gIC5hc3NldF9faW1hZ2Uge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgb3BhY2l0eTogMC45O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBoZWlnaHQ6ICR7aW1hZ2VIfXB4O1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgLmFzc2V0X19pbWFnZV9fY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgfVxuXG4gIC5hc3NldF9fbGFzdC11cGRhdGVkIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9yTFR9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrTGluayA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGl0bGVDb2xvckxUfTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gIDpob3ZlciB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbiAgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbmA7XG5cbmNvbnN0IFN0eWxlZEVycm9yID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6IHJlZDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuYDtcblxuY29uc3QgZ2V0RHVyYXRpb24gPSAobGFzdDogbnVtYmVyID0gMCkgPT4gbW9tZW50LmR1cmF0aW9uKG5ldyBEYXRlKCkudmFsdWVPZigpIC0gbGFzdCkuaHVtYW5pemUoKTtcblxuaW50ZXJmYWNlIEFzc2V0IHtcbiAgaW1hZ2VVcmw/OiBzdHJpbmc7XG4gIGxhYmVsPzogc3RyaW5nO1xuICB0aXRsZT86IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGxhc3RVcGRhdGVkPzogbnVtYmVyO1xuICBpZD86IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIEFzc2V0SXRlbVByb3BzIHtcbiAgYXNzZXQ6IEFzc2V0O1xuICBvbkNsaWNrOiBSZWFjdC5Nb3VzZUV2ZW50SGFuZGxlcjxIVE1MRGl2RWxlbWVudD47XG59XG5cbmNvbnN0IEFzc2V0SXRlbTogUmVhY3QuRkM8QXNzZXRJdGVtUHJvcHM+ID0gKHthc3NldCwgb25DbGlja30pID0+IChcbiAgPFN0eWxlZEFzc2V0SXRlbT5cbiAgICA8ZGl2IGNsYXNzTmFtZT1cImFzc2V0X19pbWFnZVwiIG9uQ2xpY2s9e29uQ2xpY2t9PlxuICAgICAge2Fzc2V0LmltYWdlVXJsICYmIDxpbWcgc3JjPXthc3NldC5pbWFnZVVybH0gLz59XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzc05hbWU9XCJhc3NldF9fdGl0bGVcIj57YXNzZXQubGFiZWwgfHwgYXNzZXQudGl0bGV9PC9kaXY+XG4gICAgPGRpdiBjbGFzc05hbWU9XCJhc3NldF9faW1hZ2VfX2NhcHRpb25cIj57YXNzZXQuZGVzY3JpcHRpb259PC9kaXY+XG4gICAge2Fzc2V0Lmxhc3RVcGRhdGVkID8gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJhc3NldF9fbGFzdC11cGRhdGVkXCI+XG4gICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgaWQ9eydtb2RhbC5zdG9yYWdlTWFwVmlld2VyLmxhc3RNb2RpZmllZCd9XG4gICAgICAgICAgdmFsdWVzPXt7bGFzdFVwZGF0ZWQ6IGdldER1cmF0aW9uKGFzc2V0Lmxhc3RVcGRhdGVkKX19XG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICApIDogbnVsbH1cbiAgPC9TdHlsZWRBc3NldEl0ZW0+XG4pO1xuXG5pbnRlcmZhY2UgU3RvcmFnZUFzc2V0c1ZpZXdlclByb3BzIHtcbiAgYXNzZXRzOiBBc3NldFtdO1xuICBvbkxvYWRBc3NldDogKGFzc2V0OiBBc3NldCkgPT4gdm9pZDtcbiAgYmFjaz86IFJlYWN0Lk1vdXNlRXZlbnRIYW5kbGVyPEhUTUxEaXZFbGVtZW50PjtcbiAgZXJyb3I/OiB7bWVzc2FnZT86IHN0cmluZ307XG59XG5cbmNsYXNzIFN0b3JhZ2VBc3NldHNWaWV3ZXIgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQ8U3RvcmFnZUFzc2V0c1ZpZXdlclByb3BzPiB7XG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7YXNzZXRzLCBvbkxvYWRBc3NldCwgYmFjaywgZXJyb3J9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInN0b3JhZ2UtYXNzZXQtdmlld2VyXCI+XG4gICAgICAgIDxCYWNrTGluayBvbkNsaWNrPXtiYWNrfT5cbiAgICAgICAgICA8TGVmdEFycm93IGhlaWdodD1cIjEycHhcIiAvPlxuICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5zdG9yYWdlTWFwVmlld2VyLmJhY2snfSAvPlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9CYWNrTGluaz5cbiAgICAgICAge2Vycm9yICYmIDxTdHlsZWRFcnJvcj57ZXJyb3IubWVzc2FnZX08L1N0eWxlZEVycm9yPn1cbiAgICAgICAgPFN0eWxlZEFzc2V0R2FsbGVyeT5cbiAgICAgICAgICB7YXNzZXRzLm1hcChzcCA9PiAoXG4gICAgICAgICAgICA8QXNzZXRJdGVtIGFzc2V0PXtzcH0ga2V5PXtzcC5pZH0gb25DbGljaz17KCkgPT4gb25Mb2FkQXNzZXQoc3ApfSAvPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L1N0eWxlZEFzc2V0R2FsbGVyeT5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgU3RvcmFnZUFzc2V0c1ZpZXdlcjtcbiJdfQ==
@@ -5,6 +5,7 @@ interface NotificationItemProps {
5
5
  id: string;
6
6
  type: string;
7
7
  message: string;
8
+ count?: number;
8
9
  };
9
10
  isExpanded?: boolean;
10
11
  removeNotification?: ActionHandler<typeof removeNotificationActions>;
@@ -16,13 +17,11 @@ export default function NotificationItemFactory(): {
16
17
  isExpanded: boolean;
17
18
  };
18
19
  componentDidMount(): void;
19
- render(): JSX.Element;
20
- context: any;
20
+ render(): React.JSX.Element;
21
+ context: unknown;
21
22
  setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<NotificationItemProps>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void;
22
23
  forceUpdate(callback?: (() => void) | undefined): void;
23
- readonly props: Readonly<NotificationItemProps> & Readonly<{
24
- children?: React.ReactNode;
25
- }>;
24
+ readonly props: Readonly<NotificationItemProps>;
26
25
  refs: {
27
26
  [key: string]: React.ReactInstance;
28
27
  };
@@ -43,13 +42,11 @@ export default function NotificationItemFactory(): {
43
42
  isExpanded: boolean;
44
43
  };
45
44
  componentDidMount(): void;
46
- render(): JSX.Element;
47
- context: any;
45
+ render(): React.JSX.Element;
46
+ context: unknown;
48
47
  setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<NotificationItemProps>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void;
49
48
  forceUpdate(callback?: (() => void) | undefined): void;
50
- readonly props: Readonly<NotificationItemProps> & Readonly<{
51
- children?: React.ReactNode;
52
- }>;
49
+ readonly props: Readonly<NotificationItemProps>;
53
50
  refs: {
54
51
  [key: string]: React.ReactInstance;
55
52
  };
@@ -1,4 +1,4 @@
1
- // Copyright (c) 2022 Uber Technologies, Inc.
1
+ // Copyright (c) 2023 Uber Technologies, Inc.
2
2
  //
3
3
  // Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  // of this software and associated documentation files (the "Software"), to deal
@@ -53,13 +53,21 @@ var _icons = require("../common/icons");
53
53
 
54
54
  var _reactMarkdown = _interopRequireDefault(require("react-markdown"));
55
55
 
56
- var _templateObject, _templateObject2, _templateObject3, _templateObject4;
56
+ var _constants = require("@kepler.gl/constants");
57
+
58
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
57
59
 
58
60
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
59
61
 
60
62
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
61
63
 
62
- var NotificationItemContent = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n color: #fff;\n display: flex;\n flex-direction: row;\n width: ", "px;\n height: ", "px;\n font-size: 11px;\n margin-bottom: 1rem;\n padding: 1em;\n border-radius: 4px;\n box-shadow: ", ";\n cursor: pointer;\n"])), function (props) {
64
+ var NotificationItemContentBlock = _styledComponents["default"].div.attrs({
65
+ className: 'notification-item--content-block'
66
+ })(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: block;\n position: relative;\n width: ", "px;\n margin-left: auto;\n"])), function (props) {
67
+ return props.theme.notificationPanelItemWidth * (1 + Number(props.isExpanded));
68
+ });
69
+
70
+ var NotificationItemContent = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n color: #fff;\n display: flex;\n flex-direction: row;\n width: ", "px;\n height: ", "px;\n font-size: 11px;\n margin-bottom: 1rem;\n padding: 1em;\n border-radius: 4px;\n box-shadow: ", ";\n cursor: pointer;\n"])), function (props) {
63
71
  return props.theme.notificationColors[props.type] || '#000';
64
72
  }, function (props) {
65
73
  return props.theme.notificationPanelItemWidth * (1 + Number(props.isExpanded));
@@ -69,11 +77,21 @@ var NotificationItemContent = _styledComponents["default"].div(_templateObject |
69
77
  return props.theme.boxShadow;
70
78
  });
71
79
 
72
- var DeleteIcon = (0, _styledComponents["default"])(_icons.Delete)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n"])));
80
+ var DeleteIcon = (0, _styledComponents["default"])(_icons.Delete)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n width: 13px;\n height: 13px;\n"])));
81
+
82
+ var NotificationCounter = _styledComponents["default"].div.attrs({
83
+ className: 'notification-item--counter'
84
+ })(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n font-size: 11px;\n font-weight: bold;\n text-align: center;\n left: -4px;\n bottom: -4px;\n border-radius: 50%;\n width: 20px;\n height: 20px;\n background-color: #ffffff;\n border: 1px solid ", ";\n color: ", ";\n box-shadow: ", ";\n"])), function (props) {
85
+ return props.theme.notificationColors[props.type] || '#000';
86
+ }, function (props) {
87
+ return props.theme.notificationColors[props.type] || '#000';
88
+ }, function (props) {
89
+ return props.theme.boxShadow;
90
+ });
73
91
 
74
92
  var NotificationMessage = _styledComponents["default"].div.attrs({
75
93
  className: 'notification-item--message'
76
- })(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n flex-grow: 2;\n width: ", "px;\n margin: 0 1em;\n overflow: ", ";\n padding-right: ", ";\n\n p {\n margin-top: 0;\n a {\n color: #fff;\n text-decoration: underline;\n }\n }\n"])), function (props) {
94
+ })(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n flex-grow: 2;\n width: ", "px;\n margin: 0 1em;\n overflow: ", ";\n padding-right: ", ";\n\n p {\n margin-top: 0;\n a {\n color: #fff;\n text-decoration: underline;\n }\n }\n"])), function (props) {
77
95
  return props.theme.notificationPanelItemWidth;
78
96
  }, function (props) {
79
97
  return props.isExpanded ? 'auto' : 'hidden';
@@ -81,13 +99,21 @@ var NotificationMessage = _styledComponents["default"].div.attrs({
81
99
  return props.isExpanded ? '1em' : 0;
82
100
  });
83
101
 
84
- var NotificationIcon = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n svg {\n vertical-align: text-top;\n }\n"])));
102
+ var NotificationIcon = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n svg {\n vertical-align: text-top;\n }\n"])));
85
103
 
86
104
  var icons = {
87
- info: /*#__PURE__*/_react["default"].createElement(_icons.Info, null),
88
- warning: /*#__PURE__*/_react["default"].createElement(_icons.Warning, null),
89
- error: /*#__PURE__*/_react["default"].createElement(_icons.Warning, null),
90
- success: /*#__PURE__*/_react["default"].createElement(_icons.Checkmark, null)
105
+ info: /*#__PURE__*/_react["default"].createElement(_icons.Info, {
106
+ "data-testid": _constants.dataTestIds.infoIcon
107
+ }),
108
+ warning: /*#__PURE__*/_react["default"].createElement(_icons.Warning, {
109
+ "data-testid": _constants.dataTestIds.warningIcon
110
+ }),
111
+ error: /*#__PURE__*/_react["default"].createElement(_icons.Warning, {
112
+ "data-testid": _constants.dataTestIds.errorIcon
113
+ }),
114
+ success: /*#__PURE__*/_react["default"].createElement(_icons.Checkmark, {
115
+ "data-testid": _constants.dataTestIds.successIcon
116
+ })
91
117
  };
92
118
 
93
119
  var LinkRenderer = function LinkRenderer(props) {
@@ -138,7 +164,13 @@ function NotificationItemFactory() {
138
164
  notification = _this$props.notification,
139
165
  removeNotification = _this$props.removeNotification;
140
166
  var isExpanded = this.state.isExpanded;
141
- return /*#__PURE__*/_react["default"].createElement(NotificationItemContent, {
167
+ return /*#__PURE__*/_react["default"].createElement(NotificationItemContentBlock, {
168
+ isExpanded: isExpanded,
169
+ theme: this.props.theme
170
+ }, (notification.count || 0) > 1 ? /*#__PURE__*/_react["default"].createElement(NotificationCounter, {
171
+ type: notification.type,
172
+ theme: this.props.theme
173
+ }, notification.count) : null, /*#__PURE__*/_react["default"].createElement(NotificationItemContent, {
142
174
  className: "notification-item",
143
175
  type: notification.type,
144
176
  isExpanded: isExpanded,
@@ -164,10 +196,10 @@ function NotificationItemFactory() {
164
196
  onClick: function onClick() {
165
197
  return removeNotification(notification.id);
166
198
  }
167
- })) : null);
199
+ })) : null));
168
200
  }
169
201
  }]);
170
202
  return NotificationItem;
171
203
  }(_react.Component);
172
204
  }
173
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub3RpZmljYXRpb24tcGFuZWwvbm90aWZpY2F0aW9uLWl0ZW0udHN4Il0sIm5hbWVzIjpbIk5vdGlmaWNhdGlvbkl0ZW1Db250ZW50Iiwic3R5bGVkIiwiZGl2IiwicHJvcHMiLCJ0aGVtZSIsIm5vdGlmaWNhdGlvbkNvbG9ycyIsInR5cGUiLCJub3RpZmljYXRpb25QYW5lbEl0ZW1XaWR0aCIsIk51bWJlciIsImlzRXhwYW5kZWQiLCJub3RpZmljYXRpb25QYW5lbEl0ZW1IZWlnaHQiLCJib3hTaGFkb3ciLCJEZWxldGVJY29uIiwiRGVsZXRlIiwiTm90aWZpY2F0aW9uTWVzc2FnZSIsImF0dHJzIiwiY2xhc3NOYW1lIiwiTm90aWZpY2F0aW9uSWNvbiIsImljb25zIiwiaW5mbyIsIndhcm5pbmciLCJlcnJvciIsInN1Y2Nlc3MiLCJMaW5rUmVuZGVyZXIiLCJocmVmIiwiY2hpbGRyZW4iLCJOb3RpZmljYXRpb25JdGVtRmFjdG9yeSIsInNldFN0YXRlIiwibm90aWZpY2F0aW9uIiwicmVtb3ZlTm90aWZpY2F0aW9uIiwic3RhdGUiLCJtZXNzYWdlIiwibGluayIsImlkIiwiQ29tcG9uZW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7Ozs7O0FBV0EsSUFBTUEsdUJBQXVCLEdBQUdDLDZCQUFPQyxHQUFWLGdWQUNQLFVBQUFDLEtBQUs7QUFBQSxTQUFJQSxLQUFLLENBQUNDLEtBQU4sQ0FBWUMsa0JBQVosQ0FBK0JGLEtBQUssQ0FBQ0csSUFBckMsS0FBOEMsTUFBbEQ7QUFBQSxDQURFLEVBS2xCLFVBQUFILEtBQUs7QUFBQSxTQUFJQSxLQUFLLENBQUNDLEtBQU4sQ0FBWUcsMEJBQVosSUFBMEMsSUFBSUMsTUFBTSxDQUFDTCxLQUFLLENBQUNNLFVBQVAsQ0FBcEQsQ0FBSjtBQUFBLENBTGEsRUFNakIsVUFBQU4sS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FB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QUFFd0IsWUFBWSxDQUFDRyxPQUFwQztBQUE2QyxVQUFBLFNBQVMsRUFBRTtBQUFDQyxZQUFBQSxJQUFJLEVBQUVUO0FBQVA7QUFBeEQsVUFERixDQVRGLEVBWUcsT0FBT00sa0JBQVAsS0FBOEIsVUFBOUIsZ0JBQ0M7QUFBSyxVQUFBLFNBQVMsRUFBQztBQUFmLHdCQUNFLGdDQUFDLFVBQUQ7QUFBWSxVQUFBLE1BQU0sRUFBQyxNQUFuQjtBQUEwQixVQUFBLE9BQU8sRUFBRTtBQUFBLG1CQUFNQSxrQkFBa0IsQ0FBQ0QsWUFBWSxDQUFDSyxFQUFkLENBQXhCO0FBQUE7QUFBbkMsVUFERixDQURELEdBSUcsSUFoQk4sQ0FERjtBQW9CRDtBQW5DSDtBQUFBO0FBQUEsSUFBc0NDLGdCQUF0QztBQXFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge0RlbGV0ZSwgSW5mbywgV2FybmluZywgQ2hlY2ttYXJrfSBmcm9tICcuLi9jb21tb24vaWNvbnMnO1xuaW1wb3J0IFJlYWN0TWFya2Rvd24gZnJvbSAncmVhY3QtbWFya2Rvd24nO1xuaW1wb3J0IHtcbiAgQWN0aW9uSGFuZGxlcixcbiAgcmVtb3ZlTm90aWZpY2F0aW9uIGFzIHJlbW92ZU5vdGlmaWNhdGlvbkFjdGlvbnNcbn0gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcblxuaW50ZXJmYWNlIE5vdGlmaWNhdGlvbkl0ZW1Db250ZW50UHJvcHMge1xuICB0eXBlOiBzdHJpbmc7XG4gIGlzRXhwYW5kZWQ/OiBib29sZWFuO1xufVxuXG5jb25zdCBOb3RpZmljYXRpb25JdGVtQ29udGVudCA9IHN0eWxlZC5kaXY8Tm90aWZpY2F0aW9uSXRlbUNvbnRlbnRQcm9wcz5gXG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubm90aWZpY2F0aW9uQ29sb3JzW3Byb3BzLnR5cGVdIHx8ICcjMDAwJ307XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB3aWR0aDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5ub3RpZmljYXRpb25QYW5lbEl0ZW1XaWR0aCAqICgxICsgTnVtYmVyKHByb3BzLmlzRXhwYW5kZWQpKX1weDtcbiAgaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLm5vdGlmaWNhdGlvblBhbmVsSXRlbUhlaWdodCAqICgxICsgTnVtYmVyKHByb3BzLmlzRXhwYW5kZWQpKX1weDtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nOiAxZW07XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5ib3hTaGFkb3d9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5gO1xuXG5jb25zdCBEZWxldGVJY29uID0gc3R5bGVkKERlbGV0ZSlgXG4gIGN1cnNvcjogcG9pbnRlcjtcbmA7XG5cbmludGVyZmFjZSBOb3RpZmljYXRpb25NZXNzYWdlUHJvcHMge1xuICBpc0V4cGFuZGVkPzogYm9vbGVhbjtcbn1cblxuY29uc3QgTm90aWZpY2F0aW9uTWVzc2FnZSA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdub3RpZmljYXRpb24taXRlbS0tbWVzc2FnZSdcbn0pPE5vdGlmaWNhdGlvbk1lc3NhZ2VQcm9wcz5gXG4gIGZsZXgtZ3JvdzogMjtcbiAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubm90aWZpY2F0aW9uUGFuZWxJdGVtV2lkdGh9cHg7XG4gIG1hcmdpbjogMCAxZW07XG4gIG92ZXJmbG93OiAke3Byb3BzID0+IChwcm9wcy5pc0V4cGFuZGVkID8gJ2F1dG8nIDogJ2hpZGRlbicpfTtcbiAgcGFkZGluZy1yaWdodDogJHtwcm9wcyA9PiAocHJvcHMuaXNFeHBhbmRlZCA/ICcxZW0nIDogMCl9O1xuXG4gIHAge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgYSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuYDtcblxuY29uc3QgTm90aWZpY2F0aW9uSWNvbiA9IHN0eWxlZC5kaXZgXG4gIHN2ZyB7XG4gICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuICB9XG5gO1xuXG5jb25zdCBpY29ucyA9IHtcbiAgaW5mbzogPEluZm8gLz4sXG4gIHdhcm5pbmc6IDxXYXJuaW5nIC8+LFxuICBlcnJvcjogPFdhcm5pbmcgLz4sXG4gIHN1Y2Nlc3M6IDxDaGVja21hcmsgLz5cbn07XG5cbmNvbnN0IExpbmtSZW5kZXJlciA9IHByb3BzID0+IHtcbiAgcmV0dXJuIChcbiAgICA8YSBocmVmPXtwcm9wcy5ocmVmfSB0YXJnZXQ9XCJfYmxhbmtcIiByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCI+XG4gICAgICB7cHJvcHMuY2hpbGRyZW59XG4gICAgPC9hPlxuICApO1xufTtcblxuaW50ZXJmYWNlIE5vdGlmaWNhdGlvbkl0ZW1Qcm9wcyB7XG4gIG5vdGlmaWNhdGlvbjoge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgdHlwZTogc3RyaW5nO1xuICAgIG1lc3NhZ2U6IHN0cmluZztcbiAgfTtcbiAgaXNFeHBhbmRlZD86IGJvb2xlYW47XG4gIHJlbW92ZU5vdGlmaWNhdGlvbj86IEFjdGlvbkhhbmRsZXI8dHlwZW9mIHJlbW92ZU5vdGlmaWNhdGlvbkFjdGlvbnM+O1xuICB0aGVtZT86IGFueTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gTm90aWZpY2F0aW9uSXRlbUZhY3RvcnkoKSB7XG4gIHJldHVybiBjbGFzcyBOb3RpZmljYXRpb25JdGVtIGV4dGVuZHMgQ29tcG9uZW50PE5vdGlmaWNhdGlvbkl0ZW1Qcm9wcz4ge1xuICAgIHN0YXRlID0ge1xuICAgICAgaXNFeHBhbmRlZDogZmFsc2VcbiAgICB9O1xuXG4gICAgY29tcG9uZW50RGlkTW91bnQoKSB7XG4gICAgICBpZiAodGhpcy5wcm9wcy5pc0V4cGFuZGVkKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe2lzRXhwYW5kZWQ6IHRydWV9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7bm90aWZpY2F0aW9uLCByZW1vdmVOb3RpZmljYXRpb259ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IHtpc0V4cGFuZGVkfSA9IHRoaXMuc3RhdGU7XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxOb3RpZmljYXRpb25JdGVtQ29udGVudFxuICAgICAgICAgIGNsYXNzTmFtZT1cIm5vdGlmaWNhdGlvbi1pdGVtXCJcbiAgICAgICAgICB0eXBlPXtub3RpZmljYXRpb24udHlwZX1cbiAgICAgICAgICBpc0V4cGFuZGVkPXtpc0V4cGFuZGVkfVxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHRoaXMuc2V0U3RhdGUoe2lzRXhwYW5kZWQ6ICFpc0V4cGFuZGVkfSl9XG4gICAgICAgID5cbiAgICAgICAgICA8Tm90aWZpY2F0aW9uSWNvbiBjbGFzc05hbWU9XCJub3RpZmljYXRpb24taXRlbS0taWNvblwiPlxuICAgICAgICAgICAge2ljb25zW25vdGlmaWNhdGlvbi50eXBlXX1cbiAgICAgICAgICA8L05vdGlmaWNhdGlvbkljb24+XG4gICAgICAgICAgPE5vdGlmaWNhdGlvbk1lc3NhZ2UgaXNFeHBhbmRlZD17aXNFeHBhbmRlZH0gdGhlbWU9e3RoaXMucHJvcHMudGhlbWV9PlxuICAgICAgICAgICAgPFJlYWN0TWFya2Rvd24gc291cmNlPXtub3RpZmljYXRpb24ubWVzc2FnZX0gcmVuZGVyZXJzPXt7bGluazogTGlua1JlbmRlcmVyfX0gLz5cbiAgICAgICAgICA8L05vdGlmaWNhdGlvbk1lc3NhZ2U+XG4gICAgICAgICAge3R5cGVvZiByZW1vdmVOb3RpZmljYXRpb24gPT09ICdmdW5jdGlvbicgPyAoXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm5vdGlmaWNhdGlvbi1pdGVtLS1hY3Rpb25cIj5cbiAgICAgICAgICAgICAgPERlbGV0ZUljb24gaGVpZ2h0PVwiMTBweFwiIG9uQ2xpY2s9eygpID0+IHJlbW92ZU5vdGlmaWNhdGlvbihub3RpZmljYXRpb24uaWQpfSAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvTm90aWZpY2F0aW9uSXRlbUNvbnRlbnQ+XG4gICAgICApO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
205
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub3RpZmljYXRpb24tcGFuZWwvbm90aWZpY2F0aW9uLWl0ZW0udHN4Il0sIm5hbWVzIjpbIk5vdGlmaWNhdGlvbkl0ZW1Db250ZW50QmxvY2siLCJzdHlsZWQiLCJkaXYiLCJhdHRycyIsImNsYXNzTmFtZSIsInByb3BzIiwidGhlbWUiLCJub3RpZmljYXRpb25QYW5lbEl0ZW1XaWR0aCIsIk51bWJlciIsImlzRXhwYW5kZWQiLCJOb3RpZmljYXRpb25JdGVtQ29udGVudCIsIm5vdGlmaWNhdGlvbkNvbG9ycyIsInR5cGUiLCJub3RpZmljYXRpb25QYW5lbEl0ZW1IZWlnaHQiLCJib3hTaGFkb3ciLCJEZWxldGVJY29uIiwiRGVsZXRlIiwiTm90aWZpY2F0aW9uQ291bnRlciIsIk5vdGlmaWNhdGlvbk1lc3NhZ2UiLCJOb3RpZmljYXRpb25JY29uIiwiaWNvbnMiLCJpbmZvIiwiZGF0YVRlc3RJZHMiLCJpbmZvSWNvbiIsIndhcm5pbmciLCJ3YXJuaW5nSWNvbiIsImVycm9yIiwiZXJyb3JJY29uIiwic3VjY2VzcyIsInN1Y2Nlc3NJY29uIiwiTGlua1JlbmRlcmVyIiwiaHJlZiIsImNoaWxkcmVuIiwiTm90aWZpY2F0aW9uSXRlbUZhY3RvcnkiLCJzZXRTdGF0ZSIsIm5vdGlmaWNhdGlvbiIsInJlbW92ZU5vdGlmaWNhdGlvbiIsInN0YXRlIiwiY291bnQiLCJtZXNzYWdlIiwibGluayIsImlkIiwiQ29tcG9uZW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7Ozs7O0FBT0EsSUFBTUEsNEJBQTRCLEdBQUdDLDZCQUFPQyxHQUFQLENBQVdDLEtBQVgsQ0FBaUI7QUFDcERDLEVBQUFBLFNBQVMsRUFBRTtBQUR5QyxDQUFqQixDQUFILDJLQUt2QixVQUFBQyxLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDQyxLQUFOLENBQVlDLDBCQUFaLElBQTBDLElB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QyxnQkFBRDtBQUFrQixVQUFBLFNBQVMsRUFBQztBQUE1QixXQUNHVyxLQUFLLENBQUNlLFlBQVksQ0FBQ3ZCLElBQWQsQ0FEUixDQU5GLGVBU0UsZ0NBQUMsbUJBQUQ7QUFBcUIsVUFBQSxVQUFVLEVBQUVILFVBQWpDO0FBQTZDLFVBQUEsS0FBSyxFQUFFLEtBQUtKLEtBQUwsQ0FBV0M7QUFBL0Qsd0JBQ0UsZ0NBQUMseUJBQUQ7QUFBZSxVQUFBLE1BQU0sRUFBRTZCLFlBQVksQ0FBQ0ksT0FBcEM7QUFBNkMsVUFBQSxTQUFTLEVBQUU7QUFBQ0MsWUFBQUEsSUFBSSxFQUFFVjtBQUFQO0FBQXhELFVBREYsQ0FURixFQVlHLE9BQU9NLGtCQUFQLEtBQThCLFVBQTlCLGdCQUNDO0FBQUssVUFBQSxTQUFTLEVBQUM7QUFBZix3QkFDRSxnQ0FBQyxVQUFEO0FBQVksVUFBQSxNQUFNLEVBQUMsTUFBbkI7QUFBMEIsVUFBQSxPQUFPLEVBQUU7QUFBQSxtQkFBTUEsa0JBQWtCLENBQUNELFlBQVksQ0FBQ00sRUFBZCxDQUF4QjtBQUFBO0FBQW5DLFVBREYsQ0FERCxHQUlHLElBaEJOLENBTkYsQ0FERjtBQTJCRDtBQTFDSDtBQUFBO0FBQUEsSUFBc0NDLGdCQUF0QztBQTRDRCIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMyBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge0RlbGV0ZSwgSW5mbywgV2FybmluZywgQ2hlY2ttYXJrfSBmcm9tICcuLi9jb21tb24vaWNvbnMnO1xuaW1wb3J0IFJlYWN0TWFya2Rvd24gZnJvbSAncmVhY3QtbWFya2Rvd24nO1xuaW1wb3J0IHtkYXRhVGVzdElkc30gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuaW1wb3J0IHtBY3Rpb25IYW5kbGVyLCByZW1vdmVOb3RpZmljYXRpb24gYXMgcmVtb3ZlTm90aWZpY2F0aW9uQWN0aW9uc30gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcblxuaW50ZXJmYWNlIE5vdGlmaWNhdGlvbkl0ZW1Db250ZW50QmxvY2tQcm9wcyB7XG4gIGlzRXhwYW5kZWQ/OiBib29sZWFuO1xufVxuXG5jb25zdCBOb3RpZmljYXRpb25JdGVtQ29udGVudEJsb2NrID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ25vdGlmaWNhdGlvbi1pdGVtLS1jb250ZW50LWJsb2NrJ1xufSk8Tm90aWZpY2F0aW9uSXRlbUNvbnRlbnRCbG9ja1Byb3BzPmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubm90aWZpY2F0aW9uUGFuZWxJdGVtV2lkdGggKiAoMSArIE51bWJlcihwcm9wcy5pc0V4cGFuZGVkKSl9cHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuYDtcblxuaW50ZXJmYWNlIE5vdGlmaWNhdGlvbkl0ZW1Db250ZW50UHJvcHMge1xuICB0eXBlOiBzdHJpbmc7XG4gIGlzRXhwYW5kZWQ/OiBib29sZWFuO1xufVxuXG5jb25zdCBOb3RpZmljYXRpb25JdGVtQ29udGVudCA9IHN0eWxlZC5kaXY8Tm90aWZpY2F0aW9uSXRlbUNvbnRlbnRQcm9wcz5gXG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubm90aWZpY2F0aW9uQ29sb3JzW3Byb3BzLnR5cGVdIHx8ICcjMDAwJ307XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB3aWR0aDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5ub3RpZmljYXRpb25QYW5lbEl0ZW1XaWR0aCAqICgxICsgTnVtYmVyKHByb3BzLmlzRXhwYW5kZWQpKX1weDtcbiAgaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLm5vdGlmaWNhdGlvblBhbmVsSXRlbUhlaWdodCAqICgxICsgTnVtYmVyKHByb3BzLmlzRXhwYW5kZWQpKX1weDtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nOiAxZW07XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5ib3hTaGFkb3d9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5gO1xuXG5jb25zdCBEZWxldGVJY29uID0gc3R5bGVkKERlbGV0ZSlgXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDEzcHg7XG4gIGhlaWdodDogMTNweDtcbmA7XG5cbmludGVyZmFjZSBOb3RpZmljYXRpb25Db3VudGVyUHJvcHMge1xuICB0eXBlOiBzdHJpbmc7XG59XG5cbmNvbnN0IE5vdGlmaWNhdGlvbkNvdW50ZXIgPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnbm90aWZpY2F0aW9uLWl0ZW0tLWNvdW50ZXInXG59KTxOb3RpZmljYXRpb25Db3VudGVyUHJvcHM+YFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGVmdDogLTRweDtcbiAgYm90dG9tOiAtNHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubm90aWZpY2F0aW9uQ29sb3JzW3Byb3BzLnR5cGVdIHx8ICcjMDAwJ307XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLm5vdGlmaWNhdGlvbkNvbG9yc1twcm9wcy50eXBlXSB8fCAnIzAwMCd9O1xuICBib3gtc2hhZG93OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmJveFNoYWRvd307XG5gO1xuXG5pbnRlcmZhY2UgTm90aWZpY2F0aW9uTWVzc2FnZVByb3BzIHtcbiAgaXNFeHBhbmRlZD86IGJvb2xlYW47XG59XG5cbmNvbnN0IE5vdGlmaWNhdGlvbk1lc3NhZ2UgPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnbm90aWZpY2F0aW9uLWl0ZW0tLW1lc3NhZ2UnXG59KTxOb3RpZmljYXRpb25NZXNzYWdlUHJvcHM+YFxuICBmbGV4LWdyb3c6IDI7XG4gIHdpZHRoOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLm5vdGlmaWNhdGlvblBhbmVsSXRlbVdpZHRofXB4O1xuICBtYXJnaW46IDAgMWVtO1xuICBvdmVyZmxvdzogJHtwcm9wcyA9PiAocHJvcHMuaXNFeHBhbmRlZCA/ICdhdXRvJyA6ICdoaWRkZW4nKX07XG4gIHBhZGRpbmctcmlnaHQ6ICR7cHJvcHMgPT4gKHByb3BzLmlzRXhwYW5kZWQgPyAnMWVtJyA6IDApfTtcblxuICBwIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IE5vdGlmaWNhdGlvbkljb24gPSBzdHlsZWQuZGl2YFxuICBzdmcge1xuICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbiAgfVxuYDtcblxuY29uc3QgaWNvbnMgPSB7XG4gIGluZm86IDxJbmZvIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkcy5pbmZvSWNvbn0gLz4sXG4gIHdhcm5pbmc6IDxXYXJuaW5nIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkcy53YXJuaW5nSWNvbn0gLz4sXG4gIGVycm9yOiA8V2FybmluZyBkYXRhLXRlc3RpZD17ZGF0YVRlc3RJZHMuZXJyb3JJY29ufSAvPixcbiAgc3VjY2VzczogPENoZWNrbWFyayBkYXRhLXRlc3RpZD17ZGF0YVRlc3RJZHMuc3VjY2Vzc0ljb259IC8+XG59O1xuXG5jb25zdCBMaW5rUmVuZGVyZXIgPSBwcm9wcyA9PiB7XG4gIHJldHVybiAoXG4gICAgPGEgaHJlZj17cHJvcHMuaHJlZn0gdGFyZ2V0PVwiX2JsYW5rXCIgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiPlxuICAgICAge3Byb3BzLmNoaWxkcmVufVxuICAgIDwvYT5cbiAgKTtcbn07XG5cbmludGVyZmFjZSBOb3RpZmljYXRpb25JdGVtUHJvcHMge1xuICBub3RpZmljYXRpb246IHtcbiAgICBpZDogc3RyaW5nO1xuICAgIHR5cGU6IHN0cmluZztcbiAgICBtZXNzYWdlOiBzdHJpbmc7XG4gICAgY291bnQ/OiBudW1iZXI7XG4gIH07XG4gIGlzRXhwYW5kZWQ/OiBib29sZWFuO1xuICByZW1vdmVOb3RpZmljYXRpb24/OiBBY3Rpb25IYW5kbGVyPHR5cGVvZiByZW1vdmVOb3RpZmljYXRpb25BY3Rpb25zPjtcbiAgdGhlbWU/OiBhbnk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIE5vdGlmaWNhdGlvbkl0ZW1GYWN0b3J5KCkge1xuICByZXR1cm4gY2xhc3MgTm90aWZpY2F0aW9uSXRlbSBleHRlbmRzIENvbXBvbmVudDxOb3RpZmljYXRpb25JdGVtUHJvcHM+IHtcbiAgICBzdGF0ZSA9IHtcbiAgICAgIGlzRXhwYW5kZWQ6IGZhbHNlXG4gICAgfTtcblxuICAgIGNvbXBvbmVudERpZE1vdW50KCkge1xuICAgICAgaWYgKHRoaXMucHJvcHMuaXNFeHBhbmRlZCkge1xuICAgICAgICB0aGlzLnNldFN0YXRlKHtpc0V4cGFuZGVkOiB0cnVlfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmVuZGVyKCkge1xuICAgICAgY29uc3Qge25vdGlmaWNhdGlvbiwgcmVtb3ZlTm90aWZpY2F0aW9ufSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCB7aXNFeHBhbmRlZH0gPSB0aGlzLnN0YXRlO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8Tm90aWZpY2F0aW9uSXRlbUNvbnRlbnRCbG9jayBpc0V4cGFuZGVkPXtpc0V4cGFuZGVkfSB0aGVtZT17dGhpcy5wcm9wcy50aGVtZX0+XG4gICAgICAgICAgeyhub3RpZmljYXRpb24uY291bnQgfHwgMCkgPiAxID8gKFxuICAgICAgICAgICAgPE5vdGlmaWNhdGlvbkNvdW50ZXIgdHlwZT17bm90aWZpY2F0aW9uLnR5cGV9IHRoZW1lPXt0aGlzLnByb3BzLnRoZW1lfT5cbiAgICAgICAgICAgICAge25vdGlmaWNhdGlvbi5jb3VudH1cbiAgICAgICAgICAgIDwvTm90aWZpY2F0aW9uQ291bnRlcj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICA8Tm90aWZpY2F0aW9uSXRlbUNvbnRlbnRcbiAgICAgICAgICAgIGNsYXNzTmFtZT1cIm5vdGlmaWNhdGlvbi1pdGVtXCJcbiAgICAgICAgICAgIHR5cGU9e25vdGlmaWNhdGlvbi50eXBlfVxuICAgICAgICAgICAgaXNFeHBhbmRlZD17aXNFeHBhbmRlZH1cbiAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHRoaXMuc2V0U3RhdGUoe2lzRXhwYW5kZWQ6ICFpc0V4cGFuZGVkfSl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPE5vdGlmaWNhdGlvbkljb24gY2xhc3NOYW1lPVwibm90aWZpY2F0aW9uLWl0ZW0tLWljb25cIj5cbiAgICAgICAgICAgICAge2ljb25zW25vdGlmaWNhdGlvbi50eXBlXX1cbiAgICAgICAgICAgIDwvTm90aWZpY2F0aW9uSWNvbj5cbiAgICAgICAgICAgIDxOb3RpZmljYXRpb25NZXNzYWdlIGlzRXhwYW5kZWQ9e2lzRXhwYW5kZWR9IHRoZW1lPXt0aGlzLnByb3BzLnRoZW1lfT5cbiAgICAgICAgICAgICAgPFJlYWN0TWFya2Rvd24gc291cmNlPXtub3RpZmljYXRpb24ubWVzc2FnZX0gcmVuZGVyZXJzPXt7bGluazogTGlua1JlbmRlcmVyfX0gLz5cbiAgICAgICAgICAgIDwvTm90aWZpY2F0aW9uTWVzc2FnZT5cbiAgICAgICAgICAgIHt0eXBlb2YgcmVtb3ZlTm90aWZpY2F0aW9uID09PSAnZnVuY3Rpb24nID8gKFxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm5vdGlmaWNhdGlvbi1pdGVtLS1hY3Rpb25cIj5cbiAgICAgICAgICAgICAgICA8RGVsZXRlSWNvbiBoZWlnaHQ9XCIxMHB4XCIgb25DbGljaz17KCkgPT4gcmVtb3ZlTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbi5pZCl9IC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPC9Ob3RpZmljYXRpb25JdGVtQ29udGVudD5cbiAgICAgICAgPC9Ob3RpZmljYXRpb25JdGVtQ29udGVudEJsb2NrPlxuICAgICAgKTtcbiAgICB9XG4gIH07XG59XG4iXX0=
@@ -1,4 +1,4 @@
1
- // Copyright (c) 2022 Uber Technologies, Inc.
1
+ // Copyright (c) 2023 Uber Technologies, Inc.
2
2
  //
3
3
  // Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  // of this software and associated documentation files (the "Software"), to deal
@@ -103,4 +103,4 @@ function NotificationPanelFactory(NotificationItem) {
103
103
 
104
104
  return NotificationPanel;
105
105
  }
106
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ub3RpZmljYXRpb24tcGFuZWwudHN4Il0sIm5hbWVzIjpbIk5vdGlmaWNhdGlvblBhbmVsQ29udGVudCIsInN0eWxlZCIsImRpdiIsIk5vdGlmaWNhdGlvblBhbmVsRmFjdG9yeSIsImRlcHMiLCJOb3RpZmljYXRpb25JdGVtRmFjdG9yeSIsIk5vdGlmaWNhdGlvbkl0ZW0iLCJOb3RpZmljYXRpb25QYW5lbFVubWVtb2l6ZWQiLCJnbG9iYWxOb3RpZmljYXRpb25zIiwicHJvcHMiLCJub3RpZmljYXRpb25zIiwiZmlsdGVyIiwibiIsInRvcGljIiwiREVGQVVMVF9OT1RJRklDQVRJT05fVE9QSUNTIiwiZ2xvYmFsIiwiZGlzcGxheSIsImxlbmd0aCIsIm1hcCIsImlkIiwicmVtb3ZlTm90aWZpY2F0aW9uIiwiQ29tcG9uZW50IiwiTm90aWZpY2F0aW9uUGFuZWwiLCJSZWFjdCIsIm1lbW8iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBRUE7O0FBQ0E7Ozs7Ozs7O0FBSUEsSUFBTUEsd0JBQXdCLEdBQUdDLDZCQUFPQyxHQUFWLHlWQUE5Qjs7QUFlQUMsd0JBQXdCLENBQUNDLElBQXpCLEdBQWdDLENBQUNDLDRCQUFELENBQWhDOztBQU9lLFNBQVNGLHdCQUFULENBQ2JHLGdCQURhLEVBRWlDO0FBQUEsTUFDeENDLDJCQUR3QztBQUFBOztBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQSxhQUk1QyxrQkFBUztBQUFBOztBQUNQLFlBQU1DLG1CQUFtQixHQUFHLEtBQUtDLEtBQUwsQ0FBV0MsYUFBWCxDQUF5QkMsTUFBekIsQ0FDMUIsVUFBQUMsQ0FBQztBQUFBLGlCQUFJQSxDQUFDLENBQUNDLEtBQUYsS0FBWUMsdUNBQTRCQyxNQUE1QztBQUFBLFNBRHlCLENBQTVCO0FBR0EsNEJBQ0UsZ0NBQUMsd0JBQUQ7QUFDRSxVQUFBLFNBQVMsRUFBQyxvQkFEWjtBQUVFLFVBQUEsS0FBSyxFQUFFO0FBQUNDLFlBQUFBLE9BQU8sRUFBRVIsbUJBQW1CLENBQUNTLE1BQXBCLEdBQTZCLE9BQTdCLEdBQXVDO0FBQWpEO0FBRlQsV0FJR1QsbUJBQW1CLENBQUNVLEdBQXBCLENBQXdCLFVBQUFOLENBQUM7QUFBQSw4QkFDeEIsZ0NBQUMsZ0JBQUQ7QUFDRSxZQUFBLEdBQUcsRUFBRUEsQ0FBQyxDQUFDTyxFQURUO0FBRUUsWUFBQSxZQUFZLEVBQUVQLENBRmhCO0FBR0UsWUFBQSxrQkFBa0IsRUFBRSxLQUFJLENBQUNILEtBQUwsQ0FBV1c7QUFIakMsWUFEd0I7QUFBQSxTQUF6QixDQUpILENBREY7QUFjRDtBQXRCMkM7QUFBQTtBQUFBLElBQ0pDLGdCQURJOztBQUFBLG1DQUN4Q2QsMkJBRHdDLGlCQUV2QixtQkFGdUI7O0FBeUI5QyxNQUFNZSxpQkFBaUIsZ0JBQUlDLGtCQUFNQyxJQUFOLENBQ3pCakIsMkJBRHlCLENBQTNCOztBQUdBLFNBQU9lLGlCQUFQO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMjIgVWJlciBUZWNobm9sb2dpZXMsIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5pbXBvcnQgUmVhY3QsIHtDb21wb25lbnR9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuXG5pbXBvcnQgTm90aWZpY2F0aW9uSXRlbUZhY3RvcnkgZnJvbSAnLi9ub3RpZmljYXRpb24tcGFuZWwvbm90aWZpY2F0aW9uLWl0ZW0nO1xuaW1wb3J0IHtERUZBVUxUX05PVElGSUNBVElPTl9UT1BJQ1N9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7Tm90aWZpY2F0aW9uc30gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge3JlbW92ZU5vdGlmaWNhdGlvbn0gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcblxuY29uc3QgTm90aWZpY2F0aW9uUGFuZWxDb250ZW50ID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgcGFkZGluZzogNHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxZW07XG4gIHJpZ2h0OiAxZW07XG4gIHotaW5kZXg6IDEwMDAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuYDtcblxuTm90aWZpY2F0aW9uUGFuZWxGYWN0b3J5LmRlcHMgPSBbTm90aWZpY2F0aW9uSXRlbUZhY3RvcnldO1xuXG5pbnRlcmZhY2UgTm90aWZpY2F0aW9uUGFuZWxQcm9wcyB7XG4gIHJlbW92ZU5vdGlmaWNhdGlvbj86IHR5cGVvZiByZW1vdmVOb3RpZmljYXRpb247XG4gIG5vdGlmaWNhdGlvbnM6IE5vdGlmaWNhdGlvbnNbXTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gTm90aWZpY2F0aW9uUGFuZWxGYWN0b3J5KFxuICBOb3RpZmljYXRpb25JdGVtOiBSZXR1cm5UeXBlPHR5cGVvZiBOb3RpZmljYXRpb25JdGVtRmFjdG9yeT5cbik6IFJlYWN0LkNvbXBvbmVudENsYXNzPE5vdGlmaWNhdGlvblBhbmVsUHJvcHM+IHtcbiAgY2xhc3MgTm90aWZpY2F0aW9uUGFuZWxVbm1lbW9pemVkIGV4dGVuZHMgQ29tcG9uZW50PE5vdGlmaWNhdGlvblBhbmVsUHJvcHM+IHtcbiAgICBzdGF0aWMgZGlzcGxheU5hbWUgPSAnTm90aWZpY2F0aW9uUGFuZWwnO1xuXG4gICAgcmVuZGVyKCkge1xuICAgICAgY29uc3QgZ2xvYmFsTm90aWZpY2F0aW9ucyA9IHRoaXMucHJvcHMubm90aWZpY2F0aW9ucy5maWx0ZXIoXG4gICAgICAgIG4gPT4gbi50b3BpYyA9PT0gREVGQVVMVF9OT1RJRklDQVRJT05fVE9QSUNTLmdsb2JhbFxuICAgICAgKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxOb3RpZmljYXRpb25QYW5lbENvbnRlbnRcbiAgICAgICAgICBjbGFzc05hbWU9XCJub3RpZmljYXRpb24tcGFuZWxcIlxuICAgICAgICAgIHN0eWxlPXt7ZGlzcGxheTogZ2xvYmFsTm90aWZpY2F0aW9ucy5sZW5ndGggPyAnYmxvY2snIDogJ25vbmUnfX1cbiAgICAgICAgPlxuICAgICAgICAgIHtnbG9iYWxOb3RpZmljYXRpb25zLm1hcChuID0+IChcbiAgICAgICAgICAgIDxOb3RpZmljYXRpb25JdGVtXG4gICAgICAgICAgICAgIGtleT17bi5pZH1cbiAgICAgICAgICAgICAgbm90aWZpY2F0aW9uPXtufVxuICAgICAgICAgICAgICByZW1vdmVOb3RpZmljYXRpb249e3RoaXMucHJvcHMucmVtb3ZlTm90aWZpY2F0aW9ufVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApKX1cbiAgICAgICAgPC9Ob3RpZmljYXRpb25QYW5lbENvbnRlbnQ+XG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IE5vdGlmaWNhdGlvblBhbmVsID0gKFJlYWN0Lm1lbW8oXG4gICAgTm90aWZpY2F0aW9uUGFuZWxVbm1lbW9pemVkXG4gICkgYXMgdW5rbm93bikgYXMgdHlwZW9mIE5vdGlmaWNhdGlvblBhbmVsVW5tZW1vaXplZDtcbiAgcmV0dXJuIE5vdGlmaWNhdGlvblBhbmVsO1xufVxuIl19
106
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ub3RpZmljYXRpb24tcGFuZWwudHN4Il0sIm5hbWVzIjpbIk5vdGlmaWNhdGlvblBhbmVsQ29udGVudCIsInN0eWxlZCIsImRpdiIsIk5vdGlmaWNhdGlvblBhbmVsRmFjdG9yeSIsImRlcHMiLCJOb3RpZmljYXRpb25JdGVtRmFjdG9yeSIsIk5vdGlmaWNhdGlvbkl0ZW0iLCJOb3RpZmljYXRpb25QYW5lbFVubWVtb2l6ZWQiLCJnbG9iYWxOb3RpZmljYXRpb25zIiwicHJvcHMiLCJub3RpZmljYXRpb25zIiwiZmlsdGVyIiwibiIsInRvcGljIiwiREVGQVVMVF9OT1RJRklDQVRJT05fVE9QSUNTIiwiZ2xvYmFsIiwiZGlzcGxheSIsImxlbmd0aCIsIm1hcCIsImlkIiwicmVtb3ZlTm90aWZpY2F0aW9uIiwiQ29tcG9uZW50IiwiTm90aWZpY2F0aW9uUGFuZWwiLCJSZWFjdCIsIm1lbW8iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBRUE7O0FBQ0E7Ozs7Ozs7O0FBSUEsSUFBTUEsd0JBQXdCLEdBQUdDLDZCQUFPQyxHQUFWLHlWQUE5Qjs7QUFlQUMsd0JBQXdCLENBQUNDLElBQXpCLEdBQWdDLENBQUNDLDRCQUFELENBQWhDOztBQU9lLFNBQVNGLHdCQUFULENBQ2JHLGdCQURhLEVBRWlDO0FBQUEsTUFDeENDLDJCQUR3QztBQUFBOztBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQSxhQUk1QyxrQkFBUztBQUFBOztBQUNQLFlBQU1DLG1CQUFtQixHQUFHLEtBQUtDLEtBQUwsQ0FBV0MsYUFBWCxDQUF5QkMsTUFBekIsQ0FDMUIsVUFBQUMsQ0FBQztBQUFBLGlCQUFJQSxDQUFDLENBQUNDLEtBQUYsS0FBWUMsdUNBQTRCQyxNQUE1QztBQUFBLFNBRHlCLENBQTVCO0FBR0EsNEJBQ0UsZ0NBQUMsd0JBQUQ7QUFDRSxVQUFBLFNBQVMsRUFBQyxvQkFEWjtBQUVFLFVBQUEsS0FBSyxFQUFFO0FBQUNDLFlBQUFBLE9BQU8sRUFBRVIsbUJBQW1CLENBQUNTLE1BQXBCLEdBQTZCLE9BQTdCLEdBQXVDO0FBQWpEO0FBRlQsV0FJR1QsbUJBQW1CLENBQUNVLEdBQXBCLENBQXdCLFVBQUFOLENBQUM7QUFBQSw4QkFDeEIsZ0NBQUMsZ0JBQUQ7QUFDRSxZQUFBLEdBQUcsRUFBRUEsQ0FBQyxDQUFDTyxFQURUO0FBRUUsWUFBQSxZQUFZLEVBQUVQLENBRmhCO0FBR0UsWUFBQSxrQkFBa0IsRUFBRSxLQUFJLENBQUNILEtBQUwsQ0FBV1c7QUFIakMsWUFEd0I7QUFBQSxTQUF6QixDQUpILENBREY7QUFjRDtBQXRCMkM7QUFBQTtBQUFBLElBQ0pDLGdCQURJOztBQUFBLG1DQUN4Q2QsMkJBRHdDLGlCQUV2QixtQkFGdUI7O0FBeUI5QyxNQUFNZSxpQkFBaUIsZ0JBQUlDLGtCQUFNQyxJQUFOLENBQ3pCakIsMkJBRHlCLENBQTNCOztBQUdBLFNBQU9lLGlCQUFQO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMjMgVWJlciBUZWNobm9sb2dpZXMsIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5pbXBvcnQgUmVhY3QsIHtDb21wb25lbnR9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuXG5pbXBvcnQgTm90aWZpY2F0aW9uSXRlbUZhY3RvcnkgZnJvbSAnLi9ub3RpZmljYXRpb24tcGFuZWwvbm90aWZpY2F0aW9uLWl0ZW0nO1xuaW1wb3J0IHtERUZBVUxUX05PVElGSUNBVElPTl9UT1BJQ1N9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7Tm90aWZpY2F0aW9uc30gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge3JlbW92ZU5vdGlmaWNhdGlvbn0gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcblxuY29uc3QgTm90aWZpY2F0aW9uUGFuZWxDb250ZW50ID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgcGFkZGluZzogNHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxZW07XG4gIHJpZ2h0OiAxZW07XG4gIHotaW5kZXg6IDEwMDAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuYDtcblxuTm90aWZpY2F0aW9uUGFuZWxGYWN0b3J5LmRlcHMgPSBbTm90aWZpY2F0aW9uSXRlbUZhY3RvcnldO1xuXG5pbnRlcmZhY2UgTm90aWZpY2F0aW9uUGFuZWxQcm9wcyB7XG4gIHJlbW92ZU5vdGlmaWNhdGlvbj86IHR5cGVvZiByZW1vdmVOb3RpZmljYXRpb247XG4gIG5vdGlmaWNhdGlvbnM6IE5vdGlmaWNhdGlvbnNbXTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gTm90aWZpY2F0aW9uUGFuZWxGYWN0b3J5KFxuICBOb3RpZmljYXRpb25JdGVtOiBSZXR1cm5UeXBlPHR5cGVvZiBOb3RpZmljYXRpb25JdGVtRmFjdG9yeT5cbik6IFJlYWN0LkNvbXBvbmVudENsYXNzPE5vdGlmaWNhdGlvblBhbmVsUHJvcHM+IHtcbiAgY2xhc3MgTm90aWZpY2F0aW9uUGFuZWxVbm1lbW9pemVkIGV4dGVuZHMgQ29tcG9uZW50PE5vdGlmaWNhdGlvblBhbmVsUHJvcHM+IHtcbiAgICBzdGF0aWMgZGlzcGxheU5hbWUgPSAnTm90aWZpY2F0aW9uUGFuZWwnO1xuXG4gICAgcmVuZGVyKCkge1xuICAgICAgY29uc3QgZ2xvYmFsTm90aWZpY2F0aW9ucyA9IHRoaXMucHJvcHMubm90aWZpY2F0aW9ucy5maWx0ZXIoXG4gICAgICAgIG4gPT4gbi50b3BpYyA9PT0gREVGQVVMVF9OT1RJRklDQVRJT05fVE9QSUNTLmdsb2JhbFxuICAgICAgKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxOb3RpZmljYXRpb25QYW5lbENvbnRlbnRcbiAgICAgICAgICBjbGFzc05hbWU9XCJub3RpZmljYXRpb24tcGFuZWxcIlxuICAgICAgICAgIHN0eWxlPXt7ZGlzcGxheTogZ2xvYmFsTm90aWZpY2F0aW9ucy5sZW5ndGggPyAnYmxvY2snIDogJ25vbmUnfX1cbiAgICAgICAgPlxuICAgICAgICAgIHtnbG9iYWxOb3RpZmljYXRpb25zLm1hcChuID0+IChcbiAgICAgICAgICAgIDxOb3RpZmljYXRpb25JdGVtXG4gICAgICAgICAgICAgIGtleT17bi5pZH1cbiAgICAgICAgICAgICAgbm90aWZpY2F0aW9uPXtufVxuICAgICAgICAgICAgICByZW1vdmVOb3RpZmljYXRpb249e3RoaXMucHJvcHMucmVtb3ZlTm90aWZpY2F0aW9ufVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApKX1cbiAgICAgICAgPC9Ob3RpZmljYXRpb25QYW5lbENvbnRlbnQ+XG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IE5vdGlmaWNhdGlvblBhbmVsID0gKFJlYWN0Lm1lbW8oXG4gICAgTm90aWZpY2F0aW9uUGFuZWxVbm1lbW9pemVkXG4gICkgYXMgdW5rbm93bikgYXMgdHlwZW9mIE5vdGlmaWNhdGlvblBhbmVsVW5tZW1vaXplZDtcbiAgcmV0dXJuIE5vdGlmaWNhdGlvblBhbmVsO1xufVxuIl19
@@ -1,4 +1,4 @@
1
- // Copyright (c) 2022 Uber Technologies, Inc.
1
+ // Copyright (c) 2023 Uber Technologies, Inc.
2
2
  //
3
3
  // Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  // of this software and associated documentation files (the "Software"), to deal
@@ -65,6 +65,8 @@ var _mapContainer = _interopRequireDefault(require("./map-container"));
65
65
 
66
66
  var _mapsLayout = _interopRequireDefault(require("./maps-layout"));
67
67
 
68
+ var _mapViewStateContext = require("./map-view-state-context");
69
+
68
70
  var _constants = require("@kepler.gl/constants");
69
71
 
70
72
  var _templateObject, _templateObject2;
@@ -77,7 +79,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
77
79
 
78
80
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
79
81
 
80
- var CLASS_FILTER = ['mapboxgl-control-container', 'attrition-link', 'attrition-logo'];
82
+ var CLASS_FILTER = ['mapboxgl-control-container', 'attrition-link', 'attrition-logo', 'map-control__panel-split-viewport-tools'];
81
83
 
82
84
  var DOM_FILTER_FUNC = function DOM_FILTER_FUNC(node) {
83
85
  return !CLASS_FILTER.includes(node.className);
@@ -85,8 +87,9 @@ var DOM_FILTER_FUNC = function DOM_FILTER_FUNC(node) {
85
87
 
86
88
  var OUT_OF_SCREEN_POSITION = -9999;
87
89
  PlotContainerFactory.deps = [_mapContainer["default"], _mapsLayout["default"]]; // Remove mapbox logo in exported map, because it contains non-ascii characters
90
+ // Remove split viewport UI controls from exported images when the legend is shown
88
91
 
89
- var StyledPlotContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n .mapboxgl-ctrl-bottom-left,\n .mapboxgl-ctrl-bottom-right,\n .mapbox-attribution-container {\n display: none;\n }\n\n position: absolute;\n top: ", "px;\n left: ", "px;\n"])), OUT_OF_SCREEN_POSITION, OUT_OF_SCREEN_POSITION);
92
+ var StyledPlotContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n .mapboxgl-ctrl-bottom-left,\n .mapboxgl-ctrl-bottom-right,\n .mapbox-attribution-container,\n .map-control__panel-split-viewport-tools {\n display: none;\n }\n\n position: absolute;\n top: ", "px;\n left: ", "px;\n"])), OUT_OF_SCREEN_POSITION, OUT_OF_SCREEN_POSITION);
90
93
 
91
94
  var StyledMapContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", "px;\n height: ", "px;\n display: flex;\n"])), function (props) {
92
95
  return props.width;
@@ -133,8 +136,14 @@ function PlotContainerFactory(MapContainer, MapsLayout) {
133
136
  });
134
137
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_retrieveNewScreenshot", function () {
135
138
  if (_this.plottingAreaRef.current) {
139
+ var _this$props$exportIma = _this.props.exportImageSetting,
140
+ imageSize = _this$props$exportIma.imageSize,
141
+ escapeXhtmlForWebpack = _this$props$exportIma.escapeXhtmlForWebpack;
136
142
  (0, _utils.convertToPng)(_this.plottingAreaRef.current, {
137
- filter: DOM_FILTER_FUNC
143
+ filter: DOM_FILTER_FUNC,
144
+ width: imageSize.imageW,
145
+ height: imageSize.imageH,
146
+ escapeXhtmlForWebpack: escapeXhtmlForWebpack
138
147
  }).then(_this.props.setExportImageDataUri)["catch"](function (err) {
139
148
  _this.props.setExportImageError(err);
140
149
 
@@ -236,7 +245,7 @@ function PlotContainerFactory(MapContainer, MapsLayout) {
236
245
  active: true
237
246
  }
238
247
  },
239
- MapComponent: _reactMapGl.StaticMap,
248
+ MapComponent: _reactMapGl.Map,
240
249
  onMapRender: this._onMapRender,
241
250
  isExport: true,
242
251
  deckGlProps: _objectSpread(_objectSpread({}, mapFields.deckGlProps), {}, {
@@ -251,7 +260,8 @@ function PlotContainerFactory(MapContainer, MapsLayout) {
251
260
  index: 0,
252
261
  primary: true
253
262
  }, mapProps)) : /*#__PURE__*/_react["default"].createElement(MapsLayout, {
254
- className: "plot-container-maps"
263
+ className: "plot-container-maps",
264
+ mapState: mapState
255
265
  }, splitMaps.map(function (settings, index) {
256
266
  return /*#__PURE__*/_react["default"].createElement(MapContainer, (0, _extends2["default"])({
257
267
  key: index,
@@ -265,7 +275,9 @@ function PlotContainerFactory(MapContainer, MapsLayout) {
265
275
  ref: this.plottingAreaRef,
266
276
  width: size.width,
267
277
  height: size.height
268
- }, mapContainers));
278
+ }, /*#__PURE__*/_react["default"].createElement(_mapViewStateContext.MapViewStateContextProvider, {
279
+ mapState: mapState
280
+ }, mapContainers)));
269
281
  }
270
282
  }]);
271
283
  return PlotContainer;
@@ -273,4 +285,4 @@ function PlotContainerFactory(MapContainer, MapsLayout) {
273
285
 
274
286
  return PlotContainer;
275
287
  }
276
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wbG90LWNvbnRhaW5lci50c3giXSwibmFtZXMiOlsiQ0xBU1NfRklMVEVSIiwiRE9NX0ZJTFRFUl9GVU5DIiwibm9kZSIsImluY2x1ZGVzIiwiY2xhc3NOYW1lIiwiT1VUX09GX1NDUkVFTl9QT1NJVElPTiIsIlBsb3RDb250YWluZXJGYWN0b3J5IiwiZGVwcyIsIk1hcENvbnRhaW5lckZhY3RvcnkiLCJNYXBzTGF5b3V0RmFjdG9yeSIsIlN0eWxlZFBsb3RDb250YWluZXIiLCJzdHlsZWQiLCJkaXYiLCJTdHlsZWRNYXBDb250YWluZXIiLCJwcm9wcyIsIndpZHRoIiwiaGVpZ2h0IiwiTWFwQ29udGFpbmVyIiwiTWFwc0xheW91dCIsIlBsb3RDb250YWluZXIiLCJtYXBGaWVsZHMiLCJtYXBTdHlsZSIsImltYWdlU2l6ZSIsImV4cG9ydEltYWdlU2V0dGluZyIsIm1hcFN0YXRlIiwic2NhbGUiLCJpbWFnZVciLCJpbWFnZUgiLCJpc1NwbGl0IiwibWFwU3R5bGVTZWxlY3RvciIsIm1hcFNjYWxlU2VsZWN0b3IiLCJib3R0b21NYXBTdHlsZSIsInRvcE1hcFN0eWxlIiwibWFwIiwiaXNTdHlsZUxvYWRlZCIsIl9yZXRyaWV2ZU5ld1NjcmVlbnNob3QiLCJwbG90dGluZ0FyZWFSZWYiLCJjdXJyZW50IiwiZmlsdGVyIiwidGhlbiIsInNldEV4cG9ydEltYWdlRGF0YVVyaSIsImVyciIsInNldEV4cG9ydEltYWdlRXJyb3IiLCJlbmFibGVFcnJvck5vdGlmaWNhdGlvbiIsImFkZE5vdGlmaWNhdGlvbiIsIl9vbk1hcFJlbmRlciIsInNldEV4cG9ydEltYWdlU2V0dGluZyIsInByb2Nlc3NpbmciLCJwcmV2UHJvcHMiLCJjaGVja3MiLCJzaG91bGRSZXRyaWV2ZVNjcmVlbnNob3QiLCJzb21lIiwiaXRlbSIsInNwbGl0TWFwcyIsInZpc1N0YXRlIiwibGF5ZXJzIiwibGF5ZXJEYXRhIiwibGVnZW5kIiwibGVuZ3RoIiwic2l6ZSIsIm5ld01hcFN0YXRlIiwiem9vbSIsIk1hdGgiLCJsb2cyIiwiY2VudGVyIiwicmVuZGVyZWRMYXllcnMiLCJsYXllciIsImlkeCIsImlkIiwiR0VPQ09ERVJfTEFZRVJfSUQiLCJzaG91bGRSZW5kZXJMYXllciIsImJvdW5kcyIsImNlbnRlckFuZFpvb20iLCJOdW1iZXIiLCJpc0Zpbml0ZSIsImxvbmdpdHVkZSIsImxhdGl0dWRlIiwibWFwUHJvcHMiLCJzY2FsZWRNYXBTdHlsZVNlbGVjdG9yIiwibWFwQ29udHJvbHMiLCJtYXBMZWdlbmQiLCJzaG93IiwiYWN0aXZlIiwiTWFwQ29tcG9uZW50IiwiU3RhdGljTWFwIiwib25NYXBSZW5kZXIiLCJpc0V4cG9ydCIsImRlY2tHbFByb3BzIiwiZ2xPcHRpb25zIiwicHJlc2VydmVEcmF3aW5nQnVmZmVyIiwidXNlRGV2aWNlUGl4ZWxzIiwibWFwQ29udGFpbmVycyIsInNldHRpbmdzIiwiaW5kZXgiLCJDb21wb25lbnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBcUJBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQU9BOztBQUNBOztBQUNBOztBQUVBOzs7Ozs7Ozs7Ozs7QUFTQSxJQUFNQSxZQUFZLEdBQUcsQ0FBQyw0QkFBRCxFQUErQixnQkFBL0IsRUFBaUQsZ0JBQWpELENBQXJCOztBQUNBLElBQU1DLGVBQWUsR0FBRyxTQUFsQkEsZUFBa0IsQ0FBQUMsSUFBSTtBQUFBLFNBQUksQ0FBQ0YsWUFBWSxDQUFDRyxRQUFiLENBQXNCRCxJQUFJLENBQUNFLFNBQTNCLENBQUw7QUFBQSxDQUE1Qjs7QUFDQSxJQUFNQyxzQkFBc0IsR0FBRyxDQUFDLElBQWhDO0FBRUFDLG9CQUFvQixDQUFDQyxJQUFyQixHQUE0QixDQUFDQyx3QkFBRCxFQUFzQkMsc0JBQXRCLENBQTVCLEMsQ0FFQTs7QUFDQSxJQUFNQyxtQkFBbUIsR0FBR0MsNkJBQU9DLEdBQVYsOFFBUWhCUCxzQkFSZ0IsRUFTZkEsc0JBVGUsQ0FBekI7O0FBaUJB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QUFHLENBQUMvRCxPQUFELGdCQUNwQixnQ0FBQyxZQUFEO0FBQWMsVUFBQSxLQUFLLEVBQUUsQ0FBckI7QUFBd0IsVUFBQSxPQUFPLEVBQUU7QUFBakMsV0FBMkNpRCxRQUEzQyxFQURvQixnQkFHcEIsZ0NBQUMsVUFBRDtBQUFZLFVBQUEsU0FBUyxFQUFDO0FBQXRCLFdBQ0d4QixTQUFTLENBQUNwQixHQUFWLENBQWMsVUFBQzJELFFBQUQsRUFBV0MsS0FBWDtBQUFBLDhCQUNiLGdDQUFDLFlBQUQ7QUFBYyxZQUFBLEdBQUcsRUFBRUEsS0FBbkI7QUFBMEIsWUFBQSxLQUFLLEVBQUVBLEtBQWpDO0FBQXdDLFlBQUEsT0FBTyxFQUFFQSxLQUFLLEtBQUs7QUFBM0QsYUFBa0VoQixRQUFsRSxFQURhO0FBQUEsU0FBZCxDQURILENBSEY7QUFTQSw0QkFDRSxnQ0FBQyxtQkFBRDtBQUFxQixVQUFBLFNBQVMsRUFBQztBQUEvQix3QkFDRSxnQ0FBQyxrQkFBRDtBQUFvQixVQUFBLEdBQUcsRUFBRSxLQUFLekMsZUFBOUI7QUFBK0MsVUFBQSxLQUFLLEVBQUV1QixJQUFJLENBQUM1QyxLQUEzRDtBQUFrRSxVQUFBLE1BQU0sRUFBRTRDLElBQUksQ0FBQzNDO0FBQS9FLFdBQ0cyRSxhQURILENBREYsQ0FERjtBQU9EO0FBeEpzQztBQUFBO0FBQUEsSUFDYkcsZ0JBRGE7O0FBMEp6QyxTQUFPM0UsYUFBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuLy8gbGlicmFyaWVzXG5pbXBvcnQgUmVhY3QsIHtDb21wb25lbnQsIGNyZWF0ZVJlZn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHtjcmVhdGVTZWxlY3Rvcn0gZnJvbSAncmVzZWxlY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge1N0YXRpY01hcH0gZnJvbSAncmVhY3QtbWFwLWdsJztcbmltcG9ydCBkZWJvdW5jZSBmcm9tICdsb2Rhc2guZGVib3VuY2UnO1xuaW1wb3J0IHtcbiAgZXhwb3J0SW1hZ2VFcnJvcixcbiAgc2NhbGVNYXBTdHlsZUJ5UmVzb2x1dGlvbixcbiAgZ2V0Q2VudGVyQW5kWm9vbUZyb21Cb3VuZHMsXG4gIGNvbnZlcnRUb1BuZyxcbiAgZ2V0U2NhbGVGcm9tSW1hZ2VTaXplXG59IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuaW1wb3J0IHtmaW5kTWFwQm91bmRzfSBmcm9tICdAa2VwbGVyLmdsL3JlZHVjZXJzJztcbmltcG9ydCBNYXBDb250YWluZXJGYWN0b3J5IGZyb20gJy4vbWFwLWNvbnRhaW5lcic7XG5pbXBvcnQgTWFwc0xheW91dEZhY3RvcnkgZnJvbSAnLi9tYXBzLWxheW91dCc7XG5cbmltcG9ydCB7R0VPQ09ERVJfTEFZRVJfSUQsIEV4cG9ydEltYWdlfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5pbXBvcnQge1NwbGl0TWFwfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcbmltcG9ydCB7XG4gIHNldEV4cG9ydEltYWdlRGF0YVVyaSxcbiAgc2V0RXhwb3J0SW1hZ2VFcnJvcixcbiAgc2V0RXhwb3J0SW1hZ2VTZXR0aW5nXG59IGZyb20gJ0BrZXBsZXIuZ2wvYWN0aW9ucyc7XG5pbXBvcnQge21hcEZpZWxkc1NlbGVjdG9yfSBmcm9tICcuL2tlcGxlci1nbCc7XG5cbmNvbnN0IENMQVNTX0ZJTFRFUiA9IFsnbWFwYm94Z2wtY29udHJvbC1jb250YWluZXInLCAnYXR0cml0aW9uLWxpbmsnLCAnYXR0cml0aW9uLWxvZ28nXTtcbmNvbnN0IERPTV9GSUxURVJfRlVOQyA9IG5vZGUgPT4gIUNMQVNTX0ZJTFRFUi5pbmNsdWRlcyhub2RlLmNsYXNzTmFtZSk7XG5jb25zdCBPVVRfT0ZfU0NSRUVOX1BPU0lUSU9OID0gLTk5OTk7XG5cblBsb3RDb250YWluZXJGYWN0b3J5LmRlcHMgPSBbTWFwQ29udGFpbmVyRmFjdG9yeSwgTWFwc0xheW91dEZhY3RvcnldO1xuXG4vLyBSZW1vdmUgbWFwYm94IGxvZ28gaW4gZXhwb3J0ZWQgbWFwLCBiZWNhdXNlIGl0IGNvbnRhaW5zIG5vbi1hc2NpaSBjaGFyYWN0ZXJzXG5jb25zdCBTdHlsZWRQbG90Q29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgLm1hcGJveGdsLWN0cmwtYm90dG9tLWxlZnQsXG4gIC5tYXBib3hnbC1jdHJsLWJvdHRvbS1yaWdodCxcbiAgLm1hcGJveC1hdHRyaWJ1dGlvbi1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogJHtPVVRfT0ZfU0NSRUVOX1BPU0lUSU9OfXB4O1xuICBsZWZ0OiAke09VVF9PRl9TQ1JFRU5fUE9TSVRJT059cHg7XG5gO1xuXG5pbnRlcmZhY2UgU3R5bGVkTWFwQ29udGFpbmVyUHJvcHMge1xuICB3aWR0aD86IG51bWJlcjtcbiAgaGVpZ2h0PzogbnVtYmVyO1xufVxuXG5jb25zdCBTdHlsZWRNYXBDb250YWluZXIgPSBzdHlsZWQuZGl2PFN0eWxlZE1hcENvbnRhaW5lclByb3BzPmBcbiAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMud2lkdGh9cHg7XG4gIGhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy5oZWlnaHR9cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG5gO1xuXG5pbnRlcmZhY2UgUGxvdENvbnRhaW5lclByb3BzIHtcbiAgd2lkdGg/OiBudW1iZXI7XG4gIGhlaWdodD86IG51bWJlcjtcbiAgZXhwb3J0SW1hZ2VTZXR0aW5nOiBFeHBvcnRJbWFnZTtcbiAgYWRkTm90aWZpY2F0aW9uOiBGdW5jdGlvbjtcbiAgbWFwRmllbGRzOiBSZXR1cm5UeXBlPHR5cGVvZiBtYXBGaWVsZHNTZWxlY3Rvcj47XG4gIHNldEV4cG9ydEltYWdlU2V0dGluZzogdHlwZW9mIHNldEV4cG9ydEltYWdlU2V0dGluZztcbiAgc2V0RXhwb3J0SW1hZ2VEYXRhVXJpOiB0eXBlb2Ygc2V0RXhwb3J0SW1hZ2VEYXRhVXJpO1xuICBzZXRFeHBvcnRJbWFnZUVycm9yOiB0eXBlb2Ygc2V0RXhwb3J0SW1hZ2VFcnJvcjtcbiAgc3BsaXRNYXBzPzogU3BsaXRNYXBbXTtcbiAgZW5hYmxlRXJyb3JOb3RpZmljYXRpb24/OiBib29sZWFuO1xufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBQbG90Q29udGFpbmVyRmFjdG9yeShcbiAgTWFwQ29udGFpbmVyOiBSZXR1cm5UeXBlPHR5cGVvZiBNYXBDb250YWluZXJGYWN0b3J5PixcbiAgTWFwc0xheW91dDogUmV0dXJuVHlwZTx0eXBlb2YgTWFwc0xheW91dEZhY3Rvcnk+XG4pOiBSZWFjdC5Db21wb25lbnRUeXBlPFBsb3RDb250YWluZXJQcm9wcz4ge1xuICBjbGFzcyBQbG90Q29udGFpbmVyIGV4dGVuZHMgQ29tcG9uZW50PFBsb3RDb250YWluZXJQcm9wcz4ge1xuICAgIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgICBzdXBlcihwcm9wcyk7XG4gICAgICB0aGlzLl9vbk1hcFJlbmRlciA9IGRlYm91bmNlKHRoaXMuX29uTWFwUmVuZGVyLCA1MDApO1xuICAgICAgdGhpcy5fcmV0cmlldmVOZXdTY3JlZW5zaG90ID0gZGVib3VuY2UodGhpcy5fcmV0cmlldmVOZXdTY3JlZW5zaG90LCA1MDApO1xuICAgIH1cblxuICAgIGNvbXBvbmVudERpZE1vdW50KCkge1xuICAgICAgdGhpcy5wcm9wcy5zZXRFeHBvcnRJbWFnZVNldHRpbmcoe3Byb2Nlc3Npbmc6IHRydWV9KTtcbiAgICB9XG5cbiAgICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgICAvLyByZS1mZXRjaCB0aGUgbmV3IHNjcmVlbnNob3Qgb25seSB3aGVuIHJhdGlvIGxlZ2VuZCBvciByZXNvbHV0aW9uIGNoYW5nZXNcbiAgICAgIGNvbnN0IGNoZWNrcyA9IFsncmF0aW8nLCAncmVzb2x1dGlvbicsICdsZWdlbmQnXTtcbiAgICAgIGNvbnN0IHNob3VsZFJldHJpZXZlU2NyZWVuc2hvdCA9IGNoZWNrcy5zb21lKFxuICAgICAgICBpdGVtID0+IHRoaXMucHJvcHMuZXhwb3J0SW1hZ2VTZXR0aW5nW2l0ZW1dICE9PSBwcmV2UHJvcHMuZXhwb3J0SW1hZ2VTZXR0aW5nW2l0ZW1dXG4gICAgICApO1xuICAgICAgaWYgKHNob3VsZFJldHJpZXZlU2NyZWVuc2hvdCkge1xuICAgICAgICB0aGlzLnByb3BzLnNldEV4cG9ydEltYWdlU2V0dGluZyh7cHJvY2Vzc2luZzogdHJ1ZX0pO1xuICAgICAgICB0aGlzLl9yZXRyaWV2ZU5ld1NjcmVlbnNob3QoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwbG90dGluZ0FyZWFSZWYgPSBjcmVhdGVSZWY8SFRNTERpdkVsZW1lbnQ+KCk7XG5cbiAgICBtYXBTdHlsZVNlbGVjdG9yID0gcHJvcHMgPT4gcHJvcHMubWFwRmllbGRzLm1hcFN0eWxlO1xuICAgIG1hcFNjYWxlU2VsZWN0b3IgPSBwcm9wcyA9PiB7XG4gICAgICBjb25zdCB7aW1hZ2VTaXplfSA9IHByb3BzLmV4cG9ydEltYWdlU2V0dGluZztcbiAgICAgIGNvbnN0IHttYXBTdGF0ZX0gPSBwcm9wcy5tYXBGaWVsZHM7XG4gICAgICBpZiAoaW1hZ2VTaXplLnNjYWxlKSB7XG4gICAgICAgIHJldHVybiBpbWFnZVNpemUuc2NhbGU7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNjYWxlID0gZ2V0U2NhbGVGcm9tSW1hZ2VTaXplKFxuICAgICAgICBpbWFnZVNpemUuaW1hZ2VXLFxuICAgICAgICBpbWFnZVNpemUuaW1hZ2VILFxuICAgICAgICBtYXBTdGF0ZS53aWR0aCAqIChtYXBTdGF0ZS5pc1NwbGl0ID8gMiA6IDEpLFxuICAgICAgICBtYXBTdGF0ZS5oZWlnaHRcbiAgICAgICk7XG5cbiAgICAgIHJldHVybiBzY2FsZSA+IDAgPyBzY2FsZSA6IDE7XG4gICAgfTtcblxuICAgIHNjYWxlZE1hcFN0eWxlU2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIHRoaXMubWFwU3R5bGVTZWxlY3RvcixcbiAgICAgIHRoaXMubWFwU2NhbGVTZWxlY3RvcixcbiAgICAgIChtYXBTdHlsZSwgc2NhbGUpID0+ICh7XG4gICAgICAgIC4uLm1hcFN0eWxlLFxuICAgICAgICBib3R0b21NYXBTdHlsZTogc2NhbGVNYXBTdHlsZUJ5UmVzb2x1dGlvbihtYXBTdHlsZS5ib3R0b21NYXBTdHlsZSwgc2NhbGUpLFxuICAgICAgICB0b3BNYXBTdHlsZTogc2NhbGVNYXBTdHlsZUJ5UmVzb2x1dGlvbihtYXBTdHlsZS50b3BNYXBTdHlsZSwgc2NhbGUpXG4gICAgICB9KVxuICAgICk7XG5cbiAgICBfb25NYXBSZW5kZXIgPSBtYXAgPT4ge1xuICAgICAgaWYgKG1hcC5pc1N0eWxlTG9hZGVkKCkpIHtcbiAgICAgICAgdGhpcy5fcmV0cmlldmVOZXdTY3JlZW5zaG90KCk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIF9yZXRyaWV2ZU5ld1NjcmVlbnNob3QgPSAoKSA9PiB7XG4gICAgICBpZiAodGhpcy5wbG90dGluZ0FyZWFSZWYuY3VycmVudCkge1xuICAgICAgICBjb252ZXJ0VG9QbmcodGhpcy5wbG90dGluZ0FyZWFSZWYuY3VycmVudCwge2ZpbHRlcjogRE9NX0ZJTFRFUl9GVU5DfSlcbiAgICAgICAgICAudGhlbih0aGlzLnByb3BzLnNldEV4cG9ydEltYWdlRGF0YVVyaSlcbiAgICAgICAgICAuY2F0Y2goZXJyID0+IHtcbiAgICAgICAgICAgIHRoaXMucHJvcHMuc2V0RXhwb3J0SW1hZ2VFcnJvcihlcnIpO1xuICAgICAgICAgICAgaWYgKHRoaXMucHJvcHMuZW5hYmxlRXJyb3JOb3RpZmljYXRpb24pIHtcbiAgICAgICAgICAgICAgdGhpcy5wcm9wcy5hZGROb3RpZmljYXRpb24oZXhwb3J0SW1hZ2VFcnJvcih7ZXJyfSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgfVxuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7ZXhwb3J0SW1hZ2VTZXR0aW5nLCBtYXBGaWVsZHMsIHNwbGl0TWFwcyA9IFtdfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCB7bWFwU3RhdGUsIHZpc1N0YXRlfSA9IG1hcEZpZWxkcztcbiAgICAgIGNvbnN0IHtsYXllcnMsIGxheWVyRGF0YX0gPSB2aXNTdGF0ZTtcbiAgICAgIGNvbnN0IHtpbWFnZVNpemUsIGxlZ2VuZH0gPSBleHBvcnRJbWFnZVNldHRpbmc7XG5cbiAgICAgIGNvbnN0IGlzU3BsaXQgPSBzcGxpdE1hcHMgJiYgc3BsaXRNYXBzLmxlbmd0aCA+IDE7XG5cbiAgICAgIGNvbnN0IHNpemUgPSB7XG4gICAgICAgIHdpZHRoOiBpbWFnZVNpemU/LmltYWdlVyB8fCAxLFxuICAgICAgICBoZWlnaHQ6IGltYWdlU2l6ZT8uaW1hZ2VIIHx8IDFcbiAgICAgIH07XG4gICAgICBjb25zdCB3aWR0aCA9IHNpemUud2lkdGggLyAoaXNTcGxpdCA/IDIgOiAxKTtcbiAgICAgIGNvbnN0IGhlaWdodCA9IHNpemUuaGVpZ2h0O1xuICAgICAgY29uc3Qgc2NhbGUgPSB0aGlzLm1hcFNjYWxlU2VsZWN0b3IodGhpcy5wcm9wcyk7XG4gICAgICBjb25zdCBuZXdNYXBTdGF0ZSA9IHtcbiAgICAgICAgLi4ubWFwU3RhdGUsXG4gICAgICAgIHdpZHRoLFxuICAgICAgICBoZWlnaHQsXG4gICAgICAgIHpvb206IG1hcFN0YXRlLnpvb20gKyAoTWF0aC5sb2cyKHNjYWxlKSB8fCAwKVxuICAgICAgfTtcblxuICAgICAgLy8gY2VudGVyIGFuZCBhbGwgbGF5ZXIgYm91bmRzXG4gICAgICBpZiAoZXhwb3J0SW1hZ2VTZXR0aW5nLmNlbnRlcikge1xuICAgICAgICBjb25zdCByZW5kZXJlZExheWVycyA9IGxheWVycy5maWx0ZXIoXG4gICAgICAgICAgKGxheWVyLCBpZHgpID0+IGxheWVyLmlkICE9PSBHRU9DT0RFUl9MQVlFUl9JRCAmJiBsYXllci5zaG91bGRSZW5kZXJMYXllcihsYXllckRhdGFbaWR4XSlcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgYm91bmRzID0gZmluZE1hcEJvdW5kcyhyZW5kZXJlZExheWVycyk7XG4gICAgICAgIGNvbnN0IGNlbnRlckFuZFpvb20gPSBnZXRDZW50ZXJBbmRab29tRnJvbUJvdW5kcyhib3VuZHMsIHt3aWR0aCwgaGVpZ2h0fSk7XG4gICAgICAgIGlmIChjZW50ZXJBbmRab29tKSB7XG4gICAgICAgICAgY29uc3Qgem9vbSA9IE51bWJlci5pc0Zpbml0ZShjZW50ZXJBbmRab29tLnpvb20pID8gY2VudGVyQW5kWm9vbS56b29tIDogbWFwU3RhdGUuem9vbTtcblxuICAgICAgICAgIG5ld01hcFN0YXRlLmxvbmdpdHVkZSA9IGNlbnRlckFuZFpvb20uY2VudGVyWzBdO1xuICAgICAgICAgIG5ld01hcFN0YXRlLmxhdGl0dWRlID0gY2VudGVyQW5kWm9vbS5jZW50ZXJbMV07XG4gICAgICAgICAgbmV3TWFwU3RhdGUuem9vbSA9IHpvb20gKyBOdW1iZXIoTWF0aC5sb2cyKHNjYWxlKSB8fCAwKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBtYXBQcm9wcyA9IHtcbiAgICAgICAgLi4ubWFwRmllbGRzLFxuICAgICAgICBtYXBTdHlsZTogdGhpcy5zY2FsZWRNYXBTdHlsZVNlbGVjdG9yKHRoaXMucHJvcHMpLFxuXG4gICAgICAgIC8vIG92ZXJyaWRlIHZpZXdwb3J0IGJhc2VkIG9uIGV4cG9ydCBzZXR0aW5nc1xuICAgICAgICBtYXBTdGF0ZTogbmV3TWFwU3RhdGUsXG4gICAgICAgIG1hcENvbnRyb2xzOiB7XG4gICAgICAgICAgLy8gb3ZlcnJpZGUgbWFwIGxlZ2VuZCB2aXNpYmlsaXR5XG4gICAgICAgICAgbWFwTGVnZW5kOiB7XG4gICAgICAgICAgICBzaG93OiBsZWdlbmQsXG4gICAgICAgICAgICBhY3RpdmU6IHRydWVcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIE1hcENvbXBvbmVudDogU3RhdGljTWFwLFxuICAgICAgICBvbk1hcFJlbmRlcjogdGhpcy5fb25NYXBSZW5kZXIsXG4gICAgICAgIGlzRXhwb3J0OiB0cnVlLFxuICAgICAgICBkZWNrR2xQcm9wczoge1xuICAgICAgICAgIC4uLm1hcEZpZWxkcy5kZWNrR2xQcm9wcyxcbiAgICAgICAgICBnbE9wdGlvbnM6IHtcbiAgICAgICAgICAgIHByZXNlcnZlRHJhd2luZ0J1ZmZlcjogdHJ1ZSxcbiAgICAgICAgICAgIHVzZURldmljZVBpeGVsczogZmFsc2VcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IG1hcENvbnRhaW5lcnMgPSAhaXNTcGxpdCA/IChcbiAgICAgICAgPE1hcENvbnRhaW5lciBpbmRleD17MH0gcHJpbWFyeT17dHJ1ZX0gey4uLm1hcFByb3BzfSAvPlxuICAgICAgKSA6IChcbiAgICAgICAgPE1hcHNMYXlvdXQgY2xhc3NOYW1lPVwicGxvdC1jb250YWluZXItbWFwc1wiPlxuICAgICAgICAgIHtzcGxpdE1hcHMubWFwKChzZXR0aW5ncywgaW5kZXgpID0+IChcbiAgICAgICAgICAgIDxNYXBDb250YWluZXIga2V5PXtpbmRleH0gaW5kZXg9e2luZGV4fSBwcmltYXJ5PXtpbmRleCA9PT0gMX0gey4uLm1hcFByb3BzfSAvPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L01hcHNMYXlvdXQ+XG4gICAgICApO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPFN0eWxlZFBsb3RDb250YWluZXIgY2xhc3NOYW1lPVwiZXhwb3J0LW1hcC1pbnN0YW5jZVwiPlxuICAgICAgICAgIDxTdHlsZWRNYXBDb250YWluZXIgcmVmPXt0aGlzLnBsb3R0aW5nQXJlYVJlZn0gd2lkdGg9e3NpemUud2lkdGh9IGhlaWdodD17c2l6ZS5oZWlnaHR9PlxuICAgICAgICAgICAge21hcENvbnRhaW5lcnN9XG4gICAgICAgICAgPC9TdHlsZWRNYXBDb250YWluZXI+XG4gICAgICAgIDwvU3R5bGVkUGxvdENvbnRhaW5lcj5cbiAgICAgICk7XG4gICAgfVxuICB9XG4gIHJldHVybiBQbG90Q29udGFpbmVyO1xufVxuIl19
288
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wbG90LWNvbnRhaW5lci50c3giXSwibmFtZXMiOlsiQ0xBU1NfRklMVEVSIiwiRE9NX0ZJTFRFUl9GVU5DIiwibm9kZSIsImluY2x1ZGVzIiwiY2xhc3NOYW1lIiwiT1VUX09GX1NDUkVFTl9QT1NJVElPTiIsIlBsb3RDb250YWluZXJGYWN0b3J5IiwiZGVwcyIsIk1hcENvbnRhaW5lckZhY3RvcnkiLCJNYXBzTGF5b3V0RmFjdG9yeSIsIlN0eWxlZFBsb3RDb250YWluZXIiLCJzdHlsZWQiLCJkaXYiLCJTdHlsZWRNYXBDb250YWluZXIiLCJwcm9wcyIsIndpZHRoIiwiaGVpZ2h0IiwiTWFwQ29udGFpbmVyIiwiTWFwc0xheW91dCIsIlBsb3RDb250YWluZXIiLCJtYXBGaWVsZHMiLCJtYXBTdHlsZSIsImltYWdlU2l6ZSIsImV4cG9ydEltYWdlU2V0dGluZyIsIm1hcFN0YXRlIiwic2NhbGUiLCJpbWFnZVciLCJpbWFnZUgiLCJpc1NwbGl0IiwibWFwU3R5bGVTZWxlY3RvciIsIm1hcFNjYWxlU2VsZWN0b3IiLCJib3R0b21NYXBTdHlsZSIsInRvcE1hcFN0eWxlIiwibWFwIiwiaXNTdHlsZUxvYWRlZCIsIl9yZXRyaWV2ZU5ld1NjcmVlbnNob3QiLCJwbG90dGluZ0FyZWFSZWYiLCJjdXJyZW50IiwiZXNjYXBlWGh0bWxGb3JXZWJwYWNrIiwiZmlsdGVyIiwidGhlbiIsInNldEV4cG9ydEltYWdlRGF0YVVyaSIsImVyciIsInNldEV4cG9ydEltYWdlRXJyb3IiLCJlbmFibGVFcnJvck5vdGlmaWNhdGlvbiIsImFkZE5vdGlmaWNhdGlvbiIsIl9vbk1hcFJlbmRlciIsInNldEV4cG9ydEltYWdlU2V0dGluZyIsInByb2Nlc3NpbmciLCJwcmV2UHJvcHMiLCJjaGVja3MiLCJzaG91bGRSZXRyaWV2ZVNjcmVlbnNob3QiLCJzb21lIiwiaXRlbSIsInNwbGl0TWFwcyIsInZpc1N0YXRlIiwibGF5ZXJzIiwibGF5ZXJEYXRhIiwibGVnZW5kIiwibGVuZ3RoIiwic2l6ZSIsIm5ld01hcFN0YXRlIiwiem9vbSIsIk1hdGgiLCJsb2cyIiwiY2VudGVyIiwicmVuZGVyZWRMYXllcnMiLCJsYXllciIsImlkeCIsImlkIiwiR0VPQ09ERVJfTEFZRVJfSUQiLCJzaG91bGRSZW5kZXJMYXllciIsImJvdW5kcyIsImNlbnRlckFuZFpvb20iLCJOdW1iZXIiLCJpc0Zpbml0ZSIsImxvbmdpdHVkZSIsImxhdGl0dWRlIiwibWFwUHJvcHMiLCJzY2FsZWRNYXBTdHlsZVNlbGVjdG9yIiwibWFwQ29udHJvbHMiLCJtYXBMZWdlbmQiLCJzaG93IiwiYWN0aXZlIiwiTWFwQ29tcG9uZW50IiwiTWFwIiwib25NYXBSZW5kZXIiLCJpc0V4cG9ydCIsImRlY2tHbFByb3BzIiwiZ2xPcHRpb25zIiwicHJlc2VydmVEcmF3aW5nQnVmZmVyIiwidXNlRGV2aWNlUGl4ZWxzIiwibWFwQ29udGFpbmVycyIsInNldHRpbmdzIiwiaW5kZXgiLCJDb21wb25lbnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBcUJBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQU9BOztBQUNBOztBQUNBOztBQUNBOztBQUVBOzs7Ozs7Ozs7Ozs7QUFTQSxJQUFNQSxZQUFZLEdBQUcsQ0FDbkIsNEJBRG1CLEVBRW5CLGdCQUZtQixFQUduQixnQkFIbUIsRUFJbkIseUNBSm1CLENBQXJCOztBQU1BLElBQU1DLGVBQWUsR0FBRyxTQUFsQkEsZUFBa0IsQ0FBQUMsSUFBSTtBQUFBLFNBQUksQ0FBQ0YsWUFBWSxDQUFDRyxRQUFiLENBQXNCRCxJQUFJLENBQUNFLFNBQTNCLENBQUw7QUFBQSxDQUE1Qjs7QUFDQSxJQUFNQyxzQkFBc0IsR0FBRyxDQUFDLElBQWhDO0FBRUFDLG9CQUFvQixDQUFDQyxJQUFyQixHQUE0QixDQUFDQyx3QkFBRCxFQUFzQkMsc0JBQXRCLENBQTVCLEMsQ0FFQTtBQUNBOztBQUNBLElBQU1DLG1CQUFtQixHQUFHQyw2QkFBT0MsR0FBViwyVEFTaEJQLHNCQVRnQixFQVVmQSxzQkFWZSxDQUF6Qjs7QUFrQkEsSUFBTVEsa0JBQWtCLEdBQUdGLDZCQUFPQyxHQUFWLGtKQUNiLFVBQUFFLEtBQUs7QUFBQSxTQUFJQSxLQUFLLENBQUNDLEtBQVY7QUFBQSxDQURRLEVBRVosVUFBQUQsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0UsTUFBVjtBQUFBLENBRk8sQ0FBeEI7O0FBbUJlLFNBQVNWLG9CQUFULENBQ2JXLFlBRGEsRUFFYkMsVUFGYSxFQUc0QjtBQUFBLE1BQ25DQyxhQURtQztBQUFBOztBQUFBOztBQUV2QywyQkFBWUwsTUFBWixFQUFtQjtBQUFBOztBQUFBO0FBQ2pCLGdDQUFNQSxNQUFOO0FBRGlCLHVIQXNCRCx1QkF0QkM7QUFBQSwyR0F3QkEsVUFBQUEsS0FBSztBQUFBLGVBQUlBLEtBQUssQ0FBQ00sU0FBTixDQUFnQkMsUUFBcEI7QUFBQSxPQXhCTDtBQUFBLDJHQXlCQSxVQUFBUCxLQUFLLEVBQUk7QUFBQSxZQUNuQlEsU0FEbUIsR0FDTlIsS0FBSyxDQUFDUyxrQkFEQSxDQUNuQkQsU0FEbUI7QUFBQSxZQUVuQkUsUUFGbUIsR0FFUFYsS0FBSyxDQUFDTSxTQUZDLENBRW5CSSxRQUZtQjs7QUFHMUIsWUFBSUYsU0FBUyxDQUFDRyxLQUFkLEVBQXFCO0FBQ25CLGlCQUFPSCxTQUFTLENBQUNHLEtBQWpCO0FBQ0Q7O0FBRUQsWUFBTUEsS0FBSyxHQUFHLGtDQUNaSCxTQUFTLENBQUNJLE1BREUsRUFFWkosU0FBUyxDQUFDSyxNQUZFLEVBR1pILFFBQVEsQ0FBQ1QsS0FBVCxJQUFrQlMsUUFBUSxDQUFDSSxPQUFULEdBQW1CLENBQW5CLEdBQXVCLENBQXpDLENBSFksRUFJWkosUUFBUSxDQUFDUixNQUpHLENBQWQ7QUFPQSxlQUFPUyxLQUFLLEdBQUcsQ0FBUixHQUFZQSxLQUFaLEdBQW9CLENBQTNCO0FBQ0QsT0F4Q2tCO0FBQUEsaUhBMENNLDhCQUN2QixNQUFLSSxnQkFEa0IsRUFFdkIsTUFBS0MsZ0JBRmtCLEVBR3ZCLFVBQUNULFFBQUQsRUFBV0ksS0FBWDtBQUFBLCtDQUNLSixRQURMO0FBRUVVLFVBQUFBLGNBQWMsRUFBRSxzQ0FBMEJWLFFBQVEsQ0FBQ1UsY0FBbkMsRUFBbUROLEtBQW5ELENBRmxCO0FBR0VPLFVBQUFBLFdBQVcsRUFBRSxzQ0FBMEJYLFFBQVEsQ0FBQ1csV0FBbkMsRUFBZ0RQLEtBQWhEO0FBSGY7QUFBQSxPQUh1QixDQTFDTjtBQUFBLHVHQW9ESixVQUFBUSxHQUFHLEVBQUk7QUFDcEIsWUFBSUEsR0FBRyxDQUFDQyxhQUFKLEVBQUosRUFBeUI7QUFDdkIsZ0JBQUtDLHNCQUFMO0FBQ0Q7QUFDRixPQXhEa0I7QUFBQSxpSEEwRE0sWUFBTTtBQUM3QixZQUFJLE1BQUtDLGVBQUwsQ0FBcUJDLE9BQXpCLEVBQWtDO0FBQUEsc0NBQ1csTUFBS3ZCLEtBQUwsQ0FBV1Msa0JBRHRCO0FBQUEsY0FDekJELFNBRHlCLHlCQUN6QkEsU0FEeUI7QUFBQSxjQUNkZ0IscUJBRGMseUJBQ2RBLHFCQURjO0FBRWhDLG1DQUFhLE1BQUtGLGVBQUwsQ0FBcUJDLE9BQWxDLEVBQTJDO0FBQ3pDRSxZQUFBQSxNQUFNLEVBQUV0QyxlQURpQztBQUV6Q2MsWUFBQUEsS0FBSyxFQUFFTyxTQUFTLENBQUNJLE1BRndCO0FBR3pDVixZQUFBQSxNQUFNLEVBQUVNLFNBQVMsQ0FBQ0ssTUFIdUI7QUFJekNXLFlBQUFBLHFCQUFxQixFQUFyQkE7QUFKeUMsV0FBM0MsRUFNR0UsSUFOSCxDQU1RLE1BQUsxQixLQUFMLENBQVcyQixxQkFObkIsV0FPUyxVQUFBQyxHQUFHLEVBQUk7QUFDWixrQkFBSzVCLEtBQUwsQ0FBVzZCLG1CQUFYLENBQStCRCxHQUEvQjs7QUFDQSxnQkFBSSxNQUFLNUIsS0FBTCxDQUFXOEIsdUJBQWYsRUFBd0M7QUFDdEMsb0JBQUs5QixLQUFMLENBQVcrQixlQUFYLENBQTJCLDZCQUFpQjtBQUFDSCxnQkFBQUEsR0FBRyxFQUFIQTtBQUFELGVBQWpCLENBQTNCO0FBQ0Q7QUFDRixXQVpIO0FBYUQ7QUFDRixPQTNFa0I7QUFFakIsWUFBS0ksWUFBTCxHQUFvQix3QkFBUyxNQUFLQSxZQUFkLEVBQTRCLEdBQTVCLENBQXBCO0FBQ0EsWUFBS1gsc0JBQUwsR0FBOEIsd0JBQVMsTUFBS0Esc0JBQWQsRUFBc0MsR0FBdEMsQ0FBOUI7QUFIaUI7QUFJbEI7O0FBTnNDO0FBQUE7QUFBQSxhQVF2Qyw2QkFBb0I7QUFDbEIsYUFBS3JCLEtBQUwsQ0FBV2lDLHFCQUFYLENBQWlDO0FBQUNDLFVBQUFBLFVBQVUsRUFBRTtBQUFiLFNBQWpDO0FBQ0Q7QUFWc0M7QUFBQTtBQUFBLGFBWXZDLDRCQUFtQkMsU0FBbkIsRUFBOEI7QUFBQTs7QUFDNUI7QUFDQSxZQUFNQyxNQUFNLEdBQUcsQ0FBQyxPQUFELEVBQVUsWUFBVixFQUF3QixRQUF4QixDQUFmO0FBQ0EsWUFBTUMsd0JBQXdCLEdBQUdELE1BQU0sQ0FBQ0UsSUFBUCxDQUMvQixVQUFBQyxJQUFJO0FBQUEsaUJBQUksTUFBSSxDQUFDdkMsS0FBTCxDQUFXUyxrQkFBWCxDQUE4QjhCLElBQTlCLE1BQXdDSixTQUFTLENBQUMxQixrQkFBVixDQUE2QjhCLElBQTdCLENBQTVDO0FBQUEsU0FEMkIsQ0FBakM7O0FBR0EsWUFBSUYsd0JBQUosRUFBOEI7QUFDNUIsZUFBS3JDLEtBQUwsQ0FBV2lDLHFCQUFYLENBQWlDO0FBQUNDLFlBQUFBLFVBQVUsRUFBRTtBQUFiLFdBQWpDOztBQUNBLGVBQUtiLHNCQUFMO0FBQ0Q7QUFDRjtBQXRCc0M7QUFBQTtBQUFBLGFBK0V2QyxrQkFBUztBQUFBLDBCQUNpRCxLQUFLckIsS0FEdEQ7QUFBQSxZQUNBUyxrQkFEQSxlQUNBQSxrQkFEQTtBQUFBLFlBQ29CSCxTQURwQixlQUNvQkEsU0FEcEI7QUFBQSxnREFDK0JrQyxTQUQvQjtBQUFBLFlBQytCQSxTQUQvQixzQ0FDMkMsRUFEM0M7QUFBQSxZQUVBOUIsUUFGQSxHQUVzQkosU0FGdEIsQ0FFQUksUUFGQTtBQUFBLFlBRVUrQixRQUZWLEdBRXNCbkMsU0FGdEIsQ0FFVW1DLFFBRlY7QUFBQSxZQUdBQyxNQUhBLEdBR3FCRCxRQUhyQixDQUdBQyxNQUhBO0FBQUEsWUFHUUMsU0FIUixHQUdxQkYsUUFIckIsQ0FHUUUsU0FIUjtBQUFBLFlBSUFuQyxTQUpBLEdBSXFCQyxrQkFKckIsQ0FJQUQsU0FKQTtBQUFBLFlBSVdvQyxNQUpYLEdBSXFCbkMsa0JBSnJCLENBSVdtQyxNQUpYO0FBTVAsWUFBTTlCLE9BQU8sR0FBRzBCLFNBQVMsSUFBSUEsU0FBUyxDQUFDSyxNQUFWLEdBQW1CLENBQWhEO0FBRUEsWUFBTUMsSUFBSSxHQUFHO0FBQ1g3QyxVQUFBQSxLQUFLLEVBQUUsQ0FBQU8sU0FBUyxTQUFULElBQUFBLFNBQVMsV0FBVCxZQUFBQSxTQUFTLENBQUVJLE1BQVgsS0FBcUIsQ0FEakI7QUFFWFYsVUFBQUEsTUFBTSxFQUFFLENBQUFNLFNBQVMsU0FBVCxJQUFBQSxTQUFTLFdBQVQsWUFBQUEsU0FBUyxDQUFFSyxNQUFYLEtBQXFCO0FBRmxCLFNBQWI7QUFJQSxZQUFNWixLQUFLLEdBQUc2QyxJQUFJLENBQUM3QyxLQUFMLElBQWNhLE9BQU8sR0FBRyxDQUFILEdBQU8sQ0FBNUIsQ0FBZDtBQUNBLFlBQU1aLE1BQU0sR0FBRzRDLElBQUksQ0FBQzVDLE1BQXBCO0FBQ0EsWUFBTVMsS0FBSyxHQUFHLEtBQUtLLGdCQUFMLENBQXNCLEtBQUtoQixLQUEzQixDQUFkOztBQUNBLFlBQU0rQyxXQUFXLG1DQUNackMsUUFEWTtBQUVmVCxVQUFBQSxLQUFLLEVBQUxBLEtBRmU7QUFHZkMsVUFBQUEsTUFBTSxFQUFOQSxNQUhlO0FBSWY4QyxVQUFBQSxJQUFJLEVBQUV0QyxRQUFRLENBQUNzQyxJQUFULElBQWlCQyxJQUFJLENBQUNDLElBQUwsQ0FBVXZDLEtBQVYsS0FBb0IsQ0FBckM7QUFKUyxVQUFqQixDQWZPLENBc0JQOzs7QUFDQSxZQUFJRixrQkFBa0IsQ0FBQzBDLE1BQXZCLEVBQStCO0FBQzdCLGNBQU1DLGNBQWMsR0FBR1YsTUFBTSxDQUFDakIsTUFBUCxDQUNyQixVQUFDNEIsS0FBRCxFQUFRQyxHQUFSO0FBQUEsbUJBQWdCRCxLQUFLLENBQUNFLEVBQU4sS0FBYUMsNEJBQWIsSUFBa0NILEtBQUssQ0FBQ0ksaUJBQU4sQ0FBd0JkLFNBQVMsQ0FBQ1csR0FBRCxDQUFqQyxDQUFsRDtBQUFBLFdBRHFCLENBQXZCO0FBR0EsY0FBTUksTUFBTSxHQUFHLDZCQUFjTixjQUFkLENBQWY7QUFDQSxjQUFNTyxhQUFhLEdBQUcsdUNBQTJCRCxNQUEzQixFQUFtQztBQUFDekQsWUFBQUEsS0FBSyxFQUFMQSxLQUFEO0FBQVFDLFlBQUFBLE1BQU0sRUFBTkE7QUFBUixXQUFuQyxDQUF0Qjs7QUFDQSxjQUFJeUQsYUFBSixFQUFtQjtBQUNqQixnQkFBTVgsSUFBSSxHQUFHWSxNQUFNLENBQUNDLFFBQVAsQ0FBZ0JGLGFBQWEsQ0FBQ1gsSUFBOUIsSUFBc0NXLGFBQWEsQ0FBQ1gsSUFBcEQsR0FBMkR0QyxRQUFRLENBQUNzQyxJQUFqRjtBQUVBRCxZQUFBQSxXQUFXLENBQUNlLFNBQVosR0FBd0JILGFBQWEsQ0FBQ1IsTUFBZCxDQUFxQixDQUFyQixDQUF4QjtBQUNBSixZQUFBQSxXQUFXLENBQUNnQixRQUFaLEdBQXVCSixhQUFhLENBQUNSLE1BQWQsQ0FBcUIsQ0FBckIsQ0FBdkI7QUFDQUosWUFBQUEsV0FBVyxDQUFDQyxJQUFaLEdBQW1CQSxJQUFJLEdBQUdZLE1BQU0sQ0FBQ1gsSUFBSSxDQUFDQyxJQUFMLENBQVV2QyxLQUFWLEtBQW9CLENBQXJCLENBQWhDO0FBQ0Q7QUFDRjs7QUFFRCxZQUFNcUQsUUFBUSxtQ0FDVDFELFNBRFM7QUFFWkMsVUFBQUEsUUFBUSxFQUFFLEtBQUswRCxzQkFBTCxDQUE0QixLQUFLakUsS0FBakMsQ0FGRTtBQUlaO0FBQ0FVLFVBQUFBLFFBQVEsRUFBRXFDLFdBTEU7QUFNWm1CLFVBQUFBLFdBQVcsRUFBRTtBQUNYO0FBQ0FDLFlBQUFBLFNBQVMsRUFBRTtBQUNUQyxjQUFBQSxJQUFJLEVBQUV4QixNQURHO0FBRVR5QixjQUFBQSxNQUFNLEVBQUU7QUFGQztBQUZBLFdBTkQ7QUFhWkMsVUFBQUEsWUFBWSxFQUFFQyxlQWJGO0FBY1pDLFVBQUFBLFdBQVcsRUFBRSxLQUFLeEMsWUFkTjtBQWVaeUMsVUFBQUEsUUFBUSxFQUFFLElBZkU7QUFnQlpDLFVBQUFBLFdBQVcsa0NBQ05wRSxTQUFTLENBQUNvRSxXQURKO0FBRVRDLFlBQUFBLFNBQVMsRUFBRTtBQUNUQyxjQUFBQSxxQkFBcUIsRUFBRSxJQURkO0FBRVRDLGNBQUFBLGVBQWUsRUFBRTtBQUZSO0FBRkY7QUFoQkMsVUFBZDs7QUF5QkEsWUFBTUMsYUFBYSxHQUFHLENBQUNoRSxPQUFELGdCQUNwQixnQ0FBQyxZQUFEO0FBQWMsVUFBQSxLQUFLLEVBQUUsQ0FBckI7QUFBd0IsVUFBQSxPQUFPLEVBQUU7QUFBakMsV0FBMkNrRCxRQUEzQyxFQURvQixnQkFHcEIsZ0NBQUMsVUFBRDtBQUFZLFVBQUEsU0FBUyxFQUFDLHFCQUF0QjtBQUE0QyxVQUFBLFFBQVEsRUFBRXREO0FBQXRELFdBQ0c4QixTQUFTLENBQUNyQixHQUFWLENBQWMsVUFBQzRELFFBQUQsRUFBV0MsS0FBWDtBQUFBLDhCQUNiLGdDQUFDLFlBQUQ7QUFBYyxZQUFBLEdBQUcsRUFBRUEsS0FBbkI7QUFBMEIsWUFBQSxLQUFLLEVBQUVBLEtBQWpDO0FBQXdDLFlBQUEsT0FBTyxFQUFFQSxLQUFLLEtBQUs7QUFBM0QsYUFBa0VoQixRQUFsRSxFQURhO0FBQUEsU0FBZCxDQURILENBSEY7QUFTQSw0QkFDRSxnQ0FBQyxtQkFBRDtBQUFxQixVQUFBLFNBQVMsRUFBQztBQUEvQix3QkFDRSxnQ0FBQyxrQkFBRDtBQUFvQixVQUFBLEdBQUcsRUFBRSxLQUFLMUMsZUFBOUI7QUFBK0MsVUFBQSxLQUFLLEVBQUV3QixJQUFJLENBQUM3QyxLQUEzRDtBQUFrRSxVQUFBLE1BQU0sRUFBRTZDLElBQUksQ0FBQzVDO0FBQS9FLHdCQUNFLGdDQUFDLGdEQUFEO0FBQTZCLFVBQUEsUUFBUSxFQUFFUTtBQUF2QyxXQUNHb0UsYUFESCxDQURGLENBREYsQ0FERjtBQVNEO0FBaEtzQztBQUFBO0FBQUEsSUFDYkcsZ0JBRGE7O0FBa0t6QyxTQUFPNUUsYUFBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIzIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuLy8gbGlicmFyaWVzXG5pbXBvcnQgUmVhY3QsIHtDb21wb25lbnQsIGNyZWF0ZVJlZn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHtjcmVhdGVTZWxlY3Rvcn0gZnJvbSAncmVzZWxlY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge01hcH0gZnJvbSAncmVhY3QtbWFwLWdsJztcbmltcG9ydCBkZWJvdW5jZSBmcm9tICdsb2Rhc2guZGVib3VuY2UnO1xuaW1wb3J0IHtcbiAgZXhwb3J0SW1hZ2VFcnJvcixcbiAgc2NhbGVNYXBTdHlsZUJ5UmVzb2x1dGlvbixcbiAgZ2V0Q2VudGVyQW5kWm9vbUZyb21Cb3VuZHMsXG4gIGNvbnZlcnRUb1BuZyxcbiAgZ2V0U2NhbGVGcm9tSW1hZ2VTaXplXG59IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuaW1wb3J0IHtmaW5kTWFwQm91bmRzfSBmcm9tICdAa2VwbGVyLmdsL3JlZHVjZXJzJztcbmltcG9ydCBNYXBDb250YWluZXJGYWN0b3J5IGZyb20gJy4vbWFwLWNvbnRhaW5lcic7XG5pbXBvcnQgTWFwc0xheW91dEZhY3RvcnkgZnJvbSAnLi9tYXBzLWxheW91dCc7XG5pbXBvcnQge01hcFZpZXdTdGF0ZUNvbnRleHRQcm92aWRlcn0gZnJvbSAnLi9tYXAtdmlldy1zdGF0ZS1jb250ZXh0JztcblxuaW1wb3J0IHtHRU9DT0RFUl9MQVlFUl9JRCwgRXhwb3J0SW1hZ2V9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7U3BsaXRNYXB9IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuaW1wb3J0IHtcbiAgc2V0RXhwb3J0SW1hZ2VEYXRhVXJpLFxuICBzZXRFeHBvcnRJbWFnZUVycm9yLFxuICBzZXRFeHBvcnRJbWFnZVNldHRpbmdcbn0gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcbmltcG9ydCB7bWFwRmllbGRzU2VsZWN0b3J9IGZyb20gJy4va2VwbGVyLWdsJztcblxuY29uc3QgQ0xBU1NfRklMVEVSID0gW1xuICAnbWFwYm94Z2wtY29udHJvbC1jb250YWluZXInLFxuICAnYXR0cml0aW9uLWxpbmsnLFxuICAnYXR0cml0aW9uLWxvZ28nLFxuICAnbWFwLWNvbnRyb2xfX3BhbmVsLXNwbGl0LXZpZXdwb3J0LXRvb2xzJ1xuXTtcbmNvbnN0IERPTV9GSUxURVJfRlVOQyA9IG5vZGUgPT4gIUNMQVNTX0ZJTFRFUi5pbmNsdWRlcyhub2RlLmNsYXNzTmFtZSk7XG5jb25zdCBPVVRfT0ZfU0NSRUVOX1BPU0lUSU9OID0gLTk5OTk7XG5cblBsb3RDb250YWluZXJGYWN0b3J5LmRlcHMgPSBbTWFwQ29udGFpbmVyRmFjdG9yeSwgTWFwc0xheW91dEZhY3RvcnldO1xuXG4vLyBSZW1vdmUgbWFwYm94IGxvZ28gaW4gZXhwb3J0ZWQgbWFwLCBiZWNhdXNlIGl0IGNvbnRhaW5zIG5vbi1hc2NpaSBjaGFyYWN0ZXJzXG4vLyBSZW1vdmUgc3BsaXQgdmlld3BvcnQgVUkgY29udHJvbHMgZnJvbSBleHBvcnRlZCBpbWFnZXMgd2hlbiB0aGUgbGVnZW5kIGlzIHNob3duXG5jb25zdCBTdHlsZWRQbG90Q29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgLm1hcGJveGdsLWN0cmwtYm90dG9tLWxlZnQsXG4gIC5tYXBib3hnbC1jdHJsLWJvdHRvbS1yaWdodCxcbiAgLm1hcGJveC1hdHRyaWJ1dGlvbi1jb250YWluZXIsXG4gIC5tYXAtY29udHJvbF9fcGFuZWwtc3BsaXQtdmlld3BvcnQtdG9vbHMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogJHtPVVRfT0ZfU0NSRUVOX1BPU0lUSU9OfXB4O1xuICBsZWZ0OiAke09VVF9PRl9TQ1JFRU5fUE9TSVRJT059cHg7XG5gO1xuXG5pbnRlcmZhY2UgU3R5bGVkTWFwQ29udGFpbmVyUHJvcHMge1xuICB3aWR0aD86IG51bWJlcjtcbiAgaGVpZ2h0PzogbnVtYmVyO1xufVxuXG5jb25zdCBTdHlsZWRNYXBDb250YWluZXIgPSBzdHlsZWQuZGl2PFN0eWxlZE1hcENvbnRhaW5lclByb3BzPmBcbiAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMud2lkdGh9cHg7XG4gIGhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy5oZWlnaHR9cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG5gO1xuXG5pbnRlcmZhY2UgUGxvdENvbnRhaW5lclByb3BzIHtcbiAgd2lkdGg/OiBudW1iZXI7XG4gIGhlaWdodD86IG51bWJlcjtcbiAgZXhwb3J0SW1hZ2VTZXR0aW5nOiBFeHBvcnRJbWFnZTtcbiAgYWRkTm90aWZpY2F0aW9uOiBGdW5jdGlvbjtcbiAgbWFwRmllbGRzOiBSZXR1cm5UeXBlPHR5cGVvZiBtYXBGaWVsZHNTZWxlY3Rvcj47XG4gIHNldEV4cG9ydEltYWdlU2V0dGluZzogdHlwZW9mIHNldEV4cG9ydEltYWdlU2V0dGluZztcbiAgc2V0RXhwb3J0SW1hZ2VEYXRhVXJpOiB0eXBlb2Ygc2V0RXhwb3J0SW1hZ2VEYXRhVXJpO1xuICBzZXRFeHBvcnRJbWFnZUVycm9yOiB0eXBlb2Ygc2V0RXhwb3J0SW1hZ2VFcnJvcjtcbiAgc3BsaXRNYXBzPzogU3BsaXRNYXBbXTtcbiAgZW5hYmxlRXJyb3JOb3RpZmljYXRpb24/OiBib29sZWFuO1xufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBQbG90Q29udGFpbmVyRmFjdG9yeShcbiAgTWFwQ29udGFpbmVyOiBSZXR1cm5UeXBlPHR5cGVvZiBNYXBDb250YWluZXJGYWN0b3J5PixcbiAgTWFwc0xheW91dDogUmV0dXJuVHlwZTx0eXBlb2YgTWFwc0xheW91dEZhY3Rvcnk+XG4pOiBSZWFjdC5Db21wb25lbnRUeXBlPFBsb3RDb250YWluZXJQcm9wcz4ge1xuICBjbGFzcyBQbG90Q29udGFpbmVyIGV4dGVuZHMgQ29tcG9uZW50PFBsb3RDb250YWluZXJQcm9wcz4ge1xuICAgIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgICBzdXBlcihwcm9wcyk7XG4gICAgICB0aGlzLl9vbk1hcFJlbmRlciA9IGRlYm91bmNlKHRoaXMuX29uTWFwUmVuZGVyLCA1MDApO1xuICAgICAgdGhpcy5fcmV0cmlldmVOZXdTY3JlZW5zaG90ID0gZGVib3VuY2UodGhpcy5fcmV0cmlldmVOZXdTY3JlZW5zaG90LCA1MDApO1xuICAgIH1cblxuICAgIGNvbXBvbmVudERpZE1vdW50KCkge1xuICAgICAgdGhpcy5wcm9wcy5zZXRFeHBvcnRJbWFnZVNldHRpbmcoe3Byb2Nlc3Npbmc6IHRydWV9KTtcbiAgICB9XG5cbiAgICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgICAvLyByZS1mZXRjaCB0aGUgbmV3IHNjcmVlbnNob3Qgb25seSB3aGVuIHJhdGlvIGxlZ2VuZCBvciByZXNvbHV0aW9uIGNoYW5nZXNcbiAgICAgIGNvbnN0IGNoZWNrcyA9IFsncmF0aW8nLCAncmVzb2x1dGlvbicsICdsZWdlbmQnXTtcbiAgICAgIGNvbnN0IHNob3VsZFJldHJpZXZlU2NyZWVuc2hvdCA9IGNoZWNrcy5zb21lKFxuICAgICAgICBpdGVtID0+IHRoaXMucHJvcHMuZXhwb3J0SW1hZ2VTZXR0aW5nW2l0ZW1dICE9PSBwcmV2UHJvcHMuZXhwb3J0SW1hZ2VTZXR0aW5nW2l0ZW1dXG4gICAgICApO1xuICAgICAgaWYgKHNob3VsZFJldHJpZXZlU2NyZWVuc2hvdCkge1xuICAgICAgICB0aGlzLnByb3BzLnNldEV4cG9ydEltYWdlU2V0dGluZyh7cHJvY2Vzc2luZzogdHJ1ZX0pO1xuICAgICAgICB0aGlzLl9yZXRyaWV2ZU5ld1NjcmVlbnNob3QoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwbG90dGluZ0FyZWFSZWYgPSBjcmVhdGVSZWY8SFRNTERpdkVsZW1lbnQ+KCk7XG5cbiAgICBtYXBTdHlsZVNlbGVjdG9yID0gcHJvcHMgPT4gcHJvcHMubWFwRmllbGRzLm1hcFN0eWxlO1xuICAgIG1hcFNjYWxlU2VsZWN0b3IgPSBwcm9wcyA9PiB7XG4gICAgICBjb25zdCB7aW1hZ2VTaXplfSA9IHByb3BzLmV4cG9ydEltYWdlU2V0dGluZztcbiAgICAgIGNvbnN0IHttYXBTdGF0ZX0gPSBwcm9wcy5tYXBGaWVsZHM7XG4gICAgICBpZiAoaW1hZ2VTaXplLnNjYWxlKSB7XG4gICAgICAgIHJldHVybiBpbWFnZVNpemUuc2NhbGU7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNjYWxlID0gZ2V0U2NhbGVGcm9tSW1hZ2VTaXplKFxuICAgICAgICBpbWFnZVNpemUuaW1hZ2VXLFxuICAgICAgICBpbWFnZVNpemUuaW1hZ2VILFxuICAgICAgICBtYXBTdGF0ZS53aWR0aCAqIChtYXBTdGF0ZS5pc1NwbGl0ID8gMiA6IDEpLFxuICAgICAgICBtYXBTdGF0ZS5oZWlnaHRcbiAgICAgICk7XG5cbiAgICAgIHJldHVybiBzY2FsZSA+IDAgPyBzY2FsZSA6IDE7XG4gICAgfTtcblxuICAgIHNjYWxlZE1hcFN0eWxlU2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIHRoaXMubWFwU3R5bGVTZWxlY3RvcixcbiAgICAgIHRoaXMubWFwU2NhbGVTZWxlY3RvcixcbiAgICAgIChtYXBTdHlsZSwgc2NhbGUpID0+ICh7XG4gICAgICAgIC4uLm1hcFN0eWxlLFxuICAgICAgICBib3R0b21NYXBTdHlsZTogc2NhbGVNYXBTdHlsZUJ5UmVzb2x1dGlvbihtYXBTdHlsZS5ib3R0b21NYXBTdHlsZSwgc2NhbGUpLFxuICAgICAgICB0b3BNYXBTdHlsZTogc2NhbGVNYXBTdHlsZUJ5UmVzb2x1dGlvbihtYXBTdHlsZS50b3BNYXBTdHlsZSwgc2NhbGUpXG4gICAgICB9KVxuICAgICk7XG5cbiAgICBfb25NYXBSZW5kZXIgPSBtYXAgPT4ge1xuICAgICAgaWYgKG1hcC5pc1N0eWxlTG9hZGVkKCkpIHtcbiAgICAgICAgdGhpcy5fcmV0cmlldmVOZXdTY3JlZW5zaG90KCk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIF9yZXRyaWV2ZU5ld1NjcmVlbnNob3QgPSAoKSA9PiB7XG4gICAgICBpZiAodGhpcy5wbG90dGluZ0FyZWFSZWYuY3VycmVudCkge1xuICAgICAgICBjb25zdCB7aW1hZ2VTaXplLCBlc2NhcGVYaHRtbEZvcldlYnBhY2t9ID0gdGhpcy5wcm9wcy5leHBvcnRJbWFnZVNldHRpbmc7XG4gICAgICAgIGNvbnZlcnRUb1BuZyh0aGlzLnBsb3R0aW5nQXJlYVJlZi5jdXJyZW50LCB7XG4gICAgICAgICAgZmlsdGVyOiBET01fRklMVEVSX0ZVTkMsXG4gICAgICAgICAgd2lkdGg6IGltYWdlU2l6ZS5pbWFnZVcsXG4gICAgICAgICAgaGVpZ2h0OiBpbWFnZVNpemUuaW1hZ2VILFxuICAgICAgICAgIGVzY2FwZVhodG1sRm9yV2VicGFja1xuICAgICAgICB9KVxuICAgICAgICAgIC50aGVuKHRoaXMucHJvcHMuc2V0RXhwb3J0SW1hZ2VEYXRhVXJpKVxuICAgICAgICAgIC5jYXRjaChlcnIgPT4ge1xuICAgICAgICAgICAgdGhpcy5wcm9wcy5zZXRFeHBvcnRJbWFnZUVycm9yKGVycik7XG4gICAgICAgICAgICBpZiAodGhpcy5wcm9wcy5lbmFibGVFcnJvck5vdGlmaWNhdGlvbikge1xuICAgICAgICAgICAgICB0aGlzLnByb3BzLmFkZE5vdGlmaWNhdGlvbihleHBvcnRJbWFnZUVycm9yKHtlcnJ9KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHtleHBvcnRJbWFnZVNldHRpbmcsIG1hcEZpZWxkcywgc3BsaXRNYXBzID0gW119ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IHttYXBTdGF0ZSwgdmlzU3RhdGV9ID0gbWFwRmllbGRzO1xuICAgICAgY29uc3Qge2xheWVycywgbGF5ZXJEYXRhfSA9IHZpc1N0YXRlO1xuICAgICAgY29uc3Qge2ltYWdlU2l6ZSwgbGVnZW5kfSA9IGV4cG9ydEltYWdlU2V0dGluZztcblxuICAgICAgY29uc3QgaXNTcGxpdCA9IHNwbGl0TWFwcyAmJiBzcGxpdE1hcHMubGVuZ3RoID4gMTtcblxuICAgICAgY29uc3Qgc2l6ZSA9IHtcbiAgICAgICAgd2lkdGg6IGltYWdlU2l6ZT8uaW1hZ2VXIHx8IDEsXG4gICAgICAgIGhlaWdodDogaW1hZ2VTaXplPy5pbWFnZUggfHwgMVxuICAgICAgfTtcbiAgICAgIGNvbnN0IHdpZHRoID0gc2l6ZS53aWR0aCAvIChpc1NwbGl0ID8gMiA6IDEpO1xuICAgICAgY29uc3QgaGVpZ2h0ID0gc2l6ZS5oZWlnaHQ7XG4gICAgICBjb25zdCBzY2FsZSA9IHRoaXMubWFwU2NhbGVTZWxlY3Rvcih0aGlzLnByb3BzKTtcbiAgICAgIGNvbnN0IG5ld01hcFN0YXRlID0ge1xuICAgICAgICAuLi5tYXBTdGF0ZSxcbiAgICAgICAgd2lkdGgsXG4gICAgICAgIGhlaWdodCxcbiAgICAgICAgem9vbTogbWFwU3RhdGUuem9vbSArIChNYXRoLmxvZzIoc2NhbGUpIHx8IDApXG4gICAgICB9O1xuXG4gICAgICAvLyBjZW50ZXIgYW5kIGFsbCBsYXllciBib3VuZHNcbiAgICAgIGlmIChleHBvcnRJbWFnZVNldHRpbmcuY2VudGVyKSB7XG4gICAgICAgIGNvbnN0IHJlbmRlcmVkTGF5ZXJzID0gbGF5ZXJzLmZpbHRlcihcbiAgICAgICAgICAobGF5ZXIsIGlkeCkgPT4gbGF5ZXIuaWQgIT09IEdFT0NPREVSX0xBWUVSX0lEICYmIGxheWVyLnNob3VsZFJlbmRlckxheWVyKGxheWVyRGF0YVtpZHhdKVxuICAgICAgICApO1xuICAgICAgICBjb25zdCBib3VuZHMgPSBmaW5kTWFwQm91bmRzKHJlbmRlcmVkTGF5ZXJzKTtcbiAgICAgICAgY29uc3QgY2VudGVyQW5kWm9vbSA9IGdldENlbnRlckFuZFpvb21Gcm9tQm91bmRzKGJvdW5kcywge3dpZHRoLCBoZWlnaHR9KTtcbiAgICAgICAgaWYgKGNlbnRlckFuZFpvb20pIHtcbiAgICAgICAgICBjb25zdCB6b29tID0gTnVtYmVyLmlzRmluaXRlKGNlbnRlckFuZFpvb20uem9vbSkgPyBjZW50ZXJBbmRab29tLnpvb20gOiBtYXBTdGF0ZS56b29tO1xuXG4gICAgICAgICAgbmV3TWFwU3RhdGUubG9uZ2l0dWRlID0gY2VudGVyQW5kWm9vbS5jZW50ZXJbMF07XG4gICAgICAgICAgbmV3TWFwU3RhdGUubGF0aXR1ZGUgPSBjZW50ZXJBbmRab29tLmNlbnRlclsxXTtcbiAgICAgICAgICBuZXdNYXBTdGF0ZS56b29tID0gem9vbSArIE51bWJlcihNYXRoLmxvZzIoc2NhbGUpIHx8IDApO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1hcFByb3BzID0ge1xuICAgICAgICAuLi5tYXBGaWVsZHMsXG4gICAgICAgIG1hcFN0eWxlOiB0aGlzLnNjYWxlZE1hcFN0eWxlU2VsZWN0b3IodGhpcy5wcm9wcyksXG5cbiAgICAgICAgLy8gb3ZlcnJpZGUgdmlld3BvcnQgYmFzZWQgb24gZXhwb3J0IHNldHRpbmdzXG4gICAgICAgIG1hcFN0YXRlOiBuZXdNYXBTdGF0ZSxcbiAgICAgICAgbWFwQ29udHJvbHM6IHtcbiAgICAgICAgICAvLyBvdmVycmlkZSBtYXAgbGVnZW5kIHZpc2liaWxpdHlcbiAgICAgICAgICBtYXBMZWdlbmQ6IHtcbiAgICAgICAgICAgIHNob3c6IGxlZ2VuZCxcbiAgICAgICAgICAgIGFjdGl2ZTogdHJ1ZVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgTWFwQ29tcG9uZW50OiBNYXAsXG4gICAgICAgIG9uTWFwUmVuZGVyOiB0aGlzLl9vbk1hcFJlbmRlcixcbiAgICAgICAgaXNFeHBvcnQ6IHRydWUsXG4gICAgICAgIGRlY2tHbFByb3BzOiB7XG4gICAgICAgICAgLi4ubWFwRmllbGRzLmRlY2tHbFByb3BzLFxuICAgICAgICAgIGdsT3B0aW9uczoge1xuICAgICAgICAgICAgcHJlc2VydmVEcmF3aW5nQnVmZmVyOiB0cnVlLFxuICAgICAgICAgICAgdXNlRGV2aWNlUGl4ZWxzOiBmYWxzZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfTtcblxuICAgICAgY29uc3QgbWFwQ29udGFpbmVycyA9ICFpc1NwbGl0ID8gKFxuICAgICAgICA8TWFwQ29udGFpbmVyIGluZGV4PXswfSBwcmltYXJ5PXt0cnVlfSB7Li4ubWFwUHJvcHN9IC8+XG4gICAgICApIDogKFxuICAgICAgICA8TWFwc0xheW91dCBjbGFzc05hbWU9XCJwbG90LWNvbnRhaW5lci1tYXBzXCIgbWFwU3RhdGU9e21hcFN0YXRlfT5cbiAgICAgICAgICB7c3BsaXRNYXBzLm1hcCgoc2V0dGluZ3MsIGluZGV4KSA9PiAoXG4gICAgICAgICAgICA8TWFwQ29udGFpbmVyIGtleT17aW5kZXh9IGluZGV4PXtpbmRleH0gcHJpbWFyeT17aW5kZXggPT09IDF9IHsuLi5tYXBQcm9wc30gLz5cbiAgICAgICAgICApKX1cbiAgICAgICAgPC9NYXBzTGF5b3V0PlxuICAgICAgKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxTdHlsZWRQbG90Q29udGFpbmVyIGNsYXNzTmFtZT1cImV4cG9ydC1tYXAtaW5zdGFuY2VcIj5cbiAgICAgICAgICA8U3R5bGVkTWFwQ29udGFpbmVyIHJlZj17dGhpcy5wbG90dGluZ0FyZWFSZWZ9IHdpZHRoPXtzaXplLndpZHRofSBoZWlnaHQ9e3NpemUuaGVpZ2h0fT5cbiAgICAgICAgICAgIDxNYXBWaWV3U3RhdGVDb250ZXh0UHJvdmlkZXIgbWFwU3RhdGU9e21hcFN0YXRlfT5cbiAgICAgICAgICAgICAge21hcENvbnRhaW5lcnN9XG4gICAgICAgICAgICA8L01hcFZpZXdTdGF0ZUNvbnRleHRQcm92aWRlcj5cbiAgICAgICAgICA8L1N0eWxlZE1hcENvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRQbG90Q29udGFpbmVyPlxuICAgICAgKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIFBsb3RDb250YWluZXI7XG59XG4iXX0=
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import { Datasets } from '@kepler.gl/table';
3
+ export declare type AddByDatasetButtonProps = {
4
+ datasets: Datasets;
5
+ onAdd: (dataId: string) => void;
6
+ width: string;
7
+ buttonIntlId: string;
8
+ inactive?: boolean;
9
+ className?: string;
10
+ };
11
+ declare const AddByDatasetButton: React.FC<AddByDatasetButtonProps>;
12
+ export default AddByDatasetButton;