react-spatial 1.5.3 → 1.5.5

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 (282) hide show
  1. package/components/BaseLayerSwitcher/BaseLayerSwitcher.js +262 -0
  2. package/components/BaseLayerSwitcher/BaseLayerSwitcher.js.map +7 -0
  3. package/components/BaseLayerSwitcher/index.js +1 -0
  4. package/components/BaseLayerSwitcher/index.js.map +7 -0
  5. package/{src/components → components}/BasicMap/BasicMap.js +80 -170
  6. package/components/BasicMap/BasicMap.js.map +7 -0
  7. package/components/BasicMap/index.js +1 -0
  8. package/components/BasicMap/index.js.map +7 -0
  9. package/{src/components → components}/CanvasSaveButton/CanvasSaveButton.js +133 -278
  10. package/components/CanvasSaveButton/CanvasSaveButton.js.map +7 -0
  11. package/components/CanvasSaveButton/index.js +1 -0
  12. package/components/CanvasSaveButton/index.js.map +7 -0
  13. package/{src/components → components}/Copyright/Copyright.js +21 -41
  14. package/components/Copyright/Copyright.js.map +7 -0
  15. package/components/Copyright/index.js +1 -0
  16. package/components/Copyright/index.js.map +7 -0
  17. package/components/FeatureExportButton/FeatureExportButton.js +80 -0
  18. package/components/FeatureExportButton/FeatureExportButton.js.map +7 -0
  19. package/components/FeatureExportButton/index.js +1 -0
  20. package/components/FeatureExportButton/index.js.map +7 -0
  21. package/{src/components → components}/FitExtent/FitExtent.js +16 -30
  22. package/components/FitExtent/FitExtent.js.map +7 -0
  23. package/components/FitExtent/index.js +1 -0
  24. package/components/FitExtent/index.js.map +7 -0
  25. package/{src/components → components}/Geolocation/Geolocation.js +60 -110
  26. package/components/Geolocation/Geolocation.js.map +7 -0
  27. package/components/Geolocation/index.js +1 -0
  28. package/components/Geolocation/index.js.map +7 -0
  29. package/{src/components → components}/LayerTree/LayerTree.js +113 -213
  30. package/components/LayerTree/LayerTree.js.map +7 -0
  31. package/components/LayerTree/index.js +1 -0
  32. package/components/LayerTree/index.js.map +7 -0
  33. package/{src/components → components}/MousePosition/MousePosition.js +37 -70
  34. package/components/MousePosition/MousePosition.js.map +7 -0
  35. package/components/MousePosition/index.js +1 -0
  36. package/components/MousePosition/index.js.map +7 -0
  37. package/{src/components → components}/NorthArrow/NorthArrow.js +18 -34
  38. package/components/NorthArrow/NorthArrow.js.map +7 -0
  39. package/components/NorthArrow/index.js +1 -0
  40. package/components/NorthArrow/index.js.map +7 -0
  41. package/{src/components → components}/Overlay/Overlay.js +59 -85
  42. package/components/Overlay/Overlay.js.map +7 -0
  43. package/components/Overlay/index.js +1 -0
  44. package/components/Overlay/index.js.map +7 -0
  45. package/{src/components → components}/Permalink/Permalink.js +64 -147
  46. package/components/Permalink/Permalink.js.map +7 -0
  47. package/components/Permalink/index.js +1 -0
  48. package/components/Permalink/index.js.map +7 -0
  49. package/{src/components → components}/Popup/Popup.js +57 -116
  50. package/components/Popup/Popup.js.map +7 -0
  51. package/components/Popup/index.js +1 -0
  52. package/components/Popup/index.js.map +7 -0
  53. package/{src/components → components}/ResizeHandler/ResizeHandler.js +15 -49
  54. package/components/ResizeHandler/ResizeHandler.js.map +7 -0
  55. package/components/ResizeHandler/index.js +1 -0
  56. package/components/ResizeHandler/index.js.map +7 -0
  57. package/components/RouteSchedule/RouteSchedule.js +268 -0
  58. package/components/RouteSchedule/RouteSchedule.js.map +7 -0
  59. package/components/RouteSchedule/index.js +1 -0
  60. package/components/RouteSchedule/index.js.map +7 -0
  61. package/{src/components → components}/ScaleLine/ScaleLine.js +8 -23
  62. package/components/ScaleLine/ScaleLine.js.map +7 -0
  63. package/components/ScaleLine/index.js +1 -0
  64. package/components/ScaleLine/index.js.map +7 -0
  65. package/{src/components → components}/StopsFinder/StopsFinder.js +74 -103
  66. package/components/StopsFinder/StopsFinder.js.map +7 -0
  67. package/components/StopsFinder/StopsFinderOption.js +44 -0
  68. package/components/StopsFinder/StopsFinderOption.js.map +7 -0
  69. package/components/StopsFinder/index.js +1 -0
  70. package/components/StopsFinder/index.js.map +7 -0
  71. package/{src/components → components}/Zoom/Zoom.js +46 -77
  72. package/components/Zoom/Zoom.js.map +7 -0
  73. package/components/Zoom/index.js +1 -0
  74. package/components/Zoom/index.js.map +7 -0
  75. package/package.json +32 -31
  76. package/{src/propTypes.js → propTypes.js} +30 -16
  77. package/propTypes.js.map +7 -0
  78. package/{src/setupTests.js → setupTests.js} +1 -1
  79. package/setupTests.js.map +7 -0
  80. package/utils/GlobalsForOle.js +94 -0
  81. package/utils/GlobalsForOle.js.map +7 -0
  82. package/utils/KML.js +420 -0
  83. package/utils/KML.js.map +7 -0
  84. package/{src/utils → utils}/KMLFormat.js +29 -32
  85. package/utils/KMLFormat.js.map +7 -0
  86. package/{src/utils → utils}/Styles.js +14 -20
  87. package/utils/Styles.js.map +7 -0
  88. package/{src/utils → utils}/getPolygonPattern.js +6 -34
  89. package/utils/getPolygonPattern.js.map +7 -0
  90. package/{src/utils → utils}/timeUtils.js +5 -22
  91. package/utils/timeUtils.js.map +7 -0
  92. package/.github/workflows/conventional-pr-title.yml +0 -21
  93. package/.github/workflows/main.yml +0 -28
  94. package/.husky/commit-msg +0 -4
  95. package/.husky/post-checkout +0 -4
  96. package/.husky/post-merge +0 -4
  97. package/.husky/post-rebase +0 -4
  98. package/.husky/pre-commit +0 -4
  99. package/.nvmrc +0 -1
  100. package/.whitesource +0 -8
  101. package/CHANGELOG.md +0 -65
  102. package/DEVELOP.md +0 -113
  103. package/__mocks__/mapbox-gl.js +0 -11
  104. package/__mocks__/resize-observer-polyfill.js +0 -9
  105. package/babel.config.js +0 -3
  106. package/commitlint.config.js +0 -1
  107. package/data/topic1.js +0 -119
  108. package/data/topic2.js +0 -28
  109. package/doc/README.md +0 -21
  110. package/doc/doc-config.json +0 -4
  111. package/pull_request_template.md +0 -16
  112. package/renovate.json +0 -4
  113. package/scripts/read-pkg-json.js +0 -17
  114. package/src/components/BaseLayerSwitcher/BaseLayerSwitcher.js +0 -322
  115. package/src/components/BaseLayerSwitcher/BaseLayerSwitcher.test.js +0 -69
  116. package/src/components/BaseLayerSwitcher/README.md +0 -61
  117. package/src/components/BaseLayerSwitcher/__snapshots__/BaseLayerSwitcher.test.js.snap +0 -88
  118. package/src/components/BaseLayerSwitcher/index.js +0 -1
  119. package/src/components/BasicMap/BasicMap.test.js +0 -281
  120. package/src/components/BasicMap/README.md +0 -18
  121. package/src/components/BasicMap/index.js +0 -1
  122. package/src/components/CanvasSaveButton/CanvasSaveButton.test.js +0 -148
  123. package/src/components/CanvasSaveButton/README.md +0 -76
  124. package/src/components/CanvasSaveButton/__snapshots__/CanvasSaveButton.test.js.snap +0 -76
  125. package/src/components/CanvasSaveButton/index.js +0 -1
  126. package/src/components/Copyright/Copyright.test.js +0 -134
  127. package/src/components/Copyright/README.md +0 -36
  128. package/src/components/Copyright/index.js +0 -1
  129. package/src/components/FeatureExportButton/FeatureExportButton.js +0 -118
  130. package/src/components/FeatureExportButton/FeatureExportButton.test.js +0 -417
  131. package/src/components/FeatureExportButton/README.md +0 -76
  132. package/src/components/FeatureExportButton/__snapshots__/FeatureExportButton.test.js.snap +0 -67
  133. package/src/components/FeatureExportButton/index.js +0 -1
  134. package/src/components/FitExtent/FitExtent.test.js +0 -48
  135. package/src/components/FitExtent/README.md +0 -34
  136. package/src/components/FitExtent/__snapshots__/FitExtent.test.js.snap +0 -13
  137. package/src/components/FitExtent/index.js +0 -1
  138. package/src/components/Geolocation/Geolocation.test.js +0 -267
  139. package/src/components/Geolocation/README.md +0 -25
  140. package/src/components/Geolocation/__snapshots__/Geolocation.test.js.snap +0 -92
  141. package/src/components/Geolocation/index.js +0 -1
  142. package/src/components/LayerTree/LayerTree.test.js +0 -337
  143. package/src/components/LayerTree/README.md +0 -92
  144. package/src/components/LayerTree/__snapshots__/LayerTree.test.js.snap +0 -1746
  145. package/src/components/LayerTree/index.js +0 -1
  146. package/src/components/MousePosition/MousePosition.test.js +0 -132
  147. package/src/components/MousePosition/README.md +0 -50
  148. package/src/components/MousePosition/__snapshots__/MousePosition.test.js.snap +0 -76
  149. package/src/components/MousePosition/index.js +0 -1
  150. package/src/components/NorthArrow/NorthArrow.test.js +0 -104
  151. package/src/components/NorthArrow/README.md +0 -59
  152. package/src/components/NorthArrow/__snapshots__/NorthArrow.test.js.snap +0 -117
  153. package/src/components/NorthArrow/index.js +0 -1
  154. package/src/components/Overlay/Overlay.test.js +0 -149
  155. package/src/components/Overlay/README.md +0 -59
  156. package/src/components/Overlay/__snapshots__/Overlay.test.js.snap +0 -9
  157. package/src/components/Overlay/index.js +0 -1
  158. package/src/components/Permalink/Permalink.test.js +0 -285
  159. package/src/components/Permalink/README.md +0 -105
  160. package/src/components/Permalink/index.js +0 -1
  161. package/src/components/Popup/Popup.test.js +0 -307
  162. package/src/components/Popup/README.md +0 -93
  163. package/src/components/Popup/__snapshots__/Popup.test.js.snap +0 -180
  164. package/src/components/Popup/index.js +0 -1
  165. package/src/components/README.md +0 -41
  166. package/src/components/ResizeHandler/ResizeHandler.test.js +0 -344
  167. package/src/components/ResizeHandler/index.js +0 -1
  168. package/src/components/RouteSchedule/README.md +0 -118
  169. package/src/components/RouteSchedule/RouteSchedule.js +0 -370
  170. package/src/components/RouteSchedule/RouteSchedule.test.js +0 -113
  171. package/src/components/RouteSchedule/__snapshots__/RouteSchedule.test.js.snap +0 -248
  172. package/src/components/RouteSchedule/index.js +0 -1
  173. package/src/components/ScaleLine/README.md +0 -29
  174. package/src/components/ScaleLine/ScaleLine.test.js +0 -30
  175. package/src/components/ScaleLine/__snapshots__/ScaleLine.test.js.snap +0 -7
  176. package/src/components/ScaleLine/index.js +0 -1
  177. package/src/components/StopsFinder/README.md +0 -50
  178. package/src/components/StopsFinder/StopsFinder.test.js +0 -17
  179. package/src/components/StopsFinder/StopsFinderOption.js +0 -61
  180. package/src/components/StopsFinder/__snapshots__/StopsFinder.test.js.snap +0 -133
  181. package/src/components/StopsFinder/index.js +0 -1
  182. package/src/components/Zoom/README.md +0 -25
  183. package/src/components/Zoom/Zoom.test.js +0 -141
  184. package/src/components/Zoom/__snapshots__/Zoom.test.js.snap +0 -201
  185. package/src/components/Zoom/index.js +0 -1
  186. package/src/styleguidist/ComponentsList.js +0 -52
  187. package/src/styleguidist/StyleGuide.js +0 -277
  188. package/src/styleguidist/styleguidist.css +0 -38
  189. package/src/utils/GlobalsForOle.js +0 -99
  190. package/src/utils/KML.js +0 -594
  191. package/src/utils/KML.test.js +0 -337
  192. package/src/utils/KMLFormat.test.js +0 -50
  193. package/src/utils/__snapshots__/KML.test.js.snap.KML-readFeatures()-and-writeFeatures()-should-read-and-write-lineDash-and-fillPattern-style-for-polygon.canvas-image.png +0 -0
  194. package/src/utils/__snapshots__/getPolygonPattern.test.js.snap.getPolygonPattern()-render-pattern-2-(cross)-color-and-(light-blue)-opacity.canvas-image.png +0 -0
  195. package/src/utils/__snapshots__/getPolygonPattern.test.js.snap.getPolygonPattern()-render-pattern-3-(diagonal-line-from-bottom-left-tot-top-right)-with-color-(light-blue)-and-opacity.canvas-image.png +0 -0
  196. package/src/utils/__snapshots__/getPolygonPattern.test.js.snap.getPolygonPattern()-render-pattern-4-(diagonal-line-from-top-left-to-bottom-right)-with-color-(light-blue)-and-opacity.canvas-image.png +0 -0
  197. package/src/utils/getPolygonPattern.test.js +0 -61
  198. package/src/utils/timeUtils.test.js +0 -30
  199. package/styleguide.config.js +0 -251
  200. /package/{src/components → components}/BaseLayerSwitcher/BaseLayerSwitcher.md.scss +0 -0
  201. /package/{src/components → components}/BaseLayerSwitcher/BaseLayerSwitcher.scss +0 -0
  202. /package/{src/components → components}/BasicMap/BasicMap.md.scss +0 -0
  203. /package/{src/components → components}/CanvasSaveButton/CanvasSaveButton.md.scss +0 -0
  204. /package/{src/components → components}/Copyright/Copyright.md.scss +0 -0
  205. /package/{src/components → components}/FeatureExportButton/FeatureExportButton.md.scss +0 -0
  206. /package/{src/components → components}/FitExtent/FitExtent.md.scss +0 -0
  207. /package/{src/components → components}/Geolocation/Geolocation.md.scss +0 -0
  208. /package/{src/components → components}/Geolocation/Geolocation.scss +0 -0
  209. /package/{src/components → components}/LayerTree/LayerTree.md.scss +0 -0
  210. /package/{src/components → components}/LayerTree/LayerTree.scss +0 -0
  211. /package/{src/components → components}/MousePosition/MousePosition.md.scss +0 -0
  212. /package/{src/components → components}/NorthArrow/NorthArrow.scss +0 -0
  213. /package/{src/components → components}/Overlay/Overlay.md.scss +0 -0
  214. /package/{src/components → components}/Overlay/Overlay.scss +0 -0
  215. /package/{src/components → components}/Permalink/Permalink.md.scss +0 -0
  216. /package/{src/components → components}/Popup/Popup.md.scss +0 -0
  217. /package/{src/components → components}/Popup/Popup.scss +0 -0
  218. /package/{src/components → components}/RouteSchedule/RouteSchedule.md.scss +0 -0
  219. /package/{src/components → components}/RouteSchedule/RouteSchedule.scss +0 -0
  220. /package/{src/components → components}/ScaleLine/ScaleLine.scss +0 -0
  221. /package/{src/components → components}/Zoom/Zoom.md.scss +0 -0
  222. /package/{src/components → components}/Zoom/Zoom.scss +0 -0
  223. /package/{src/images → images}/RouteSchedule/firstStation.png +0 -0
  224. /package/{src/images → images}/RouteSchedule/lastStation.png +0 -0
  225. /package/{src/images → images}/RouteSchedule/line.png +0 -0
  226. /package/{src/images → images}/RouteSchedule/station.png +0 -0
  227. /package/{src/images → images}/baselayer/baselayer.basebright.png +0 -0
  228. /package/{src/images → images}/baselayer/baselayer.osm.png +0 -0
  229. /package/{src/images → images}/baselayer/baselayer.travic.png +0 -0
  230. /package/{src/images → images}/baselayer/open.topo.map.png +0 -0
  231. /package/{src/images → images}/baselayer/osm.baselayer.hot.png +0 -0
  232. /package/{src/images → images}/baselayer/osm.baselayer.png +0 -0
  233. /package/{src/images → images}/favicon.png +0 -0
  234. /package/{src/images → images}/geops_logo.png +0 -0
  235. /package/{src/images → images}/geops_logo.svg +0 -0
  236. /package/{src/images → images}/geops_qr.png +0 -0
  237. /package/{src/images → images}/mots/bus_poi-blue-01.svg +0 -0
  238. /package/{src/images → images}/mots/bus_poi-grey-01.svg +0 -0
  239. /package/{src/images → images}/mots/bus_round-blue-01.svg +0 -0
  240. /package/{src/images → images}/mots/bus_round-grey-01.svg +0 -0
  241. /package/{src/images → images}/mots/bus_square-blue-01.svg +0 -0
  242. /package/{src/images → images}/mots/bus_square-grey-01.svg +0 -0
  243. /package/{src/images → images}/mots/cable_car_poi-blue-01.svg +0 -0
  244. /package/{src/images → images}/mots/cable_car_poi-grey-01.svg +0 -0
  245. /package/{src/images → images}/mots/cable_car_round-blue-01.svg +0 -0
  246. /package/{src/images → images}/mots/cable_car_round-grey-01.svg +0 -0
  247. /package/{src/images → images}/mots/cable_car_square-blue-01.svg +0 -0
  248. /package/{src/images → images}/mots/cable_car_square-grey-01.svg +0 -0
  249. /package/{src/images → images}/mots/ferry_poi-blue-01.svg +0 -0
  250. /package/{src/images → images}/mots/ferry_poi-grey-01.svg +0 -0
  251. /package/{src/images → images}/mots/ferry_round-blue-01.svg +0 -0
  252. /package/{src/images → images}/mots/ferry_round-grey-01.svg +0 -0
  253. /package/{src/images → images}/mots/ferry_square-blue-01.svg +0 -0
  254. /package/{src/images → images}/mots/ferry_square-grey-01.svg +0 -0
  255. /package/{src/images → images}/mots/funicular_round-blue-01.svg +0 -0
  256. /package/{src/images → images}/mots/funicular_round-grey-01.svg +0 -0
  257. /package/{src/images → images}/mots/funicular_square-blue-01.svg +0 -0
  258. /package/{src/images → images}/mots/gondola_round-blue-01.svg +0 -0
  259. /package/{src/images → images}/mots/rail_poi-blue-01.svg +0 -0
  260. /package/{src/images → images}/mots/rail_poi-grey-01.svg +0 -0
  261. /package/{src/images → images}/mots/rail_round-blue-01.svg +0 -0
  262. /package/{src/images → images}/mots/rail_round-grey-01.svg +0 -0
  263. /package/{src/images → images}/mots/rail_square-blue-01.svg +0 -0
  264. /package/{src/images → images}/mots/rail_square-grey-01.svg +0 -0
  265. /package/{src/images → images}/mots/subway_round blue-01.svg +0 -0
  266. /package/{src/images → images}/mots/subway_round-blue-01.svg +0 -0
  267. /package/{src/images → images}/mots/tram_poi-blue-01.svg +0 -0
  268. /package/{src/images → images}/mots/tram_poi-grey-01.svg +0 -0
  269. /package/{src/images → images}/mots/tram_round-blue-01.svg +0 -0
  270. /package/{src/images → images}/mots/tram_round-grey-01.svg +0 -0
  271. /package/{src/images → images}/mots/tram_square-blue-01.svg +0 -0
  272. /package/{src/images → images}/mots/tram_square-grey-01.svg +0 -0
  273. /package/{src/images → images}/northArrow.svg +0 -0
  274. /package/{src/images → images}/northArrow.url.svg +0 -0
  275. /package/{src/images → images}/northArrowCircle.svg +0 -0
  276. /package/{src/images → images}/northArrowCircle.url.svg +0 -0
  277. /package/{src/themes → themes}/README.md +0 -0
  278. /package/{src/themes → themes}/default/components.scss +0 -0
  279. /package/{src/themes → themes}/default/examples.scss +0 -0
  280. /package/{src/themes → themes}/default/index.scss +0 -0
  281. /package/{src/themes → themes}/default/mixins.scss +0 -0
  282. /package/{src/themes → themes}/default/variables.scss +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/Zoom/Zoom.js"],
4
+ "sourcesContent": ["import React, {\n useEffect,\n useRef,\n useCallback,\n useState,\n useMemo,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport { FaPlus, FaMinus } from 'react-icons/fa';\nimport { ZoomSlider } from 'ol/control';\nimport OLMap from 'ol/Map';\nimport { easeOut } from 'ol/easing';\nimport { unByKey } from 'ol/Observable';\n\nconst propTypes = {\n /**\n * An [ol/map](https://openlayers.org/en/latest/apidoc/module-ol_Map-Map.html).\n */\n map: PropTypes.instanceOf(OLMap).isRequired,\n\n /**\n * The zoom delta applied on each click.\n */\n delta: PropTypes.number,\n\n /**\n * Titles HTML attribtues for button.\n */\n titles: PropTypes.shape({\n zoomIn: PropTypes.string,\n zoomOut: PropTypes.string,\n }),\n\n /**\n * Children content of the zoom in button.\n */\n zoomInChildren: PropTypes.node,\n\n /**\n * Children content of the zoom out button.\n */\n zoomOutChildren: PropTypes.node,\n\n /**\n * Display a slider to zoom.\n */\n zoomSlider: PropTypes.bool,\n};\n\nconst defaultProps = {\n titles: {\n zoomIn: 'Zoom in',\n zoomOut: 'Zoom out',\n },\n zoomInChildren: <FaPlus focusable={false} />,\n zoomOutChildren: <FaMinus focusable={false} />,\n zoomSlider: false,\n delta: 1,\n};\n\nconst updateZoom = (map, delta) => {\n const view = map.getView();\n const currentZoom = view.getZoom();\n const newZoom = currentZoom + delta;\n const constrainedZoom = view.getConstrainedZoom(newZoom);\n if (view.getAnimating()) {\n view.cancelAnimations();\n }\n view.animate({\n zoom: constrainedZoom,\n duration: 250,\n easing: easeOut,\n });\n};\n\n/**\n * The Zoom component creates a zoom wrapper containing zoom-in and zoom-out buttons\n * and an optional [ol/ZoomSlider](https://openlayers.org/en/latest/apidoc/module-ol_control_ZoomSlider-ZoomSlider.html).\n */\nfunction Zoom({\n map,\n titles,\n zoomInChildren,\n zoomOutChildren,\n zoomSlider,\n delta,\n ...other\n}) {\n const ref = useRef();\n const [currentZoom, setZoom] = useState();\n\n const zoomIn = useCallback(\n (evt) => {\n if (!evt.which || evt.which === 13) {\n updateZoom(map, delta);\n }\n },\n [delta, map],\n );\n\n const zoomOut = useCallback(\n (evt) => {\n if (!evt.which || evt.which === 13) {\n updateZoom(map, -delta);\n }\n },\n [delta, map],\n );\n\n const zoomInDisabled = useMemo(() => {\n return (\n currentZoom >=\n map.getView().getConstrainedZoom(map.getView().getMaxZoom())\n );\n }, [currentZoom, map]);\n\n const zoomOutDisabled = useMemo(() => {\n return (\n currentZoom <=\n map.getView().getConstrainedZoom(map.getView().getMinZoom())\n );\n }, [currentZoom, map]);\n\n useEffect(() => {\n // Trigger zoom update to disable zooms on max and min\n const listenerKey = map.on('moveend', () => {\n setZoom(map.getView().getZoom());\n });\n\n let control;\n if (zoomSlider && ref.current) {\n control = new ZoomSlider();\n // We don't want to navigate to the zoom slider using TAB navigation.\n control.element.firstElementChild.tabIndex = -1;\n // Set the zoom slider in the custom control wrapper.\n control.setTarget(ref.current);\n map.addControl(control);\n }\n return () => {\n unByKey(listenerKey);\n if (control) {\n map.removeControl(control);\n }\n };\n }, [map, zoomSlider]);\n\n return (\n // eslint-disable-next-line react/jsx-props-no-spreading\n <div className=\"rs-zooms-bar\" {...other}>\n <button\n type=\"button\"\n tabIndex={0}\n className=\"rs-zoom-in\"\n title={titles.zoomIn}\n onClick={zoomIn}\n onKeyPress={zoomIn}\n disabled={zoomInDisabled}\n >\n {zoomInChildren}\n </button>\n {zoomSlider ? <div className=\"rs-zoomslider-wrapper\" ref={ref} /> : null}\n <button\n type=\"button\"\n tabIndex={0}\n className=\"rs-zoom-out\"\n title={titles.zoomOut}\n onClick={zoomOut}\n onKeyPress={zoomOut}\n disabled={zoomOutDisabled}\n >\n {zoomOutChildren}\n </button>\n </div>\n );\n}\n\nZoom.propTypes = propTypes;\nZoom.defaultProps = defaultProps;\n\nexport default React.memo(Zoom);\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ export { default } from "./Zoom";
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/Zoom/index.js"],
4
+ "sourcesContent": ["export { default } from './Zoom';\n"],
5
+ "mappings": "AAAA,SAAS,eAAe;",
6
+ "names": []
7
+ }
package/package.json CHANGED
@@ -1,16 +1,16 @@
1
1
  {
2
2
  "name": "react-spatial",
3
3
  "description": "Components to build React map apps.",
4
- "version": "1.5.3",
4
+ "version": "1.5.5",
5
5
  "license": "MIT",
6
6
  "dependencies": {
7
7
  "@geops/geops-ui": "0.1.13",
8
- "@material-ui/core": "4.12.3",
9
- "@material-ui/icons": "4.11.2",
8
+ "@material-ui/core": "4.12.4",
9
+ "@material-ui/icons": "4.11.3",
10
10
  "@material-ui/lab": "4.0.0-alpha.60",
11
11
  "query-string": "7.0.1",
12
- "re-resizable": "6.9.1",
13
- "react-icons": "4.4.0",
12
+ "re-resizable": "6.9.11",
13
+ "react-icons": "4.11.0",
14
14
  "resize-observer-polyfill": "1.5.1"
15
15
  },
16
16
  "peerDependencies": {
@@ -21,59 +21,59 @@
21
21
  "react-dom": "^16"
22
22
  },
23
23
  "devDependencies": {
24
- "@babel/preset-env": "7.15.0",
25
- "@babel/preset-react": "7.14.5",
26
- "@cfaester/enzyme-adapter-react-18": "0.7.0",
27
- "@commitlint/cli": "17.0.2",
28
- "@commitlint/config-conventional": "17.0.2",
24
+ "@babel/preset-env": "7.22.20",
25
+ "@babel/preset-react": "7.22.15",
26
+ "@cfaester/enzyme-adapter-react-18": "0.7.1",
27
+ "@commitlint/cli": "17.7.1",
28
+ "@commitlint/config-conventional": "17.7.0",
29
29
  "@svgr/webpack": "5.5.0",
30
30
  "@testing-library/jest-dom": "5.16.5",
31
31
  "@testing-library/react": "14.0.0",
32
- "@testing-library/user-event": "14.4.3",
33
- "babel-jest": "29.5.0",
34
- "babel-loader": "9.1.2",
32
+ "@testing-library/user-event": "14.5.1",
33
+ "babel-jest": "29.7.0",
34
+ "babel-loader": "9.1.3",
35
35
  "canvas": "2.11.2",
36
36
  "css-loader": "5.2.6",
37
37
  "enzyme": "3.11.0",
38
- "esbuild": "^0.15.6",
39
- "esbuild-loader": "^3.0.1",
38
+ "esbuild": "^0.19.3",
39
+ "esbuild-loader": "^4.0.2",
40
40
  "eslint": "7.32.0",
41
41
  "eslint-config-airbnb": "18.2.1",
42
42
  "eslint-config-prettier": "8.3.0",
43
- "eslint-plugin-import": "2.24.2",
44
- "eslint-plugin-jsx-a11y": "6.4.1",
43
+ "eslint-plugin-import": "2.28.1",
44
+ "eslint-plugin-jsx-a11y": "6.7.1",
45
45
  "eslint-plugin-prettier": "4.0.0",
46
- "eslint-plugin-react": "7.26.1",
47
- "eslint-plugin-react-hooks": "4.2.0",
46
+ "eslint-plugin-react": "7.33.2",
47
+ "eslint-plugin-react-hooks": "4.6.0",
48
48
  "file-loader": "6.2.0",
49
49
  "fixpack": "3.0.6",
50
50
  "generact": "0.4.0",
51
- "husky": "8.0.1",
51
+ "husky": "8.0.3",
52
52
  "identity-obj-proxy": "^3.0.0",
53
53
  "is-ci": "3.0.1",
54
- "jest": "29.5.0",
55
- "jest-canvas-mock": "2.5.0",
54
+ "jest": "29.7.0",
55
+ "jest-canvas-mock": "2.5.2",
56
56
  "jest-date-mock": "1.0.8",
57
- "jest-environment-jsdom": "^29.5.0",
57
+ "jest-environment-jsdom": "^29.7.0",
58
58
  "jest-fetch-mock": "3.0.3",
59
59
  "jest-serializer-html": "7.1.0",
60
60
  "jest-transform-file": "1.1.1",
61
61
  "jest-transformer-svg": "^2.0.1",
62
- "jsts": "2.7.3",
62
+ "jsts": "2.11.0",
63
63
  "lint-staged": "11.2.0",
64
64
  "mapbox-gl": "1.13.1",
65
65
  "maplibre-gl": "2.4.0",
66
- "mobility-toolbox-js": "2.0.0-beta.79",
66
+ "mobility-toolbox-js": "2.1.0",
67
67
  "ol": "6.14.1",
68
68
  "prettier": "2.4.1",
69
- "proj4": "2.7.5",
70
- "prop-types": "15.7.2",
69
+ "proj4": "2.9.0",
70
+ "prop-types": "15.8.1",
71
71
  "react": "18",
72
72
  "react-dom": "18",
73
73
  "react-styleguidist": "13.1.1",
74
74
  "react-svg-loader": "3.0.3",
75
75
  "react-test-renderer": "18.2.0",
76
- "sass": "1.49.9",
76
+ "sass": "1.67.0",
77
77
  "sass-loader": "10.2.0",
78
78
  "standard-version": "9.5.0",
79
79
  "stream-array": "1.1.2",
@@ -82,10 +82,10 @@
82
82
  "stylelint-config-recommended-scss": "4.3.0",
83
83
  "stylelint-config-standard": "22.0.0",
84
84
  "stylelint-scss": "3.21.0",
85
- "terser-webpack-plugin": "^5.3.7",
85
+ "terser-webpack-plugin": "^5.3.9",
86
86
  "url-loader": "4.1.1",
87
87
  "vinyl-fs": "3.0.3",
88
- "webpack": "^5.81.0",
88
+ "webpack": "^5.88.2",
89
89
  "xml-beautifier": "0.5.0"
90
90
  },
91
91
  "scripts": {
@@ -106,7 +106,8 @@
106
106
  "publish:public:dryrun": "yarn release --dry-run",
107
107
  "release": "standard-version",
108
108
  "start": "styleguidist server",
109
- "test": "jest"
109
+ "test": "jest",
110
+ "up": "yarn upgrade-interactive --latest"
110
111
  },
111
112
  "browserslist": [
112
113
  ">0.2%",
@@ -1,25 +1,40 @@
1
- import PropTypes from 'prop-types';
2
-
3
- const STATE_BOARDING = 'BOARDING';
4
- const STATE_LEAVING = 'LEAVING';
5
-
1
+ import PropTypes from "prop-types";
2
+ const STATE_BOARDING = "BOARDING";
3
+ const STATE_LEAVING = "LEAVING";
4
+ const STATE_PENDING = "PENDING";
5
+ const STATE_TIME_BASED = "TIME_BASED";
6
+ const STATE_STOP_CANCELLED = "STOP_CANCELLED";
7
+ const STATE_JOURNEY_CANCELLED = "JOURNEY_CANCELLED";
6
8
  const station = PropTypes.shape({
7
- arrivalDelay: PropTypes.number, // time in milliseconds.
8
- aimedArrivalTime: PropTypes.number, // time in milliseconds.
9
- arrivalTime: PropTypes.number, // time in milliseconds with the delay included.
9
+ arrivalDelay: PropTypes.number,
10
+ // time in milliseconds.
11
+ aimedArrivalTime: PropTypes.number,
12
+ // time in milliseconds.
13
+ arrivalTime: PropTypes.number,
14
+ // time in milliseconds with the delay included.
10
15
  cancelled: PropTypes.bool,
11
16
  coordinates: PropTypes.arrayOf(PropTypes.number),
12
- aimedDepartureTime: PropTypes.number, // time in milliseconds.
13
- departureDelay: PropTypes.number, // time in milliseconds.
14
- departureTime: PropTypes.number, // time in milliseconds with the delay included
17
+ aimedDepartureTime: PropTypes.number,
18
+ // time in milliseconds.
19
+ departureDelay: PropTypes.number,
20
+ // time in milliseconds.
21
+ departureTime: PropTypes.number,
22
+ // time in milliseconds with the delay included
15
23
  noDropOff: PropTypes.bool,
16
24
  noPickUp: PropTypes.bool,
17
25
  stationId: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
18
26
  stationName: PropTypes.string,
19
27
  wheelchairAccessible: PropTypes.bool,
20
- state: PropTypes.oneOf([null, STATE_BOARDING, STATE_LEAVING]),
28
+ state: PropTypes.oneOf([
29
+ null,
30
+ STATE_BOARDING,
31
+ STATE_LEAVING,
32
+ STATE_PENDING,
33
+ STATE_TIME_BASED,
34
+ STATE_STOP_CANCELLED,
35
+ STATE_JOURNEY_CANCELLED
36
+ ])
21
37
  });
22
-
23
38
  const lineInfos = PropTypes.shape({
24
39
  backgroundColor: PropTypes.string,
25
40
  bicyclesAllowed: PropTypes.bool,
@@ -42,12 +57,11 @@ const lineInfos = PropTypes.shape({
42
57
  shortName: PropTypes.string,
43
58
  stations: PropTypes.arrayOf(station),
44
59
  vehicleType: PropTypes.number,
45
- wheelchairAccessible: PropTypes.bool,
60
+ wheelchairAccessible: PropTypes.bool
46
61
  });
47
-
48
62
  export default {
49
63
  lineInfos,
50
64
  station,
51
65
  STATE_BOARDING,
52
- STATE_LEAVING,
66
+ STATE_LEAVING
53
67
  };
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/propTypes.js"],
4
+ "sourcesContent": ["import PropTypes from 'prop-types';\n\nconst STATE_BOARDING = 'BOARDING';\nconst STATE_LEAVING = 'LEAVING';\nconst STATE_PENDING = 'PENDING';\nconst STATE_TIME_BASED = 'TIME_BASED';\nconst STATE_STOP_CANCELLED = 'STOP_CANCELLED';\nconst STATE_JOURNEY_CANCELLED = 'JOURNEY_CANCELLED';\n\nconst station = PropTypes.shape({\n arrivalDelay: PropTypes.number, // time in milliseconds.\n aimedArrivalTime: PropTypes.number, // time in milliseconds.\n arrivalTime: PropTypes.number, // time in milliseconds with the delay included.\n cancelled: PropTypes.bool,\n coordinates: PropTypes.arrayOf(PropTypes.number),\n aimedDepartureTime: PropTypes.number, // time in milliseconds.\n departureDelay: PropTypes.number, // time in milliseconds.\n departureTime: PropTypes.number, // time in milliseconds with the delay included\n noDropOff: PropTypes.bool,\n noPickUp: PropTypes.bool,\n stationId: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n stationName: PropTypes.string,\n wheelchairAccessible: PropTypes.bool,\n state: PropTypes.oneOf([\n null,\n STATE_BOARDING,\n STATE_LEAVING,\n STATE_PENDING,\n STATE_TIME_BASED,\n STATE_STOP_CANCELLED,\n STATE_JOURNEY_CANCELLED,\n ]),\n});\n\nconst lineInfos = PropTypes.shape({\n backgroundColor: PropTypes.string,\n bicyclesAllowed: PropTypes.bool,\n color: PropTypes.string,\n destination: PropTypes.string,\n feedsId: PropTypes.number,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n license: PropTypes.string,\n licenseNote: PropTypes.string,\n licenseUrl: PropTypes.string,\n longName: PropTypes.string,\n operatingInformations: PropTypes.object,\n operator: PropTypes.string,\n operatorTimeZone: PropTypes.string,\n operatorUrl: PropTypes.string,\n publisher: PropTypes.string,\n publisherTimeZone: PropTypes.string,\n publisherUrl: PropTypes.string,\n realTime: PropTypes.number,\n shortName: PropTypes.string,\n stations: PropTypes.arrayOf(station),\n vehicleType: PropTypes.number,\n wheelchairAccessible: PropTypes.bool,\n});\n\nexport default {\n lineInfos,\n station,\n STATE_BOARDING,\n STATE_LEAVING,\n};\n"],
5
+ "mappings": "AAAA,OAAO,eAAe;AAEtB,MAAM,iBAAiB;AACvB,MAAM,gBAAgB;AACtB,MAAM,gBAAgB;AACtB,MAAM,mBAAmB;AACzB,MAAM,uBAAuB;AAC7B,MAAM,0BAA0B;AAEhC,MAAM,UAAU,UAAU,MAAM;AAAA,EAC9B,cAAc,UAAU;AAAA;AAAA,EACxB,kBAAkB,UAAU;AAAA;AAAA,EAC5B,aAAa,UAAU;AAAA;AAAA,EACvB,WAAW,UAAU;AAAA,EACrB,aAAa,UAAU,QAAQ,UAAU,MAAM;AAAA,EAC/C,oBAAoB,UAAU;AAAA;AAAA,EAC9B,gBAAgB,UAAU;AAAA;AAAA,EAC1B,eAAe,UAAU;AAAA;AAAA,EACzB,WAAW,UAAU;AAAA,EACrB,UAAU,UAAU;AAAA,EACpB,WAAW,UAAU,UAAU,CAAC,UAAU,QAAQ,UAAU,MAAM,CAAC;AAAA,EACnE,aAAa,UAAU;AAAA,EACvB,sBAAsB,UAAU;AAAA,EAChC,OAAO,UAAU,MAAM;AAAA,IACrB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACH,CAAC;AAED,MAAM,YAAY,UAAU,MAAM;AAAA,EAChC,iBAAiB,UAAU;AAAA,EAC3B,iBAAiB,UAAU;AAAA,EAC3B,OAAO,UAAU;AAAA,EACjB,aAAa,UAAU;AAAA,EACvB,SAAS,UAAU;AAAA,EACnB,IAAI,UAAU,UAAU,CAAC,UAAU,QAAQ,UAAU,MAAM,CAAC;AAAA,EAC5D,SAAS,UAAU;AAAA,EACnB,aAAa,UAAU;AAAA,EACvB,YAAY,UAAU;AAAA,EACtB,UAAU,UAAU;AAAA,EACpB,uBAAuB,UAAU;AAAA,EACjC,UAAU,UAAU;AAAA,EACpB,kBAAkB,UAAU;AAAA,EAC5B,aAAa,UAAU;AAAA,EACvB,WAAW,UAAU;AAAA,EACrB,mBAAmB,UAAU;AAAA,EAC7B,cAAc,UAAU;AAAA,EACxB,UAAU,UAAU;AAAA,EACpB,WAAW,UAAU;AAAA,EACrB,UAAU,UAAU,QAAQ,OAAO;AAAA,EACnC,aAAa,UAAU;AAAA,EACvB,sBAAsB,UAAU;AAClC,CAAC;AAED,eAAe;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;",
6
+ "names": []
7
+ }
@@ -1,3 +1,3 @@
1
1
  global.URL.createObjectURL = jest.fn(() => {
2
- return 'fooblob';
2
+ return "fooblob";
3
3
  });
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/setupTests.js"],
4
+ "sourcesContent": ["global.URL.createObjectURL = jest.fn(() => {\n return 'fooblob';\n});\n"],
5
+ "mappings": "AAAA,OAAO,IAAI,kBAAkB,KAAK,GAAG,MAAM;AACzC,SAAO;AACT,CAAC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,94 @@
1
+ import OLVectorLayer from "ol/layer/Vector";
2
+ import VectorSource from "ol/source/Vector";
3
+ import Control from "ol/control/Control";
4
+ import Draw from "ol/interaction/Draw";
5
+ import Snap from "ol/interaction/Snap";
6
+ import Pointer from "ol/interaction/Pointer";
7
+ import Select from "ol/interaction/Select";
8
+ import Modify from "ol/interaction/Modify";
9
+ import Style from "ol/style/Style";
10
+ import Fill from "ol/style/Fill";
11
+ import Stroke from "ol/style/Stroke";
12
+ import Circle from "ol/style/Circle";
13
+ import Icon from "ol/style/Icon";
14
+ import RegularShape from "ol/style/RegularShape";
15
+ import Collection from "ol/Collection";
16
+ import Feature from "ol/Feature";
17
+ import Observable, { unByKey } from "ol/Observable";
18
+ import { getCenter } from "ol/extent";
19
+ import {
20
+ Point,
21
+ LineString,
22
+ Polygon,
23
+ MultiPoint,
24
+ MultiLineString,
25
+ MultiPolygon
26
+ } from "ol/geom";
27
+ import LinearRing from "ol/geom/LinearRing";
28
+ import { fromExtent } from "ol/geom/Polygon";
29
+ import * as events from "ol/events";
30
+ import * as condition from "ol/events/condition";
31
+ import { OL3Parser } from "jsts/org/locationtech/jts/io";
32
+ import { BufferOp } from "jsts/org/locationtech/jts/operation/buffer";
33
+ import { OverlayOp } from "jsts/org/locationtech/jts/operation/overlay";
34
+ if (!window.ol) {
35
+ window.ol = {
36
+ Feature,
37
+ Collection,
38
+ layer: {
39
+ Vector: OLVectorLayer
40
+ },
41
+ source: {
42
+ Vector: VectorSource
43
+ },
44
+ interaction: {
45
+ Draw,
46
+ Snap,
47
+ Pointer,
48
+ Select,
49
+ Modify
50
+ },
51
+ control: {
52
+ Control
53
+ },
54
+ style: {
55
+ Style,
56
+ Fill,
57
+ Stroke,
58
+ Circle,
59
+ RegularShape,
60
+ Icon
61
+ },
62
+ geom: {
63
+ Point,
64
+ LineString,
65
+ Polygon,
66
+ MultiPoint,
67
+ MultiLineString,
68
+ MultiPolygon,
69
+ LinearRing
70
+ },
71
+ extent: {
72
+ getCenter
73
+ },
74
+ Observable: {
75
+ ...Observable,
76
+ unByKey
77
+ },
78
+ events: {
79
+ ...events,
80
+ condition: {
81
+ ...condition
82
+ }
83
+ }
84
+ };
85
+ window.ol.geom.Polygon.fromExtent = fromExtent;
86
+ }
87
+ if (!window.jsts) {
88
+ window.jsts = {
89
+ io: {
90
+ OL3Parser
91
+ },
92
+ operation: { buffer: { BufferOp }, overlay: { OverlayOp } }
93
+ };
94
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/GlobalsForOle.js"],
4
+ "sourcesContent": ["import OLVectorLayer from 'ol/layer/Vector';\nimport VectorSource from 'ol/source/Vector';\nimport Control from 'ol/control/Control';\nimport Draw from 'ol/interaction/Draw';\nimport Snap from 'ol/interaction/Snap';\nimport Pointer from 'ol/interaction/Pointer';\nimport Select from 'ol/interaction/Select';\nimport Modify from 'ol/interaction/Modify';\nimport Style from 'ol/style/Style';\nimport Fill from 'ol/style/Fill';\nimport Stroke from 'ol/style/Stroke';\nimport Circle from 'ol/style/Circle';\nimport Icon from 'ol/style/Icon';\nimport RegularShape from 'ol/style/RegularShape';\nimport Collection from 'ol/Collection';\nimport Feature from 'ol/Feature';\nimport Observable, { unByKey } from 'ol/Observable';\nimport { getCenter } from 'ol/extent';\nimport {\n Point,\n LineString,\n Polygon,\n MultiPoint,\n MultiLineString,\n MultiPolygon,\n} from 'ol/geom';\nimport LinearRing from 'ol/geom/LinearRing';\nimport { fromExtent } from 'ol/geom/Polygon';\nimport * as events from 'ol/events';\nimport * as condition from 'ol/events/condition';\nimport { OL3Parser } from 'jsts/org/locationtech/jts/io';\nimport { BufferOp } from 'jsts/org/locationtech/jts/operation/buffer';\nimport { OverlayOp } from 'jsts/org/locationtech/jts/operation/overlay';\n\n/**\n * This module create window.ol and window.jsts variables for ole editor.\n */\nif (!window.ol) {\n window.ol = {\n Feature,\n Collection,\n layer: {\n Vector: OLVectorLayer,\n },\n source: {\n Vector: VectorSource,\n },\n interaction: {\n Draw,\n Snap,\n Pointer,\n Select,\n Modify,\n },\n control: {\n Control,\n },\n style: {\n Style,\n Fill,\n Stroke,\n Circle,\n RegularShape,\n Icon,\n },\n geom: {\n Point,\n LineString,\n Polygon,\n MultiPoint,\n MultiLineString,\n MultiPolygon,\n LinearRing,\n },\n extent: {\n getCenter,\n },\n Observable: {\n ...Observable,\n unByKey,\n },\n events: {\n ...events,\n condition: {\n ...condition,\n },\n },\n };\n window.ol.geom.Polygon.fromExtent = fromExtent;\n}\n\nif (!window.jsts) {\n window.jsts = {\n io: {\n OL3Parser,\n },\n operation: { buffer: { BufferOp }, overlay: { OverlayOp } },\n };\n}\n"],
5
+ "mappings": "AAAA,OAAO,mBAAmB;AAC1B,OAAO,kBAAkB;AACzB,OAAO,aAAa;AACpB,OAAO,UAAU;AACjB,OAAO,UAAU;AACjB,OAAO,aAAa;AACpB,OAAO,YAAY;AACnB,OAAO,YAAY;AACnB,OAAO,WAAW;AAClB,OAAO,UAAU;AACjB,OAAO,YAAY;AACnB,OAAO,YAAY;AACnB,OAAO,UAAU;AACjB,OAAO,kBAAkB;AACzB,OAAO,gBAAgB;AACvB,OAAO,aAAa;AACpB,OAAO,cAAc,eAAe;AACpC,SAAS,iBAAiB;AAC1B;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,OAAO,gBAAgB;AACvB,SAAS,kBAAkB;AAC3B,YAAY,YAAY;AACxB,YAAY,eAAe;AAC3B,SAAS,iBAAiB;AAC1B,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAK1B,IAAI,CAAC,OAAO,IAAI;AACd,SAAO,KAAK;AAAA,IACV;AAAA,IACA;AAAA,IACA,OAAO;AAAA,MACL,QAAQ;AAAA,IACV;AAAA,IACA,QAAQ;AAAA,MACN,QAAQ;AAAA,IACV;AAAA,IACA,aAAa;AAAA,MACX;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,IACA,SAAS;AAAA,MACP;AAAA,IACF;AAAA,IACA,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,IACA,MAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN;AAAA,IACF;AAAA,IACA,YAAY;AAAA,MACV,GAAG;AAAA,MACH;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN,GAAG;AAAA,MACH,WAAW;AAAA,QACT,GAAG;AAAA,MACL;AAAA,IACF;AAAA,EACF;AACA,SAAO,GAAG,KAAK,QAAQ,aAAa;AACtC;AAEA,IAAI,CAAC,OAAO,MAAM;AAChB,SAAO,OAAO;AAAA,IACZ,IAAI;AAAA,MACF;AAAA,IACF;AAAA,IACA,WAAW,EAAE,QAAQ,EAAE,SAAS,GAAG,SAAS,EAAE,UAAU,EAAE;AAAA,EAC5D;AACF;",
6
+ "names": []
7
+ }