@rio-cloud/rio-uikit 2.0.1 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (567) hide show
  1. package/CircularProgress.d.ts +2 -0
  2. package/CircularProgress.js +5 -0
  3. package/CircularProgress.js.map +1 -0
  4. package/RadioCardGroup.d.ts +2 -0
  5. package/RadioCardGroup.js +7 -0
  6. package/RadioCardGroup.js.map +1 -0
  7. package/SearchHighlightText.d.ts +2 -0
  8. package/SearchHighlightText.js +5 -0
  9. package/SearchHighlightText.js.map +1 -0
  10. package/TextTruncateMiddle.d.ts +2 -0
  11. package/TextTruncateMiddle.js +5 -0
  12. package/TextTruncateMiddle.js.map +1 -0
  13. package/Tracker.d.ts +2 -0
  14. package/Tracker.js +5 -0
  15. package/Tracker.js.map +1 -0
  16. package/classNames.d.ts +2 -0
  17. package/classNames.js +5 -0
  18. package/classNames.js.map +1 -0
  19. package/components/accentBar/AccentBar.js +1 -1
  20. package/components/accentBar/AccentBar.js.map +1 -1
  21. package/components/actionBarItem/ActionBarItem.d.ts +2 -2
  22. package/components/actionBarItem/ActionBarItem.js +7 -7
  23. package/components/actionBarItem/ActionBarItem.js.map +1 -1
  24. package/components/actionBarItem/ActionBarItemIcon.js +1 -1
  25. package/components/actionBarItem/ActionBarItemIcon.js.map +1 -1
  26. package/components/actionBarItem/ActionBarItemList.js +1 -1
  27. package/components/actionBarItem/ActionBarItemList.js.map +1 -1
  28. package/components/actionBarItem/ActionBarItemListItem.js +1 -1
  29. package/components/actionBarItem/ActionBarItemListItem.js.map +1 -1
  30. package/components/actionBarItem/ActionBarItemListSeparator.js +1 -1
  31. package/components/actionBarItem/ActionBarItemListSeparator.js.map +1 -1
  32. package/components/actionBarItem/ActionBarItemPopoverContent.js +3 -3
  33. package/components/actionBarItem/ActionBarItemPopoverContent.js.map +1 -1
  34. package/components/actionBarItem/ActionBarOverlay.js +1 -1
  35. package/components/actionBarItem/ActionBarOverlay.js.map +1 -1
  36. package/components/activity/Activity.js +1 -1
  37. package/components/activity/Activity.js.map +1 -1
  38. package/components/animatedTextReveal/AnimatedTextReveal.js +1 -1
  39. package/components/animatedTextReveal/AnimatedTextReveal.js.map +1 -1
  40. package/components/applicationHeader/AppMenu.js +2 -2
  41. package/components/applicationHeader/AppMenu.js.map +1 -1
  42. package/components/applicationHeader/AppMenuDropdown.js +13 -11
  43. package/components/applicationHeader/AppMenuDropdown.js.map +1 -1
  44. package/components/applicationHeader/ApplicationHeader.d.ts +6 -7
  45. package/components/applicationHeader/ApplicationHeader.js +1 -1
  46. package/components/applicationHeader/ApplicationHeader.js.map +1 -1
  47. package/components/applicationHeader/MobileHeaderModal.js +8 -8
  48. package/components/applicationHeader/MobileHeaderModal.js.map +1 -1
  49. package/components/applicationHeader/MobileSubmoduleNavigation.js +1 -1
  50. package/components/applicationHeader/MobileSubmoduleNavigation.js.map +1 -1
  51. package/components/applicationHeader/NavItems.js +4 -4
  52. package/components/applicationHeader/NavItems.js.map +1 -1
  53. package/components/applicationLayout/ApplicationLayout.js +10 -10
  54. package/components/applicationLayout/ApplicationLayout.js.map +1 -1
  55. package/components/applicationLayout/ApplicationLayoutBody.js +2 -2
  56. package/components/applicationLayout/ApplicationLayoutBody.js.map +1 -1
  57. package/components/applicationLayout/ApplicationLayoutBodyBanner.js +1 -1
  58. package/components/applicationLayout/ApplicationLayoutBodyBanner.js.map +1 -1
  59. package/components/applicationLayout/ApplicationLayoutBodyBottomBar.js +1 -1
  60. package/components/applicationLayout/ApplicationLayoutBodyBottomBar.js.map +1 -1
  61. package/components/applicationLayout/ApplicationLayoutBodyNavigation.js +1 -1
  62. package/components/applicationLayout/ApplicationLayoutBodyNavigation.js.map +1 -1
  63. package/components/applicationLayout/ApplicationLayoutHeader.js +1 -1
  64. package/components/applicationLayout/ApplicationLayoutHeader.js.map +1 -1
  65. package/components/applicationLayout/ApplicationLayoutSidebar.js +1 -1
  66. package/components/applicationLayout/ApplicationLayoutSidebar.js.map +1 -1
  67. package/components/applicationLayout/SubNavigation.d.ts +7 -0
  68. package/components/applicationLayout/SubNavigation.js +1 -1
  69. package/components/applicationLayout/SubNavigation.js.map +1 -1
  70. package/components/assetTree/AssetTree.d.ts +7 -0
  71. package/components/assetTree/AssetTree.js +1 -1
  72. package/components/assetTree/AssetTree.js.map +1 -1
  73. package/components/assetTree/Tree.d.ts +15 -0
  74. package/components/assetTree/Tree.js +1 -1
  75. package/components/assetTree/Tree.js.map +1 -1
  76. package/components/assetTree/TreeIcon.d.ts +30 -0
  77. package/components/assetTree/TreeIcon.js +16 -0
  78. package/components/assetTree/TreeIcon.js.map +1 -0
  79. package/components/assetTree/TreeLeaf.js +23 -23
  80. package/components/assetTree/TreeLeaf.js.map +1 -1
  81. package/components/assetTree/TreeNode.js +25 -25
  82. package/components/assetTree/TreeNode.js.map +1 -1
  83. package/components/assetTree/TreeNodeContainer.js +1 -1
  84. package/components/assetTree/TreeNodeContainer.js.map +1 -1
  85. package/components/assetTree/TreeOption.js +3 -3
  86. package/components/assetTree/TreeOption.js.map +1 -1
  87. package/components/assetTree/TreeOptions.js +4 -4
  88. package/components/assetTree/TreeOptions.js.map +1 -1
  89. package/components/assetTree/TreeRoot.js +3 -3
  90. package/components/assetTree/TreeRoot.js.map +1 -1
  91. package/components/assetTree/TreeSearch.d.ts +2 -0
  92. package/components/assetTree/TreeSearch.js +3 -3
  93. package/components/assetTree/TreeSearch.js.map +1 -1
  94. package/components/assetTree/TreeSidebar.js +1 -1
  95. package/components/assetTree/TreeSidebar.js.map +1 -1
  96. package/components/assetTree/TreeSidebarCategories.js +4 -4
  97. package/components/assetTree/TreeSidebarCategories.js.map +1 -1
  98. package/components/assetTree/TreeSummary.js +1 -1
  99. package/components/assetTree/TreeSummary.js.map +1 -1
  100. package/components/assetTree/TypeCounter.js +1 -1
  101. package/components/assetTree/TypeCounter.js.map +1 -1
  102. package/components/autosuggest/AutoSuggest.js +1 -1
  103. package/components/autosuggest/AutoSuggest.js.map +1 -1
  104. package/components/avatar/Avatar.js +1 -1
  105. package/components/avatar/Avatar.js.map +1 -1
  106. package/components/banner/Banner.js +1 -1
  107. package/components/banner/Banner.js.map +1 -1
  108. package/components/banner/BannerContent.js +1 -1
  109. package/components/banner/BannerContent.js.map +1 -1
  110. package/components/barList/BarList.d.ts +26 -0
  111. package/components/barList/BarList.js +1 -1
  112. package/components/barList/BarList.js.map +1 -1
  113. package/components/bottomSheet/BottomSheet.d.ts +17 -3
  114. package/components/bottomSheet/BottomSheet.js +1 -1
  115. package/components/bottomSheet/BottomSheet.js.map +1 -1
  116. package/components/bottomSheet/TimedBottomSheet.d.ts +10 -0
  117. package/components/bottomSheet/TimedBottomSheet.js.map +1 -1
  118. package/components/button/Button.d.ts +53 -7
  119. package/components/button/Button.js +87 -64
  120. package/components/button/Button.js.map +1 -1
  121. package/components/button/ButtonToolbar.js +1 -1
  122. package/components/button/ButtonToolbar.js.map +1 -1
  123. package/components/button/ToggleButton.d.ts +4 -1
  124. package/components/button/ToggleButton.js.map +1 -1
  125. package/components/calendarStripe/CalendarStripe.d.ts +1 -1
  126. package/components/calendarStripe/CalendarStripe.js +48 -50
  127. package/components/calendarStripe/CalendarStripe.js.map +1 -1
  128. package/components/card/Card.js +1 -1
  129. package/components/card/Card.js.map +1 -1
  130. package/components/charts/Area.d.ts +2 -2
  131. package/components/charts/Area.js.map +1 -1
  132. package/components/charts/Line.d.ts +2 -2
  133. package/components/charts/Line.js.map +1 -1
  134. package/components/charts/RadialBarChart.js +106 -103
  135. package/components/charts/RadialBarChart.js.map +1 -1
  136. package/components/checkbox/Checkbox.d.ts +0 -3
  137. package/components/checkbox/Checkbox.js +6 -6
  138. package/components/checkbox/Checkbox.js.map +1 -1
  139. package/components/circularProgress/CircularProgress.d.ts +139 -0
  140. package/components/circularProgress/CircularProgress.js +197 -0
  141. package/components/circularProgress/CircularProgress.js.map +1 -0
  142. package/components/clearableInput/ClearableInput.d.ts +21 -20
  143. package/components/clearableInput/ClearableInput.js +9 -9
  144. package/components/clearableInput/ClearableInput.js.map +1 -1
  145. package/components/collapse/Collapse.d.ts +3 -0
  146. package/components/collapse/Collapse.js +12 -12
  147. package/components/collapse/Collapse.js.map +1 -1
  148. package/components/contentLoader/ContentLoader.d.ts +10 -2
  149. package/components/contentLoader/ContentLoader.js.map +1 -1
  150. package/components/dataTabs/DataTabHeader.js +1 -1
  151. package/components/dataTabs/DataTabHeader.js.map +1 -1
  152. package/components/dataTabs/DataTabs.d.ts +6 -0
  153. package/components/dataTabs/DataTabs.js +4 -4
  154. package/components/dataTabs/DataTabs.js.map +1 -1
  155. package/components/datepicker/DatePicker.js +6 -6
  156. package/components/datepicker/DatePicker.js.map +1 -1
  157. package/components/datepicker/DateRangePicker.js +1 -1
  158. package/components/datepicker/DateRangePicker.js.map +1 -1
  159. package/components/datepicker/DayPicker.js +1 -1
  160. package/components/datepicker/DayPicker.js.map +1 -1
  161. package/components/dialog/ConfirmationDialog.d.ts +22 -0
  162. package/components/dialog/ConfirmationDialog.js.map +1 -1
  163. package/components/dialog/Dialog.d.ts +13 -1
  164. package/components/dialog/Dialog.js +55 -55
  165. package/components/dialog/Dialog.js.map +1 -1
  166. package/components/dialog/DialogBody.js +1 -1
  167. package/components/dialog/DialogBody.js.map +1 -1
  168. package/components/dialog/DialogFooter.js +1 -1
  169. package/components/dialog/DialogFooter.js.map +1 -1
  170. package/components/dialog/DialogHeader.js +1 -1
  171. package/components/dialog/DialogHeader.js.map +1 -1
  172. package/components/dialog/MediaDialog.js +1 -1
  173. package/components/dialog/MediaDialog.js.map +1 -1
  174. package/components/dialog/ReleaseNotesDialog.d.ts +3 -3
  175. package/components/dialog/ReleaseNotesDialog.js.map +1 -1
  176. package/components/dialog/SplitDialog.js +1 -1
  177. package/components/dialog/SplitDialog.js.map +1 -1
  178. package/components/divider/Divider.js +1 -1
  179. package/components/divider/Divider.js.map +1 -1
  180. package/components/dropdown/ButtonDropdown.d.ts +4 -0
  181. package/components/dropdown/ButtonDropdown.js +52 -52
  182. package/components/dropdown/ButtonDropdown.js.map +1 -1
  183. package/components/dropdown/DropdownSubmenu.d.ts +4 -0
  184. package/components/dropdown/DropdownSubmenu.js +3 -3
  185. package/components/dropdown/DropdownSubmenu.js.map +1 -1
  186. package/components/dropdown/DropdownToggleButton.d.ts +1 -1
  187. package/components/dropdown/DropdownToggleButton.js +4 -3
  188. package/components/dropdown/DropdownToggleButton.js.map +1 -1
  189. package/components/dropdown/SplitCaretButton.js +6 -6
  190. package/components/dropdown/SplitCaretButton.js.map +1 -1
  191. package/components/editableContent/EditableContent.d.ts +6 -0
  192. package/components/editableContent/EditableContent.js +1 -1
  193. package/components/editableContent/EditableContent.js.map +1 -1
  194. package/components/ellipsis/TextTruncateMiddle.d.ts +23 -0
  195. package/components/ellipsis/TextTruncateMiddle.js +21 -0
  196. package/components/ellipsis/TextTruncateMiddle.js.map +1 -0
  197. package/components/expander/ExpanderList.d.ts +3 -0
  198. package/components/expander/ExpanderList.js +5 -5
  199. package/components/expander/ExpanderList.js.map +1 -1
  200. package/components/expander/ExpanderPanel.d.ts +14 -4
  201. package/components/expander/ExpanderPanel.js +1 -1
  202. package/components/expander/ExpanderPanel.js.map +1 -1
  203. package/components/fade/Fade.d.ts +1 -1
  204. package/components/fade/Fade.js.map +1 -1
  205. package/components/feedback/FeedbackRating.js +1 -1
  206. package/components/feedback/FeedbackRating.js.map +1 -1
  207. package/components/feedback/FeedbackReactions.js +1 -1
  208. package/components/feedback/FeedbackReactions.js.map +1 -1
  209. package/components/filepicker/FilePicker.d.ts +0 -2
  210. package/components/filepicker/FilePicker.js.map +1 -1
  211. package/components/formLabel/FormLabel.js +6 -9
  212. package/components/formLabel/FormLabel.js.map +1 -1
  213. package/components/formLabel/LabeledElement.js +1 -1
  214. package/components/formLabel/LabeledElement.js.map +1 -1
  215. package/components/groupedItemList/GroupedItemList.d.ts +10 -7
  216. package/components/groupedItemList/GroupedItemList.js.map +1 -1
  217. package/components/listMenu/ListMenu.js +2 -5
  218. package/components/listMenu/ListMenu.js.map +1 -1
  219. package/components/listMenu/ListMenuGroup.d.ts +2 -1
  220. package/components/listMenu/ListMenuGroup.js +2 -2
  221. package/components/listMenu/ListMenuGroup.js.map +1 -1
  222. package/components/loadMore/LoadMoreButton.js +1 -1
  223. package/components/loadMore/LoadMoreButton.js.map +1 -1
  224. package/components/loadMore/LoadMoreProgress.js +1 -1
  225. package/components/loadMore/LoadMoreProgress.js.map +1 -1
  226. package/components/map/components/Map.js.map +1 -1
  227. package/components/map/components/constants.js.map +1 -1
  228. package/components/map/components/features/ContextMenuItem.d.ts +1 -1
  229. package/components/map/components/features/ContextMenuItem.js +2 -17
  230. package/components/map/components/features/ContextMenuItem.js.map +1 -1
  231. package/components/map/components/features/MapSettings.js +4 -4
  232. package/components/map/components/features/MapSettings.js.map +1 -1
  233. package/components/map/components/features/basics/Polyline.d.ts +4 -1
  234. package/components/map/components/features/basics/Polyline.js +1 -1
  235. package/components/map/components/features/basics/Polyline.js.map +1 -1
  236. package/components/map/components/features/layers/MarkerLayer.d.ts +3 -1
  237. package/components/map/components/features/layers/MarkerLayer.js.map +1 -1
  238. package/components/map/components/features/layers/clustering/ClusterLayer.js +1 -1
  239. package/components/map/components/features/layers/clustering/ClusterLayer.js.map +1 -1
  240. package/components/map/components/features/layers/clustering/SimpleClusterLayer.d.ts +3 -2
  241. package/components/map/components/features/layers/clustering/SimpleClusterLayer.js.map +1 -1
  242. package/components/map/components/features/layers/overlayLayers/RoadRestrictionLayer.js +7 -7
  243. package/components/map/components/features/layers/overlayLayers/RoadRestrictionLayer.js.map +1 -1
  244. package/components/map/components/features/layers/overlayLayers/TrafficLayer.js +4 -4
  245. package/components/map/components/features/layers/overlayLayers/TrafficLayer.js.map +1 -1
  246. package/components/map/components/features/settings/MapSettingsItem.js +1 -1
  247. package/components/map/components/features/settings/MapSettingsItem.js.map +1 -1
  248. package/components/map/components/features/settings/MapSettingsPanel.js +6 -20
  249. package/components/map/components/features/settings/MapSettingsPanel.js.map +1 -1
  250. package/components/map/components/features/settings/MapSettingsTile.js +87 -61
  251. package/components/map/components/features/settings/MapSettingsTile.js.map +1 -1
  252. package/components/map/components/features/settings/ZoomButtons.js +1 -1
  253. package/components/map/components/features/settings/ZoomButtons.js.map +1 -1
  254. package/components/map/components/features/settings/builtinSettings/MapTypeSettings.d.ts +38 -1
  255. package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js +128 -92
  256. package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js.map +1 -1
  257. package/components/map/utils/clustering.d.ts +6 -1
  258. package/components/map/utils/clustering.js +25 -19
  259. package/components/map/utils/clustering.js.map +1 -1
  260. package/components/map/utils/eventHandling.js +9 -9
  261. package/components/map/utils/eventHandling.js.map +1 -1
  262. package/components/map/utils/mapUtils.d.ts +6 -6
  263. package/components/map/utils/mapUtils.js +14 -19
  264. package/components/map/utils/mapUtils.js.map +1 -1
  265. package/components/map/utils/rendering.d.ts +1 -1
  266. package/components/map/utils/rendering.js +23 -23
  267. package/components/map/utils/rendering.js.map +1 -1
  268. package/components/mapMarker/ClusterMapMarker.js +1 -1
  269. package/components/mapMarker/ClusterMapMarker.js.map +1 -1
  270. package/components/mapMarker/SingleMapMarker.js +1 -1
  271. package/components/mapMarker/SingleMapMarker.js.map +1 -1
  272. package/components/menuItems/MenuItem.d.ts +23 -0
  273. package/components/menuItems/MenuItem.js +1 -1
  274. package/components/menuItems/MenuItem.js.map +1 -1
  275. package/components/menuItems/MenuItemList.js +1 -1
  276. package/components/menuItems/MenuItemList.js.map +1 -1
  277. package/components/navigation/AppNavigationBar.js +4 -4
  278. package/components/navigation/AppNavigationBar.js.map +1 -1
  279. package/components/noData/NoData.js +1 -1
  280. package/components/noData/NoData.js.map +1 -1
  281. package/components/notification/Notification.js +4 -4
  282. package/components/notification/Notification.js.map +1 -1
  283. package/components/numberControl/NumberControl.js +4 -4
  284. package/components/numberControl/NumberControl.js.map +1 -1
  285. package/components/numberInput/NumberInput.js +1 -1
  286. package/components/numberInput/NumberInput.js.map +1 -1
  287. package/components/onboarding/OnboardingTip.d.ts +18 -12
  288. package/components/onboarding/OnboardingTip.js +4 -4
  289. package/components/onboarding/OnboardingTip.js.map +1 -1
  290. package/components/overlay/OverlayTrigger.d.ts +43 -1
  291. package/components/overlay/OverlayTrigger.js.map +1 -1
  292. package/components/page/Page.js +1 -1
  293. package/components/page/Page.js.map +1 -1
  294. package/components/pager/Pager.d.ts +3 -0
  295. package/components/pager/Pager.js +1 -1
  296. package/components/pager/Pager.js.map +1 -1
  297. package/components/popover/Popover.d.ts +1 -0
  298. package/components/popover/Popover.js.map +1 -1
  299. package/components/preloader/ImagePreloader.d.ts +1 -1
  300. package/components/preloader/ImagePreloader.js.map +1 -1
  301. package/components/radiobutton/RadioButton.d.ts +10 -6
  302. package/components/radiobutton/RadioButton.js +5 -5
  303. package/components/radiobutton/RadioButton.js.map +1 -1
  304. package/components/radiobutton/RadioCardGroup.d.ts +86 -0
  305. package/components/radiobutton/RadioCardGroup.js +110 -0
  306. package/components/radiobutton/RadioCardGroup.js.map +1 -0
  307. package/components/releaseNotes/ReleaseNotes.d.ts +0 -3
  308. package/components/releaseNotes/ReleaseNotes.js.map +1 -1
  309. package/components/resizer/Resizer.d.ts +17 -3
  310. package/components/resizer/Resizer.js +1 -1
  311. package/components/resizer/Resizer.js.map +1 -1
  312. package/components/responsiveColumnStripe/ResponsiveColumnStripe.js +1 -1
  313. package/components/responsiveColumnStripe/ResponsiveColumnStripe.js.map +1 -1
  314. package/components/rioglyph/Rioglyph.d.ts +20 -8
  315. package/components/rioglyph/Rioglyph.js +1 -1
  316. package/components/rioglyph/Rioglyph.js.map +1 -1
  317. package/components/rioglyph/RioglyphIconType.d.ts +1 -1
  318. package/components/rules/RuleConnector.js +1 -1
  319. package/components/rules/RuleConnector.js.map +1 -1
  320. package/components/rules/RuleContainer.js +27 -27
  321. package/components/rules/RuleContainer.js.map +1 -1
  322. package/components/rules/RulesWrapper.js +1 -1
  323. package/components/rules/RulesWrapper.js.map +1 -1
  324. package/components/saveableInput/SaveableDateInput.d.ts +20 -2
  325. package/components/saveableInput/SaveableDateInput.js +1 -1
  326. package/components/saveableInput/SaveableDateInput.js.map +1 -1
  327. package/components/saveableInput/SaveableInput.d.ts +10 -2
  328. package/components/saveableInput/SaveableInput.js +49 -49
  329. package/components/saveableInput/SaveableInput.js.map +1 -1
  330. package/components/searchHighlight/SearchHighlightText.d.ts +28 -0
  331. package/components/searchHighlight/SearchHighlightText.js +15 -0
  332. package/components/searchHighlight/SearchHighlightText.js.map +1 -0
  333. package/components/selects/BaseSelectDropdown.js +90 -79
  334. package/components/selects/BaseSelectDropdown.js.map +1 -1
  335. package/components/selects/ClearButton.js +4 -4
  336. package/components/selects/ClearButton.js.map +1 -1
  337. package/components/selects/Multiselect.js +6 -6
  338. package/components/selects/Multiselect.js.map +1 -1
  339. package/components/selects/MultiselectToggleFilter.js +4 -4
  340. package/components/selects/MultiselectToggleFilter.js.map +1 -1
  341. package/components/selects/MultiselectToggleSelection.js +1 -1
  342. package/components/selects/MultiselectToggleSelection.js.map +1 -1
  343. package/components/selects/Select.d.ts +5 -0
  344. package/components/selects/Select.js +93 -93
  345. package/components/selects/Select.js.map +1 -1
  346. package/components/selects/SelectFilter.js +1 -1
  347. package/components/selects/SelectFilter.js.map +1 -1
  348. package/components/selects/WithFeedbackAndAddon.js +1 -1
  349. package/components/selects/WithFeedbackAndAddon.js.map +1 -1
  350. package/components/sidebars/Sidebar.d.ts +19 -3
  351. package/components/sidebars/Sidebar.js +54 -54
  352. package/components/sidebars/Sidebar.js.map +1 -1
  353. package/components/sidebars/SidebarBackdrop.js +4 -4
  354. package/components/sidebars/SidebarBackdrop.js.map +1 -1
  355. package/components/sidebars/SidebarFooter.js +1 -1
  356. package/components/sidebars/SidebarFooter.js.map +1 -1
  357. package/components/sidebars/SidebarFullscreenToggle.js +4 -4
  358. package/components/sidebars/SidebarFullscreenToggle.js.map +1 -1
  359. package/components/slider/RangeSlider.d.ts +15 -0
  360. package/components/slider/RangeSlider.js +1 -1
  361. package/components/slider/RangeSlider.js.map +1 -1
  362. package/components/slider/Slider.d.ts +9 -0
  363. package/components/slider/Slider.js +1 -1
  364. package/components/slider/Slider.js.map +1 -1
  365. package/components/smoothScrollbars/SmoothScrollbars.d.ts +44 -0
  366. package/components/smoothScrollbars/SmoothScrollbars.js +1 -1
  367. package/components/smoothScrollbars/SmoothScrollbars.js.map +1 -1
  368. package/components/spinner/Spinner.d.ts +3 -3
  369. package/components/spinner/Spinner.js +5 -4
  370. package/components/spinner/Spinner.js.map +1 -1
  371. package/components/states/CustomState.d.ts +69 -1
  372. package/components/states/CustomState.js +1 -1
  373. package/components/states/CustomState.js.map +1 -1
  374. package/components/states/EmptyState.d.ts +1 -1
  375. package/components/states/EmptyState.js.map +1 -1
  376. package/components/states/ErrorState.d.ts +1 -1
  377. package/components/states/ErrorState.js.map +1 -1
  378. package/components/states/ForbiddenState.d.ts +1 -1
  379. package/components/states/ForbiddenState.js.map +1 -1
  380. package/components/states/MaintenanceState.d.ts +1 -1
  381. package/components/states/MaintenanceState.js.map +1 -1
  382. package/components/states/NotBookedState.d.ts +1 -1
  383. package/components/states/NotBookedState.js.map +1 -1
  384. package/components/states/NotFoundState.d.ts +1 -1
  385. package/components/states/NotFoundState.js.map +1 -1
  386. package/components/states/StateButton.js +1 -1
  387. package/components/states/StateButton.js.map +1 -1
  388. package/components/states/StateIcon.d.ts +14 -1
  389. package/components/states/StateIcon.js.map +1 -1
  390. package/components/statsWidget/StatsWidget.d.ts +2 -0
  391. package/components/statsWidget/StatsWidget.js +1 -1
  392. package/components/statsWidget/StatsWidget.js.map +1 -1
  393. package/components/statsWidget/StatsWidgetBody.d.ts +1 -0
  394. package/components/statsWidget/StatsWidgetBody.js +1 -1
  395. package/components/statsWidget/StatsWidgetBody.js.map +1 -1
  396. package/components/statsWidget/StatsWidgetFooter.js +1 -1
  397. package/components/statsWidget/StatsWidgetFooter.js.map +1 -1
  398. package/components/statsWidget/StatsWidgetHeader.js +1 -1
  399. package/components/statsWidget/StatsWidgetHeader.js.map +1 -1
  400. package/components/statsWidget/StatsWidgetNumber.d.ts +2 -0
  401. package/components/statsWidget/StatsWidgetNumber.js +2 -2
  402. package/components/statsWidget/StatsWidgetNumber.js.map +1 -1
  403. package/components/statsWidget/StatsWidgetSpacer.js +1 -1
  404. package/components/statsWidget/StatsWidgetSpacer.js.map +1 -1
  405. package/components/statsWidget/StatsWidgets.js +1 -1
  406. package/components/statsWidget/StatsWidgets.js.map +1 -1
  407. package/components/statusBar/StatusBar.d.ts +98 -3
  408. package/components/statusBar/StatusBar.js +24 -17
  409. package/components/statusBar/StatusBar.js.map +1 -1
  410. package/components/statusBar/StatusBarIcon.d.ts +2 -2
  411. package/components/statusBar/StatusBarIcon.js +4 -4
  412. package/components/statusBar/StatusBarIcon.js.map +1 -1
  413. package/components/statusBar/StatusBarLabel.d.ts +2 -2
  414. package/components/statusBar/StatusBarLabel.js +5 -7
  415. package/components/statusBar/StatusBarLabel.js.map +1 -1
  416. package/components/statusBar/StatusBarProgressBar.d.ts +1 -1
  417. package/components/statusBar/StatusBarProgressBar.js +1 -1
  418. package/components/statusBar/StatusBarProgressBar.js.map +1 -1
  419. package/components/steppedProgressBar/SteppedProgressBar.d.ts +1 -1
  420. package/components/steppedProgressBar/SteppedProgressBar.js +1 -1
  421. package/components/steppedProgressBar/SteppedProgressBar.js.map +1 -1
  422. package/components/switch/Switch.d.ts +28 -1
  423. package/components/switch/Switch.js +77 -35
  424. package/components/switch/Switch.js.map +1 -1
  425. package/components/table/SortArrowDown.d.ts +1 -1
  426. package/components/table/SortArrowDown.js.map +1 -1
  427. package/components/table/SortArrowUp.d.ts +1 -1
  428. package/components/table/SortArrowUp.js.map +1 -1
  429. package/components/table/TableCardsSorting.js +4 -4
  430. package/components/table/TableCardsSorting.js.map +1 -1
  431. package/components/table/TableHead.js +1 -1
  432. package/components/table/TableHead.js.map +1 -1
  433. package/components/table/TableSearch.js +1 -1
  434. package/components/table/TableSearch.js.map +1 -1
  435. package/components/table/TableSettingsColumnButtons.d.ts +1 -1
  436. package/components/table/TableSettingsColumnButtons.js +1 -1
  437. package/components/table/TableSettingsColumnButtons.js.map +1 -1
  438. package/components/table/TableSettingsColumnDetails.d.ts +1 -1
  439. package/components/table/TableSettingsColumnDetails.js +1 -1
  440. package/components/table/TableSettingsColumnDetails.js.map +1 -1
  441. package/components/table/TableSettingsDialog.d.ts +56 -1
  442. package/components/table/TableSettingsDialog.js +170 -144
  443. package/components/table/TableSettingsDialog.js.map +1 -1
  444. package/components/table/TableSettingsDialogFooter.js +9 -9
  445. package/components/table/TableSettingsDialogFooter.js.map +1 -1
  446. package/components/table/TableSettingsListContainer.d.ts +1 -1
  447. package/components/table/TableSettingsListContainer.js.map +1 -1
  448. package/components/table/TableSettingsListItem.d.ts +1 -1
  449. package/components/table/TableSettingsListItem.js +8 -8
  450. package/components/table/TableSettingsListItem.js.map +1 -1
  451. package/components/table/TableToolbar.js +1 -1
  452. package/components/table/TableToolbar.js.map +1 -1
  453. package/components/table/TableViewToggles.d.ts +21 -1
  454. package/components/table/TableViewToggles.js +1 -1
  455. package/components/table/TableViewToggles.js.map +1 -1
  456. package/components/tag/Tag.d.ts +7 -2
  457. package/components/tag/Tag.js +1 -1
  458. package/components/tag/Tag.js.map +1 -1
  459. package/components/tag/TagList.js +1 -1
  460. package/components/tag/TagList.js.map +1 -1
  461. package/components/tagManager/CustomSuggestionItem.js +1 -1
  462. package/components/tagManager/CustomSuggestionItem.js.map +1 -1
  463. package/components/tagManager/TagManager.d.ts +29 -2
  464. package/components/tagManager/TagManager.js +6 -6
  465. package/components/tagManager/TagManager.js.map +1 -1
  466. package/components/tagManager/TagManagerItemList.d.ts +1 -1
  467. package/components/tagManager/TagManagerItemList.js +1 -1
  468. package/components/tagManager/TagManagerItemList.js.map +1 -1
  469. package/components/teaser/Teaser.d.ts +57 -55
  470. package/components/teaser/Teaser.js +1 -1
  471. package/components/teaser/Teaser.js.map +1 -1
  472. package/components/teaser/TeaserContainer.d.ts +1 -1
  473. package/components/teaser/TeaserContainer.js +1 -1
  474. package/components/teaser/TeaserContainer.js.map +1 -1
  475. package/components/timepicker/TimePicker.d.ts +20 -0
  476. package/components/timepicker/TimePicker.js +153 -99
  477. package/components/timepicker/TimePicker.js.map +1 -1
  478. package/components/tooltip/SimpleTooltip.d.ts +22 -4
  479. package/components/tooltip/SimpleTooltip.js.map +1 -1
  480. package/components/tooltip/Tooltip.d.ts +22 -2
  481. package/components/tooltip/Tooltip.js +1 -1
  482. package/components/tooltip/Tooltip.js.map +1 -1
  483. package/components/tracker/Tracker.d.ts +85 -0
  484. package/components/tracker/Tracker.js +54 -0
  485. package/components/tracker/Tracker.js.map +1 -0
  486. package/components/tracker/TrackerBlock.d.ts +11 -0
  487. package/components/tracker/TrackerBlock.js +34 -0
  488. package/components/tracker/TrackerBlock.js.map +1 -0
  489. package/components/video/ResponsiveVideo.d.ts +8 -3
  490. package/components/video/ResponsiveVideo.js +1 -1
  491. package/components/video/ResponsiveVideo.js.map +1 -1
  492. package/hooks/useCookies.d.ts +79 -0
  493. package/hooks/useCookies.js +33 -0
  494. package/hooks/useCookies.js.map +1 -0
  495. package/hooks/useInterval.js +5 -5
  496. package/hooks/useInterval.js.map +1 -1
  497. package/hooks/useIsFocusWithin.js +3 -3
  498. package/hooks/useIsFocusWithin.js.map +1 -1
  499. package/hooks/useKey.d.ts +1 -1
  500. package/hooks/useKey.js.map +1 -1
  501. package/hooks/useLatest.d.ts +16 -0
  502. package/hooks/useLatest.js +11 -0
  503. package/hooks/useLatest.js.map +1 -0
  504. package/hooks/useOnboarding.d.ts +86 -80
  505. package/hooks/useOnboarding.js.map +1 -1
  506. package/hooks/usePostMessage.d.ts +2 -1
  507. package/hooks/usePostMessage.js.map +1 -1
  508. package/hooks/useRioCookieConsent.d.ts +49 -0
  509. package/hooks/useRioCookieConsent.js +44 -0
  510. package/hooks/useRioCookieConsent.js.map +1 -0
  511. package/hooks/useSearch.d.ts +1 -1
  512. package/hooks/useSearch.js +28 -17
  513. package/hooks/useSearch.js.map +1 -1
  514. package/hooks/useSearchHighlight.d.ts +60 -0
  515. package/hooks/useSearchHighlight.js +54 -0
  516. package/hooks/useSearchHighlight.js.map +1 -0
  517. package/hooks/useTableExport.js.map +1 -1
  518. package/hooks/useTimeout.js +11 -11
  519. package/hooks/useTimeout.js.map +1 -1
  520. package/hooks/useUncontrollable.d.ts +1 -1
  521. package/hooks/useUncontrollable.js.map +1 -1
  522. package/hooks/useUrlState.d.ts +62 -0
  523. package/hooks/useUrlState.js +137 -0
  524. package/hooks/useUrlState.js.map +1 -0
  525. package/mergeClassNameOverrides.d.ts +1 -0
  526. package/mergeClassNameOverrides.js +5 -0
  527. package/mergeClassNameOverrides.js.map +1 -0
  528. package/package.json +18 -21
  529. package/routeUtils.js +11 -5
  530. package/routeUtils.js.map +1 -1
  531. package/themes/Volkswagen/components/applicationHeader/VolkswagenApplicationHeader.js +1 -1
  532. package/themes/Volkswagen/components/applicationHeader/VolkswagenApplicationHeader.js.map +1 -1
  533. package/useCookies.d.ts +2 -0
  534. package/useCookies.js +5 -0
  535. package/useCookies.js.map +1 -0
  536. package/useRioCookieConsent.d.ts +2 -0
  537. package/useRioCookieConsent.js +5 -0
  538. package/useRioCookieConsent.js.map +1 -0
  539. package/useSearchHighlight.d.ts +2 -0
  540. package/useSearchHighlight.js +6 -0
  541. package/useSearchHighlight.js.map +1 -0
  542. package/useUrlState.d.ts +2 -0
  543. package/useUrlState.js +5 -0
  544. package/useUrlState.js.map +1 -0
  545. package/utils/classNames.d.ts +3 -0
  546. package/utils/classNames.js +5 -0
  547. package/utils/classNames.js.map +1 -0
  548. package/utils/colorScheme.js +14 -13
  549. package/utils/colorScheme.js.map +1 -1
  550. package/utils/cssuseragent.js.map +1 -1
  551. package/utils/mergeClassNameOverrides.d.ts +1 -0
  552. package/utils/mergeClassNameOverrides.js +55 -0
  553. package/utils/mergeClassNameOverrides.js.map +1 -0
  554. package/utils/routeUtils.d.ts +122 -13
  555. package/utils/routeUtils.js +89 -31
  556. package/utils/routeUtils.js.map +1 -1
  557. package/utils/scrollItemIntoView.js +12 -11
  558. package/utils/scrollItemIntoView.js.map +1 -1
  559. package/utils/urlFeatureToggles.js +19 -20
  560. package/utils/urlFeatureToggles.js.map +1 -1
  561. package/version.d.ts +1 -1
  562. package/version.js +1 -1
  563. package/version.js.map +1 -1
  564. package/components/states/BaseStateProps.d.ts +0 -66
  565. package/components/statusBar/StatusBar.types.d.ts +0 -85
  566. package/components/table/TableSettingsDialog.types.d.ts +0 -39
  567. package/components/tagManager/TagManagerTag.d.ts +0 -5
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../../../src/components/map/components/constants.ts"],"sourcesContent":["import type { MapType } from '../utils/mapTypes';\n\nexport const MAP_TYPE_DEFAULT: MapType = 'DEFAULT';\nexport const MAP_TYPE_FLEET_STYLE: MapType = 'FLEET_STYLE';\nexport const MAP_TYPE_SATELLITE: MapType = 'SATELLITE';\nexport const MAP_TYPE_TERRAIN: MapType = 'TERRAIN';\nexport const MAP_TYPE_NIGHT: MapType = 'NIGHT';\n\nexport const MAP_LAYER_INCIDENTS = 'INCIDENTS';\nexport const MAP_LAYER_TRAFFIC = 'TRAFFIC';\nexport const MAP_LAYER_ROAD_RESTRICTIONS = 'ROAD_RESTRICTIONS';\n\n// outdated?\nexport const FORMAT = 'png8';\nexport const TILE_SIZE = 256;\nexport const TILE_TYPE = 'maptile';\n\nexport const NO_CREDENTIALS_ERROR_MESSAGE = 'Cannot instantiate the Map. Missing credentials property.';\n\n// @ts-ignore-next-line\n// biome-ignore lint/complexity/useLiteralKeys: <explanation>\nexport const ENGINE_TYPE_HARP = H.Map.EngineType['HARP'];\nexport const ENGINE_TYPE_P2D = H.Map.EngineType.P2D;\n\nexport const DEFAULT_TILE_SIZE = 512;\nexport const DEFAULT_RASTER_LAYER_FORMAT = 'png'; // 'jpeg';\n\nexport const DEFAULT_MIN_ZOOM = 3;\nexport const DEFAULT_MAX_ZOOM = 20;\n\nexport const DEFAULT_PIXEL_RATIO = 2;\n"],"names":["MAP_TYPE_DEFAULT","MAP_TYPE_FLEET_STYLE","MAP_TYPE_SATELLITE","MAP_TYPE_TERRAIN","MAP_TYPE_NIGHT","MAP_LAYER_INCIDENTS","MAP_LAYER_TRAFFIC","MAP_LAYER_ROAD_RESTRICTIONS","ENGINE_TYPE_HARP","ENGINE_TYPE_P2D","DEFAULT_TILE_SIZE","DEFAULT_RASTER_LAYER_FORMAT","DEFAULT_MIN_ZOOM","DEFAULT_MAX_ZOOM","DEFAULT_PIXEL_RATIO"],"mappings":"AAEO,MAAMA,IAA4B,WAC5BC,IAAgC,eAChCC,IAA8B,aAC9BC,IAA4B,WAC5BC,IAA0B,SAE1BC,IAAsB,aACtBC,IAAoB,WACpBC,IAA8B,qBAW9BC,IAAmB,EAAE,IAAI,WAAW,MACpCC,IAAkB,EAAE,IAAI,WAAW,KAEnCC,IAAoB,KACpBC,IAA8B,OAE9BC,IAAmB,GACnBC,IAAmB,IAEnBC,IAAsB;"}
1
+ {"version":3,"file":"constants.js","sources":["../../../../src/components/map/components/constants.ts"],"sourcesContent":["import type { MapType } from '../utils/mapTypes';\n\nexport const MAP_TYPE_DEFAULT: MapType = 'DEFAULT';\nexport const MAP_TYPE_FLEET_STYLE: MapType = 'FLEET_STYLE';\nexport const MAP_TYPE_SATELLITE: MapType = 'SATELLITE';\nexport const MAP_TYPE_TERRAIN: MapType = 'TERRAIN';\nexport const MAP_TYPE_NIGHT: MapType = 'NIGHT';\n\nexport const MAP_LAYER_INCIDENTS = 'INCIDENTS';\nexport const MAP_LAYER_TRAFFIC = 'TRAFFIC';\nexport const MAP_LAYER_ROAD_RESTRICTIONS = 'ROAD_RESTRICTIONS';\n\n// outdated?\nexport const FORMAT = 'png8';\nexport const TILE_SIZE = 256;\nexport const TILE_TYPE = 'maptile';\n\nexport const NO_CREDENTIALS_ERROR_MESSAGE = 'Cannot instantiate the Map. Missing credentials property.';\n\n// @ts-expect-error-next-line\n// biome-ignore lint/complexity/useLiteralKeys: here map has not added HARP to EngineType but it works like this\nexport const ENGINE_TYPE_HARP = H.Map.EngineType['HARP'];\nexport const ENGINE_TYPE_P2D = H.Map.EngineType.P2D;\n\nexport const DEFAULT_TILE_SIZE = 512;\nexport const DEFAULT_RASTER_LAYER_FORMAT = 'png'; // 'jpeg';\n\nexport const DEFAULT_MIN_ZOOM = 3;\nexport const DEFAULT_MAX_ZOOM = 20;\n\nexport const DEFAULT_PIXEL_RATIO = 2;\n"],"names":["MAP_TYPE_DEFAULT","MAP_TYPE_FLEET_STYLE","MAP_TYPE_SATELLITE","MAP_TYPE_TERRAIN","MAP_TYPE_NIGHT","MAP_LAYER_INCIDENTS","MAP_LAYER_TRAFFIC","MAP_LAYER_ROAD_RESTRICTIONS","ENGINE_TYPE_HARP","ENGINE_TYPE_P2D","DEFAULT_TILE_SIZE","DEFAULT_RASTER_LAYER_FORMAT","DEFAULT_MIN_ZOOM","DEFAULT_MAX_ZOOM","DEFAULT_PIXEL_RATIO"],"mappings":"AAEO,MAAMA,IAA4B,WAC5BC,IAAgC,eAChCC,IAA8B,aAC9BC,IAA4B,WAC5BC,IAA0B,SAE1BC,IAAsB,aACtBC,IAAoB,WACpBC,IAA8B,qBAW9BC,IAAmB,EAAE,IAAI,WAAW,MACpCC,IAAkB,EAAE,IAAI,WAAW,KAEnCC,IAAoB,KACpBC,IAA8B,OAE9BC,IAAmB,GACnBC,IAAmB,IAEnBC,IAAsB;"}
@@ -8,5 +8,5 @@ export type ContextMenuItemProps = {
8
8
  className?: string;
9
9
  labelClassName?: string;
10
10
  };
11
- declare const ContextMenuItem: (props: ContextMenuItemProps) => H.util.ContextItem;
11
+ declare const ContextMenuItem: (_: ContextMenuItemProps) => null;
12
12
  export default ContextMenuItem;
@@ -1,20 +1,5 @@
1
- import { noop as n } from "es-toolkit/function";
2
- const r = (t) => {
3
- const {
4
- label: e = "",
5
- disabled: o = !1,
6
- callback: l = n
7
- // hasSpinner = false,
8
- // className = '',
9
- // labelClassName = '',
10
- } = t;
11
- return new H.util.ContextItem({
12
- label: e,
13
- disabled: o,
14
- callback: l
15
- });
16
- };
1
+ const e = (t) => null;
17
2
  export {
18
- r as default
3
+ e as default
19
4
  };
20
5
  //# sourceMappingURL=ContextMenuItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ContextMenuItem.js","sources":["../../../../../src/components/map/components/features/ContextMenuItem.tsx"],"sourcesContent":["import { noop } from 'es-toolkit/function';\n\nimport type { Position } from '../../utils/mapTypes';\n\nexport type ContextMenuItemProps = {\n label: string;\n disabled?: boolean;\n callback?: (position: Position) => void;\n hasSpinner?: boolean;\n icon?: string;\n className?: string;\n labelClassName?: string;\n};\n\nconst ContextMenuItem = (props: ContextMenuItemProps) => {\n // Note: not all defined props are passed to the Here ContextItem are used in ContextMenu component\n const {\n label = '',\n disabled = false,\n callback = noop,\n // hasSpinner = false,\n // className = '',\n // labelClassName = '',\n } = props;\n\n return new H.util.ContextItem({\n label,\n disabled,\n callback: callback as any,\n });\n};\n\nexport default ContextMenuItem;\n"],"names":["ContextMenuItem","props","label","disabled","callback","noop"],"mappings":";AAcA,MAAMA,IAAkB,CAACC,MAAgC;AAErD,QAAM;AAAA,IACF,OAAAC,IAAQ;AAAA,IACR,UAAAC,IAAW;AAAA,IACX,UAAAC,IAAWC;AAAA;AAAA;AAAA;AAAA,EAAA,IAIXJ;AAEJ,SAAO,IAAI,EAAE,KAAK,YAAY;AAAA,IAC1B,OAAAC;AAAA,IACA,UAAAC;AAAA,IACA,UAAAC;AAAA,EAAA,CACH;AACL;"}
1
+ {"version":3,"file":"ContextMenuItem.js","sources":["../../../../../src/components/map/components/features/ContextMenuItem.tsx"],"sourcesContent":["import type { Position } from '../../utils/mapTypes';\n\nexport type ContextMenuItemProps = {\n label: string;\n disabled?: boolean;\n callback?: (position: Position) => void;\n hasSpinner?: boolean;\n icon?: string;\n className?: string;\n labelClassName?: string;\n};\n\n// This component is only used as a typed container for props.\n// The actual HERE ContextItem is built inside ContextMenu.tsx.\nconst ContextMenuItem = (_: ContextMenuItemProps) => null;\n\nexport default ContextMenuItem;\n"],"names":["ContextMenuItem","_"],"mappings":"AAcA,MAAMA,IAAkB,CAACC,MAA4B;"}
@@ -1,14 +1,14 @@
1
1
  import { jsx as l } from "react/jsx-runtime";
2
2
  import r from "react";
3
- import g from "classnames";
4
- import { map as f } from "es-toolkit/compat";
3
+ import { map as g } from "es-toolkit/compat";
4
+ import f from "../../../../utils/classNames.js";
5
5
  import u from "./settings/builtinSettings/MapTypeSettings.js";
6
6
  import M from "./settings/builtinSettings/MapLayerSettings.js";
7
7
  import S from "./settings/builtinSettings/MapClusterSettings.js";
8
8
  import { useMapContext as C } from "../MapContext.js";
9
9
  const k = (t) => t.type === u, U = (t) => t.type === M, d = (t) => t.type === S, N = (t) => {
10
- const { options: a, className: s = "" } = t, { baseLayer: n, activeLayers: m, showCluster: p, onMapTypeChange: o, onMapLayerChange: y, onShowClusterChange: c } = C(), i = g("MapSettingsWrapper", s);
11
- return /* @__PURE__ */ l("div", { className: i, children: f(a, (e) => k(e) ? r.cloneElement(e, {
10
+ const { options: a, className: s = "" } = t, { baseLayer: n, activeLayers: m, showCluster: p, onMapTypeChange: o, onMapLayerChange: y, onShowClusterChange: c } = C(), i = f("MapSettingsWrapper", s);
11
+ return /* @__PURE__ */ l("div", { className: i, children: g(a, (e) => k(e) ? r.cloneElement(e, {
12
12
  key: e?.key ?? crypto.randomUUID(),
13
13
  mapType: n,
14
14
  onMapTypeChange: o
@@ -1 +1 @@
1
- {"version":3,"file":"MapSettings.js","sources":["../../../../../src/components/map/components/features/MapSettings.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport { map } from 'es-toolkit/compat';\n\nimport MapTypeSettings from './settings/builtinSettings/MapTypeSettings';\nimport MapLayerSettings from './settings/builtinSettings/MapLayerSettings';\nimport MapClusterSettings from './settings/builtinSettings/MapClusterSettings';\nimport { useMapContext } from '../MapContext';\n\nconst isMapTypeSettings = (option: JSX.Element) => option.type === MapTypeSettings;\nconst isMapLayerSettings = (option: JSX.Element) => option.type === MapLayerSettings;\nconst isMapClusterSettings = (option: JSX.Element) => option.type === MapClusterSettings;\n\nexport type MapSettingsProps = {\n options?: JSX.Element[];\n className?: string;\n};\n\nconst MapSettings = (props: MapSettingsProps) => {\n const { options, className = '' } = props;\n\n const { baseLayer, activeLayers, showCluster, onMapTypeChange, onMapLayerChange, onShowClusterChange } =\n useMapContext();\n\n const mapSettingsClasses = classNames('MapSettingsWrapper', className);\n\n return (\n <div className={mapSettingsClasses}>\n {map(options, option => {\n if (isMapTypeSettings(option)) {\n return React.cloneElement(option, {\n key: option?.key ?? crypto.randomUUID(),\n mapType: baseLayer,\n onMapTypeChange,\n });\n }\n\n if (isMapLayerSettings(option)) {\n return React.cloneElement(option, {\n key: option?.key ?? crypto.randomUUID(),\n activeBuiltinLayers: activeLayers,\n onMapLayerChange,\n });\n }\n\n if (isMapClusterSettings(option)) {\n return React.cloneElement(option, {\n key: option?.key ?? crypto.randomUUID(),\n showCluster,\n onShowClusterChange,\n });\n }\n\n return React.cloneElement(option, {\n key: option?.key ?? `MapSettingsOption_${crypto.randomUUID()}`,\n });\n })}\n </div>\n );\n};\n\nexport default MapSettings;\n"],"names":["isMapTypeSettings","option","MapTypeSettings","isMapLayerSettings","MapLayerSettings","isMapClusterSettings","MapClusterSettings","MapSettings","props","options","className","baseLayer","activeLayers","showCluster","onMapTypeChange","onMapLayerChange","onShowClusterChange","useMapContext","mapSettingsClasses","classNames","map","React"],"mappings":";;;;;;;;AASA,MAAMA,IAAoB,CAACC,MAAwBA,EAAO,SAASC,GAC7DC,IAAqB,CAACF,MAAwBA,EAAO,SAASG,GAC9DC,IAAuB,CAACJ,MAAwBA,EAAO,SAASK,GAOhEC,IAAc,CAACC,MAA4B;AAC7C,QAAM,EAAE,SAAAC,GAAS,WAAAC,IAAY,GAAA,IAAOF,GAE9B,EAAE,WAAAG,GAAW,cAAAC,GAAc,aAAAC,GAAa,iBAAAC,GAAiB,kBAAAC,GAAkB,qBAAAC,EAAA,IAC7EC,EAAA,GAEEC,IAAqBC,EAAW,sBAAsBT,CAAS;AAErE,2BACK,OAAA,EAAI,WAAWQ,GACX,UAAAE,EAAIX,GAAS,CAAAR,MACND,EAAkBC,CAAM,IACjBoB,EAAM,aAAapB,GAAQ;AAAA,IAC9B,KAAKA,GAAQ,OAAO,OAAO,WAAA;AAAA,IAC3B,SAASU;AAAA,IACT,iBAAAG;AAAA,EAAA,CACH,IAGDX,EAAmBF,CAAM,IAClBoB,EAAM,aAAapB,GAAQ;AAAA,IAC9B,KAAKA,GAAQ,OAAO,OAAO,WAAA;AAAA,IAC3B,qBAAqBW;AAAA,IACrB,kBAAAG;AAAA,EAAA,CACH,IAGDV,EAAqBJ,CAAM,IACpBoB,EAAM,aAAapB,GAAQ;AAAA,IAC9B,KAAKA,GAAQ,OAAO,OAAO,WAAA;AAAA,IAC3B,aAAAY;AAAA,IACA,qBAAAG;AAAA,EAAA,CACH,IAGEK,EAAM,aAAapB,GAAQ;AAAA,IAC9B,KAAKA,GAAQ,OAAO,qBAAqB,OAAO,YAAY;AAAA,EAAA,CAC/D,CACJ,EAAA,CACL;AAER;"}
1
+ {"version":3,"file":"MapSettings.js","sources":["../../../../../src/components/map/components/features/MapSettings.tsx"],"sourcesContent":["import React from 'react';\nimport { map } from 'es-toolkit/compat';\n\nimport classNames from '../../../../utils/classNames';\nimport MapTypeSettings from './settings/builtinSettings/MapTypeSettings';\nimport MapLayerSettings from './settings/builtinSettings/MapLayerSettings';\nimport MapClusterSettings from './settings/builtinSettings/MapClusterSettings';\nimport { useMapContext } from '../MapContext';\n\nconst isMapTypeSettings = (option: JSX.Element) => option.type === MapTypeSettings;\nconst isMapLayerSettings = (option: JSX.Element) => option.type === MapLayerSettings;\nconst isMapClusterSettings = (option: JSX.Element) => option.type === MapClusterSettings;\n\nexport type MapSettingsProps = {\n options?: JSX.Element[];\n className?: string;\n};\n\nconst MapSettings = (props: MapSettingsProps) => {\n const { options, className = '' } = props;\n\n const { baseLayer, activeLayers, showCluster, onMapTypeChange, onMapLayerChange, onShowClusterChange } =\n useMapContext();\n\n const mapSettingsClasses = classNames('MapSettingsWrapper', className);\n\n return (\n <div className={mapSettingsClasses}>\n {map(options, option => {\n if (isMapTypeSettings(option)) {\n return React.cloneElement(option, {\n key: option?.key ?? crypto.randomUUID(),\n mapType: baseLayer,\n onMapTypeChange,\n });\n }\n\n if (isMapLayerSettings(option)) {\n return React.cloneElement(option, {\n key: option?.key ?? crypto.randomUUID(),\n activeBuiltinLayers: activeLayers,\n onMapLayerChange,\n });\n }\n\n if (isMapClusterSettings(option)) {\n return React.cloneElement(option, {\n key: option?.key ?? crypto.randomUUID(),\n showCluster,\n onShowClusterChange,\n });\n }\n\n return React.cloneElement(option, {\n key: option?.key ?? `MapSettingsOption_${crypto.randomUUID()}`,\n });\n })}\n </div>\n );\n};\n\nexport default MapSettings;\n"],"names":["isMapTypeSettings","option","MapTypeSettings","isMapLayerSettings","MapLayerSettings","isMapClusterSettings","MapClusterSettings","MapSettings","props","options","className","baseLayer","activeLayers","showCluster","onMapTypeChange","onMapLayerChange","onShowClusterChange","useMapContext","mapSettingsClasses","classNames","map","React"],"mappings":";;;;;;;;AASA,MAAMA,IAAoB,CAACC,MAAwBA,EAAO,SAASC,GAC7DC,IAAqB,CAACF,MAAwBA,EAAO,SAASG,GAC9DC,IAAuB,CAACJ,MAAwBA,EAAO,SAASK,GAOhEC,IAAc,CAACC,MAA4B;AAC7C,QAAM,EAAE,SAAAC,GAAS,WAAAC,IAAY,GAAA,IAAOF,GAE9B,EAAE,WAAAG,GAAW,cAAAC,GAAc,aAAAC,GAAa,iBAAAC,GAAiB,kBAAAC,GAAkB,qBAAAC,EAAA,IAC7EC,EAAA,GAEEC,IAAqBC,EAAW,sBAAsBT,CAAS;AAErE,2BACK,OAAA,EAAI,WAAWQ,GACX,UAAAE,EAAIX,GAAS,CAAAR,MACND,EAAkBC,CAAM,IACjBoB,EAAM,aAAapB,GAAQ;AAAA,IAC9B,KAAKA,GAAQ,OAAO,OAAO,WAAA;AAAA,IAC3B,SAASU;AAAA,IACT,iBAAAG;AAAA,EAAA,CACH,IAGDX,EAAmBF,CAAM,IAClBoB,EAAM,aAAapB,GAAQ;AAAA,IAC9B,KAAKA,GAAQ,OAAO,OAAO,WAAA;AAAA,IAC3B,qBAAqBW;AAAA,IACrB,kBAAAG;AAAA,EAAA,CACH,IAGDV,EAAqBJ,CAAM,IACpBoB,EAAM,aAAapB,GAAQ;AAAA,IAC9B,KAAKA,GAAQ,OAAO,OAAO,WAAA;AAAA,IAC3B,aAAAY;AAAA,IACA,qBAAAG;AAAA,EAAA,CACH,IAGEK,EAAM,aAAapB,GAAQ;AAAA,IAC9B,KAAKA,GAAQ,OAAO,qBAAqB,OAAO,YAAY;AAAA,EAAA,CAC/D,CACJ,EAAA,CACL;AAER;"}
@@ -1,7 +1,10 @@
1
1
  import { EventListenerMap } from '../../../utils/eventHandling';
2
2
  export declare const MISSING_GEOMETRY_PROPS_EXCEPTION_MSG = "Error in Polyline: Polyline without geometry makes no sense";
3
3
  export declare const WRONG_GEOMETRY_PROPS_EXCEPTION_MSG = "Error in Polyline: property geometry must be of type H.geo.LineString";
4
- export type ArrowStyle = H.map.Polyline.Options;
4
+ export type ArrowStyle = {
5
+ fillColor?: string;
6
+ strokeColor?: string;
7
+ };
5
8
  export type PolylineProps = {
6
9
  hasArrows?: boolean;
7
10
  arrowStyle?: ArrowStyle;
@@ -27,7 +27,7 @@ const M = "Error in Polyline: Polyline without geometry makes no sense", C = "Er
27
27
  strokeColor: "rgba(42, 55, 64, 1)",
28
28
  lineWidth: 5,
29
29
  lineDash: [1.8, 4],
30
- // @ts-ignore-next-line - the types are outdated here
30
+ // @ts-expect-error-next-line - the types are outdated here
31
31
  lineDashImage: H.map.SpatialStyle.DashImage.ARROW,
32
32
  ...a
33
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Polyline.js","sources":["../../../../../../src/components/map/components/features/basics/Polyline.tsx"],"sourcesContent":["import { useState, useEffect } from 'react';\n\nimport { useMapContext } from '../../MapContext';\nimport MapException from '../../../exceptions/MapException';\n\nimport { useUpdateEventListenerMap } from '../../../utils/hooks';\nimport { removeEventListenerMap, type EventListenerMap } from '../../../utils/eventHandling';\nimport { isVectorBased } from '../../../utils/rendering';\n\nexport const MISSING_GEOMETRY_PROPS_EXCEPTION_MSG = 'Error in Polyline: Polyline without geometry makes no sense';\nexport const WRONG_GEOMETRY_PROPS_EXCEPTION_MSG =\n 'Error in Polyline: property geometry must be of type H.geo.LineString';\n\nexport type ArrowStyle = H.map.Polyline.Options;\n\nexport type PolylineProps = {\n hasArrows?: boolean;\n arrowStyle?: ArrowStyle;\n geometry: H.geo.LineString;\n style?: H.map.SpatialStyle;\n customData?: object;\n eventListenerMap?: EventListenerMap;\n};\n\nconst Polyline = (props: PolylineProps) => {\n const {\n geometry,\n hasArrows,\n arrowStyle,\n style = H.map.SpatialStyle.DEFAULT_STYLE,\n customData,\n eventListenerMap,\n } = props;\n\n const { api, enableWebGL, baseLayer } = useMapContext();\n\n const [polyline, setPolyline] = useState<H.map.Group>();\n\n if (!geometry) {\n throw new MapException(MISSING_GEOMETRY_PROPS_EXCEPTION_MSG);\n }\n\n if (!(geometry instanceof H.geo.LineString)) {\n throw new MapException(WRONG_GEOMETRY_PROPS_EXCEPTION_MSG);\n }\n\n useEffect(() => {\n const lineGroup = new H.map.Group({ data: customData });\n const line = new H.map.Polyline(geometry, { style });\n\n if (hasArrows) {\n let routeArrows: H.map.Polyline;\n\n if (isVectorBased(enableWebGL, baseLayer)) {\n // WebGL way - Create a patterned polyline\n routeArrows = new H.map.Polyline(geometry, {\n style: {\n strokeColor: 'rgba(42, 55, 64, 1)',\n lineWidth: 5,\n lineDash: [1.8, 4],\n // @ts-ignore-next-line - the types are outdated here\n lineDashImage: H.map.SpatialStyle.DashImage.ARROW,\n ...arrowStyle,\n },\n });\n } else {\n // Pixel map way - Create a patterned polyline\n const defaultArrowStyle = {\n lineWidth: 2,\n fillColor: 'rgba(42, 55, 64, 1)',\n strokeColor: 'rgba(0, 0, 0, 0.8)',\n lineDash: [0, 4],\n lineTailCap: 'arrow-tail',\n lineHeadCap: 'arrow-head',\n ...arrowStyle,\n };\n\n const arrowLineStyle = new H.map.SpatialStyle({\n lineWidth: 10,\n strokeColor: 'rgba(255, 255, 255, 0)',\n });\n\n routeArrows = new H.map.Polyline(geometry, { style: arrowLineStyle, arrows: defaultArrowStyle });\n }\n\n // create a group that represents the route line and contains\n // outline and the pattern\n lineGroup.addObjects([line, routeArrows]);\n } else {\n lineGroup.addObjects([line]);\n }\n\n api.map?.addObject(lineGroup);\n setPolyline(lineGroup);\n\n return () => {\n removeEventListenerMap(lineGroup);\n\n lineGroup.forEach(singleLine => {\n lineGroup.removeObject(singleLine);\n singleLine.dispose();\n });\n\n if (api.map?.getObjects().includes(lineGroup)) {\n api.map.removeObject(lineGroup);\n }\n lineGroup.dispose();\n };\n }, [api.map, geometry, style, hasArrows, arrowStyle]);\n\n useUpdateEventListenerMap(polyline, eventListenerMap);\n\n return null;\n};\n\nexport default Polyline;\n"],"names":["MISSING_GEOMETRY_PROPS_EXCEPTION_MSG","WRONG_GEOMETRY_PROPS_EXCEPTION_MSG","Polyline","props","geometry","hasArrows","arrowStyle","style","customData","eventListenerMap","api","enableWebGL","baseLayer","useMapContext","polyline","setPolyline","useState","MapException","useEffect","lineGroup","line","routeArrows","isVectorBased","defaultArrowStyle","arrowLineStyle","removeEventListenerMap","singleLine","useUpdateEventListenerMap"],"mappings":";;;;;;AASO,MAAMA,IAAuC,+DACvCC,IACT,yEAaEC,IAAW,CAACC,MAAyB;AACvC,QAAM;AAAA,IACF,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,YAAAC;AAAA,IACA,OAAAC,IAAQ,EAAE,IAAI,aAAa;AAAA,IAC3B,YAAAC;AAAA,IACA,kBAAAC;AAAA,EAAA,IACAN,GAEE,EAAE,KAAAO,GAAK,aAAAC,GAAa,WAAAC,EAAA,IAAcC,EAAA,GAElC,CAACC,GAAUC,CAAW,IAAIC,EAAA;AAEhC,MAAI,CAACZ;AACD,UAAM,IAAIa,EAAajB,CAAoC;AAG/D,MAAI,EAAEI,aAAoB,EAAE,IAAI;AAC5B,UAAM,IAAIa,EAAahB,CAAkC;AAG7D,SAAAiB,EAAU,MAAM;AACZ,UAAMC,IAAY,IAAI,EAAE,IAAI,MAAM,EAAE,MAAMX,GAAY,GAChDY,IAAO,IAAI,EAAE,IAAI,SAAShB,GAAU,EAAE,OAAAG,GAAO;AAEnD,QAAIF,GAAW;AACX,UAAIgB;AAEJ,UAAIC,EAAcX,GAAaC,CAAS;AAEpC,QAAAS,IAAc,IAAI,EAAE,IAAI,SAASjB,GAAU;AAAA,UACvC,OAAO;AAAA,YACH,aAAa;AAAA,YACb,WAAW;AAAA,YACX,UAAU,CAAC,KAAK,CAAC;AAAA;AAAA,YAEjB,eAAe,EAAE,IAAI,aAAa,UAAU;AAAA,YAC5C,GAAGE;AAAA,UAAA;AAAA,QACP,CACH;AAAA,WACE;AAEH,cAAMiB,IAAoB;AAAA,UACtB,WAAW;AAAA,UACX,WAAW;AAAA,UACX,aAAa;AAAA,UACb,UAAU,CAAC,GAAG,CAAC;AAAA,UACf,aAAa;AAAA,UACb,aAAa;AAAA,UACb,GAAGjB;AAAA,QAAA,GAGDkB,IAAiB,IAAI,EAAE,IAAI,aAAa;AAAA,UAC1C,WAAW;AAAA,UACX,aAAa;AAAA,QAAA,CAChB;AAED,QAAAH,IAAc,IAAI,EAAE,IAAI,SAASjB,GAAU,EAAE,OAAOoB,GAAgB,QAAQD,GAAmB;AAAA,MACnG;AAIA,MAAAJ,EAAU,WAAW,CAACC,GAAMC,CAAW,CAAC;AAAA,IAC5C;AACI,MAAAF,EAAU,WAAW,CAACC,CAAI,CAAC;AAG/B,WAAAV,EAAI,KAAK,UAAUS,CAAS,GAC5BJ,EAAYI,CAAS,GAEd,MAAM;AACT,MAAAM,EAAuBN,CAAS,GAEhCA,EAAU,QAAQ,CAAAO,MAAc;AAC5B,QAAAP,EAAU,aAAaO,CAAU,GACjCA,EAAW,QAAA;AAAA,MACf,CAAC,GAEGhB,EAAI,KAAK,WAAA,EAAa,SAASS,CAAS,KACxCT,EAAI,IAAI,aAAaS,CAAS,GAElCA,EAAU,QAAA;AAAA,IACd;AAAA,EACJ,GAAG,CAACT,EAAI,KAAKN,GAAUG,GAAOF,GAAWC,CAAU,CAAC,GAEpDqB,EAA0Bb,GAAUL,CAAgB,GAE7C;AACX;"}
1
+ {"version":3,"file":"Polyline.js","sources":["../../../../../../src/components/map/components/features/basics/Polyline.tsx"],"sourcesContent":["import { useState, useEffect } from 'react';\n\nimport { useMapContext } from '../../MapContext';\nimport MapException from '../../../exceptions/MapException';\n\nimport { useUpdateEventListenerMap } from '../../../utils/hooks';\nimport { removeEventListenerMap, type EventListenerMap } from '../../../utils/eventHandling';\nimport { isVectorBased } from '../../../utils/rendering';\n\nexport const MISSING_GEOMETRY_PROPS_EXCEPTION_MSG = 'Error in Polyline: Polyline without geometry makes no sense';\nexport const WRONG_GEOMETRY_PROPS_EXCEPTION_MSG =\n 'Error in Polyline: property geometry must be of type H.geo.LineString';\n\nexport type ArrowStyle = {\n fillColor?: string;\n strokeColor?: string;\n};\n\nexport type PolylineProps = {\n hasArrows?: boolean;\n arrowStyle?: ArrowStyle;\n geometry: H.geo.LineString;\n style?: H.map.SpatialStyle;\n customData?: object;\n eventListenerMap?: EventListenerMap;\n};\n\nconst Polyline = (props: PolylineProps) => {\n const {\n geometry,\n hasArrows,\n arrowStyle,\n style = H.map.SpatialStyle.DEFAULT_STYLE,\n customData,\n eventListenerMap,\n } = props;\n\n const { api, enableWebGL, baseLayer } = useMapContext();\n\n const [polyline, setPolyline] = useState<H.map.Group>();\n\n if (!geometry) {\n throw new MapException(MISSING_GEOMETRY_PROPS_EXCEPTION_MSG);\n }\n\n if (!(geometry instanceof H.geo.LineString)) {\n throw new MapException(WRONG_GEOMETRY_PROPS_EXCEPTION_MSG);\n }\n\n useEffect(() => {\n const lineGroup = new H.map.Group({ data: customData });\n const line = new H.map.Polyline(geometry, { style });\n\n if (hasArrows) {\n let routeArrows: H.map.Polyline;\n\n if (isVectorBased(enableWebGL, baseLayer)) {\n // WebGL way - Create a patterned polyline\n routeArrows = new H.map.Polyline(geometry, {\n style: {\n strokeColor: 'rgba(42, 55, 64, 1)',\n lineWidth: 5,\n lineDash: [1.8, 4],\n // @ts-expect-error-next-line - the types are outdated here\n lineDashImage: H.map.SpatialStyle.DashImage.ARROW,\n ...arrowStyle,\n },\n });\n } else {\n // Pixel map way - Create a patterned polyline\n const defaultArrowStyle = {\n lineWidth: 2,\n fillColor: 'rgba(42, 55, 64, 1)',\n strokeColor: 'rgba(0, 0, 0, 0.8)',\n lineDash: [0, 4],\n lineTailCap: 'arrow-tail',\n lineHeadCap: 'arrow-head',\n ...arrowStyle,\n };\n\n const arrowLineStyle = new H.map.SpatialStyle({\n lineWidth: 10,\n strokeColor: 'rgba(255, 255, 255, 0)',\n });\n\n routeArrows = new H.map.Polyline(geometry, { style: arrowLineStyle, arrows: defaultArrowStyle });\n }\n\n // create a group that represents the route line and contains\n // outline and the pattern\n lineGroup.addObjects([line, routeArrows]);\n } else {\n lineGroup.addObjects([line]);\n }\n\n api.map?.addObject(lineGroup);\n setPolyline(lineGroup);\n\n return () => {\n removeEventListenerMap(lineGroup);\n\n lineGroup.forEach(singleLine => {\n lineGroup.removeObject(singleLine);\n singleLine.dispose();\n });\n\n if (api.map?.getObjects().includes(lineGroup)) {\n api.map.removeObject(lineGroup);\n }\n lineGroup.dispose();\n };\n }, [api.map, geometry, style, hasArrows, arrowStyle]);\n\n useUpdateEventListenerMap(polyline, eventListenerMap);\n\n return null;\n};\n\nexport default Polyline;\n"],"names":["MISSING_GEOMETRY_PROPS_EXCEPTION_MSG","WRONG_GEOMETRY_PROPS_EXCEPTION_MSG","Polyline","props","geometry","hasArrows","arrowStyle","style","customData","eventListenerMap","api","enableWebGL","baseLayer","useMapContext","polyline","setPolyline","useState","MapException","useEffect","lineGroup","line","routeArrows","isVectorBased","defaultArrowStyle","arrowLineStyle","removeEventListenerMap","singleLine","useUpdateEventListenerMap"],"mappings":";;;;;;AASO,MAAMA,IAAuC,+DACvCC,IACT,yEAgBEC,IAAW,CAACC,MAAyB;AACvC,QAAM;AAAA,IACF,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,YAAAC;AAAA,IACA,OAAAC,IAAQ,EAAE,IAAI,aAAa;AAAA,IAC3B,YAAAC;AAAA,IACA,kBAAAC;AAAA,EAAA,IACAN,GAEE,EAAE,KAAAO,GAAK,aAAAC,GAAa,WAAAC,EAAA,IAAcC,EAAA,GAElC,CAACC,GAAUC,CAAW,IAAIC,EAAA;AAEhC,MAAI,CAACZ;AACD,UAAM,IAAIa,EAAajB,CAAoC;AAG/D,MAAI,EAAEI,aAAoB,EAAE,IAAI;AAC5B,UAAM,IAAIa,EAAahB,CAAkC;AAG7D,SAAAiB,EAAU,MAAM;AACZ,UAAMC,IAAY,IAAI,EAAE,IAAI,MAAM,EAAE,MAAMX,GAAY,GAChDY,IAAO,IAAI,EAAE,IAAI,SAAShB,GAAU,EAAE,OAAAG,GAAO;AAEnD,QAAIF,GAAW;AACX,UAAIgB;AAEJ,UAAIC,EAAcX,GAAaC,CAAS;AAEpC,QAAAS,IAAc,IAAI,EAAE,IAAI,SAASjB,GAAU;AAAA,UACvC,OAAO;AAAA,YACH,aAAa;AAAA,YACb,WAAW;AAAA,YACX,UAAU,CAAC,KAAK,CAAC;AAAA;AAAA,YAEjB,eAAe,EAAE,IAAI,aAAa,UAAU;AAAA,YAC5C,GAAGE;AAAA,UAAA;AAAA,QACP,CACH;AAAA,WACE;AAEH,cAAMiB,IAAoB;AAAA,UACtB,WAAW;AAAA,UACX,WAAW;AAAA,UACX,aAAa;AAAA,UACb,UAAU,CAAC,GAAG,CAAC;AAAA,UACf,aAAa;AAAA,UACb,aAAa;AAAA,UACb,GAAGjB;AAAA,QAAA,GAGDkB,IAAiB,IAAI,EAAE,IAAI,aAAa;AAAA,UAC1C,WAAW;AAAA,UACX,aAAa;AAAA,QAAA,CAChB;AAED,QAAAH,IAAc,IAAI,EAAE,IAAI,SAASjB,GAAU,EAAE,OAAOoB,GAAgB,QAAQD,GAAmB;AAAA,MACnG;AAIA,MAAAJ,EAAU,WAAW,CAACC,GAAMC,CAAW,CAAC;AAAA,IAC5C;AACI,MAAAF,EAAU,WAAW,CAACC,CAAI,CAAC;AAG/B,WAAAV,EAAI,KAAK,UAAUS,CAAS,GAC5BJ,EAAYI,CAAS,GAEd,MAAM;AACT,MAAAM,EAAuBN,CAAS,GAEhCA,EAAU,QAAQ,CAAAO,MAAc;AAC5B,QAAAP,EAAU,aAAaO,CAAU,GACjCA,EAAW,QAAA;AAAA,MACf,CAAC,GAEGhB,EAAI,KAAK,WAAA,EAAa,SAASS,CAAS,KACxCT,EAAI,IAAI,aAAaS,CAAS,GAElCA,EAAU,QAAA;AAAA,IACd;AAAA,EACJ,GAAG,CAACT,EAAI,KAAKN,GAAUG,GAAOF,GAAWC,CAAU,CAAC,GAEpDqB,EAA0Bb,GAAUL,CAAgB,GAE7C;AACX;"}
@@ -1,7 +1,9 @@
1
1
  import { default as React } from 'react';
2
2
  import { default as ClusterLayer, ClusterTheme } from './clustering/ClusterLayer';
3
+ import { SimpleClusterTheme } from '../../../utils/clustering';
4
+ export type { ClusterTheme, SimpleClusterTheme };
3
5
  export type MarkerLayerProps = React.ComponentProps<typeof ClusterLayer> & {
4
- simpleTheme?: ClusterTheme;
6
+ simpleTheme?: SimpleClusterTheme;
5
7
  clusterDissolvable?: boolean;
6
8
  clusterStrategy?: 'FASTGRID' | 'GRID' | 'DYNAMICGRID';
7
9
  eps?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"MarkerLayer.js","sources":["../../../../../../src/components/map/components/features/layers/MarkerLayer.tsx"],"sourcesContent":["import type React from 'react';\n\nimport ClusterLayer, { type ClusterTheme } from './clustering/ClusterLayer';\nimport { wrapSimpleTheme } from '../../../utils/clustering';\nimport { useMapContext } from '../../MapContext';\n\nexport type MarkerLayerProps = React.ComponentProps<typeof ClusterLayer> & {\n simpleTheme?: ClusterTheme;\n clusterDissolvable?: boolean;\n clusterStrategy?: 'FASTGRID' | 'GRID' | 'DYNAMICGRID';\n eps?: number;\n};\n\n/*\n * Not very different to the SimpleClusterLayer, but with a different intention.\n */\nconst MarkerLayer = (props: MarkerLayerProps) => {\n const mapContext = useMapContext();\n\n const { simpleTheme, clusterDissolvable = true, ...rest } = props;\n\n // Norbert: Not an ideal solution\n const showCluster = !clusterDissolvable || mapContext.showCluster;\n const newProps = {\n clusterTheme: simpleTheme && wrapSimpleTheme(simpleTheme),\n ...rest,\n };\n return <ClusterLayer {...newProps} minWeight={showCluster ? undefined : 1000000000} />;\n};\n\nexport default MarkerLayer;\n"],"names":["MarkerLayer","props","mapContext","useMapContext","simpleTheme","clusterDissolvable","rest","showCluster","newProps","wrapSimpleTheme","ClusterLayer"],"mappings":";;;;AAgBA,MAAMA,IAAc,CAACC,MAA4B;AAC7C,QAAMC,IAAaC,EAAA,GAEb,EAAE,aAAAC,GAAa,oBAAAC,IAAqB,IAAM,GAAGC,MAASL,GAGtDM,IAAc,CAACF,KAAsBH,EAAW,aAChDM,IAAW;AAAA,IACb,cAAcJ,KAAeK,EAAgBL,CAAW;AAAA,IACxD,GAAGE;AAAA,EAAA;AAEP,2BAAQI,GAAA,EAAc,GAAGF,GAAU,WAAWD,IAAc,SAAY,KAAY;AACxF;"}
1
+ {"version":3,"file":"MarkerLayer.js","sources":["../../../../../../src/components/map/components/features/layers/MarkerLayer.tsx"],"sourcesContent":["import type React from 'react';\n\nimport ClusterLayer, { type ClusterTheme } from './clustering/ClusterLayer';\nimport { wrapSimpleTheme, type SimpleClusterTheme } from '../../../utils/clustering';\nimport { useMapContext } from '../../MapContext';\n\nexport type { ClusterTheme, SimpleClusterTheme };\n\nexport type MarkerLayerProps = React.ComponentProps<typeof ClusterLayer> & {\n simpleTheme?: SimpleClusterTheme;\n clusterDissolvable?: boolean;\n clusterStrategy?: 'FASTGRID' | 'GRID' | 'DYNAMICGRID';\n eps?: number;\n};\n\n/*\n * Not very different to the SimpleClusterLayer, but with a different intention.\n */\nconst MarkerLayer = (props: MarkerLayerProps) => {\n const mapContext = useMapContext();\n\n const { simpleTheme, clusterDissolvable = true, ...rest } = props;\n\n // Norbert: Not an ideal solution\n const showCluster = !clusterDissolvable || mapContext.showCluster;\n const newProps = {\n clusterTheme: simpleTheme && wrapSimpleTheme(simpleTheme),\n ...rest,\n };\n return <ClusterLayer {...newProps} minWeight={showCluster ? undefined : 1000000000} />;\n};\n\nexport default MarkerLayer;\n"],"names":["MarkerLayer","props","mapContext","useMapContext","simpleTheme","clusterDissolvable","rest","showCluster","newProps","wrapSimpleTheme","ClusterLayer"],"mappings":";;;;AAkBA,MAAMA,IAAc,CAACC,MAA4B;AAC7C,QAAMC,IAAaC,EAAA,GAEb,EAAE,aAAAC,GAAa,oBAAAC,IAAqB,IAAM,GAAGC,MAASL,GAGtDM,IAAc,CAACF,KAAsBH,EAAW,aAChDM,IAAW;AAAA,IACb,cAAcJ,KAAeK,EAAgBL,CAAW;AAAA,IACxD,GAAGE;AAAA,EAAA;AAEP,2BAAQI,GAAA,EAAc,GAAGF,GAAU,WAAWD,IAAc,SAAY,KAAY;AACxF;"}
@@ -1,7 +1,7 @@
1
1
  import { useState as D, useEffect as L, useLayoutEffect as P } from "react";
2
2
  import { useMapContext as f } from "../../../MapContext.js";
3
3
  import { useUpdateProp as E, useUpdateEventListenerMap as I } from "../../../../utils/hooks.js";
4
- const T = (e, t) => new H.clustering.DataPoint(e.lat, e.lng, 1, e), p = (e, t = T) => e.map((r, n) => t(r, n)), C = new H.clustering.Provider([]).getTheme(), R = (e) => {
4
+ const T = (e) => new H.clustering.DataPoint(e.lat, e.lng, 1, e), p = (e, t = T) => e.map((r, n) => t(r, n)), C = new H.clustering.Provider([]).getTheme(), R = (e) => {
5
5
  switch (e) {
6
6
  case "GRID":
7
7
  return H.clustering.Provider.Strategy.GRID;
@@ -1 +1 @@
1
- {"version":3,"file":"ClusterLayer.js","sources":["../../../../../../../src/components/map/components/features/layers/clustering/ClusterLayer.tsx"],"sourcesContent":["import { useState, useEffect, useLayoutEffect } from 'react';\n\n// import ReactDomServer from 'react-dom/server';\n\nimport { useMapContext } from '../../../MapContext';\nimport { useUpdateProp, useUpdateEventListenerMap } from '../../../../utils/hooks';\nimport type { EventListenerMap } from '../../../../utils/eventHandling';\nexport type ClusterStrategy = 'FASTGRID' | 'GRID' | 'DYNAMICGRID';\n\nexport type ClusterTheme = H.clustering.ITheme;\n\nexport type Position = {\n lat: number;\n lng: number;\n};\n\nexport type DataConverter = (data: Position, index: number) => H.clustering.DataPoint;\n\nexport type ClusterLayerProps = {\n data: object[];\n dataConverter?: DataConverter;\n minWeight?: string | number;\n minZoom?: string | number;\n maxZoom?: string | number;\n clusterTheme?: ClusterTheme | undefined;\n eventListenerMap?: EventListenerMap;\n clusterStrategy?: ClusterStrategy;\n eps?: number;\n};\n\nconst DEFAULT_DATA_CONVERTER: DataConverter = (pos: Position, index: number): H.clustering.DataPoint =>\n new H.clustering.DataPoint(pos.lat, pos.lng, 1, pos);\n\nconst convertData = (data: object[], converterFunc: DataConverter = DEFAULT_DATA_CONVERTER) =>\n data.map((value, index): H.clustering.DataPoint => converterFunc(value as Position, index));\n\nconst DEFAULT_CLUSTER_THEME = new H.clustering.Provider([]).getTheme();\n\nconst getClusterStrategy = (strategy?: ClusterStrategy): H.clustering.Provider.Strategy => {\n switch (strategy) {\n case 'GRID':\n return H.clustering.Provider.Strategy.GRID;\n case 'DYNAMICGRID':\n return H.clustering.Provider.Strategy.DYNAMICGRID;\n default:\n return H.clustering.Provider.Strategy.FASTGRID;\n }\n};\n\n// TODO: replace some cluster marker like for POIs with SVG MarkerIcons instead of rendering DomMarker\n// to increase rendering performance, especially, when rendering hundreds of marker like for charging stations\n\n// const noiseSvg =\n// '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" width=\"20px\"><circle cx=\"5px\" cy=\"5px\" r=\"5px\" fill=\"green\" /></svg>';\n\n// Create an icon to represent the noise points\n// Note that same icon will be used for all noise points\n// const noiseIcon = new H.map.Icon(noiseSvg, {\n// size: { w: 20, h: 20 },\n// anchor: { x: 10, y: 10 },\n// });\n\n// SVG template to use for cluster icons\n// const clusterSvgTemplate = `<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" xmlns=\"http://www.w3.org/2000/svg\" style=\"cursor: pointer\">\n// <circle cx=\"20\" cy=\"20\" r=\"19.5\" fill=\"#B23672\" stroke=\"#B23672\"/>\n// <g transform=\"translate(20,24.6)\">\n// <text fill=\"white\" font-family=\"'Source Sans Pro', Helvetica, sans-serif\" font-size=\"15\" font-weight=\"500\" text-anchor=\"middle\">\n// {text}\n// </text>\n// </g>\n// </svg>`;\n\nconst ClusterLayer = (props: ClusterLayerProps) => {\n const {\n data,\n dataConverter,\n minWeight,\n minZoom,\n maxZoom,\n clusterTheme = DEFAULT_CLUSTER_THEME,\n eventListenerMap,\n clusterStrategy,\n eps = 100,\n } = props;\n\n const { api } = useMapContext();\n\n const [provider, setProvider] = useState<H.clustering.Provider | undefined>();\n\n useEffect(() => {\n // const reactIcon = new H.map.DomIcon(\n // ReactDomServer.renderToStaticMarkup(\n // <div className='bg-info padding-x-5 padding-y-2 border rounded shadow-default'>test</div>\n // )\n // );\n\n const clusterProviderOptions: H.clustering.Provider.Options = {\n clusteringOptions: {\n strategy: getClusterStrategy(clusterStrategy),\n eps,\n minWeight: minWeight ? Number.parseInt(minWeight as string, 10) : 2,\n },\n min: minZoom ? Number.parseInt(minZoom as string, 10) : 0,\n max: maxZoom ? Number.parseInt(maxZoom as string, 10) : 22,\n theme: clusterTheme,\n // theme: {\n // getClusterPresentation: cluster => {\n // // Use cluster weight to change the icon size\n // const weight = cluster.getWeight();\n // // Calculate circle size\n // const radius = weight; // * 5;\n // const diameter = radius * 2;\n\n // // Replace variables in the icon template\n // const svgString = clusterSvgTemplate.replace(/\\{text\\}/g, String(weight));\n // // .replace(/\\{diameter\\}/g, String(diameter));\n\n // // Create an icon\n // // Note that we create a different icon depending from the weight of the cluster\n // const clusterIcon = new H.map.Icon(svgString);\n\n // // Create a marker for the cluster\n // const clusterMarker = new H.map.Marker(cluster.getPosition(), {\n // icon: clusterIcon,\n\n // // Set min/max zoom with values from the cluster, otherwise\n // // clusters will be shown at all zoom levels\n // min: cluster.getMinZoom(),\n // max: cluster.getMaxZoom(),\n // });\n\n // // Bind cluster data to the marker\n // clusterMarker.setData(cluster);\n\n // return clusterMarker;\n // },\n // getNoisePresentation: noisePoint => {\n // // Create a marker for noise points:\n // const noiseMarker = new H.map.DomMarker(noisePoint.getPosition(), {\n // // icon: noiseIcon,\n // icon: reactIcon,\n\n // // Use min zoom from a noise point to show it correctly at certain zoom levels\n // min: noisePoint.getMinZoom(),\n // });\n\n // // Bind noise point data to the marker:\n // noiseMarker.setData(noisePoint);\n // return noiseMarker;\n // },\n // },\n };\n\n const newProvider = new H.clustering.Provider(convertData(data, dataConverter), clusterProviderOptions);\n const objectLayer = new H.map.layer.ObjectLayer(newProvider);\n\n api.map?.addLayer(objectLayer);\n\n setProvider(newProvider);\n\n return () => {\n api.map?.removeLayer(objectLayer);\n objectLayer.dispose();\n newProvider.dispose();\n };\n }, [minWeight, minZoom, maxZoom, api.map]);\n\n // Effect to update data points of provider\n useLayoutEffect(() => {\n if (provider) {\n provider.setDataPoints(convertData(data, dataConverter));\n }\n }, [data, dataConverter]);\n\n useUpdateProp(provider, 'setTheme', clusterTheme);\n useUpdateEventListenerMap(provider, eventListenerMap);\n\n return null;\n};\n\nexport default ClusterLayer;\n"],"names":["DEFAULT_DATA_CONVERTER","pos","index","convertData","data","converterFunc","value","DEFAULT_CLUSTER_THEME","getClusterStrategy","strategy","ClusterLayer","props","dataConverter","minWeight","minZoom","maxZoom","clusterTheme","eventListenerMap","clusterStrategy","eps","api","useMapContext","provider","setProvider","useState","useEffect","clusterProviderOptions","newProvider","objectLayer","useLayoutEffect","useUpdateProp","useUpdateEventListenerMap"],"mappings":";;;AA8BA,MAAMA,IAAwC,CAACC,GAAeC,MAC1D,IAAI,EAAE,WAAW,UAAUD,EAAI,KAAKA,EAAI,KAAK,GAAGA,CAAG,GAEjDE,IAAc,CAACC,GAAgBC,IAA+BL,MAChEI,EAAK,IAAI,CAACE,GAAOJ,MAAkCG,EAAcC,GAAmBJ,CAAK,CAAC,GAExFK,IAAwB,IAAI,EAAE,WAAW,SAAS,CAAA,CAAE,EAAE,SAAA,GAEtDC,IAAqB,CAACC,MAA+D;AACvF,UAAQA,GAAA;AAAA,IACJ,KAAK;AACD,aAAO,EAAE,WAAW,SAAS,SAAS;AAAA,IAC1C,KAAK;AACD,aAAO,EAAE,WAAW,SAAS,SAAS;AAAA,IAC1C;AACI,aAAO,EAAE,WAAW,SAAS,SAAS;AAAA,EAAA;AAElD,GAyBMC,IAAe,CAACC,MAA6B;AAC/C,QAAM;AAAA,IACF,MAAAP;AAAA,IACA,eAAAQ;AAAA,IACA,WAAAC;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,cAAAC,IAAeT;AAAA,IACf,kBAAAU;AAAA,IACA,iBAAAC;AAAA,IACA,KAAAC,IAAM;AAAA,EAAA,IACNR,GAEE,EAAE,KAAAS,EAAA,IAAQC,EAAA,GAEV,CAACC,GAAUC,CAAW,IAAIC,EAAA;AAEhC,SAAAC,EAAU,MAAM;AAOZ,UAAMC,IAAwD;AAAA,MAC1D,mBAAmB;AAAA,QACf,UAAUlB,EAAmBU,CAAe;AAAA,QAC5C,KAAAC;AAAA,QACA,WAAWN,IAAY,OAAO,SAASA,GAAqB,EAAE,IAAI;AAAA,MAAA;AAAA,MAEtE,KAAKC,IAAU,OAAO,SAASA,GAAmB,EAAE,IAAI;AAAA,MACxD,KAAKC,IAAU,OAAO,SAASA,GAAmB,EAAE,IAAI;AAAA,MACxD,OAAOC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA,GAiDLW,IAAc,IAAI,EAAE,WAAW,SAASxB,EAAYC,GAAMQ,CAAa,GAAGc,CAAsB,GAChGE,IAAc,IAAI,EAAE,IAAI,MAAM,YAAYD,CAAW;AAE3D,WAAAP,EAAI,KAAK,SAASQ,CAAW,GAE7BL,EAAYI,CAAW,GAEhB,MAAM;AACT,MAAAP,EAAI,KAAK,YAAYQ,CAAW,GAChCA,EAAY,QAAA,GACZD,EAAY,QAAA;AAAA,IAChB;AAAA,EACJ,GAAG,CAACd,GAAWC,GAASC,GAASK,EAAI,GAAG,CAAC,GAGzCS,EAAgB,MAAM;AAClB,IAAIP,KACAA,EAAS,cAAcnB,EAAYC,GAAMQ,CAAa,CAAC;AAAA,EAE/D,GAAG,CAACR,GAAMQ,CAAa,CAAC,GAExBkB,EAAcR,GAAU,YAAYN,CAAY,GAChDe,EAA0BT,GAAUL,CAAgB,GAE7C;AACX;"}
1
+ {"version":3,"file":"ClusterLayer.js","sources":["../../../../../../../src/components/map/components/features/layers/clustering/ClusterLayer.tsx"],"sourcesContent":["import { useState, useEffect, useLayoutEffect } from 'react';\n\nimport { useMapContext } from '../../../MapContext';\nimport { useUpdateProp, useUpdateEventListenerMap } from '../../../../utils/hooks';\nimport type { EventListenerMap } from '../../../../utils/eventHandling';\nexport type ClusterStrategy = 'FASTGRID' | 'GRID' | 'DYNAMICGRID';\n\nexport type ClusterTheme = H.clustering.ITheme;\n\nexport type Position = {\n lat: number;\n lng: number;\n};\n\nexport type DataConverter = (data: Position, index: number) => H.clustering.DataPoint;\n\nexport type ClusterLayerProps = {\n data: object[];\n dataConverter?: DataConverter;\n minWeight?: string | number;\n minZoom?: string | number;\n maxZoom?: string | number;\n clusterTheme?: ClusterTheme | undefined;\n eventListenerMap?: EventListenerMap;\n clusterStrategy?: ClusterStrategy;\n eps?: number;\n};\n\nconst DEFAULT_DATA_CONVERTER: DataConverter = (pos: Position): H.clustering.DataPoint =>\n new H.clustering.DataPoint(pos.lat, pos.lng, 1, pos);\n\nconst convertData = (data: object[], converterFunc: DataConverter = DEFAULT_DATA_CONVERTER) =>\n data.map((value, index): H.clustering.DataPoint => converterFunc(value as Position, index));\n\nconst DEFAULT_CLUSTER_THEME = new H.clustering.Provider([]).getTheme();\n\nconst getClusterStrategy = (strategy?: ClusterStrategy): H.clustering.Provider.Strategy => {\n switch (strategy) {\n case 'GRID':\n return H.clustering.Provider.Strategy.GRID;\n case 'DYNAMICGRID':\n return H.clustering.Provider.Strategy.DYNAMICGRID;\n default:\n return H.clustering.Provider.Strategy.FASTGRID;\n }\n};\n\n// TODO: replace some cluster marker like for POIs with SVG MarkerIcons instead of rendering DomMarker\n// to increase rendering performance, especially, when rendering hundreds of marker like for charging stations\n\n// const noiseSvg =\n// '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" width=\"20px\"><circle cx=\"5px\" cy=\"5px\" r=\"5px\" fill=\"green\" /></svg>';\n\n// Create an icon to represent the noise points\n// Note that same icon will be used for all noise points\n// const noiseIcon = new H.map.Icon(noiseSvg, {\n// size: { w: 20, h: 20 },\n// anchor: { x: 10, y: 10 },\n// });\n\n// SVG template to use for cluster icons\n// const clusterSvgTemplate = `<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" xmlns=\"http://www.w3.org/2000/svg\" style=\"cursor: pointer\">\n// <circle cx=\"20\" cy=\"20\" r=\"19.5\" fill=\"#B23672\" stroke=\"#B23672\"/>\n// <g transform=\"translate(20,24.6)\">\n// <text fill=\"white\" font-family=\"'Source Sans Pro', Helvetica, sans-serif\" font-size=\"15\" font-weight=\"500\" text-anchor=\"middle\">\n// {text}\n// </text>\n// </g>\n// </svg>`;\n\nconst ClusterLayer = (props: ClusterLayerProps) => {\n const {\n data,\n dataConverter,\n minWeight,\n minZoom,\n maxZoom,\n clusterTheme = DEFAULT_CLUSTER_THEME,\n eventListenerMap,\n clusterStrategy,\n eps = 100,\n } = props;\n\n const { api } = useMapContext();\n\n const [provider, setProvider] = useState<H.clustering.Provider | undefined>();\n\n useEffect(() => {\n // const reactIcon = new H.map.DomIcon(\n // ReactDomServer.renderToStaticMarkup(\n // <div className='bg-info padding-x-5 padding-y-2 border rounded shadow-default'>test</div>\n // )\n // );\n\n const clusterProviderOptions: H.clustering.Provider.Options = {\n clusteringOptions: {\n strategy: getClusterStrategy(clusterStrategy),\n eps,\n minWeight: minWeight ? Number.parseInt(minWeight as string, 10) : 2,\n },\n min: minZoom ? Number.parseInt(minZoom as string, 10) : 0,\n max: maxZoom ? Number.parseInt(maxZoom as string, 10) : 22,\n theme: clusterTheme,\n // theme: {\n // getClusterPresentation: cluster => {\n // // Use cluster weight to change the icon size\n // const weight = cluster.getWeight();\n // // Calculate circle size\n // const radius = weight; // * 5;\n // const diameter = radius * 2;\n\n // // Replace variables in the icon template\n // const svgString = clusterSvgTemplate.replace(/\\{text\\}/g, String(weight));\n // // .replace(/\\{diameter\\}/g, String(diameter));\n\n // // Create an icon\n // // Note that we create a different icon depending from the weight of the cluster\n // const clusterIcon = new H.map.Icon(svgString);\n\n // // Create a marker for the cluster\n // const clusterMarker = new H.map.Marker(cluster.getPosition(), {\n // icon: clusterIcon,\n\n // // Set min/max zoom with values from the cluster, otherwise\n // // clusters will be shown at all zoom levels\n // min: cluster.getMinZoom(),\n // max: cluster.getMaxZoom(),\n // });\n\n // // Bind cluster data to the marker\n // clusterMarker.setData(cluster);\n\n // return clusterMarker;\n // },\n // getNoisePresentation: noisePoint => {\n // // Create a marker for noise points:\n // const noiseMarker = new H.map.DomMarker(noisePoint.getPosition(), {\n // // icon: noiseIcon,\n // icon: reactIcon,\n\n // // Use min zoom from a noise point to show it correctly at certain zoom levels\n // min: noisePoint.getMinZoom(),\n // });\n\n // // Bind noise point data to the marker:\n // noiseMarker.setData(noisePoint);\n // return noiseMarker;\n // },\n // },\n };\n\n const newProvider = new H.clustering.Provider(convertData(data, dataConverter), clusterProviderOptions);\n const objectLayer = new H.map.layer.ObjectLayer(newProvider);\n\n api.map?.addLayer(objectLayer);\n\n setProvider(newProvider);\n\n return () => {\n api.map?.removeLayer(objectLayer);\n objectLayer.dispose();\n newProvider.dispose();\n };\n }, [minWeight, minZoom, maxZoom, api.map]);\n\n // Effect to update data points of provider\n useLayoutEffect(() => {\n if (provider) {\n provider.setDataPoints(convertData(data, dataConverter));\n }\n }, [data, dataConverter]);\n\n useUpdateProp(provider, 'setTheme', clusterTheme);\n useUpdateEventListenerMap(provider, eventListenerMap);\n\n return null;\n};\n\nexport default ClusterLayer;\n"],"names":["DEFAULT_DATA_CONVERTER","pos","convertData","data","converterFunc","value","index","DEFAULT_CLUSTER_THEME","getClusterStrategy","strategy","ClusterLayer","props","dataConverter","minWeight","minZoom","maxZoom","clusterTheme","eventListenerMap","clusterStrategy","eps","api","useMapContext","provider","setProvider","useState","useEffect","clusterProviderOptions","newProvider","objectLayer","useLayoutEffect","useUpdateProp","useUpdateEventListenerMap"],"mappings":";;;AA4BA,MAAMA,IAAwC,CAACC,MAC3C,IAAI,EAAE,WAAW,UAAUA,EAAI,KAAKA,EAAI,KAAK,GAAGA,CAAG,GAEjDC,IAAc,CAACC,GAAgBC,IAA+BJ,MAChEG,EAAK,IAAI,CAACE,GAAOC,MAAkCF,EAAcC,GAAmBC,CAAK,CAAC,GAExFC,IAAwB,IAAI,EAAE,WAAW,SAAS,CAAA,CAAE,EAAE,SAAA,GAEtDC,IAAqB,CAACC,MAA+D;AACvF,UAAQA,GAAA;AAAA,IACJ,KAAK;AACD,aAAO,EAAE,WAAW,SAAS,SAAS;AAAA,IAC1C,KAAK;AACD,aAAO,EAAE,WAAW,SAAS,SAAS;AAAA,IAC1C;AACI,aAAO,EAAE,WAAW,SAAS,SAAS;AAAA,EAAA;AAElD,GAyBMC,IAAe,CAACC,MAA6B;AAC/C,QAAM;AAAA,IACF,MAAAR;AAAA,IACA,eAAAS;AAAA,IACA,WAAAC;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,cAAAC,IAAeT;AAAA,IACf,kBAAAU;AAAA,IACA,iBAAAC;AAAA,IACA,KAAAC,IAAM;AAAA,EAAA,IACNR,GAEE,EAAE,KAAAS,EAAA,IAAQC,EAAA,GAEV,CAACC,GAAUC,CAAW,IAAIC,EAAA;AAEhC,SAAAC,EAAU,MAAM;AAOZ,UAAMC,IAAwD;AAAA,MAC1D,mBAAmB;AAAA,QACf,UAAUlB,EAAmBU,CAAe;AAAA,QAC5C,KAAAC;AAAA,QACA,WAAWN,IAAY,OAAO,SAASA,GAAqB,EAAE,IAAI;AAAA,MAAA;AAAA,MAEtE,KAAKC,IAAU,OAAO,SAASA,GAAmB,EAAE,IAAI;AAAA,MACxD,KAAKC,IAAU,OAAO,SAASA,GAAmB,EAAE,IAAI;AAAA,MACxD,OAAOC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA,GAiDLW,IAAc,IAAI,EAAE,WAAW,SAASzB,EAAYC,GAAMS,CAAa,GAAGc,CAAsB,GAChGE,IAAc,IAAI,EAAE,IAAI,MAAM,YAAYD,CAAW;AAE3D,WAAAP,EAAI,KAAK,SAASQ,CAAW,GAE7BL,EAAYI,CAAW,GAEhB,MAAM;AACT,MAAAP,EAAI,KAAK,YAAYQ,CAAW,GAChCA,EAAY,QAAA,GACZD,EAAY,QAAA;AAAA,IAChB;AAAA,EACJ,GAAG,CAACd,GAAWC,GAASC,GAASK,EAAI,GAAG,CAAC,GAGzCS,EAAgB,MAAM;AAClB,IAAIP,KACAA,EAAS,cAAcpB,EAAYC,GAAMS,CAAa,CAAC;AAAA,EAE/D,GAAG,CAACT,GAAMS,CAAa,CAAC,GAExBkB,EAAcR,GAAU,YAAYN,CAAY,GAChDe,EAA0BT,GAAUL,CAAgB,GAE7C;AACX;"}
@@ -1,6 +1,7 @@
1
- import { ClusterTheme, ClusterLayerProps } from './ClusterLayer';
1
+ import { ClusterLayerProps } from './ClusterLayer';
2
+ import { SimpleClusterTheme } from '../../../../utils/clustering';
2
3
  export type SimpleClusterLayerProps = Omit<ClusterLayerProps, 'clusterTheme'> & {
3
- simpleTheme?: ClusterTheme;
4
+ simpleTheme?: SimpleClusterTheme;
4
5
  };
5
6
  declare const SimpleClusterLayer: (props: SimpleClusterLayerProps) => import("react/jsx-runtime").JSX.Element;
6
7
  export default SimpleClusterLayer;
@@ -1 +1 @@
1
- {"version":3,"file":"SimpleClusterLayer.js","sources":["../../../../../../../src/components/map/components/features/layers/clustering/SimpleClusterLayer.tsx"],"sourcesContent":["import ClusterLayer, { type ClusterTheme, type ClusterLayerProps } from './ClusterLayer';\nimport { wrapSimpleTheme } from '../../../../utils/clustering';\n\nexport type SimpleClusterLayerProps = Omit<ClusterLayerProps, 'clusterTheme'> & {\n simpleTheme?: ClusterTheme;\n};\n\nconst SimpleClusterLayer = (props: SimpleClusterLayerProps) => {\n const { simpleTheme, ...rest } = props;\n return <ClusterLayer {...rest} clusterTheme={simpleTheme && wrapSimpleTheme(simpleTheme)} />;\n};\n\nexport default SimpleClusterLayer;\n"],"names":["SimpleClusterLayer","props","simpleTheme","rest","jsx","ClusterLayer","wrapSimpleTheme"],"mappings":";;;AAOA,MAAMA,IAAqB,CAACC,MAAmC;AAC3D,QAAM,EAAE,aAAAC,GAAa,GAAGC,EAAA,IAASF;AACjC,SAAO,gBAAAG,EAACC,KAAc,GAAGF,GAAM,cAAcD,KAAeI,EAAgBJ,CAAW,GAAG;AAC9F;"}
1
+ {"version":3,"file":"SimpleClusterLayer.js","sources":["../../../../../../../src/components/map/components/features/layers/clustering/SimpleClusterLayer.tsx"],"sourcesContent":["import ClusterLayer, { type ClusterLayerProps } from './ClusterLayer';\nimport { type SimpleClusterTheme, wrapSimpleTheme } from '../../../../utils/clustering';\n\nexport type SimpleClusterLayerProps = Omit<ClusterLayerProps, 'clusterTheme'> & {\n simpleTheme?: SimpleClusterTheme;\n};\n\nconst SimpleClusterLayer = (props: SimpleClusterLayerProps) => {\n const { simpleTheme, ...rest } = props;\n return <ClusterLayer {...rest} clusterTheme={simpleTheme && wrapSimpleTheme(simpleTheme)} />;\n};\n\nexport default SimpleClusterLayer;\n"],"names":["SimpleClusterLayer","props","simpleTheme","rest","jsx","ClusterLayer","wrapSimpleTheme"],"mappings":";;;AAOA,MAAMA,IAAqB,CAACC,MAAmC;AAC3D,QAAM,EAAE,aAAAC,GAAa,GAAGC,EAAA,IAASF;AACjC,SAAO,gBAAAG,EAACC,KAAc,GAAGF,GAAM,cAAcD,KAAeI,EAAgBJ,CAAW,GAAG;AAC9F;"}
@@ -1,9 +1,9 @@
1
1
  import { jsx as L } from "react/jsx-runtime";
2
- import { DEFAULT_RASTER_LAYER_FORMAT as f, ENGINE_TYPE_P2D as c, DEFAULT_TILE_SIZE as m, ENGINE_TYPE_HARP as R } from "../../../constants.js";
3
- import T from "./Layer.js";
4
- import { useMapContext as y } from "../../../MapContext.js";
5
- import { isVectorBased as E } from "../../../../utils/rendering.js";
6
- const _ = (e, r) => (t, i, o, a) => {
2
+ import { DEFAULT_RASTER_LAYER_FORMAT as f, ENGINE_TYPE_P2D as c, DEFAULT_TILE_SIZE as m, ENGINE_TYPE_HARP as _ } from "../../../constants.js";
3
+ import R from "./Layer.js";
4
+ import { useMapContext as T } from "../../../MapContext.js";
5
+ import { isVectorBased as y } from "../../../../utils/rendering.js";
6
+ const E = (e, r) => (t, i, o, a) => {
7
7
  const s = t.platform?.getRasterTileService({
8
8
  resource: "blank",
9
9
  format: f,
@@ -19,8 +19,8 @@ const _ = (e, r) => (t, i, o, a) => {
19
19
  }), l = new H.map.layer.TileLayer(n);
20
20
  return console.log("createRoadRestrictionLayer"), l;
21
21
  }, b = (e) => {
22
- const { enableWebGL: r, baseLayer: t, devicePixelRatio: i } = y(), o = E(r, t) ? R : c, a = _(o, i);
23
- return /* @__PURE__ */ L(T, { ...e, createLayer: a });
22
+ const { enableWebGL: r, baseLayer: t, devicePixelRatio: i } = T(), o = y(r, t) ? _ : c, a = E(o, i);
23
+ return /* @__PURE__ */ L(R, { ...e, createLayer: a });
24
24
  };
25
25
  export {
26
26
  b as default
@@ -1 +1 @@
1
- {"version":3,"file":"RoadRestrictionLayer.js","sources":["../../../../../../../src/components/map/components/features/layers/overlayLayers/RoadRestrictionLayer.tsx"],"sourcesContent":["// biome-ignore lint/style/useImportType: required for JSX runtime compatibility with older toolchains\nimport React from 'react';\n\nimport { DEFAULT_RASTER_LAYER_FORMAT, DEFAULT_TILE_SIZE, ENGINE_TYPE_HARP, ENGINE_TYPE_P2D } from '../../../constants';\nimport Layer from './Layer';\nimport { useMapContext } from '../../../MapContext';\nimport type { MapApi } from '../../../../utils/mapTypes';\nimport { isVectorBased } from '../../../../utils/rendering';\n\n// Layer for rendering truck road signs\nconst createRoadRestrictionLayer =\n (engineType: any | string, devicePixelRatio: number) =>\n (api: MapApi, useWebGL: boolean, baseLayerName: string, language: string) => {\n // @ts-ignore-next-line: according to the Here docs, the engine type exists\n const trafficTileService = api.platform?.getRasterTileService({\n resource: 'blank',\n format: DEFAULT_RASTER_LAYER_FORMAT,\n queryParams: {\n lang: language,\n // Increase size of road sign for pixel maps and high resolutions, otherwise the icons are too small\n ppi: engineType === ENGINE_TYPE_P2D && devicePixelRatio > 1 ? 200 : 100,\n features: 'vehicle_restrictions:active_and_inactive',\n },\n });\n\n // @ts-ignore-next-line: according to the Here docs, the engine type exists\n const trafficTileProvider1 = new H.service.rasterTile.Provider(trafficTileService, {\n engineType,\n tileSize: DEFAULT_TILE_SIZE,\n });\n\n const trafficTileLayer = new H.map.layer.TileLayer(trafficTileProvider1);\n\n console.log('createRoadRestrictionLayer');\n\n return trafficTileLayer;\n };\n\nexport type RoadRestrictionLayerProps = Omit<React.ComponentProps<typeof Layer>, 'createLayer'> & {};\n\nconst RoadRestrictionLayer = (props: RoadRestrictionLayerProps) => {\n const { enableWebGL, baseLayer, devicePixelRatio } = useMapContext();\n\n const engineType = isVectorBased(enableWebGL, baseLayer) ? ENGINE_TYPE_HARP : ENGINE_TYPE_P2D;\n\n const restrictionLayerCreator = createRoadRestrictionLayer(engineType, devicePixelRatio);\n\n return <Layer {...props} createLayer={restrictionLayerCreator} />;\n};\n\nexport default RoadRestrictionLayer;\n"],"names":["createRoadRestrictionLayer","engineType","devicePixelRatio","api","useWebGL","baseLayerName","language","trafficTileService","DEFAULT_RASTER_LAYER_FORMAT","ENGINE_TYPE_P2D","trafficTileProvider1","DEFAULT_TILE_SIZE","trafficTileLayer","RoadRestrictionLayer","props","enableWebGL","baseLayer","useMapContext","isVectorBased","ENGINE_TYPE_HARP","restrictionLayerCreator","jsx","Layer"],"mappings":";;;;;AAUA,MAAMA,IACF,CAACC,GAA0BC,MAC3B,CAACC,GAAaC,GAAmBC,GAAuBC,MAAqB;AAEzE,QAAMC,IAAqBJ,EAAI,UAAU,qBAAqB;AAAA,IAC1D,UAAU;AAAA,IACV,QAAQK;AAAA,IACR,aAAa;AAAA,MACT,MAAMF;AAAA;AAAA,MAEN,KAAKL,MAAeQ,KAAmBP,IAAmB,IAAI,MAAM;AAAA,MACpE,UAAU;AAAA,IAAA;AAAA,EACd,CACH,GAGKQ,IAAuB,IAAI,EAAE,QAAQ,WAAW,SAASH,GAAoB;AAAA,IAC/E,YAAAN;AAAA,IACA,UAAUU;AAAA,EAAA,CACb,GAEKC,IAAmB,IAAI,EAAE,IAAI,MAAM,UAAUF,CAAoB;AAEvE,iBAAQ,IAAI,4BAA4B,GAEjCE;AACX,GAIEC,IAAuB,CAACC,MAAqC;AAC/D,QAAM,EAAE,aAAAC,GAAa,WAAAC,GAAW,kBAAAd,EAAA,IAAqBe,EAAA,GAE/ChB,IAAaiB,EAAcH,GAAaC,CAAS,IAAIG,IAAmBV,GAExEW,IAA0BpB,EAA2BC,GAAYC,CAAgB;AAEvF,SAAO,gBAAAmB,EAACC,GAAA,EAAO,GAAGR,GAAO,aAAaM,GAAyB;AACnE;"}
1
+ {"version":3,"file":"RoadRestrictionLayer.js","sources":["../../../../../../../src/components/map/components/features/layers/overlayLayers/RoadRestrictionLayer.tsx"],"sourcesContent":["// biome-ignore lint/style/useImportType: required for JSX runtime compatibility with older toolchains\nimport React from 'react';\n\nimport { DEFAULT_RASTER_LAYER_FORMAT, DEFAULT_TILE_SIZE, ENGINE_TYPE_HARP, ENGINE_TYPE_P2D } from '../../../constants';\nimport Layer from './Layer';\nimport { useMapContext } from '../../../MapContext';\nimport type { MapApi } from '../../../../utils/mapTypes';\nimport { isVectorBased } from '../../../../utils/rendering';\n\n// Layer for rendering truck road signs\nconst createRoadRestrictionLayer =\n (engineType: H.Map.EngineType | string, devicePixelRatio: number) =>\n (api: MapApi, _useWebGL: boolean, _baseLayerName: string, language: string) => {\n // @ts-expect-error-next-line: according to the Here docs, the engine type exists\n const trafficTileService = api.platform?.getRasterTileService({\n resource: 'blank',\n format: DEFAULT_RASTER_LAYER_FORMAT,\n queryParams: {\n lang: language,\n // Increase size of road sign for pixel maps and high resolutions, otherwise the icons are too small\n ppi: engineType === ENGINE_TYPE_P2D && devicePixelRatio > 1 ? 200 : 100,\n features: 'vehicle_restrictions:active_and_inactive',\n },\n });\n\n // @ts-expect-error-next-line: according to the Here docs, the engine type exists\n const trafficTileProvider1 = new H.service.rasterTile.Provider(trafficTileService, {\n engineType,\n tileSize: DEFAULT_TILE_SIZE,\n });\n\n const trafficTileLayer = new H.map.layer.TileLayer(trafficTileProvider1);\n\n console.log('createRoadRestrictionLayer');\n\n return trafficTileLayer;\n };\n\nexport type RoadRestrictionLayerProps = Omit<React.ComponentProps<typeof Layer>, 'createLayer'> & {};\n\nconst RoadRestrictionLayer = (props: RoadRestrictionLayerProps) => {\n const { enableWebGL, baseLayer, devicePixelRatio } = useMapContext();\n\n const engineType = isVectorBased(enableWebGL, baseLayer) ? ENGINE_TYPE_HARP : ENGINE_TYPE_P2D;\n\n const restrictionLayerCreator = createRoadRestrictionLayer(engineType, devicePixelRatio);\n\n return <Layer {...props} createLayer={restrictionLayerCreator} />;\n};\n\nexport default RoadRestrictionLayer;\n"],"names":["createRoadRestrictionLayer","engineType","devicePixelRatio","api","_useWebGL","_baseLayerName","language","trafficTileService","DEFAULT_RASTER_LAYER_FORMAT","ENGINE_TYPE_P2D","trafficTileProvider1","DEFAULT_TILE_SIZE","trafficTileLayer","RoadRestrictionLayer","props","enableWebGL","baseLayer","useMapContext","isVectorBased","ENGINE_TYPE_HARP","restrictionLayerCreator","jsx","Layer"],"mappings":";;;;;AAUA,MAAMA,IACF,CAACC,GAAuCC,MACxC,CAACC,GAAaC,GAAoBC,GAAwBC,MAAqB;AAE3E,QAAMC,IAAqBJ,EAAI,UAAU,qBAAqB;AAAA,IAC1D,UAAU;AAAA,IACV,QAAQK;AAAA,IACR,aAAa;AAAA,MACT,MAAMF;AAAA;AAAA,MAEN,KAAKL,MAAeQ,KAAmBP,IAAmB,IAAI,MAAM;AAAA,MACpE,UAAU;AAAA,IAAA;AAAA,EACd,CACH,GAGKQ,IAAuB,IAAI,EAAE,QAAQ,WAAW,SAASH,GAAoB;AAAA,IAC/E,YAAAN;AAAA,IACA,UAAUU;AAAA,EAAA,CACb,GAEKC,IAAmB,IAAI,EAAE,IAAI,MAAM,UAAUF,CAAoB;AAEvE,iBAAQ,IAAI,4BAA4B,GAEjCE;AACX,GAIEC,IAAuB,CAACC,MAAqC;AAC/D,QAAM,EAAE,aAAAC,GAAa,WAAAC,GAAW,kBAAAd,EAAA,IAAqBe,EAAA,GAE/ChB,IAAaiB,EAAcH,GAAaC,CAAS,IAAIG,IAAmBV,GAExEW,IAA0BpB,EAA2BC,GAAYC,CAAgB;AAEvF,SAAO,gBAAAmB,EAACC,GAAA,EAAO,GAAGR,GAAO,aAAaM,GAAyB;AACnE;"}
@@ -20,17 +20,17 @@ const L = (e, r, a, t) => {
20
20
  tileSize: n
21
21
  });
22
22
  return new H.map.layer.TileLayer(c);
23
- }, E = (e, r, a) => {
23
+ }, _ = (e, r, a) => {
24
24
  const t = new H.service.trafficVectorTile.Provider(
25
- // @ts-ignore-next-line
25
+ // @ts-expect-error-next-line
26
26
  e.platform?.getTrafficVectorTileService({ layer: "flow" }),
27
- // @ts-ignore-next-line
27
+ // @ts-expect-error-next-line
28
28
  new H.map.render.harp.Style({}),
29
29
  { engineType: s }
30
30
  );
31
31
  return new H.map.layer.TileLayer(t, { min: 2, max: 24 });
32
32
  }, P = (e) => {
33
- const r = T(), a = m(r.enableWebGL, r.baseLayer) ? E : L;
33
+ const r = T(), a = m(r.enableWebGL, r.baseLayer) ? _ : L;
34
34
  return /* @__PURE__ */ f(p, { ...e, createLayer: a });
35
35
  };
36
36
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"TrafficLayer.js","sources":["../../../../../../../src/components/map/components/features/layers/overlayLayers/TrafficLayer.tsx"],"sourcesContent":["// biome-ignore lint/style/useImportType: required for JSX runtime compatibility with older toolchains\nimport React from 'react';\n\nimport { DEFAULT_RASTER_LAYER_FORMAT, DEFAULT_TILE_SIZE, ENGINE_TYPE_HARP, ENGINE_TYPE_P2D } from '../../../constants';\nimport Layer from './Layer';\nimport type { MapApi } from '../../../../utils/mapTypes';\nimport { useMapContext } from '../../../MapContext';\nimport { isVectorBased } from '../../../../utils/rendering';\n\nconst createRasterTrafficLayer = (api: MapApi, useWebGL: boolean, baseLayerName: string, language: string) => {\n // Traffic\n const baseTrafficUrl = new H.service.Url('https', 'traffic.maps.hereapi.com');\n\n // @ts-ignore-next-line: according to the Here docs, the engine type exists\n const trafficTileService = api.platform?.getRasterTileService({\n baseUrl: baseTrafficUrl,\n format: DEFAULT_RASTER_LAYER_FORMAT,\n path: 'v3',\n resource: 'flow',\n queryParams: {\n apikey: api.credentials?.apikey,\n lang: language,\n ppi: 400,\n style: 'explore.day',\n },\n });\n\n // @ts-ignore-next-line: according to the Here docs, the engine type exists\n const trafficTileProvider = new H.service.rasterTile.Provider(trafficTileService, {\n engineType: ENGINE_TYPE_P2D,\n tileSize: DEFAULT_TILE_SIZE,\n });\n\n const trafficTileLayer = new H.map.layer.TileLayer(trafficTileProvider);\n\n return trafficTileLayer;\n};\n\nconst createVectorTrafficLayer = (api: MapApi, useWebGL: boolean, baseLayerName: string) => {\n // @ts-ignore-next-line\n const providerTrafficFlow = new H.service.trafficVectorTile.Provider(\n // @ts-ignore-next-line\n api.platform?.getTrafficVectorTileService({ layer: 'flow' }),\n // @ts-ignore-next-line\n new H.map.render.harp.Style({}),\n { engineType: ENGINE_TYPE_HARP }\n );\n\n // @ts-ignore-next-line:\n const trafficFlowLayer = new H.map.layer.TileLayer(providerTrafficFlow, { min: 2, max: 24 });\n\n return trafficFlowLayer;\n};\n\nexport type TrafficLayerProps = Omit<React.ComponentProps<typeof Layer>, 'createLayer'> & {};\n\nconst TrafficLayer = (props: TrafficLayerProps) => {\n const mapContext = useMapContext();\n\n const layerCreator = isVectorBased(mapContext.enableWebGL, mapContext.baseLayer)\n ? createVectorTrafficLayer\n : createRasterTrafficLayer;\n\n return <Layer {...props} createLayer={layerCreator} />;\n};\n\nexport default TrafficLayer;\n"],"names":["createRasterTrafficLayer","api","useWebGL","baseLayerName","language","baseTrafficUrl","trafficTileService","DEFAULT_RASTER_LAYER_FORMAT","trafficTileProvider","ENGINE_TYPE_P2D","DEFAULT_TILE_SIZE","createVectorTrafficLayer","providerTrafficFlow","ENGINE_TYPE_HARP","TrafficLayer","props","mapContext","useMapContext","layerCreator","isVectorBased","jsx","Layer"],"mappings":";;;;;AASA,MAAMA,IAA2B,CAACC,GAAaC,GAAmBC,GAAuBC,MAAqB;AAE1G,QAAMC,IAAiB,IAAI,EAAE,QAAQ,IAAI,SAAS,0BAA0B,GAGtEC,IAAqBL,EAAI,UAAU,qBAAqB;AAAA,IAC1D,SAASI;AAAA,IACT,QAAQE;AAAA,IACR,MAAM;AAAA,IACN,UAAU;AAAA,IACV,aAAa;AAAA,MACT,QAAQN,EAAI,aAAa;AAAA,MACzB,MAAMG;AAAA,MACN,KAAK;AAAA,MACL,OAAO;AAAA,IAAA;AAAA,EACX,CACH,GAGKI,IAAsB,IAAI,EAAE,QAAQ,WAAW,SAASF,GAAoB;AAAA,IAC9E,YAAYG;AAAA,IACZ,UAAUC;AAAA,EAAA,CACb;AAID,SAFyB,IAAI,EAAE,IAAI,MAAM,UAAUF,CAAmB;AAG1E,GAEMG,IAA2B,CAACV,GAAaC,GAAmBC,MAA0B;AAExF,QAAMS,IAAsB,IAAI,EAAE,QAAQ,kBAAkB;AAAA;AAAA,IAExDX,EAAI,UAAU,4BAA4B,EAAE,OAAO,QAAQ;AAAA;AAAA,IAE3D,IAAI,EAAE,IAAI,OAAO,KAAK,MAAM,CAAA,CAAE;AAAA,IAC9B,EAAE,YAAYY,EAAA;AAAA,EAAiB;AAMnC,SAFyB,IAAI,EAAE,IAAI,MAAM,UAAUD,GAAqB,EAAE,KAAK,GAAG,KAAK,GAAA,CAAI;AAG/F,GAIME,IAAe,CAACC,MAA6B;AAC/C,QAAMC,IAAaC,EAAA,GAEbC,IAAeC,EAAcH,EAAW,aAAaA,EAAW,SAAS,IACzEL,IACAX;AAEN,SAAO,gBAAAoB,EAACC,GAAA,EAAO,GAAGN,GAAO,aAAaG,GAAc;AACxD;"}
1
+ {"version":3,"file":"TrafficLayer.js","sources":["../../../../../../../src/components/map/components/features/layers/overlayLayers/TrafficLayer.tsx"],"sourcesContent":["// biome-ignore lint/style/useImportType: required for JSX runtime compatibility with older toolchains\nimport React from 'react';\n\nimport { DEFAULT_RASTER_LAYER_FORMAT, DEFAULT_TILE_SIZE, ENGINE_TYPE_HARP, ENGINE_TYPE_P2D } from '../../../constants';\nimport Layer from './Layer';\nimport type { MapApi } from '../../../../utils/mapTypes';\nimport { useMapContext } from '../../../MapContext';\nimport { isVectorBased } from '../../../../utils/rendering';\n\nconst createRasterTrafficLayer = (api: MapApi, _useWebGL: boolean, _baseLayerName: string, language: string) => {\n // Traffic\n const baseTrafficUrl = new H.service.Url('https', 'traffic.maps.hereapi.com');\n\n // @ts-expect-error-next-line: according to the Here docs, the engine type exists\n const trafficTileService = api.platform?.getRasterTileService({\n baseUrl: baseTrafficUrl,\n format: DEFAULT_RASTER_LAYER_FORMAT,\n path: 'v3',\n resource: 'flow',\n queryParams: {\n apikey: api.credentials?.apikey,\n lang: language,\n ppi: 400,\n style: 'explore.day',\n },\n });\n\n // @ts-expect-error-next-line: according to the Here docs, the engine type exists\n const trafficTileProvider = new H.service.rasterTile.Provider(trafficTileService, {\n engineType: ENGINE_TYPE_P2D,\n tileSize: DEFAULT_TILE_SIZE,\n });\n\n const trafficTileLayer = new H.map.layer.TileLayer(trafficTileProvider);\n\n return trafficTileLayer;\n};\n\nconst createVectorTrafficLayer = (api: MapApi, _useWebGL: boolean, _baseLayerName: string) => {\n // @ts-expect-error-next-line\n const providerTrafficFlow = new H.service.trafficVectorTile.Provider(\n // @ts-expect-error-next-line\n api.platform?.getTrafficVectorTileService({ layer: 'flow' }),\n // @ts-expect-error-next-line\n new H.map.render.harp.Style({}),\n { engineType: ENGINE_TYPE_HARP }\n );\n\n // @ts-expect-error-next-line:\n const trafficFlowLayer = new H.map.layer.TileLayer(providerTrafficFlow, { min: 2, max: 24 });\n\n return trafficFlowLayer;\n};\n\nexport type TrafficLayerProps = Omit<React.ComponentProps<typeof Layer>, 'createLayer'> & {};\n\nconst TrafficLayer = (props: TrafficLayerProps) => {\n const mapContext = useMapContext();\n\n const layerCreator = isVectorBased(mapContext.enableWebGL, mapContext.baseLayer)\n ? createVectorTrafficLayer\n : createRasterTrafficLayer;\n\n return <Layer {...props} createLayer={layerCreator} />;\n};\n\nexport default TrafficLayer;\n"],"names":["createRasterTrafficLayer","api","_useWebGL","_baseLayerName","language","baseTrafficUrl","trafficTileService","DEFAULT_RASTER_LAYER_FORMAT","trafficTileProvider","ENGINE_TYPE_P2D","DEFAULT_TILE_SIZE","createVectorTrafficLayer","providerTrafficFlow","ENGINE_TYPE_HARP","TrafficLayer","props","mapContext","useMapContext","layerCreator","isVectorBased","jsx","Layer"],"mappings":";;;;;AASA,MAAMA,IAA2B,CAACC,GAAaC,GAAoBC,GAAwBC,MAAqB;AAE5G,QAAMC,IAAiB,IAAI,EAAE,QAAQ,IAAI,SAAS,0BAA0B,GAGtEC,IAAqBL,EAAI,UAAU,qBAAqB;AAAA,IAC1D,SAASI;AAAA,IACT,QAAQE;AAAA,IACR,MAAM;AAAA,IACN,UAAU;AAAA,IACV,aAAa;AAAA,MACT,QAAQN,EAAI,aAAa;AAAA,MACzB,MAAMG;AAAA,MACN,KAAK;AAAA,MACL,OAAO;AAAA,IAAA;AAAA,EACX,CACH,GAGKI,IAAsB,IAAI,EAAE,QAAQ,WAAW,SAASF,GAAoB;AAAA,IAC9E,YAAYG;AAAA,IACZ,UAAUC;AAAA,EAAA,CACb;AAID,SAFyB,IAAI,EAAE,IAAI,MAAM,UAAUF,CAAmB;AAG1E,GAEMG,IAA2B,CAACV,GAAaC,GAAoBC,MAA2B;AAE1F,QAAMS,IAAsB,IAAI,EAAE,QAAQ,kBAAkB;AAAA;AAAA,IAExDX,EAAI,UAAU,4BAA4B,EAAE,OAAO,QAAQ;AAAA;AAAA,IAE3D,IAAI,EAAE,IAAI,OAAO,KAAK,MAAM,CAAA,CAAE;AAAA,IAC9B,EAAE,YAAYY,EAAA;AAAA,EAAiB;AAMnC,SAFyB,IAAI,EAAE,IAAI,MAAM,UAAUD,GAAqB,EAAE,KAAK,GAAG,KAAK,GAAA,CAAI;AAG/F,GAIME,IAAe,CAACC,MAA6B;AAC/C,QAAMC,IAAaC,EAAA,GAEbC,IAAeC,EAAcH,EAAW,aAAaA,EAAW,SAAS,IACzEL,IACAX;AAEN,SAAO,gBAAAoB,EAACC,GAAA,EAAO,GAAGN,GAAO,aAAaG,GAAc;AACxD;"}
@@ -1,7 +1,7 @@
1
1
  import { jsxs as s, Fragment as o, jsx as I } from "react/jsx-runtime";
2
2
  import m from "react";
3
- import n from "classnames";
4
3
  import { noop as f } from "es-toolkit/function";
4
+ import n from "../../../../../utils/classNames.js";
5
5
  const k = (r) => {
6
6
  const { onClick: p = f, activeIcon: a, inactiveIcon: l, isActive: t = !1, label: e, className: d = "" } = r, g = n(
7
7
  "MapSettingsTileIcon",
@@ -1 +1 @@
1
- {"version":3,"file":"MapSettingsItem.js","sources":["../../../../../../src/components/map/components/features/settings/MapSettingsItem.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport { noop } from 'es-toolkit/function';\n\nexport type MapSettingsItemProps = {\n activeIcon?: JSX.Element;\n inactiveIcon?: JSX.Element;\n isActive?: boolean;\n className?: string;\n label?: string | JSX.Element;\n onClick?: (event: React.MouseEvent<HTMLDivElement>) => void;\n};\n\nconst MapSettingsItem = (props: MapSettingsItemProps) => {\n const { onClick = noop, activeIcon, inactiveIcon, isActive = false, label, className = '' } = props;\n\n const activeIconClassNames = classNames(\n 'MapSettingsTileIcon',\n !label && 'hover-scale-110',\n isActive ? 'display-block' : 'display-none',\n activeIcon?.props.className || ''\n );\n\n const inactiveIconClassNames = classNames(\n 'MapSettingsTileIcon',\n !label && 'hover-scale-110',\n isActive ? 'display-none' : 'display-block',\n inactiveIcon?.props.className || ''\n );\n\n const defaultIcon =\n activeIcon &&\n React.cloneElement(activeIcon, {\n className: activeIconClassNames,\n });\n\n const highlightedIcon =\n inactiveIcon &&\n React.cloneElement(inactiveIcon, {\n className: inactiveIconClassNames,\n });\n\n const mapSettingsItemClassNames = classNames(\n 'MapSettingsItem',\n 'display-flex align-items-center gap-10',\n 'text-color-darker',\n label && 'margin--5',\n className\n );\n\n return (\n <div className={mapSettingsItemClassNames} onClick={onClick}>\n {label && (\n <>\n <div className='margin-left--5'>\n {highlightedIcon}\n {defaultIcon}\n </div>\n <div className='flex-1-1 line-height-16 padding-right-5'>{label}</div>\n </>\n )}\n {!label && (\n <>\n {highlightedIcon}\n {defaultIcon}\n </>\n )}\n </div>\n );\n};\n\nexport default MapSettingsItem;\n"],"names":["MapSettingsItem","props","onClick","noop","activeIcon","inactiveIcon","isActive","label","className","activeIconClassNames","classNames","inactiveIconClassNames","defaultIcon","React","highlightedIcon","mapSettingsItemClassNames","jsxs","Fragment","jsx"],"mappings":";;;;AAaA,MAAMA,IAAkB,CAACC,MAAgC;AACrD,QAAM,EAAE,SAAAC,IAAUC,GAAM,YAAAC,GAAY,cAAAC,GAAc,UAAAC,IAAW,IAAO,OAAAC,GAAO,WAAAC,IAAY,GAAA,IAAOP,GAExFQ,IAAuBC;AAAA,IACzB;AAAA,IACA,CAACH,KAAS;AAAA,IACVD,IAAW,kBAAkB;AAAA,IAC7BF,GAAY,MAAM,aAAa;AAAA,EAAA,GAG7BO,IAAyBD;AAAA,IAC3B;AAAA,IACA,CAACH,KAAS;AAAA,IACVD,IAAW,iBAAiB;AAAA,IAC5BD,GAAc,MAAM,aAAa;AAAA,EAAA,GAG/BO,IACFR,KACAS,EAAM,aAAaT,GAAY;AAAA,IAC3B,WAAWK;AAAA,EAAA,CACd,GAECK,IACFT,KACAQ,EAAM,aAAaR,GAAc;AAAA,IAC7B,WAAWM;AAAA,EAAA,CACd,GAECI,IAA4BL;AAAA,IAC9B;AAAA,IACA;AAAA,IACA;AAAA,IACAH,KAAS;AAAA,IACTC;AAAA,EAAA;AAGJ,SACI,gBAAAQ,EAAC,OAAA,EAAI,WAAWD,GAA2B,SAAAb,GACtC,UAAA;AAAA,IAAAK,KACG,gBAAAS,EAAAC,GAAA,EACI,UAAA;AAAA,MAAA,gBAAAD,EAAC,OAAA,EAAI,WAAU,kBACV,UAAA;AAAA,QAAAF;AAAA,QACAF;AAAA,MAAA,GACL;AAAA,MACA,gBAAAM,EAAC,OAAA,EAAI,WAAU,2CAA2C,UAAAX,EAAA,CAAM;AAAA,IAAA,GACpE;AAAA,IAEH,CAACA,KACE,gBAAAS,EAAAC,GAAA,EACK,UAAA;AAAA,MAAAH;AAAA,MACAF;AAAA,IAAA,EAAA,CACL;AAAA,EAAA,GAER;AAER;"}
1
+ {"version":3,"file":"MapSettingsItem.js","sources":["../../../../../../src/components/map/components/features/settings/MapSettingsItem.tsx"],"sourcesContent":["import React from 'react';\nimport { noop } from 'es-toolkit/function';\n\nimport classNames from '../../../../../utils/classNames';\n\nexport type MapSettingsItemProps = {\n activeIcon?: JSX.Element;\n inactiveIcon?: JSX.Element;\n isActive?: boolean;\n className?: string;\n label?: string | JSX.Element;\n onClick?: (event: React.MouseEvent<HTMLDivElement>) => void;\n};\n\nconst MapSettingsItem = (props: MapSettingsItemProps) => {\n const { onClick = noop, activeIcon, inactiveIcon, isActive = false, label, className = '' } = props;\n\n const activeIconClassNames = classNames(\n 'MapSettingsTileIcon',\n !label && 'hover-scale-110',\n isActive ? 'display-block' : 'display-none',\n activeIcon?.props.className || ''\n );\n\n const inactiveIconClassNames = classNames(\n 'MapSettingsTileIcon',\n !label && 'hover-scale-110',\n isActive ? 'display-none' : 'display-block',\n inactiveIcon?.props.className || ''\n );\n\n const defaultIcon =\n activeIcon &&\n React.cloneElement(activeIcon, {\n className: activeIconClassNames,\n });\n\n const highlightedIcon =\n inactiveIcon &&\n React.cloneElement(inactiveIcon, {\n className: inactiveIconClassNames,\n });\n\n const mapSettingsItemClassNames = classNames(\n 'MapSettingsItem',\n 'display-flex align-items-center gap-10',\n 'text-color-darker',\n label && 'margin--5',\n className\n );\n\n return (\n <div className={mapSettingsItemClassNames} onClick={onClick}>\n {label && (\n <>\n <div className='margin-left--5'>\n {highlightedIcon}\n {defaultIcon}\n </div>\n <div className='flex-1-1 line-height-16 padding-right-5'>{label}</div>\n </>\n )}\n {!label && (\n <>\n {highlightedIcon}\n {defaultIcon}\n </>\n )}\n </div>\n );\n};\n\nexport default MapSettingsItem;\n"],"names":["MapSettingsItem","props","onClick","noop","activeIcon","inactiveIcon","isActive","label","className","activeIconClassNames","classNames","inactiveIconClassNames","defaultIcon","React","highlightedIcon","mapSettingsItemClassNames","jsxs","Fragment","jsx"],"mappings":";;;;AAcA,MAAMA,IAAkB,CAACC,MAAgC;AACrD,QAAM,EAAE,SAAAC,IAAUC,GAAM,YAAAC,GAAY,cAAAC,GAAc,UAAAC,IAAW,IAAO,OAAAC,GAAO,WAAAC,IAAY,GAAA,IAAOP,GAExFQ,IAAuBC;AAAA,IACzB;AAAA,IACA,CAACH,KAAS;AAAA,IACVD,IAAW,kBAAkB;AAAA,IAC7BF,GAAY,MAAM,aAAa;AAAA,EAAA,GAG7BO,IAAyBD;AAAA,IAC3B;AAAA,IACA,CAACH,KAAS;AAAA,IACVD,IAAW,iBAAiB;AAAA,IAC5BD,GAAc,MAAM,aAAa;AAAA,EAAA,GAG/BO,IACFR,KACAS,EAAM,aAAaT,GAAY;AAAA,IAC3B,WAAWK;AAAA,EAAA,CACd,GAECK,IACFT,KACAQ,EAAM,aAAaR,GAAc;AAAA,IAC7B,WAAWM;AAAA,EAAA,CACd,GAECI,IAA4BL;AAAA,IAC9B;AAAA,IACA;AAAA,IACA;AAAA,IACAH,KAAS;AAAA,IACTC;AAAA,EAAA;AAGJ,SACI,gBAAAQ,EAAC,OAAA,EAAI,WAAWD,GAA2B,SAAAb,GACtC,UAAA;AAAA,IAAAK,KACG,gBAAAS,EAAAC,GAAA,EACI,UAAA;AAAA,MAAA,gBAAAD,EAAC,OAAA,EAAI,WAAU,kBACV,UAAA;AAAA,QAAAF;AAAA,QACAF;AAAA,MAAA,GACL;AAAA,MACA,gBAAAM,EAAC,OAAA,EAAI,WAAU,2CAA2C,UAAAX,EAAA,CAAM;AAAA,IAAA,GACpE;AAAA,IAEH,CAACA,KACE,gBAAAS,EAAAC,GAAA,EACK,UAAA;AAAA,MAAAH;AAAA,MACAF;AAAA,IAAA,EAAA,CACL;AAAA,EAAA,GAER;AAER;"}
@@ -1,24 +1,10 @@
1
- import { jsx as i } from "react/jsx-runtime";
2
- import n from "classnames";
3
- import { motion as o } from "motion/react";
4
- const l = (a) => {
5
- const { className: t = "", children: s } = a, e = n("MapSettingsPanel", t);
6
- return /* @__PURE__ */ i(
7
- o.div,
8
- {
9
- initial: { opacity: 0, y: 100 },
10
- animate: { opacity: 1, y: 0 },
11
- exit: { opacity: 0.5, y: 200 },
12
- transition: {
13
- duration: 0.15,
14
- ease: "easeInOut"
15
- },
16
- className: e,
17
- children: s
18
- }
19
- );
1
+ import { jsx as n } from "react/jsx-runtime";
2
+ import l from "../../../../../utils/classNames.js";
3
+ const r = (s) => {
4
+ const { className: a = "", children: e } = s, t = l("MapSettingsPanel", a);
5
+ return /* @__PURE__ */ n("div", { className: t, children: e });
20
6
  };
21
7
  export {
22
- l as default
8
+ r as default
23
9
  };
24
10
  //# sourceMappingURL=MapSettingsPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MapSettingsPanel.js","sources":["../../../../../../src/components/map/components/features/settings/MapSettingsPanel.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport classNames from 'classnames';\nimport { motion } from 'motion/react';\n\nexport type MapSettingsPanelProps = {\n className?: string;\n};\n\nconst MapSettingsPanel = (props: PropsWithChildren<MapSettingsPanelProps>) => {\n const { className = '', children } = props;\n\n const panelClassNames = classNames('MapSettingsPanel', className);\n\n return (\n <motion.div\n initial={{ opacity: 0, y: 100 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0.5, y: 200 }}\n transition={{\n duration: 0.15,\n ease: 'easeInOut',\n }}\n className={panelClassNames}\n >\n {children}\n </motion.div>\n );\n};\n\nexport default MapSettingsPanel;\n"],"names":["MapSettingsPanel","props","className","children","panelClassNames","classNames","jsx","motion"],"mappings":";;;AAQA,MAAMA,IAAmB,CAACC,MAAoD;AAC1E,QAAM,EAAE,WAAAC,IAAY,IAAI,UAAAC,EAAA,IAAaF,GAE/BG,IAAkBC,EAAW,oBAAoBH,CAAS;AAEhE,SACI,gBAAAI;AAAA,IAACC,EAAO;AAAA,IAAP;AAAA,MACG,SAAS,EAAE,SAAS,GAAG,GAAG,IAAA;AAAA,MAC1B,SAAS,EAAE,SAAS,GAAG,GAAG,EAAA;AAAA,MAC1B,MAAM,EAAE,SAAS,KAAK,GAAG,IAAA;AAAA,MACzB,YAAY;AAAA,QACR,UAAU;AAAA,QACV,MAAM;AAAA,MAAA;AAAA,MAEV,WAAWH;AAAA,MAEV,UAAAD;AAAA,IAAA;AAAA,EAAA;AAGb;"}
1
+ {"version":3,"file":"MapSettingsPanel.js","sources":["../../../../../../src/components/map/components/features/settings/MapSettingsPanel.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\n\nimport classNames from '../../../../../utils/classNames';\n\nexport type MapSettingsPanelProps = {\n className?: string;\n};\n\nconst MapSettingsPanel = (props: PropsWithChildren<MapSettingsPanelProps>) => {\n const { className = '', children } = props;\n\n const panelClassNames = classNames('MapSettingsPanel', className);\n\n return <div className={panelClassNames}>{children}</div>;\n};\n\nexport default MapSettingsPanel;\n"],"names":["MapSettingsPanel","props","className","children","panelClassNames","classNames","jsx"],"mappings":";;AAQA,MAAMA,IAAmB,CAACC,MAAoD;AAC1E,QAAM,EAAE,WAAAC,IAAY,IAAI,UAAAC,EAAA,IAAaF,GAE/BG,IAAkBC,EAAW,oBAAoBH,CAAS;AAEhE,SAAO,gBAAAI,EAAC,OAAA,EAAI,WAAWF,GAAkB,UAAAD,EAAA,CAAS;AACtD;"}