@mapsight/ui 7.0.3 → 7.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 (664) hide show
  1. package/README.md +91 -2
  2. package/dist/components/app.d.ts +2 -2
  3. package/dist/components/app.d.ts.map +1 -1
  4. package/dist/components/app.js +7 -7
  5. package/dist/components/app.js.map +1 -1
  6. package/dist/components/feature-details-content/feature-details-content.d.ts +1 -1
  7. package/dist/components/feature-details-content/feature-details-content.d.ts.map +1 -1
  8. package/dist/components/feature-details-content/feature-details-content.js +2 -2
  9. package/dist/components/feature-details-content/feature-details-content.js.map +1 -1
  10. package/dist/components/feature-details-content/index.d.ts +4 -6
  11. package/dist/components/feature-details-content/index.js +6 -7
  12. package/dist/components/feature-details-content/index.js.map +1 -1
  13. package/dist/components/feature-details-content/share-feature-link-modal.d.ts +1 -1
  14. package/dist/components/feature-details-content/share-feature-link-modal.d.ts.map +1 -1
  15. package/dist/components/feature-list/context.d.ts +12 -4
  16. package/dist/components/feature-list/context.d.ts.map +1 -1
  17. package/dist/components/feature-list/context.js.map +1 -1
  18. package/dist/components/feature-list/empty-message.d.ts +1 -1
  19. package/dist/components/feature-list/empty-message.d.ts.map +1 -1
  20. package/dist/components/feature-list/filter.d.ts +1 -1
  21. package/dist/components/feature-list/filter.d.ts.map +1 -1
  22. package/dist/components/feature-list/filter.js +2 -2
  23. package/dist/components/feature-list/filter.js.map +1 -1
  24. package/dist/components/feature-list/footer.d.ts +1 -1
  25. package/dist/components/feature-list/footer.d.ts.map +1 -1
  26. package/dist/components/feature-list/hooks/useAutoloadFeatureSource.d.ts.map +1 -1
  27. package/dist/components/feature-list/hooks/useAutoloadFeatureSource.js +12 -3
  28. package/dist/components/feature-list/hooks/useAutoloadFeatureSource.js.map +1 -1
  29. package/dist/components/feature-list/hooks/useFeatureListState.d.ts.map +1 -1
  30. package/dist/components/feature-list/hooks/useFeatureListState.js +7 -2
  31. package/dist/components/feature-list/hooks/useFeatureListState.js.map +1 -1
  32. package/dist/components/feature-list/hooks/useRestoreDocumentScroll.js +1 -1
  33. package/dist/components/feature-list/hooks/useRestoreDocumentScroll.js.map +1 -1
  34. package/dist/components/feature-list/hooks/useSelectFeature.js +6 -6
  35. package/dist/components/feature-list/hooks/useSelectFeature.js.map +1 -1
  36. package/dist/components/feature-list/index.d.ts +3 -2
  37. package/dist/components/feature-list/index.d.ts.map +1 -1
  38. package/dist/components/feature-list/index.js +34 -46
  39. package/dist/components/feature-list/index.js.map +1 -1
  40. package/dist/components/feature-list/pagination.d.ts +1 -1
  41. package/dist/components/feature-list/pagination.d.ts.map +1 -1
  42. package/dist/components/feature-list/query-input.d.ts +1 -1
  43. package/dist/components/feature-list/query-input.d.ts.map +1 -1
  44. package/dist/components/feature-list/tag-switcher-control.d.ts +4 -0
  45. package/dist/components/feature-list/tag-switcher-control.d.ts.map +1 -0
  46. package/dist/components/feature-list/tag-switcher-control.js +10 -0
  47. package/dist/components/feature-list/tag-switcher-control.js.map +1 -0
  48. package/dist/components/feature-list-cycling/button.d.ts +1 -1
  49. package/dist/components/feature-list-cycling/button.d.ts.map +1 -1
  50. package/dist/components/feature-list-cycling/dot.d.ts +1 -1
  51. package/dist/components/feature-list-cycling/dot.d.ts.map +1 -1
  52. package/dist/components/feature-list-cycling/feature-list-cycling.d.ts +1 -1
  53. package/dist/components/feature-list-cycling/feature-list-cycling.d.ts.map +1 -1
  54. package/dist/components/feature-list-cycling/index.d.ts +4 -6
  55. package/dist/components/feature-list-cycling/index.js +1 -1
  56. package/dist/components/feature-list-cycling/index.js.map +1 -1
  57. package/dist/components/feature-list-item/icon.d.ts +8 -6
  58. package/dist/components/feature-list-item/icon.d.ts.map +1 -1
  59. package/dist/components/feature-list-item/icon.js +5 -13
  60. package/dist/components/feature-list-item/icon.js.map +1 -1
  61. package/dist/components/feature-list-item/index.d.ts +1 -1
  62. package/dist/components/feature-list-item/index.d.ts.map +1 -1
  63. package/dist/components/feature-list-sorting/feature-list-sorting.d.ts +1 -1
  64. package/dist/components/feature-list-sorting/feature-list-sorting.d.ts.map +1 -1
  65. package/dist/components/feature-list-sorting/feature-list-sorting.js +3 -12
  66. package/dist/components/feature-list-sorting/feature-list-sorting.js.map +1 -1
  67. package/dist/components/feature-list-sorting/index.d.ts +4 -16
  68. package/dist/components/feature-list-sorting/index.d.ts.map +1 -1
  69. package/dist/components/feature-list-sorting/index.js +6 -7
  70. package/dist/components/feature-list-sorting/index.js.map +1 -1
  71. package/dist/components/feature-list-sorting/status-indicator.d.ts +1 -1
  72. package/dist/components/feature-list-sorting/status-indicator.d.ts.map +1 -1
  73. package/dist/components/feature-select-button.d.ts +1 -1
  74. package/dist/components/feature-select-button.d.ts.map +1 -1
  75. package/dist/components/feature-selection-info/close-button.d.ts +1 -1
  76. package/dist/components/feature-selection-info/close-button.d.ts.map +1 -1
  77. package/dist/components/feature-selection-info/container.d.ts +1 -1
  78. package/dist/components/feature-selection-info/container.d.ts.map +1 -1
  79. package/dist/components/feature-selection-info/header.d.ts +1 -1
  80. package/dist/components/feature-selection-info/header.d.ts.map +1 -1
  81. package/dist/components/feature-selection-info/index.d.ts +1 -1
  82. package/dist/components/feature-selection-info/index.d.ts.map +1 -1
  83. package/dist/components/feature-selection-info/index.js +2 -2
  84. package/dist/components/feature-selection-info/index.js.map +1 -1
  85. package/dist/components/feature-selection-info/with-sticky-header.d.ts +10 -7
  86. package/dist/components/feature-selection-info/with-sticky-header.d.ts.map +1 -1
  87. package/dist/components/feature-selection-info/with-sticky-header.js +4 -4
  88. package/dist/components/feature-selection-info/with-sticky-header.js.map +1 -1
  89. package/dist/components/feature-selection-info/without-sticky-header.d.ts +1 -1
  90. package/dist/components/feature-selection-info/without-sticky-header.d.ts.map +1 -1
  91. package/dist/components/filter-toggle-control/FilterToggleControl.d.ts +12 -0
  92. package/dist/components/filter-toggle-control/FilterToggleControl.d.ts.map +1 -0
  93. package/dist/components/filter-toggle-control/FilterToggleControl.js +20 -0
  94. package/dist/components/filter-toggle-control/FilterToggleControl.js.map +1 -0
  95. package/dist/components/helping/app-channel.d.ts +1 -1
  96. package/dist/components/helping/app-channel.d.ts.map +1 -1
  97. package/dist/components/helping/app-context.d.ts +2 -2
  98. package/dist/components/helping/app-context.d.ts.map +1 -1
  99. package/dist/components/instance.d.ts +1 -1
  100. package/dist/components/instance.d.ts.map +1 -1
  101. package/dist/components/layer-switcher/GroupedLayerSwitcher.d.ts +1 -1
  102. package/dist/components/layer-switcher/GroupedLayerSwitcher.js +1 -1
  103. package/dist/components/layer-switcher/GroupedLayerSwitcher.js.map +1 -1
  104. package/dist/components/layer-switcher/LayerSwitcher.d.ts +13 -12
  105. package/dist/components/layer-switcher/LayerSwitcher.d.ts.map +1 -1
  106. package/dist/components/layer-switcher/LayerSwitcher.js +1 -1
  107. package/dist/components/layer-switcher/LayerSwitcher.js.map +1 -1
  108. package/dist/components/layer-switcher/LayerSwitcherContainer.d.ts +16 -0
  109. package/dist/components/layer-switcher/LayerSwitcherContainer.d.ts.map +1 -0
  110. package/dist/components/layer-switcher/{LayerSwticherContainer.js → LayerSwitcherContainer.js} +4 -8
  111. package/dist/components/layer-switcher/LayerSwitcherContainer.js.map +1 -0
  112. package/dist/components/layer-switcher/LayerSwitcherEntry.d.ts +28 -12
  113. package/dist/components/layer-switcher/LayerSwitcherEntry.d.ts.map +1 -1
  114. package/dist/components/layer-switcher/LayerSwitcherEntry.js +33 -35
  115. package/dist/components/layer-switcher/LayerSwitcherEntry.js.map +1 -1
  116. package/dist/components/layer-switcher/index.d.ts +9 -2
  117. package/dist/components/layer-switcher/index.d.ts.map +1 -1
  118. package/dist/components/layer-switcher/index.js +12 -21
  119. package/dist/components/layer-switcher/index.js.map +1 -1
  120. package/dist/components/layout/additional-container/content.d.ts +1 -1
  121. package/dist/components/layout/additional-container/content.d.ts.map +1 -1
  122. package/dist/components/layout/additional-container/index.d.ts +1 -1
  123. package/dist/components/layout/additional-container/index.d.ts.map +1 -1
  124. package/dist/components/layout/additional-container/marginal.d.ts +1 -1
  125. package/dist/components/layout/additional-container/marginal.d.ts.map +1 -1
  126. package/dist/components/layout/main-container.d.ts +1 -1
  127. package/dist/components/layout/main-container.d.ts.map +1 -1
  128. package/dist/components/layout/map-row.d.ts +1 -1
  129. package/dist/components/layout/map-row.d.ts.map +1 -1
  130. package/dist/components/layout/title-bar.d.ts +1 -1
  131. package/dist/components/layout/title-bar.d.ts.map +1 -1
  132. package/dist/components/layout/wrapper.d.ts +1 -1
  133. package/dist/components/layout/wrapper.d.ts.map +1 -1
  134. package/dist/components/layout/wrapper.js +1 -1
  135. package/dist/components/layout/wrapper.js.map +1 -1
  136. package/dist/components/link-share.d.ts +1 -1
  137. package/dist/components/link-share.d.ts.map +1 -1
  138. package/dist/components/main-panel/container.d.ts +1 -1
  139. package/dist/components/main-panel/container.d.ts.map +1 -1
  140. package/dist/components/main-panel/context.d.ts +6 -5
  141. package/dist/components/main-panel/context.d.ts.map +1 -1
  142. package/dist/components/main-panel/context.js +5 -13
  143. package/dist/components/main-panel/context.js.map +1 -1
  144. package/dist/components/main-panel/index.d.ts +1 -1
  145. package/dist/components/main-panel/index.d.ts.map +1 -1
  146. package/dist/components/main-panel/list-toggle-button.d.ts +1 -1
  147. package/dist/components/main-panel/list-toggle-button.d.ts.map +1 -1
  148. package/dist/components/main-panel/list-toggle-button.js +2 -2
  149. package/dist/components/main-panel/list-toggle-button.js.map +1 -1
  150. package/dist/components/map-overlay/attribution-entries.d.ts +1 -1
  151. package/dist/components/map-overlay/attribution-entries.d.ts.map +1 -1
  152. package/dist/components/map-overlay/attribution.d.ts +1 -1
  153. package/dist/components/map-overlay/attribution.d.ts.map +1 -1
  154. package/dist/components/map-overlay/attribution.js +1 -1
  155. package/dist/components/map-overlay/attribution.js.map +1 -1
  156. package/dist/components/map-overlay/combined-buttons.d.ts +1 -1
  157. package/dist/components/map-overlay/combined-buttons.d.ts.map +1 -1
  158. package/dist/components/map-overlay/index.d.ts +1 -1
  159. package/dist/components/map-overlay/index.d.ts.map +1 -1
  160. package/dist/components/map-overlay/info-overlay-left.d.ts +1 -1
  161. package/dist/components/map-overlay/info-overlay-left.d.ts.map +1 -1
  162. package/dist/components/map-overlay/info-overlay-left.js +2 -2
  163. package/dist/components/map-overlay/info-overlay-left.js.map +1 -1
  164. package/dist/components/map-overlay/info-overlay-modal.d.ts +1 -1
  165. package/dist/components/map-overlay/info-overlay-modal.d.ts.map +1 -1
  166. package/dist/components/map-overlay/info-overlay-right.d.ts +1 -1
  167. package/dist/components/map-overlay/info-overlay-right.d.ts.map +1 -1
  168. package/dist/components/map-overlay/info-overlay-right.js +2 -2
  169. package/dist/components/map-overlay/info-overlay-right.js.map +1 -1
  170. package/dist/components/map-overlay/layer-switcher-overlay.d.ts +1 -1
  171. package/dist/components/map-overlay/layer-switcher-overlay.d.ts.map +1 -1
  172. package/dist/components/map-overlay/legend.d.ts +1 -1
  173. package/dist/components/map-overlay/legend.d.ts.map +1 -1
  174. package/dist/components/map-overlay/legend.js +1 -1
  175. package/dist/components/map-overlay/legend.js.map +1 -1
  176. package/dist/components/map-overlay/logo.d.ts +1 -1
  177. package/dist/components/map-overlay/logo.d.ts.map +1 -1
  178. package/dist/components/map-overlay/measure-distance-button.d.ts +1 -1
  179. package/dist/components/map-overlay/measure-distance-button.d.ts.map +1 -1
  180. package/dist/components/map-overlay/measure-distance-button.js +1 -1
  181. package/dist/components/map-overlay/measure-distance-button.js.map +1 -1
  182. package/dist/components/map-overlay/measure-distance-overlay.d.ts +1 -1
  183. package/dist/components/map-overlay/measure-distance-overlay.d.ts.map +1 -1
  184. package/dist/components/map-overlay/mini-legend.js +2 -2
  185. package/dist/components/map-overlay/mini-legend.js.map +1 -1
  186. package/dist/components/map-overlay/region-selector.js +2 -2
  187. package/dist/components/map-overlay/region-selector.js.map +1 -1
  188. package/dist/components/map-overlay/search-overlay.d.ts +1 -1
  189. package/dist/components/map-overlay/search-overlay.d.ts.map +1 -1
  190. package/dist/components/map-overlay/search-overlay.js +1 -1
  191. package/dist/components/map-overlay/search-overlay.js.map +1 -1
  192. package/dist/components/map-overlay/share-position-link-button.d.ts +1 -1
  193. package/dist/components/map-overlay/share-position-link-button.d.ts.map +1 -1
  194. package/dist/components/map-overlay/share-position-link-button.js +1 -1
  195. package/dist/components/map-overlay/share-position-link-button.js.map +1 -1
  196. package/dist/components/map-overlay/tool-overlay.d.ts +1 -1
  197. package/dist/components/map-overlay/tool-overlay.d.ts.map +1 -1
  198. package/dist/components/map-overlay/zoom-buttons.d.ts +1 -1
  199. package/dist/components/map-overlay/zoom-buttons.d.ts.map +1 -1
  200. package/dist/components/map-synced-interlay/index.d.ts +3 -6
  201. package/dist/components/map-synced-interlay/index.d.ts.map +1 -1
  202. package/dist/components/map-synced-interlay/index.js +5 -6
  203. package/dist/components/map-synced-interlay/index.js.map +1 -1
  204. package/dist/components/map-synced-interlay/map-synced-interlay.d.ts +1 -1
  205. package/dist/components/map-synced-interlay/map-synced-interlay.d.ts.map +1 -1
  206. package/dist/components/map-synced-interlay/map-synced-interlay.js +1 -1
  207. package/dist/components/map-synced-interlay/map-synced-interlay.js.map +1 -1
  208. package/dist/components/map-synced-interlay/tooltip.d.ts +1 -1
  209. package/dist/components/map-synced-interlay/tooltip.d.ts.map +1 -1
  210. package/dist/components/map-synced-interlay/tooltip.js +1 -1
  211. package/dist/components/map-synced-interlay/tooltip.js.map +1 -1
  212. package/dist/components/map-wrapper.d.ts +3 -3
  213. package/dist/components/map-wrapper.d.ts.map +1 -1
  214. package/dist/components/map-wrapper.js +4 -7
  215. package/dist/components/map-wrapper.js.map +1 -1
  216. package/dist/components/map.d.ts +6 -5
  217. package/dist/components/map.d.ts.map +1 -1
  218. package/dist/components/map.js +15 -5
  219. package/dist/components/map.js.map +1 -1
  220. package/dist/components/mapsight-icon/mapsight-icon.d.ts +10 -0
  221. package/dist/components/mapsight-icon/mapsight-icon.d.ts.map +1 -0
  222. package/dist/components/mapsight-icon/mapsight-icon.js +33 -0
  223. package/dist/components/mapsight-icon/mapsight-icon.js.map +1 -0
  224. package/dist/components/modal.d.ts +1 -1
  225. package/dist/components/modal.d.ts.map +1 -1
  226. package/dist/components/query-input-with-label.d.ts +1 -1
  227. package/dist/components/query-input-with-label.d.ts.map +1 -1
  228. package/dist/components/search/index.d.ts +1 -1
  229. package/dist/components/search/index.d.ts.map +1 -1
  230. package/dist/components/search/index.js +2 -2
  231. package/dist/components/search/index.js.map +1 -1
  232. package/dist/components/search/result-entry.d.ts +1 -1
  233. package/dist/components/search/result-entry.d.ts.map +1 -1
  234. package/dist/components/search/result-entry.js +1 -1
  235. package/dist/components/search/result-entry.js.map +1 -1
  236. package/dist/components/search/result.d.ts +1 -1
  237. package/dist/components/search/result.d.ts.map +1 -1
  238. package/dist/components/search/result.js +1 -1
  239. package/dist/components/search/result.js.map +1 -1
  240. package/dist/components/switcher/GroupedSwitcher.d.ts +1 -1
  241. package/dist/components/switcher/GroupedSwitcher.d.ts.map +1 -1
  242. package/dist/components/switcher/Switcher.d.ts +1 -1
  243. package/dist/components/switcher/Switcher.d.ts.map +1 -1
  244. package/dist/components/switcher/SwitcherButton.d.ts +1 -1
  245. package/dist/components/switcher/SwitcherButton.d.ts.map +1 -1
  246. package/dist/components/switcher/SwitcherEntry.d.ts +21 -3
  247. package/dist/components/switcher/SwitcherEntry.d.ts.map +1 -1
  248. package/dist/components/switcher/SwitcherEntry.js +8 -9
  249. package/dist/components/switcher/SwitcherEntry.js.map +1 -1
  250. package/dist/components/switcher/SwitcherHeader.d.ts +1 -1
  251. package/dist/components/switcher/SwitcherHeader.d.ts.map +1 -1
  252. package/dist/components/switcher/SwitcherStatusIcon.d.ts +1 -1
  253. package/dist/components/switcher/SwitcherStatusIcon.d.ts.map +1 -1
  254. package/dist/components/tag-switcher/TagSwitcher.d.ts +3 -3
  255. package/dist/components/tag-switcher/TagSwitcher.d.ts.map +1 -1
  256. package/dist/components/tag-switcher/TagSwitcher.js.map +1 -1
  257. package/dist/components/tag-switcher/createTagSwitcherEntry.d.ts +13 -11
  258. package/dist/components/tag-switcher/createTagSwitcherEntry.d.ts.map +1 -1
  259. package/dist/components/tag-switcher/createTagSwitcherEntry.js +6 -12
  260. package/dist/components/tag-switcher/createTagSwitcherEntry.js.map +1 -1
  261. package/dist/components/tag-switcher/createTagSwitcherHeader.d.ts +12 -10
  262. package/dist/components/tag-switcher/createTagSwitcherHeader.d.ts.map +1 -1
  263. package/dist/components/tag-switcher/createTagSwitcherHeader.js +5 -5
  264. package/dist/components/tag-switcher/createTagSwitcherHeader.js.map +1 -1
  265. package/dist/components/tag-switcher/index.d.ts +3 -6
  266. package/dist/components/tag-switcher/index.d.ts.map +1 -1
  267. package/dist/components/tag-switcher/index.js +6 -7
  268. package/dist/components/tag-switcher/index.js.map +1 -1
  269. package/dist/components/time-filter.d.ts +1 -1
  270. package/dist/components/time-filter.d.ts.map +1 -1
  271. package/dist/components/view-toggle-button/desktop-button.d.ts +1 -1
  272. package/dist/components/view-toggle-button/desktop-button.d.ts.map +1 -1
  273. package/dist/components/view-toggle-button/index.d.ts +7 -6
  274. package/dist/components/view-toggle-button/index.d.ts.map +1 -1
  275. package/dist/components/view-toggle-button/index.js +8 -8
  276. package/dist/components/view-toggle-button/index.js.map +1 -1
  277. package/dist/components/view-toggle-button/mobile-button.d.ts +1 -1
  278. package/dist/components/view-toggle-button/mobile-button.d.ts.map +1 -1
  279. package/dist/components/view-toggle-button/mobile-button.js.map +1 -1
  280. package/dist/components/view-toggle-button/view-toggle-button.d.ts +1 -1
  281. package/dist/components/view-toggle-button/view-toggle-button.d.ts.map +1 -1
  282. package/dist/components/view-toggle-button/view-toggle-button.js +1 -1
  283. package/dist/components/view-toggle-button/view-toggle-button.js.map +1 -1
  284. package/dist/components/view-toggle-button/viewport-button.d.ts +1 -1
  285. package/dist/components/view-toggle-button/viewport-button.d.ts.map +1 -1
  286. package/dist/components/view-toggle-button/viewport-button.js.map +1 -1
  287. package/dist/config/feature/sources.d.ts +8 -5
  288. package/dist/config/feature/sources.d.ts.map +1 -1
  289. package/dist/config/feature/sources.js +10 -0
  290. package/dist/config/feature/sources.js.map +1 -1
  291. package/dist/config/index.d.ts +1 -1
  292. package/dist/config/map/featureInteractions.js.map +1 -1
  293. package/dist/config/map/layers.d.ts +16 -13
  294. package/dist/config/map/layers.d.ts.map +1 -1
  295. package/dist/config/map/layers.js.map +1 -1
  296. package/dist/config/schema/index.d.ts +195 -0
  297. package/dist/config/schema/index.d.ts.map +1 -0
  298. package/dist/config/schema/index.js +26 -0
  299. package/dist/config/schema/index.js.map +1 -0
  300. package/dist/config/schema/validate.d.ts +8 -0
  301. package/dist/config/schema/validate.d.ts.map +1 -0
  302. package/dist/config/schema/validate.js +7 -0
  303. package/dist/config/schema/validate.js.map +1 -0
  304. package/dist/controllers/defaults.d.ts.map +1 -1
  305. package/dist/controllers/defaults.js +5 -0
  306. package/dist/controllers/defaults.js.map +1 -1
  307. package/dist/filters/tag-filter.d.ts +7 -0
  308. package/dist/filters/tag-filter.d.ts.map +1 -1
  309. package/dist/filters/tag-filter.js +10 -0
  310. package/dist/filters/tag-filter.js.map +1 -1
  311. package/dist/filters/time-filter.d.ts +9 -0
  312. package/dist/filters/time-filter.d.ts.map +1 -1
  313. package/dist/filters/time-filter.js +10 -0
  314. package/dist/filters/time-filter.js.map +1 -1
  315. package/dist/helpers/components.d.ts +1 -1
  316. package/dist/helpers/components.d.ts.map +1 -1
  317. package/dist/helpers/create-action-watcher.d.ts +1 -1
  318. package/dist/helpers/create-action-watcher.d.ts.map +1 -1
  319. package/dist/helpers/create-action-watcher.js +1 -1
  320. package/dist/helpers/create-action-watcher.js.map +1 -1
  321. package/dist/helpers/i18n/de.d.ts.map +1 -1
  322. package/dist/helpers/i18n/de.js +1 -0
  323. package/dist/helpers/i18n/de.js.map +1 -1
  324. package/dist/helpers/i18n/en.d.ts.map +1 -1
  325. package/dist/helpers/i18n/en.js +1 -0
  326. package/dist/helpers/i18n/en.js.map +1 -1
  327. package/dist/helpers/sort-features-by-distance.d.ts +2 -7
  328. package/dist/helpers/sort-features-by-distance.d.ts.map +1 -1
  329. package/dist/helpers/sort-features-by-distance.js +27 -39
  330. package/dist/helpers/sort-features-by-distance.js.map +1 -1
  331. package/dist/hooks/useMapsightIcon.d.ts +8 -0
  332. package/dist/hooks/useMapsightIcon.d.ts.map +1 -0
  333. package/dist/hooks/useMapsightIcon.js +50 -0
  334. package/dist/hooks/useMapsightIcon.js.map +1 -0
  335. package/dist/hooks/useMountable.d.ts +2 -2
  336. package/dist/hooks/useMountable.d.ts.map +1 -1
  337. package/dist/hooks/useMountable.js +6 -0
  338. package/dist/hooks/useMountable.js.map +1 -1
  339. package/dist/hooks/useStickyHeader.d.ts +3 -3
  340. package/dist/hooks/useStickyHeader.d.ts.map +1 -1
  341. package/dist/hooks/useStickyHeader.js +3 -3
  342. package/dist/hooks/useStickyHeader.js.map +1 -1
  343. package/dist/hooks/useUpdateMapSizeCallback.d.ts +1 -1
  344. package/dist/hooks/useUpdateMapSizeCallback.d.ts.map +1 -1
  345. package/dist/hooks/useUpdateMapSizeOnRender.d.ts +1 -1
  346. package/dist/hooks/useUpdateMapSizeOnRender.d.ts.map +1 -1
  347. package/dist/hooks/useUpdateMapSizeOnTransitionEnd.d.ts +1 -1
  348. package/dist/hooks/useUpdateMapSizeOnTransitionEnd.d.ts.map +1 -1
  349. package/dist/hooks/useUpdateMapSizeOnViewChange.d.ts +1 -1
  350. package/dist/hooks/useUpdateMapSizeOnViewChange.d.ts.map +1 -1
  351. package/dist/index.d.ts +2 -2
  352. package/dist/index.d.ts.map +1 -1
  353. package/dist/index.js +16 -5
  354. package/dist/index.js.map +1 -1
  355. package/dist/plugins/browser/app-title.d.ts +1 -1
  356. package/dist/plugins/browser/app-title.d.ts.map +1 -1
  357. package/dist/plugins/browser/feature-deep-link.d.ts +1 -1
  358. package/dist/plugins/browser/feature-deep-link.d.ts.map +1 -1
  359. package/dist/plugins/browser/feature-deep-link.js.map +1 -1
  360. package/dist/plugins/browser/local-storage.d.ts +1 -1
  361. package/dist/plugins/browser/local-storage.d.ts.map +1 -1
  362. package/dist/plugins/browser/native-fullscreen.d.ts +2 -2
  363. package/dist/plugins/browser/native-fullscreen.d.ts.map +1 -1
  364. package/dist/plugins/browser/no-scroll.d.ts +3 -4
  365. package/dist/plugins/browser/no-scroll.d.ts.map +1 -1
  366. package/dist/plugins/browser/no-scroll.js.map +1 -1
  367. package/dist/plugins/browser/partial-content-changed-event.d.ts +1 -1
  368. package/dist/plugins/browser/partial-content-changed-event.d.ts.map +1 -1
  369. package/dist/plugins/browser/piwik-track-feature-selection-event.d.ts +1 -1
  370. package/dist/plugins/browser/piwik-track-feature-selection-event.d.ts.map +1 -1
  371. package/dist/plugins/browser/piwik-track-fullscreen-toggle-event.d.ts +1 -1
  372. package/dist/plugins/browser/piwik-track-fullscreen-toggle-event.d.ts.map +1 -1
  373. package/dist/plugins/browser/search.d.ts +1 -1
  374. package/dist/plugins/browser/search.d.ts.map +1 -1
  375. package/dist/plugins/browser/share-position-link.d.ts +1 -1
  376. package/dist/plugins/browser/share-position-link.d.ts.map +1 -1
  377. package/dist/plugins/browser/share-position-link.js +1 -1
  378. package/dist/plugins/browser/share-position-link.js.map +1 -1
  379. package/dist/plugins/browser/toggle-mobile-views.d.ts +1 -1
  380. package/dist/plugins/browser/toggle-mobile-views.d.ts.map +1 -1
  381. package/dist/plugins/browser/user-geolocation.d.ts +1 -1
  382. package/dist/plugins/browser/user-geolocation.d.ts.map +1 -1
  383. package/dist/plugins/browser/user-geolocation.js +7 -6
  384. package/dist/plugins/browser/user-geolocation.js.map +1 -1
  385. package/dist/plugins/browser/views.d.ts +1 -1
  386. package/dist/plugins/browser/views.d.ts.map +1 -1
  387. package/dist/plugins/browser-defaults.d.ts +15 -13
  388. package/dist/plugins/browser-defaults.d.ts.map +1 -1
  389. package/dist/plugins/browser-defaults.js +18 -13
  390. package/dist/plugins/browser-defaults.js.map +1 -1
  391. package/dist/plugins/common/combined-visible-layers.d.ts +15 -0
  392. package/dist/plugins/common/combined-visible-layers.d.ts.map +1 -0
  393. package/dist/plugins/common/combined-visible-layers.js +63 -0
  394. package/dist/plugins/common/combined-visible-layers.js.map +1 -0
  395. package/dist/plugins/common/feature-selection-details-url.d.ts +1 -1
  396. package/dist/plugins/common/feature-selection-details-url.d.ts.map +1 -1
  397. package/dist/plugins/common/measure-distance.d.ts +1 -1
  398. package/dist/plugins/common/measure-distance.d.ts.map +1 -1
  399. package/dist/plugins/common/measure-distance.js +1 -1
  400. package/dist/plugins/common/measure-distance.js.map +1 -1
  401. package/dist/plugins/common/ol-proxy.d.ts +1 -1
  402. package/dist/plugins/common/ol-proxy.d.ts.map +1 -1
  403. package/dist/plugins/common/render-await-feature-details-loaded.d.ts +1 -1
  404. package/dist/plugins/common/render-await-feature-details-loaded.d.ts.map +1 -1
  405. package/dist/plugins/common/render-await-feature-details-loaded.js +2 -1
  406. package/dist/plugins/common/render-await-feature-details-loaded.js.map +1 -1
  407. package/dist/plugins/common/render-await-list-feature-sources-loaded.d.ts +1 -1
  408. package/dist/plugins/common/render-await-list-feature-sources-loaded.d.ts.map +1 -1
  409. package/dist/plugins/common/render-await-list-feature-sources-loaded.js +2 -1
  410. package/dist/plugins/common/render-await-list-feature-sources-loaded.js.map +1 -1
  411. package/dist/plugins/common/runtime-icon-style.d.ts +12 -0
  412. package/dist/plugins/common/runtime-icon-style.d.ts.map +1 -0
  413. package/dist/plugins/common/runtime-icon-style.js +58 -0
  414. package/dist/plugins/common/runtime-icon-style.js.map +1 -0
  415. package/dist/plugins/server/feature-deep-link.d.ts +1 -1
  416. package/dist/plugins/server/feature-deep-link.d.ts.map +1 -1
  417. package/dist/plugins/server-defaults.d.ts +4 -4
  418. package/dist/plugins/server-defaults.d.ts.map +1 -1
  419. package/dist/plugins/server-defaults.js +4 -4
  420. package/dist/plugins/server-defaults.js.map +1 -1
  421. package/dist/react-modal-app-element.d.ts +6 -0
  422. package/dist/react-modal-app-element.d.ts.map +1 -0
  423. package/dist/react-modal-app-element.js +9 -0
  424. package/dist/react-modal-app-element.js.map +1 -0
  425. package/dist/renderer/browser-dom.d.ts.map +1 -1
  426. package/dist/renderer/browser-dom.js +6 -2
  427. package/dist/renderer/browser-dom.js.map +1 -1
  428. package/dist/renderer/server-string.js +2 -2
  429. package/dist/renderer/server-string.js.map +1 -1
  430. package/dist/store/actions.d.ts +4 -2
  431. package/dist/store/actions.d.ts.map +1 -1
  432. package/dist/store/actions.js +7 -2
  433. package/dist/store/actions.js.map +1 -1
  434. package/dist/store/reducers.d.ts +224 -9
  435. package/dist/store/reducers.d.ts.map +1 -1
  436. package/dist/store/reducers.js +1 -1
  437. package/dist/store/reducers.js.map +1 -1
  438. package/dist/store/selectors.d.ts +267 -243
  439. package/dist/store/selectors.d.ts.map +1 -1
  440. package/dist/store/selectors.js +58 -69
  441. package/dist/store/selectors.js.map +1 -1
  442. package/dist/types.d.ts +65 -36
  443. package/dist/types.d.ts.map +1 -1
  444. package/package.json +26 -11
  445. package/src/scss/blocks/_features-sorting.scss +0 -13
  446. package/src/scss/blocks/_filter-button.scss +23 -0
  447. package/src/scss/blocks/_filter-toggle-control.scss +15 -0
  448. package/src/scss/default.scss +1 -0
  449. package/dist/components/layer-switcher/LayerSwticherContainer.d.ts +0 -4
  450. package/dist/components/layer-switcher/LayerSwticherContainer.d.ts.map +0 -1
  451. package/dist/components/layer-switcher/LayerSwticherContainer.js.map +0 -1
  452. package/src/img/mapsight-ui/check-empty.svg +0 -1
  453. package/src/img/mapsight-ui/check.svg +0 -2
  454. package/src/img/mapsight-ui/close-list.svg +0 -1
  455. package/src/img/mapsight-ui/close.svg +0 -1
  456. package/src/img/mapsight-ui/error.svg +0 -1
  457. package/src/img/mapsight-ui/fullscreen-close.svg +0 -1
  458. package/src/img/mapsight-ui/fullscreen.svg +0 -1
  459. package/src/img/mapsight-ui/geo-active.svg +0 -1
  460. package/src/img/mapsight-ui/geo-error.svg +0 -1
  461. package/src/img/mapsight-ui/geo-inactive.svg +0 -1
  462. package/src/img/mapsight-ui/info.svg +0 -1
  463. package/src/img/mapsight-ui/layers.svg +0 -1
  464. package/src/img/mapsight-ui/loading.svg +0 -1
  465. package/src/img/mapsight-ui/map.svg +0 -1
  466. package/src/img/mapsight-ui/measure-distance.svg +0 -7
  467. package/src/img/mapsight-ui/open-list.svg +0 -1
  468. package/src/img/mapsight-ui/place-marker.svg +0 -4
  469. package/src/img/mapsight-ui/print.svg +0 -4
  470. package/src/img/mapsight-ui/reset-active.svg +0 -1
  471. package/src/img/mapsight-ui/reset.svg +0 -1
  472. package/src/img/mapsight-ui/search.svg +0 -1
  473. package/src/img/mapsight-ui/sharing.svg +0 -7
  474. package/src/img/mapsight-ui/sort-active.svg +0 -1
  475. package/src/img/mapsight-ui/sort.svg +0 -1
  476. package/src/img/mapsight-ui/watermark.svg +0 -1
  477. package/src/img/mapsight-ui/zoom-in.svg +0 -3
  478. package/src/img/mapsight-ui/zoom-out.svg +0 -3
  479. package/src/js/components/app.jsx +0 -237
  480. package/src/js/components/close-overlay-button.tsx +0 -27
  481. package/src/js/components/feature-details-content/feature-details-content-inner.tsx +0 -116
  482. package/src/js/components/feature-details-content/feature-details-content.jsx +0 -185
  483. package/src/js/components/feature-details-content/index.js +0 -20
  484. package/src/js/components/feature-details-content/share-feature-link-modal.jsx +0 -56
  485. package/src/js/components/feature-list/content.jsx +0 -42
  486. package/src/js/components/feature-list/context.tsx +0 -47
  487. package/src/js/components/feature-list/empty-message.jsx +0 -15
  488. package/src/js/components/feature-list/filter.jsx +0 -35
  489. package/src/js/components/feature-list/footer.jsx +0 -5
  490. package/src/js/components/feature-list/grouped-content.jsx +0 -74
  491. package/src/js/components/feature-list/header.jsx +0 -7
  492. package/src/js/components/feature-list/hooks/useAutoloadFeatureSource.ts +0 -25
  493. package/src/js/components/feature-list/hooks/useFeatureListFeatureSource.ts +0 -22
  494. package/src/js/components/feature-list/hooks/useFeatureListItemGroups.ts +0 -127
  495. package/src/js/components/feature-list/hooks/useFeatureListState.ts +0 -90
  496. package/src/js/components/feature-list/hooks/useKeyboardNavigation.js +0 -112
  497. package/src/js/components/feature-list/hooks/useMakeHeaderSticky.js +0 -40
  498. package/src/js/components/feature-list/hooks/usePaginatedFilteredFeatures.ts +0 -129
  499. package/src/js/components/feature-list/hooks/useRestoreDocumentScroll.js +0 -12
  500. package/src/js/components/feature-list/hooks/useSelectFeature.js +0 -88
  501. package/src/js/components/feature-list/index.jsx +0 -278
  502. package/src/js/components/feature-list/pagination.tsx +0 -57
  503. package/src/js/components/feature-list/query-input.jsx +0 -14
  504. package/src/js/components/feature-list-cycling/button.jsx +0 -13
  505. package/src/js/components/feature-list-cycling/dot.jsx +0 -43
  506. package/src/js/components/feature-list-cycling/feature-list-cycling.jsx +0 -153
  507. package/src/js/components/feature-list-cycling/index.js +0 -82
  508. package/src/js/components/feature-list-item/head.jsx +0 -131
  509. package/src/js/components/feature-list-item/hooks/useFeatureListItemScrollAndFocus.js +0 -51
  510. package/src/js/components/feature-list-item/hooks/useFeatureListItemState.ts +0 -75
  511. package/src/js/components/feature-list-item/icon.jsx +0 -35
  512. package/src/js/components/feature-list-item/index.jsx +0 -168
  513. package/src/js/components/feature-list-sorting/feature-list-sorting.tsx +0 -144
  514. package/src/js/components/feature-list-sorting/index.js +0 -25
  515. package/src/js/components/feature-list-sorting/status-indicator.jsx +0 -10
  516. package/src/js/components/feature-select-button.jsx +0 -70
  517. package/src/js/components/feature-selection-info/close-button.jsx +0 -64
  518. package/src/js/components/feature-selection-info/container.jsx +0 -9
  519. package/src/js/components/feature-selection-info/header.tsx +0 -27
  520. package/src/js/components/feature-selection-info/index.tsx +0 -81
  521. package/src/js/components/feature-selection-info/with-sticky-header.jsx +0 -61
  522. package/src/js/components/feature-selection-info/without-sticky-header.jsx +0 -19
  523. package/src/js/components/feature-selection-info/wrapper.jsx +0 -43
  524. package/src/js/components/helping/app-channel.tsx +0 -99
  525. package/src/js/components/helping/app-context.tsx +0 -32
  526. package/src/js/components/helping/visibility-wrapper.jsx +0 -23
  527. package/src/js/components/instance.tsx +0 -48
  528. package/src/js/components/layer-switcher/GroupedLayerSwitcher.js +0 -47
  529. package/src/js/components/layer-switcher/LayerSwitcher.js +0 -27
  530. package/src/js/components/layer-switcher/LayerSwitcherEntry.js +0 -132
  531. package/src/js/components/layer-switcher/LayerSwticherContainer.jsx +0 -80
  532. package/src/js/components/layer-switcher/index.js +0 -47
  533. package/src/js/components/layout/additional-container/content.jsx +0 -10
  534. package/src/js/components/layout/additional-container/index.jsx +0 -5
  535. package/src/js/components/layout/additional-container/marginal.jsx +0 -10
  536. package/src/js/components/layout/main-container.jsx +0 -5
  537. package/src/js/components/layout/map-row.jsx +0 -5
  538. package/src/js/components/layout/title-bar.tsx +0 -25
  539. package/src/js/components/layout/wrapper.jsx +0 -28
  540. package/src/js/components/link-share.jsx +0 -78
  541. package/src/js/components/main-panel/container.tsx +0 -23
  542. package/src/js/components/main-panel/context.jsx +0 -62
  543. package/src/js/components/main-panel/index.tsx +0 -46
  544. package/src/js/components/main-panel/list-toggle-button.jsx +0 -43
  545. package/src/js/components/map-overlay/area.jsx +0 -17
  546. package/src/js/components/map-overlay/attribution-entries.tsx +0 -33
  547. package/src/js/components/map-overlay/attribution.tsx +0 -25
  548. package/src/js/components/map-overlay/combined-buttons.jsx +0 -5
  549. package/src/js/components/map-overlay/index.jsx +0 -5
  550. package/src/js/components/map-overlay/info-overlay-left.jsx +0 -51
  551. package/src/js/components/map-overlay/info-overlay-modal.tsx +0 -49
  552. package/src/js/components/map-overlay/info-overlay-right.jsx +0 -46
  553. package/src/js/components/map-overlay/layer-switcher-overlay.tsx +0 -100
  554. package/src/js/components/map-overlay/legend.tsx +0 -22
  555. package/src/js/components/map-overlay/logo.jsx +0 -11
  556. package/src/js/components/map-overlay/measure-distance-button.tsx +0 -116
  557. package/src/js/components/map-overlay/measure-distance-overlay.jsx +0 -56
  558. package/src/js/components/map-overlay/mini-legend.jsx +0 -103
  559. package/src/js/components/map-overlay/region-selector.jsx +0 -63
  560. package/src/js/components/map-overlay/search-overlay.jsx +0 -79
  561. package/src/js/components/map-overlay/share-position-link-button.tsx +0 -144
  562. package/src/js/components/map-overlay/tool-overlay.tsx +0 -28
  563. package/src/js/components/map-overlay/user-geo-location-button.jsx +0 -89
  564. package/src/js/components/map-overlay/zoom-button.jsx +0 -98
  565. package/src/js/components/map-overlay/zoom-buttons.jsx +0 -26
  566. package/src/js/components/map-synced-interlay/index.js +0 -17
  567. package/src/js/components/map-synced-interlay/map-synced-interlay.jsx +0 -22
  568. package/src/js/components/map-synced-interlay/tooltip-content.tsx +0 -22
  569. package/src/js/components/map-synced-interlay/tooltip.tsx +0 -199
  570. package/src/js/components/map-wrapper.tsx +0 -65
  571. package/src/js/components/map.jsx +0 -37
  572. package/src/js/components/modal.tsx +0 -40
  573. package/src/js/components/query-input-with-label.tsx +0 -71
  574. package/src/js/components/query-input.tsx +0 -81
  575. package/src/js/components/search/index.jsx +0 -83
  576. package/src/js/components/search/query-input.jsx +0 -20
  577. package/src/js/components/search/result-entry.jsx +0 -63
  578. package/src/js/components/search/result.jsx +0 -71
  579. package/src/js/components/switcher/GroupedSwitcher.jsx +0 -42
  580. package/src/js/components/switcher/Switcher.jsx +0 -54
  581. package/src/js/components/switcher/SwitcherButton.jsx +0 -23
  582. package/src/js/components/switcher/SwitcherEntry.jsx +0 -143
  583. package/src/js/components/switcher/SwitcherHeader.jsx +0 -58
  584. package/src/js/components/switcher/SwitcherStatusIcon.jsx +0 -36
  585. package/src/js/components/tag-switcher/TagSwitcher.jsx +0 -57
  586. package/src/js/components/tag-switcher/createTagSwitcherEntry.js +0 -41
  587. package/src/js/components/tag-switcher/createTagSwitcherHeader.js +0 -34
  588. package/src/js/components/tag-switcher/index.js +0 -20
  589. package/src/js/components/time-filter.jsx +0 -187
  590. package/src/js/components/view-toggle-button/desktop-button.jsx +0 -13
  591. package/src/js/components/view-toggle-button/index.js +0 -39
  592. package/src/js/components/view-toggle-button/mobile-button.jsx +0 -13
  593. package/src/js/components/view-toggle-button/view-toggle-button.jsx +0 -74
  594. package/src/js/components/view-toggle-button/viewport-button.jsx +0 -13
  595. package/src/js/config/constants/app.ts +0 -16
  596. package/src/js/config/constants/controllers.ts +0 -11
  597. package/src/js/config/feature/selections.ts +0 -13
  598. package/src/js/config/feature/sources.ts +0 -77
  599. package/src/js/config/index.ts +0 -133
  600. package/src/js/config/map/featureInteractions.ts +0 -53
  601. package/src/js/config/map/interactions.ts +0 -15
  602. package/src/js/config/map/layers.ts +0 -190
  603. package/src/js/controllers/defaults.ts +0 -36
  604. package/src/js/embed/browser.ts +0 -89
  605. package/src/js/embed/node.ts +0 -57
  606. package/src/js/filters/tag-filter.ts +0 -135
  607. package/src/js/filters/time-filter.ts +0 -53
  608. package/src/js/global.d.ts +0 -7
  609. package/src/js/helpers/components.ts +0 -66
  610. package/src/js/helpers/create-action-watcher.ts +0 -35
  611. package/src/js/helpers/events.ts +0 -11
  612. package/src/js/helpers/get-feature-property.ts +0 -14
  613. package/src/js/helpers/i18n/de.ts +0 -145
  614. package/src/js/helpers/i18n/en.ts +0 -140
  615. package/src/js/helpers/i18n/index.ts +0 -41
  616. package/src/js/helpers/makeReplaceableComponent.ts +0 -0
  617. package/src/js/helpers/mod-classes.ts +0 -47
  618. package/src/js/helpers/react.ts +0 -14
  619. package/src/js/helpers/scroll-to-element-top.ts +0 -16
  620. package/src/js/helpers/sort-features-by-distance.ts +0 -102
  621. package/src/js/helpers/sticky.js +0 -143
  622. package/src/js/hooks/useCallbackRef.ts +0 -14
  623. package/src/js/hooks/useControllableState.ts +0 -50
  624. package/src/js/hooks/useDebounce.ts +0 -32
  625. package/src/js/hooks/useHandleEscapeKeyDown.ts +0 -27
  626. package/src/js/hooks/useMapsightPanel.ts +0 -40
  627. package/src/js/hooks/useMountable.ts +0 -38
  628. package/src/js/hooks/usePrevious.ts +0 -15
  629. package/src/js/hooks/useStickyHeader.ts +0 -51
  630. package/src/js/hooks/useUpdateMapSizeCallback.ts +0 -32
  631. package/src/js/hooks/useUpdateMapSizeOnRender.ts +0 -16
  632. package/src/js/hooks/useUpdateMapSizeOnTransitionEnd.ts +0 -40
  633. package/src/js/hooks/useUpdateMapSizeOnViewChange.ts +0 -36
  634. package/src/js/index.ts +0 -319
  635. package/src/js/plugins/browser/app-title.ts +0 -36
  636. package/src/js/plugins/browser/debug.ts +0 -37
  637. package/src/js/plugins/browser/feature-deep-link.ts +0 -222
  638. package/src/js/plugins/browser/local-storage.ts +0 -79
  639. package/src/js/plugins/browser/native-fullscreen.ts +0 -81
  640. package/src/js/plugins/browser/no-scroll.ts +0 -90
  641. package/src/js/plugins/browser/partial-content-changed-event.ts +0 -23
  642. package/src/js/plugins/browser/piwik-track-feature-selection-event.ts +0 -75
  643. package/src/js/plugins/browser/piwik-track-fullscreen-toggle-event.ts +0 -46
  644. package/src/js/plugins/browser/search.ts +0 -42
  645. package/src/js/plugins/browser/share-position-link.ts +0 -463
  646. package/src/js/plugins/browser/toggle-mobile-views.ts +0 -60
  647. package/src/js/plugins/browser/user-geolocation.ts +0 -134
  648. package/src/js/plugins/browser/views.ts +0 -141
  649. package/src/js/plugins/browser-defaults.ts +0 -101
  650. package/src/js/plugins/common/feature-selection-details-url.ts +0 -135
  651. package/src/js/plugins/common/lang.ts +0 -17
  652. package/src/js/plugins/common/measure-distance.ts +0 -223
  653. package/src/js/plugins/common/ol-proxy.ts +0 -68
  654. package/src/js/plugins/common/render-await-feature-details-loaded.ts +0 -153
  655. package/src/js/plugins/common/render-await-list-feature-sources-loaded.ts +0 -108
  656. package/src/js/plugins/server/feature-deep-link.ts +0 -67
  657. package/src/js/plugins/server-defaults.ts +0 -36
  658. package/src/js/renderer/browser-dom.tsx +0 -23
  659. package/src/js/renderer/server-string.tsx +0 -17
  660. package/src/js/server-handler.js +0 -39
  661. package/src/js/store/actions.ts +0 -648
  662. package/src/js/store/reducers.ts +0 -491
  663. package/src/js/store/selectors.ts +0 -449
  664. package/src/js/types.ts +0 -381
@@ -1,131 +0,0 @@
1
- import {
2
- deselectAll,
3
- selectExclusively,
4
- } from "@mapsight/core/lib/feature-selections/actions";
5
- import {useCallback} from "react";
6
- import {useDispatch} from "react-redux";
7
-
8
- import {FEATURE_SELECTIONS} from "../../config/constants/controllers";
9
- import {FEATURE_SELECTION_HIGHLIGHT} from "../../config/feature/selections";
10
-
11
- import getFeatureProperty from "../../helpers/get-feature-property";
12
-
13
- import FeatureSelectButton from "../feature-select-button";
14
-
15
- /**
16
- * @param {React.PropsWithChildren<object>} props props, see below
17
- * @param {import('../../types').MapsightUiFeature} props.feature feature
18
- * @param {boolean} props.isSelected isSelected
19
- * @param {boolean} props.isHighlighted isHighlighted
20
- * @param {boolean} props.highlightOnMouse highlightOnMouse
21
- * @param {boolean} props.selectOnClick selectOnClick
22
- * @param {boolean} props.deselectOnClick deselectOnClick
23
- * @param {(featureId: import('../../types').MapsightUiFeatureId, options?: {keyboard: boolean}) => void} props.selectFeature selectFeature
24
- * @param {(featureId: import('../../types').MapsightUiFeatureId, options?: {keyboard: boolean}) => void} props.deselectFeatures deselectFeatures
25
- * @param {React.HTMLProps<HTMLButtonElement> | React.HTMLProps<HTMLAnchorElement>} [props.attributes] attributes
26
- * @returns {React.ReactElement} element
27
- */
28
- function FeatureListItemHead({
29
- children,
30
- feature,
31
- isSelected,
32
- isHighlighted,
33
- highlightOnMouse,
34
- selectOnClick,
35
- deselectOnClick,
36
- selectFeature,
37
- deselectFeatures,
38
- className = "",
39
- ...attributes
40
- }) {
41
- const permanentLink = getFeatureProperty(feature, "permanentLink");
42
-
43
- const dispatch = useDispatch();
44
- const onFeatureHighlight = useCallback(
45
- () =>
46
- dispatch(
47
- selectExclusively(
48
- FEATURE_SELECTIONS,
49
- FEATURE_SELECTION_HIGHLIGHT,
50
- feature.id,
51
- ),
52
- ),
53
- [dispatch, feature.id],
54
- );
55
- const onFeatureUnHighlight = useCallback(
56
- () =>
57
- dispatch(
58
- deselectAll(FEATURE_SELECTIONS, FEATURE_SELECTION_HIGHLIGHT),
59
- ),
60
- [dispatch],
61
- );
62
- if (highlightOnMouse) {
63
- attributes.onMouseEnter = !isSelected ? onFeatureHighlight : undefined;
64
- attributes.onMouseLeave = isHighlighted
65
- ? onFeatureUnHighlight
66
- : undefined;
67
- }
68
-
69
- /*
70
- * We support a range of interactive behaviours
71
- * 1. Has some on-page click handler => <button> or <a role=button> (if it also has a permalink)
72
- * 2. Does not have on-page click behaviour, but permalink => link <a>
73
- * 3. Does have neither on-page click behaviour nor permalink, but should highlight on mouse => <span> with hover handlers
74
- * 4. Not interactive at all => <span>
75
- */
76
-
77
- // 1
78
- if (feature.id && (selectOnClick || deselectOnClick)) {
79
- return (
80
- <FeatureSelectButton
81
- tabIndex={-1}
82
- className={`${className} [ ms3-list__button ms3-list__button--selectable ]`}
83
- {...attributes}
84
- featureId={feature.id}
85
- isSelected={isSelected}
86
- selectOnClick={selectOnClick}
87
- deselectOnClick={deselectOnClick}
88
- onSelect={selectFeature}
89
- onDeselect={deselectFeatures}
90
- permanentLink={permanentLink}
91
- >
92
- {children}
93
- </FeatureSelectButton>
94
- );
95
- }
96
-
97
- // 2.
98
- if (permanentLink) {
99
- return (
100
- <a
101
- tabIndex={-1}
102
- href={permanentLink}
103
- className={`${className} [ ms3-list__link ]`}
104
- {...attributes}
105
- >
106
- {children}
107
- </a>
108
- );
109
- }
110
-
111
- // 3.
112
- if (highlightOnMouse) {
113
- return (
114
- <span
115
- className={`${className} [ ms3-list__button ]`}
116
- {...attributes}
117
- >
118
- {children}
119
- </span>
120
- );
121
- }
122
-
123
- // 4.
124
- return (
125
- <span className={className} {...attributes}>
126
- {children}
127
- </span>
128
- );
129
- }
130
-
131
- export default FeatureListItemHead;
@@ -1,51 +0,0 @@
1
- import {useEffect} from "react";
2
-
3
- import usePrevious from "../../../hooks/usePrevious";
4
-
5
- export default function useFeatureListItemScrollAndFocus(
6
- ref,
7
- showDetails,
8
- isPreselectedOnly,
9
- {scrollOnSelection, scrollOnPreselection, enableKeyboardControl},
10
- ) {
11
- const lastShowDetails = usePrevious(showDetails);
12
- const lastIsPreselectedOnly = usePrevious(isPreselectedOnly);
13
-
14
- useEffect(() => {
15
- if (typeof window === "undefined" || ref.current === null) {
16
- return;
17
- }
18
-
19
- /*
20
- * There are two cases where we want to scroll to the item
21
- * 1. On selection, if enabled and if details are expanded
22
- * 2. On preselection, if enabled and only if not already selected
23
- *
24
- * Case 2 may occur if the project code preselects the feature without also
25
- * immediately selecting it. In that case we may also want to focus the
26
- * item, if enabled.
27
- */
28
- let shouldScroll = false;
29
- if (scrollOnSelection && showDetails && !lastShowDetails) {
30
- // case 1: scroll on selection with details
31
- shouldScroll = true;
32
- } else if (
33
- scrollOnPreselection &&
34
- isPreselectedOnly &&
35
- !lastIsPreselectedOnly
36
- ) {
37
- // case 2: scroll on preselection
38
- shouldScroll = true;
39
- }
40
-
41
- if (shouldScroll) {
42
- console.log("list item scroll");
43
- ref.current.scrollIntoView({block: "start", behavior: "smooth"});
44
-
45
- if (enableKeyboardControl) {
46
- console.log("list item focus");
47
- ref.current.focus({preventScroll: true});
48
- }
49
- }
50
- });
51
- }
@@ -1,75 +0,0 @@
1
- import {useMemo} from "react";
2
- import {useSelector} from "react-redux";
3
-
4
- import {getFilteredFeatures} from "@mapsight/core/lib/feature-selections/selectors";
5
-
6
- import {isViewMobile, viewSelector} from "../../../store/selectors";
7
- import type {MapsightUiFeature} from "../../../types";
8
- import {useFeatureListContext} from "../../feature-list/context";
9
-
10
- export default function useFeatureListItemState(feature: MapsightUiFeature) {
11
- const view = useSelector(viewSelector);
12
- const isMobile = isViewMobile(view);
13
- const {
14
- listUiOptions: {
15
- selectionBehavior,
16
- showSelectedOnly,
17
- detailsInList,
18
- selectOnClick,
19
- deselectOnClick,
20
- highlightOnMouse,
21
- },
22
- state: {selectSelection, preselectSelection, highlightSelection},
23
- } = useFeatureListContext();
24
-
25
- const selectSelectionFeatures = useMemo(
26
- () => getFilteredFeatures(selectSelection) || [],
27
- [selectSelection],
28
- );
29
- const hasSelection = selectSelectionFeatures?.length > 0;
30
- const isSelected = useMemo(
31
- () => selectSelectionFeatures.includes(feature.id),
32
- [feature.id, selectSelectionFeatures],
33
- );
34
- const isPreselected = useMemo(
35
- () => getFilteredFeatures(preselectSelection)?.includes(feature.id),
36
- [feature.id, preselectSelection],
37
- );
38
- const isHighlighted = useMemo(
39
- () => getFilteredFeatures(highlightSelection)?.includes(feature.id),
40
- [feature.id, highlightSelection],
41
- );
42
-
43
- return useMemo(
44
- () => ({
45
- selectOnClick: selectOnClick,
46
- deselectOnClick: deselectOnClick,
47
- highlightOnMouse: highlightOnMouse,
48
- view: view,
49
- isMobile: isMobile,
50
- hidden: showSelectedOnly && hasSelection && !isSelected,
51
- hasSelection: hasSelection,
52
- isSelected: isSelected,
53
- isHighlighted: isHighlighted,
54
- isPreselected: isPreselected,
55
- showDetails: isSelected && (isMobile || detailsInList),
56
- scrollOnSelection:
57
- selectionBehavior?.[view] === "expandInList" &&
58
- !showSelectedOnly,
59
- }),
60
- [
61
- deselectOnClick,
62
- detailsInList,
63
- hasSelection,
64
- highlightOnMouse,
65
- isHighlighted,
66
- isMobile,
67
- isPreselected,
68
- isSelected,
69
- selectOnClick,
70
- showSelectedOnly,
71
- selectionBehavior,
72
- view,
73
- ],
74
- );
75
- }
@@ -1,35 +0,0 @@
1
- import {memo} from "react";
2
-
3
- import {siteConfig} from "../../config";
4
-
5
- function MapsightIcon({id}) {
6
- if (!id) {
7
- return null;
8
- }
9
-
10
- // TODO make these paths configurable
11
- const iconFileName = `${id}-plain.png`;
12
- const iconSrc1x = `${siteConfig.imagesUrl}mapsight-icons/${iconFileName}`;
13
- const iconSrcSet =
14
- `${siteConfig.imagesUrl}mapsight-icons/${iconFileName} 1x, ` +
15
- `${siteConfig.imagesUrl}mapsight-icons-2x/${iconFileName} 2x`;
16
-
17
- return <img src={iconSrc1x} srcSet={iconSrcSet} alt="" />;
18
- }
19
-
20
- function FeatureListIcon({selectable, mapsightIconId, as: T, ...attributes}) {
21
- let className = `ms3-list__icon ms3-list__icon--id-${
22
- mapsightIconId || "-"
23
- }`;
24
- if (selectable) {
25
- className += " ms3-list__icon--selectable";
26
- }
27
-
28
- return (
29
- <T className={className} aria-hidden={true} {...attributes}>
30
- <MapsightIcon id={mapsightIconId} />
31
- </T>
32
- );
33
- }
34
-
35
- export default memo(FeatureListIcon);
@@ -1,168 +0,0 @@
1
- import {Fragment, useRef} from "react";
2
-
3
- import getFeatureProperty from "../../helpers/get-feature-property";
4
- import FeatureDetailsContent from "../feature-details-content";
5
-
6
- import FeatureListItemHead from "./head";
7
- import useFeatureListItemScrollAndFocus from "./hooks/useFeatureListItemScrollAndFocus";
8
- import useFeatureListItemState from "./hooks/useFeatureListItemState";
9
-
10
- import FeatureListIcon from "./icon";
11
-
12
- function getMainContentForFeature(feature) {
13
- const listName = getFeatureProperty(feature, "listName");
14
- const name = getFeatureProperty(feature, "name");
15
- return listName || name;
16
- }
17
-
18
- function FeatureListItem({
19
- as: T = "div",
20
- partAs: PartT = "span",
21
- headAs: HeadT = FeatureListItemHead,
22
- contentAs: ContentT = Fragment,
23
- showFeatureListInfo,
24
- feature,
25
- selectFeature,
26
- deselectFeatures,
27
- enableKeyboardControl,
28
- }) {
29
- const {
30
- selectOnClick,
31
- deselectOnClick,
32
- highlightOnMouse,
33
- hidden,
34
- isSelected,
35
- isPreselected,
36
- isHighlighted,
37
- showDetails,
38
- scrollOnSelection,
39
- scrollOnPreselection,
40
- } = useFeatureListItemState(feature);
41
-
42
- /** @type {React.MutableRefObject<HTMLElement | null>} */
43
- const ref = useRef(null);
44
-
45
- useFeatureListItemScrollAndFocus(
46
- ref,
47
- showDetails,
48
- isPreselected && !isSelected,
49
- {
50
- scrollOnSelection: scrollOnSelection,
51
- scrollOnPreselection: scrollOnPreselection,
52
- enableKeyboardControl: enableKeyboardControl,
53
- },
54
- );
55
-
56
- if (hidden) {
57
- return null;
58
- }
59
-
60
- // if render type is not a native element but presumably a React component,
61
- // pass some extra props to be used by said component
62
- const isWrapperComponent = typeof T !== "string";
63
-
64
- const wrapperProps = {
65
- ...(isWrapperComponent
66
- ? {
67
- /* TODO: Which props? */
68
- }
69
- : null),
70
- ref: ref,
71
- className:
72
- "ms3-list__item " +
73
- (isSelected ? " ms3-list__item--selected" : "") +
74
- (isPreselected ? " ms3-list__item--preselected" : "") +
75
- (isHighlighted ? " ms3-list__item--highlight" : "") +
76
- (showDetails ? " ms3-list__item--has-details" : "") +
77
- (showFeatureListInfo ? " ms3-list__item--has-info" : "") +
78
- (ref.current?.className.includes("focus-visible")
79
- ? " focus-visible"
80
- : ""),
81
- };
82
-
83
- let info = null;
84
- if (showFeatureListInfo) {
85
- info = (
86
- <PartT
87
- className="ms3-list__info"
88
- dangerouslySetInnerHTML={{
89
- __html: getFeatureProperty(feature, "listInformation"),
90
- }}
91
- />
92
- );
93
- }
94
-
95
- const showInfoInHead = selectOnClick === true;
96
-
97
- let head;
98
- let headHtml;
99
- if (HeadT) {
100
- // NOTE(PG): Legacy code to support list HTML from the source. Should
101
- // probably be deprecated and replaced by a custom component
102
- headHtml = getFeatureProperty(feature, "overrideListHtml");
103
-
104
- if (!headHtml) {
105
- head = (
106
- <Fragment>
107
- <FeatureListIcon
108
- as="span"
109
- mapsightIconId={getFeatureProperty(
110
- feature,
111
- "mapsightIconId",
112
- )}
113
- />
114
- <PartT
115
- className={`ms3-list__main${
116
- selectOnClick || deselectOnClick
117
- ? " ms3-list__main--selectable"
118
- : ""
119
- }`}
120
- >
121
- {getMainContentForFeature(feature)}
122
- </PartT>
123
- {showInfoInHead && info}
124
- </Fragment>
125
- );
126
- }
127
- }
128
-
129
- let details = null;
130
- if (showDetails) {
131
- details = (
132
- <PartT className="ms3-list__details">
133
- <FeatureDetailsContent feature={feature} />
134
- </PartT>
135
- );
136
- }
137
-
138
- return (
139
- <T {...wrapperProps}>
140
- {HeadT && (
141
- <HeadT
142
- feature={feature}
143
- isSelected={isSelected}
144
- isHighlighted={isHighlighted}
145
- highlightOnMouse={highlightOnMouse}
146
- selectOnClick={selectOnClick}
147
- deselectOnClick={deselectOnClick}
148
- selectFeature={selectFeature}
149
- deselectFeatures={deselectFeatures}
150
- dangerouslySetInnerHTML={
151
- headHtml ? {__html: headHtml} : undefined
152
- }
153
- className="ms3-list__item__head"
154
- >
155
- {head}
156
- </HeadT>
157
- )}
158
- {ContentT && (
159
- <ContentT>
160
- {!showInfoInHead && info}
161
- {details}
162
- </ContentT>
163
- )}
164
- </T>
165
- );
166
- }
167
-
168
- export default FeatureListItem;
@@ -1,144 +0,0 @@
1
- import type {ChangeEvent, ReactElement} from "react";
2
- import {memo, useCallback, useState} from "react";
3
-
4
- import {FocusTrap} from "focus-trap-react";
5
-
6
- import {hasGeolocationSupport} from "@mapsight/core/lib/helpers";
7
-
8
- import {translate} from "../../helpers/i18n";
9
- import StatusIndicator from "./status-indicator";
10
-
11
- export type MapsightUiPlace = {title: string; x: number; y: number; z?: number};
12
- export type MapsightUiPlaceGroup = {
13
- type: "group";
14
- title: string;
15
- entries: MapsightUiPlacesData;
16
- };
17
- export type MapsightUiPlacesData = Record<
18
- string,
19
- MapsightUiPlace | MapsightUiPlaceGroup
20
- >;
21
-
22
- /**
23
- * @param places places
24
- * @param keyPath key path
25
- * @returns option elements
26
- */
27
- function renderOptions(
28
- places: MapsightUiPlacesData,
29
- keyPath: Array<string> = [],
30
- ): Array<ReactElement> {
31
- return Object.entries(places).map(([key, place]) => {
32
- const keyArr = [...keyPath, key];
33
- const keyStr = keyArr.join(",");
34
-
35
- if ("type" in place && place.type === "group") {
36
- return (
37
- <optgroup label={place.title} key={keyStr}>
38
- {renderOptions(place.entries, keyArr)}
39
- </optgroup>
40
- );
41
- } else {
42
- return (
43
- <option value={keyStr} key={keyStr}>
44
- {place.title}
45
- </option>
46
- );
47
- }
48
- });
49
- }
50
-
51
- /* NOTICE: using onChange instead of onBlur as the change occurs just below this input and should be clear */
52
- function FeatureSorter({
53
- places,
54
- sorting,
55
- geolocationStatus,
56
- onChange,
57
- requestGeolocation,
58
- }: {
59
- places: MapsightUiPlacesData;
60
- sorting: string;
61
- geolocationStatus: string;
62
- onChange: (value: string) => void;
63
- requestGeolocation: () => void;
64
- }) {
65
- const [isOpen, setIsOpen] = useState(false);
66
-
67
- const handleClose = useCallback(() => setIsOpen(false), []);
68
- const toggleOpen = useCallback(() => setIsOpen((prev) => !prev), []);
69
-
70
- const onSelectChange = useCallback(
71
- (e: ChangeEvent<HTMLSelectElement>) => {
72
- const newValue = e.target.value;
73
-
74
- if (newValue === "geolocation") {
75
- requestGeolocation();
76
- }
77
-
78
- onChange(newValue);
79
- },
80
- [onChange, requestGeolocation],
81
- );
82
-
83
- return (
84
- <div
85
- className={`ms3-features-sorting ms3-features-sorting--${
86
- isOpen ? "active" : "inactive"
87
- }`}
88
- >
89
- <button
90
- type="button"
91
- className={
92
- "ms3-filter-button " +
93
- (isOpen
94
- ? " ms3-filter-button--icon-sort-active"
95
- : " ms3-filter-button--icon-sort")
96
- }
97
- onClick={toggleOpen}
98
- title={translate("ui.feature-list.sorting.announcements")}
99
- >
100
- <i>{isOpen ? translate("close") : translate("open")}</i>
101
- </button>
102
-
103
- <div>
104
- {isOpen && (
105
- <FocusTrap
106
- focusTrapOptions={{
107
- clickOutsideDeactivates: true,
108
- onDeactivate: handleClose,
109
- }}
110
- >
111
- <div className="ms3-features-sorting__panel">
112
- {translate("ui.feature-list.sorting.byDistance")}
113
-
114
- <select
115
- value={sorting || ""}
116
- onChange={onSelectChange}
117
- >
118
- <option value="">
119
- {translate(
120
- "ui.feature-list.sorting.choose",
121
- )}
122
- </option>
123
-
124
- {hasGeolocationSupport && (
125
- <option value="geolocation">
126
- {translate(
127
- "ui.feature-list.sorting.own",
128
- )}
129
- </option>
130
- )}
131
-
132
- {renderOptions(places)}
133
- </select>
134
-
135
- <StatusIndicator status={geolocationStatus} />
136
- </div>
137
- </FocusTrap>
138
- )}
139
- </div>
140
- </div>
141
- );
142
- }
143
-
144
- export default memo(FeatureSorter);
@@ -1,25 +0,0 @@
1
- import {connect} from "react-redux";
2
-
3
- import {createStructuredSelector} from "reselect";
4
-
5
- import {getGeolocation} from "@mapsight/core/lib/user-geolocation/actions";
6
- import {geolocationStatusSelector} from "@mapsight/core/lib/user-geolocation/selectors";
7
-
8
- import {USER_GEOLOCATION} from "../../config/constants/controllers";
9
- import {sortList} from "../../store/actions.ts";
10
- import {listSortingSelector, placesSelector} from "../../store/selectors.ts";
11
- import FeatureSorter from "./feature-list-sorting";
12
-
13
- export default connect(
14
- createStructuredSelector({
15
- sorting: listSortingSelector,
16
- places: placesSelector,
17
- geolocationStatus: (state) =>
18
- geolocationStatusSelector(state[USER_GEOLOCATION]),
19
- }),
20
- // dispatch map:
21
- {
22
- onChange: sortList,
23
- requestGeolocation: getGeolocation,
24
- },
25
- )(FeatureSorter);
@@ -1,10 +0,0 @@
1
- export default function StatusIndicator({status}) {
2
- return (
3
- <div
4
- className={
5
- "ms3-status-indicator" +
6
- (status ? " ms3-status-indicator--" + status : "")
7
- }
8
- />
9
- );
10
- }