@artstesh/maps 6.1.16 → 8.0.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 (244) hide show
  1. package/dist/fesm2022/maps-components-src-map.mjs +433 -484
  2. package/dist/fesm2022/maps-components-src-map.mjs.map +1 -1
  3. package/dist/fesm2022/maps-components.mjs +433 -484
  4. package/dist/fesm2022/maps-components.mjs.map +1 -1
  5. package/dist/map/common/destructible.component.d.ts +1 -1
  6. package/dist/map/helpers/text-style.helper.d.ts +1 -1
  7. package/dist/map/map-plate/controls/map-control-zoom/map-control-zoom.component.d.ts +1 -1
  8. package/dist/map/map-plate/features/markers/markers.component.d.ts +1 -1
  9. package/dist/map/map-plate/features/polygons/polygons.component.d.ts +1 -1
  10. package/dist/map/map-plate/layers/cluster-layer/cluster-layer.component.d.ts +1 -1
  11. package/dist/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +1 -1
  12. package/dist/map/map-plate/layers/image-layer/image-layer.component.d.ts +1 -1
  13. package/dist/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.d.ts +1 -1
  14. package/dist/map/map-plate/layers/raster-tile/raster-tile-layer.component.d.ts +1 -1
  15. package/dist/map/map-plate/layers/tile-layer/tile-layer.component.d.ts +1 -1
  16. package/dist/map/map-plate/map-plate.component.d.ts +3 -2
  17. package/dist/map/map-plate/tooltips/tooltip/tooltip.component.d.ts +3 -2
  18. package/dist/map/messages/executors/generate-zoom-control.executor.d.ts +2 -2
  19. package/dist/map/models/map-settings.d.ts +1 -1
  20. package/dist/map/public-api.d.ts +0 -1
  21. package/dist/map/services/map-click.service.d.ts +1 -1
  22. package/dist/src/map/common/destructible.component.d.ts +1 -1
  23. package/dist/src/map/helpers/text-style.helper.d.ts +1 -1
  24. package/dist/src/map/map-plate/controls/map-control-zoom/map-control-zoom.component.d.ts +1 -1
  25. package/dist/src/map/map-plate/features/markers/markers.component.d.ts +1 -1
  26. package/dist/src/map/map-plate/features/polygons/polygons.component.d.ts +1 -1
  27. package/dist/src/map/map-plate/layers/cluster-layer/cluster-layer.component.d.ts +1 -1
  28. package/dist/src/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +1 -1
  29. package/dist/src/map/map-plate/layers/image-layer/image-layer.component.d.ts +1 -1
  30. package/dist/src/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.d.ts +1 -1
  31. package/dist/src/map/map-plate/layers/raster-tile/raster-tile-layer.component.d.ts +1 -1
  32. package/dist/src/map/map-plate/layers/tile-layer/tile-layer.component.d.ts +1 -1
  33. package/dist/src/map/map-plate/map-plate.component.d.ts +3 -2
  34. package/dist/src/map/map-plate/tooltips/tooltip/tooltip.component.d.ts +3 -2
  35. package/dist/src/map/messages/executors/generate-zoom-control.executor.d.ts +2 -2
  36. package/dist/src/map/models/map-settings.d.ts +1 -1
  37. package/dist/src/map/public-api.d.ts +0 -1
  38. package/dist/src/map/services/map-click.service.d.ts +1 -1
  39. package/package.json +26 -26
  40. package/dist/esm2022/map/common/destructible.component.mjs +0 -18
  41. package/dist/esm2022/map/common/id.generator.mjs +0 -14
  42. package/dist/esm2022/map/helpers/index.mjs +0 -5
  43. package/dist/esm2022/map/helpers/marker-style.helper.mjs +0 -55
  44. package/dist/esm2022/map/helpers/polygon-style.helper.mjs +0 -54
  45. package/dist/esm2022/map/helpers/stringify-feature.helper.mjs +0 -61
  46. package/dist/esm2022/map/helpers/text-style.helper.mjs +0 -33
  47. package/dist/esm2022/map/map-plate/controls/index.mjs +0 -3
  48. package/dist/esm2022/map/map-plate/controls/map-control-zoom/map-control-zoom.component.mjs +0 -69
  49. package/dist/esm2022/map/map-plate/controls/map-control-zoom/zoom-control.factory.mjs +0 -13
  50. package/dist/esm2022/map/map-plate/controls/map-control-zoom/zoom-control.settings.mjs +0 -116
  51. package/dist/esm2022/map/map-plate/features/index.mjs +0 -3
  52. package/dist/esm2022/map/map-plate/features/markers/markers.component.mjs +0 -52
  53. package/dist/esm2022/map/map-plate/features/polygons/polygons.component.mjs +0 -56
  54. package/dist/esm2022/map/map-plate/layers/cluster-layer/cluster-layer-factory.service.mjs +0 -59
  55. package/dist/esm2022/map/map-plate/layers/cluster-layer/cluster-layer.component.mjs +0 -60
  56. package/dist/esm2022/map/map-plate/layers/cluster-layer/cluster-layer.manager.mjs +0 -38
  57. package/dist/esm2022/map/map-plate/layers/cluster-layer/cluster-layer.settings.mjs +0 -145
  58. package/dist/esm2022/map/map-plate/layers/feature-layer/feature-layer.component.mjs +0 -52
  59. package/dist/esm2022/map/map-plate/layers/feature-layer/feature-layer.factory.mjs +0 -28
  60. package/dist/esm2022/map/map-plate/layers/feature-layer/feature-layer.settings.mjs +0 -139
  61. package/dist/esm2022/map/map-plate/layers/image-layer/image-layer-factory.mjs +0 -26
  62. package/dist/esm2022/map/map-plate/layers/image-layer/image-layer.component.mjs +0 -52
  63. package/dist/esm2022/map/map-plate/layers/image-layer/image-layer.settings.mjs +0 -134
  64. package/dist/esm2022/map/map-plate/layers/index.mjs +0 -12
  65. package/dist/esm2022/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.mjs +0 -67
  66. package/dist/esm2022/map/map-plate/layers/raster-tile/raster-tile-layer.component.mjs +0 -52
  67. package/dist/esm2022/map/map-plate/layers/raster-tile/raster-tile-layer.factory.mjs +0 -74
  68. package/dist/esm2022/map/map-plate/layers/raster-tile/raster-tile-layer.settings.mjs +0 -165
  69. package/dist/esm2022/map/map-plate/layers/tile-layer/tile-layer.component.mjs +0 -52
  70. package/dist/esm2022/map/map-plate/layers/tile-layer/tile-layer.factory.mjs +0 -68
  71. package/dist/esm2022/map/map-plate/layers/tile-layer/tile-layer.settings.mjs +0 -139
  72. package/dist/esm2022/map/map-plate/map-plate.component.mjs +0 -121
  73. package/dist/esm2022/map/map-plate/map-plate.factory.service.mjs +0 -29
  74. package/dist/esm2022/map/map-plate/tooltips/index.mjs +0 -3
  75. package/dist/esm2022/map/map-plate/tooltips/tooltip/tooltip.component.mjs +0 -81
  76. package/dist/esm2022/map/map-plate/tooltips/tooltip/tooltip.settings.mjs +0 -31
  77. package/dist/esm2022/map/map.module.mjs +0 -73
  78. package/dist/esm2022/map/messages/commands/add-control.command.mjs +0 -18
  79. package/dist/esm2022/map/messages/commands/add-image-layer.command.mjs +0 -10
  80. package/dist/esm2022/map/messages/commands/add-layer.command.mjs +0 -10
  81. package/dist/esm2022/map/messages/commands/add-raster-tile-command.mjs +0 -10
  82. package/dist/esm2022/map/messages/commands/add-tile.command.mjs +0 -10
  83. package/dist/esm2022/map/messages/commands/cancel-drawing.command.mjs +0 -8
  84. package/dist/esm2022/map/messages/commands/cancel-feature-modification.command.mjs +0 -8
  85. package/dist/esm2022/map/messages/commands/close-tooltip.command.mjs +0 -18
  86. package/dist/esm2022/map/messages/commands/draw-selection-area.command.mjs +0 -26
  87. package/dist/esm2022/map/messages/commands/fit-to-features.command.mjs +0 -12
  88. package/dist/esm2022/map/messages/commands/fit-to-polygons.command.mjs +0 -22
  89. package/dist/esm2022/map/messages/commands/modify-feature.command.mjs +0 -31
  90. package/dist/esm2022/map/messages/commands/place-layer-features.command.mjs +0 -12
  91. package/dist/esm2022/map/messages/commands/remove-control.command.mjs +0 -23
  92. package/dist/esm2022/map/messages/commands/remove-image-layer.command.mjs +0 -10
  93. package/dist/esm2022/map/messages/commands/remove-layer.command.mjs +0 -10
  94. package/dist/esm2022/map/messages/commands/remove-raster-tile.command.mjs +0 -10
  95. package/dist/esm2022/map/messages/commands/remove-tile.command.mjs +0 -10
  96. package/dist/esm2022/map/messages/commands/set-map-center.command.mjs +0 -23
  97. package/dist/esm2022/map/messages/commands/start-drawing.command.mjs +0 -25
  98. package/dist/esm2022/map/messages/events/drawing-finished.event.mjs +0 -5
  99. package/dist/esm2022/map/messages/events/map-click.event.mjs +0 -27
  100. package/dist/esm2022/map/messages/events/map-feature-hovered.event.mjs +0 -23
  101. package/dist/esm2022/map/messages/events/map-move-end.event.mjs +0 -16
  102. package/dist/esm2022/map/messages/events/map-pointer-move.event.mjs +0 -21
  103. package/dist/esm2022/map/messages/events/map-rendered.event.mjs +0 -18
  104. package/dist/esm2022/map/messages/executors/calculate-area.executor.mjs +0 -17
  105. package/dist/esm2022/map/messages/executors/filter-features-in-area.executor.mjs +0 -20
  106. package/dist/esm2022/map/messages/executors/filter-features-in-point.executor.mjs +0 -28
  107. package/dist/esm2022/map/messages/executors/generate-draw.executor.mjs +0 -14
  108. package/dist/esm2022/map/messages/executors/generate-zoom-control.executor.mjs +0 -10
  109. package/dist/esm2022/map/messages/executors/get-geometry-length.executor.mjs +0 -18
  110. package/dist/esm2022/map/messages/executors/get-map-position.executor.mjs +0 -13
  111. package/dist/esm2022/map/messages/executors/polygon-self-intersection.executor.mjs +0 -10
  112. package/dist/esm2022/map/messages/index.mjs +0 -25
  113. package/dist/esm2022/map/messages/queries/get-features-in-area.query.mjs +0 -22
  114. package/dist/esm2022/map/messages/queries/get-features-in-point.query.mjs +0 -25
  115. package/dist/esm2022/map/messages/queries/get-layer.query.mjs +0 -10
  116. package/dist/esm2022/map/models/drawing-type.enum.mjs +0 -22
  117. package/dist/esm2022/map/models/feature-format.enum.mjs +0 -15
  118. package/dist/esm2022/map/models/i-identified.mjs +0 -2
  119. package/dist/esm2022/map/models/index.mjs +0 -10
  120. package/dist/esm2022/map/models/map-control.mjs +0 -15
  121. package/dist/esm2022/map/models/map-lyrs.enum.mjs +0 -19
  122. package/dist/esm2022/map/models/map-position.model.mjs +0 -2
  123. package/dist/esm2022/map/models/map-settings.mjs +0 -124
  124. package/dist/esm2022/map/models/map.constants.mjs +0 -6
  125. package/dist/esm2022/map/models/marker-model.mjs +0 -29
  126. package/dist/esm2022/map/models/polygon.model.mjs +0 -40
  127. package/dist/esm2022/map/ol-proxy.mjs +0 -6
  128. package/dist/esm2022/map/public-api.mjs +0 -17
  129. package/dist/esm2022/map/services/controls/controls.service.mjs +0 -37
  130. package/dist/esm2022/map/services/drawing/drawing-generation.service.mjs +0 -25
  131. package/dist/esm2022/map/services/drawing/drawing.service.mjs +0 -99
  132. package/dist/esm2022/map/services/drawing/feature-modification.service.mjs +0 -105
  133. package/dist/esm2022/map/services/feature.service.mjs +0 -77
  134. package/dist/esm2022/map/services/map-click.service.mjs +0 -55
  135. package/dist/esm2022/map/services/map-feature.service.mjs +0 -75
  136. package/dist/esm2022/map/services/map-management.service.mjs +0 -143
  137. package/dist/esm2022/map/services/map-postboy.service.mjs +0 -14
  138. package/dist/esm2022/map/services/map-state.service.mjs +0 -48
  139. package/dist/esm2022/map/services/message-registrator.service.mjs +0 -105
  140. package/dist/esm2022/maps-components.mjs +0 -5
  141. package/dist/esm2022/public-api.mjs +0 -5
  142. package/dist/esm2022/src/map/common/destructible.component.mjs +0 -18
  143. package/dist/esm2022/src/map/common/id.generator.mjs +0 -14
  144. package/dist/esm2022/src/map/helpers/index.mjs +0 -5
  145. package/dist/esm2022/src/map/helpers/marker-style.helper.mjs +0 -55
  146. package/dist/esm2022/src/map/helpers/polygon-style.helper.mjs +0 -54
  147. package/dist/esm2022/src/map/helpers/stringify-feature.helper.mjs +0 -61
  148. package/dist/esm2022/src/map/helpers/text-style.helper.mjs +0 -33
  149. package/dist/esm2022/src/map/map-plate/controls/index.mjs +0 -3
  150. package/dist/esm2022/src/map/map-plate/controls/map-control-zoom/map-control-zoom.component.mjs +0 -69
  151. package/dist/esm2022/src/map/map-plate/controls/map-control-zoom/zoom-control.factory.mjs +0 -13
  152. package/dist/esm2022/src/map/map-plate/controls/map-control-zoom/zoom-control.settings.mjs +0 -116
  153. package/dist/esm2022/src/map/map-plate/features/index.mjs +0 -3
  154. package/dist/esm2022/src/map/map-plate/features/markers/markers.component.mjs +0 -52
  155. package/dist/esm2022/src/map/map-plate/features/polygons/polygons.component.mjs +0 -56
  156. package/dist/esm2022/src/map/map-plate/layers/cluster-layer/cluster-layer-factory.service.mjs +0 -59
  157. package/dist/esm2022/src/map/map-plate/layers/cluster-layer/cluster-layer.component.mjs +0 -60
  158. package/dist/esm2022/src/map/map-plate/layers/cluster-layer/cluster-layer.manager.mjs +0 -38
  159. package/dist/esm2022/src/map/map-plate/layers/cluster-layer/cluster-layer.settings.mjs +0 -145
  160. package/dist/esm2022/src/map/map-plate/layers/feature-layer/feature-layer.component.mjs +0 -52
  161. package/dist/esm2022/src/map/map-plate/layers/feature-layer/feature-layer.factory.mjs +0 -28
  162. package/dist/esm2022/src/map/map-plate/layers/feature-layer/feature-layer.settings.mjs +0 -139
  163. package/dist/esm2022/src/map/map-plate/layers/image-layer/image-layer-factory.mjs +0 -26
  164. package/dist/esm2022/src/map/map-plate/layers/image-layer/image-layer.component.mjs +0 -52
  165. package/dist/esm2022/src/map/map-plate/layers/image-layer/image-layer.settings.mjs +0 -134
  166. package/dist/esm2022/src/map/map-plate/layers/index.mjs +0 -12
  167. package/dist/esm2022/src/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.mjs +0 -67
  168. package/dist/esm2022/src/map/map-plate/layers/raster-tile/raster-tile-layer.component.mjs +0 -52
  169. package/dist/esm2022/src/map/map-plate/layers/raster-tile/raster-tile-layer.factory.mjs +0 -74
  170. package/dist/esm2022/src/map/map-plate/layers/raster-tile/raster-tile-layer.settings.mjs +0 -165
  171. package/dist/esm2022/src/map/map-plate/layers/tile-layer/tile-layer.component.mjs +0 -52
  172. package/dist/esm2022/src/map/map-plate/layers/tile-layer/tile-layer.factory.mjs +0 -68
  173. package/dist/esm2022/src/map/map-plate/layers/tile-layer/tile-layer.settings.mjs +0 -139
  174. package/dist/esm2022/src/map/map-plate/map-plate.component.mjs +0 -121
  175. package/dist/esm2022/src/map/map-plate/map-plate.factory.service.mjs +0 -29
  176. package/dist/esm2022/src/map/map-plate/tooltips/index.mjs +0 -3
  177. package/dist/esm2022/src/map/map-plate/tooltips/tooltip/tooltip.component.mjs +0 -81
  178. package/dist/esm2022/src/map/map-plate/tooltips/tooltip/tooltip.settings.mjs +0 -31
  179. package/dist/esm2022/src/map/map.module.mjs +0 -73
  180. package/dist/esm2022/src/map/maps-components-src-map.mjs +0 -5
  181. package/dist/esm2022/src/map/messages/commands/add-control.command.mjs +0 -18
  182. package/dist/esm2022/src/map/messages/commands/add-image-layer.command.mjs +0 -10
  183. package/dist/esm2022/src/map/messages/commands/add-layer.command.mjs +0 -10
  184. package/dist/esm2022/src/map/messages/commands/add-raster-tile-command.mjs +0 -10
  185. package/dist/esm2022/src/map/messages/commands/add-tile.command.mjs +0 -10
  186. package/dist/esm2022/src/map/messages/commands/cancel-drawing.command.mjs +0 -8
  187. package/dist/esm2022/src/map/messages/commands/cancel-feature-modification.command.mjs +0 -8
  188. package/dist/esm2022/src/map/messages/commands/close-tooltip.command.mjs +0 -18
  189. package/dist/esm2022/src/map/messages/commands/draw-selection-area.command.mjs +0 -26
  190. package/dist/esm2022/src/map/messages/commands/fit-to-features.command.mjs +0 -12
  191. package/dist/esm2022/src/map/messages/commands/fit-to-polygons.command.mjs +0 -22
  192. package/dist/esm2022/src/map/messages/commands/modify-feature.command.mjs +0 -31
  193. package/dist/esm2022/src/map/messages/commands/place-layer-features.command.mjs +0 -12
  194. package/dist/esm2022/src/map/messages/commands/remove-control.command.mjs +0 -23
  195. package/dist/esm2022/src/map/messages/commands/remove-image-layer.command.mjs +0 -10
  196. package/dist/esm2022/src/map/messages/commands/remove-layer.command.mjs +0 -10
  197. package/dist/esm2022/src/map/messages/commands/remove-raster-tile.command.mjs +0 -10
  198. package/dist/esm2022/src/map/messages/commands/remove-tile.command.mjs +0 -10
  199. package/dist/esm2022/src/map/messages/commands/set-map-center.command.mjs +0 -23
  200. package/dist/esm2022/src/map/messages/commands/start-drawing.command.mjs +0 -25
  201. package/dist/esm2022/src/map/messages/events/drawing-finished.event.mjs +0 -5
  202. package/dist/esm2022/src/map/messages/events/map-click.event.mjs +0 -27
  203. package/dist/esm2022/src/map/messages/events/map-feature-hovered.event.mjs +0 -23
  204. package/dist/esm2022/src/map/messages/events/map-move-end.event.mjs +0 -16
  205. package/dist/esm2022/src/map/messages/events/map-pointer-move.event.mjs +0 -21
  206. package/dist/esm2022/src/map/messages/events/map-rendered.event.mjs +0 -18
  207. package/dist/esm2022/src/map/messages/executors/calculate-area.executor.mjs +0 -17
  208. package/dist/esm2022/src/map/messages/executors/filter-features-in-area.executor.mjs +0 -20
  209. package/dist/esm2022/src/map/messages/executors/filter-features-in-point.executor.mjs +0 -28
  210. package/dist/esm2022/src/map/messages/executors/generate-draw.executor.mjs +0 -14
  211. package/dist/esm2022/src/map/messages/executors/generate-zoom-control.executor.mjs +0 -10
  212. package/dist/esm2022/src/map/messages/executors/get-geometry-length.executor.mjs +0 -18
  213. package/dist/esm2022/src/map/messages/executors/get-map-position.executor.mjs +0 -13
  214. package/dist/esm2022/src/map/messages/executors/polygon-self-intersection.executor.mjs +0 -10
  215. package/dist/esm2022/src/map/messages/index.mjs +0 -25
  216. package/dist/esm2022/src/map/messages/queries/get-features-in-area.query.mjs +0 -22
  217. package/dist/esm2022/src/map/messages/queries/get-features-in-point.query.mjs +0 -25
  218. package/dist/esm2022/src/map/messages/queries/get-layer.query.mjs +0 -10
  219. package/dist/esm2022/src/map/models/drawing-type.enum.mjs +0 -22
  220. package/dist/esm2022/src/map/models/feature-format.enum.mjs +0 -15
  221. package/dist/esm2022/src/map/models/i-identified.mjs +0 -2
  222. package/dist/esm2022/src/map/models/index.mjs +0 -10
  223. package/dist/esm2022/src/map/models/map-control.mjs +0 -15
  224. package/dist/esm2022/src/map/models/map-lyrs.enum.mjs +0 -19
  225. package/dist/esm2022/src/map/models/map-position.model.mjs +0 -2
  226. package/dist/esm2022/src/map/models/map-settings.mjs +0 -124
  227. package/dist/esm2022/src/map/models/map.constants.mjs +0 -6
  228. package/dist/esm2022/src/map/models/marker-model.mjs +0 -29
  229. package/dist/esm2022/src/map/models/polygon.model.mjs +0 -40
  230. package/dist/esm2022/src/map/ol-proxy.mjs +0 -6
  231. package/dist/esm2022/src/map/public-api.mjs +0 -17
  232. package/dist/esm2022/src/map/services/controls/controls.service.mjs +0 -37
  233. package/dist/esm2022/src/map/services/drawing/drawing-generation.service.mjs +0 -25
  234. package/dist/esm2022/src/map/services/drawing/drawing.service.mjs +0 -99
  235. package/dist/esm2022/src/map/services/drawing/feature-modification.service.mjs +0 -105
  236. package/dist/esm2022/src/map/services/feature.service.mjs +0 -77
  237. package/dist/esm2022/src/map/services/map-click.service.mjs +0 -55
  238. package/dist/esm2022/src/map/services/map-feature.service.mjs +0 -75
  239. package/dist/esm2022/src/map/services/map-management.service.mjs +0 -143
  240. package/dist/esm2022/src/map/services/map-postboy.service.mjs +0 -14
  241. package/dist/esm2022/src/map/services/map-state.service.mjs +0 -48
  242. package/dist/esm2022/src/map/services/message-registrator.service.mjs +0 -105
  243. package/dist/map/map.module.d.ts +0 -19
  244. package/dist/src/map/map.module.d.ts +0 -19
@@ -1,143 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { AddLayerCommand } from '../messages/commands/add-layer.command';
3
- import { RemoveLayerCommand } from '../messages/commands/remove-layer.command';
4
- import { FilterFeaturesInPointExecutor, GetFeaturesInPointQuery, MapRenderedEvent } from '../messages';
5
- import { PlaceLayerFeaturesCommand } from '../messages/commands/place-layer-features.command';
6
- import { AddTileCommand } from '../messages/commands/add-tile.command';
7
- import { RemoveTileCommand } from '../messages/commands/remove-tile.command';
8
- import { GetLayerQuery } from '../messages/queries/get-layer.query';
9
- import { GetFeaturesInAreaQuery } from '../messages/queries/get-features-in-area.query';
10
- import { MapConstants } from '../models/map.constants';
11
- import { FilterFeaturesInAreaExecutor } from '../messages/executors/filter-features-in-area.executor';
12
- import { Dictionary } from '@artstesh/collections';
13
- import { RemoveImageLayerCommand } from '../messages/commands/remove-image-layer.command';
14
- import { AddImageLayerCommand } from '../messages/commands/add-image-layer.command';
15
- import { AddRasterTileCommand } from '../messages/commands/add-raster-tile-command';
16
- import { RemoveRasterTileCommand } from '../messages/commands/remove-raster-tile.command';
17
- import * as i0 from "@angular/core";
18
- import * as i1 from "./map-postboy.service";
19
- export class MapManagementService {
20
- postboy;
21
- map;
22
- layers = new Dictionary();
23
- constructor(postboy) {
24
- this.postboy = postboy;
25
- }
26
- up() {
27
- this.observeMapRender();
28
- this.observeAddLayer();
29
- this.observeRemoveLayer();
30
- this.observePlaceFeatures();
31
- this.observeAddTile();
32
- this.observeLayerQuery();
33
- this.observeFeaturesInArea();
34
- this.observeFeaturesInPoint();
35
- this.observeImageLayer();
36
- }
37
- observeLayerQuery() {
38
- this.postboy.sub(GetLayerQuery).subscribe((ev) => ev.finish(this.layers.take(ev.name)));
39
- }
40
- observeAddTile() {
41
- this.postboy.sub(AddTileCommand).subscribe((c) => {
42
- if (!this.map)
43
- return;
44
- this.map.addLayer(c.layer);
45
- });
46
- this.postboy.sub(RemoveTileCommand).subscribe((c) => {
47
- if (!this.map)
48
- return;
49
- this.map.removeLayer(c.layer);
50
- });
51
- this.postboy.sub(AddRasterTileCommand).subscribe((c) => {
52
- if (!this.map)
53
- return;
54
- this.map.addLayer(c.layer);
55
- });
56
- this.postboy.sub(RemoveRasterTileCommand).subscribe((c) => {
57
- if (!this.map)
58
- return;
59
- this.map.removeLayer(c.layer);
60
- });
61
- }
62
- observeImageLayer() {
63
- this.postboy.sub(AddImageLayerCommand).subscribe((c) => {
64
- if (!this.map)
65
- return;
66
- this.map.addLayer(c.layer);
67
- });
68
- this.postboy.sub(RemoveImageLayerCommand).subscribe((c) => {
69
- if (!this.map)
70
- return;
71
- this.map.removeLayer(c.layer);
72
- });
73
- }
74
- observeMapRender() {
75
- this.postboy.sub(MapRenderedEvent).subscribe((m) => {
76
- this.map = m.map;
77
- });
78
- }
79
- observeAddLayer() {
80
- this.postboy.sub(AddLayerCommand).subscribe((c) => {
81
- if (!this.map)
82
- return;
83
- this.layers.put(c.layer.get('name'), c.layer);
84
- this.map.addLayer(c.layer);
85
- });
86
- }
87
- observePlaceFeatures() {
88
- this.postboy.sub(PlaceLayerFeaturesCommand).subscribe((c) => {
89
- if (!this.layers.has(c.layer))
90
- return;
91
- let source = this.layers.take(c.layer).getSource();
92
- if (!!source['getSource'])
93
- source = source?.getSource();
94
- source?.clear();
95
- !!c.features?.length && source?.addFeatures(c.features);
96
- });
97
- }
98
- observeRemoveLayer() {
99
- this.postboy.sub(RemoveLayerCommand).subscribe((c) => {
100
- if (!this.map)
101
- return;
102
- this.layers.rmv(c.layer.get('name'));
103
- this.map.removeLayer(c.layer);
104
- });
105
- }
106
- observeFeaturesInArea() {
107
- this.postboy.sub(GetFeaturesInAreaQuery).subscribe((qr) => {
108
- let result = new Dictionary();
109
- this.forEachLayer((l, s) => {
110
- let features = this.postboy.exec(new FilterFeaturesInAreaExecutor(qr.area, s?.getFeatures() ?? []));
111
- result.put(l.get('name'), features.map((e) => ({ id: e.getId(), ...e.get(MapConstants.FeatureInfo) })));
112
- }, qr.ignore);
113
- qr.finish(result);
114
- });
115
- }
116
- observeFeaturesInPoint() {
117
- this.postboy.sub(GetFeaturesInPointQuery).subscribe((qr) => {
118
- let result = new Dictionary();
119
- this.forEachLayer((l, s) => {
120
- let features = this.postboy.exec(new FilterFeaturesInPointExecutor(qr.lat, qr.lng, s?.getFeatures() ?? []));
121
- result.put(l.get('name'), features.map((e) => ({ id: e.getId(), ...e.get(MapConstants.FeatureInfo) })));
122
- }, qr.ignore);
123
- qr.finish(result);
124
- });
125
- }
126
- forEachLayer(action, ignore) {
127
- this.layers.forEach((l) => {
128
- let layerName = l.get('name');
129
- if (ignore.has(layerName) || layerName === MapConstants.DrawingLayerId)
130
- return;
131
- let source = l.getSource();
132
- if (!!source['getSource'])
133
- source = source?.getSource();
134
- action(l, source);
135
- });
136
- }
137
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapManagementService, deps: [{ token: i1.MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
138
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapManagementService });
139
- }
140
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapManagementService, decorators: [{
141
- type: Injectable
142
- }], ctorParameters: () => [{ type: i1.MapPostboyService }] });
143
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLW1hbmFnZW1lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL3NlcnZpY2VzL21hcC1tYW5hZ2VtZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFHL0UsT0FBTyxFQUFFLDZCQUE2QixFQUFFLHVCQUF1QixFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUc3RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFFeEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBRXRHLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMxRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNwRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNwRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpREFB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QUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2QsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxZQUFZLENBQ2xCLE1BQXNFLEVBQ3RFLE1BQW1CO1FBRW5CLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDeEIsSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM5QixJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksU0FBUyxLQUFLLFlBQVksQ0FBQyxjQUFjO2dCQUFFLE9BQU87WUFDL0UsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxDQUFFLE1BQWMsQ0FBQyxXQUFXLENBQUM7Z0JBQUUsTUFBTSxHQUFJLE1BQWMsRUFBRSxTQUFTLEVBQUUsQ0FBQztZQUMxRSxNQUFNLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3BCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0EvSFUsb0JBQW9COzJHQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBRGhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGZWF0dXJlLCBNYXAgfSBmcm9tICdvbCc7XG5pbXBvcnQgeyBNYXBQb3N0Ym95U2VydmljZSB9IGZyb20gJy4vbWFwLXBvc3Rib3kuc2VydmljZSc7XG5pbXBvcnQgeyBBZGRMYXllckNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9hZGQtbGF5ZXIuY29tbWFuZCc7XG5pbXBvcnQgeyBSZW1vdmVMYXllckNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9yZW1vdmUtbGF5ZXIuY29tbWFuZCc7XG5pbXBvcnQgeyBWZWN0b3IgYXMgTGF5ZXIgfSBmcm9tICdvbC9sYXllcic7XG5pbXBvcnQgVmVjdG9yU291cmNlIGZyb20gJ29sL3NvdXJjZS9WZWN0b3InO1xuaW1wb3J0IHsgRmlsdGVyRmVhdHVyZXNJblBvaW50RXhlY3V0b3IsIEdldEZlYXR1cmVzSW5Qb2ludFF1ZXJ5LCBNYXBSZW5kZXJlZEV2ZW50IH0gZnJvbSAnLi4vbWVzc2FnZXMnO1xuaW1wb3J0IHsgUGxhY2VMYXllckZlYXR1cmVzQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3BsYWNlLWxheWVyLWZlYXR1cmVzLmNvbW1hbmQnO1xuaW1wb3J0IHsgQWRkVGlsZUNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9hZGQtdGlsZS5jb21tYW5kJztcbmltcG9ydCB7IFJlbW92ZVRpbGVDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvcmVtb3ZlLXRpbGUuY29tbWFuZCc7XG5pbXBvcnQgeyBJUG9zdGJveURlcGVuZGluZ1NlcnZpY2UgfSBmcm9tICdAYXJ0c3Rlc2gvcG9zdGJveSc7XG5pbXBvcnQgQ2x1c3RlciBmcm9tICdvbC9zb3VyY2UvQ2x1c3Rlcic7XG5pbXBvcnQgeyBHZXRMYXllclF1ZXJ5IH0gZnJvbSAnLi4vbWVzc2FnZXMvcXVlcmllcy9nZXQtbGF5ZXIucXVlcnknO1xuaW1wb3J0IHsgR2V0RmVhdHVyZXNJbkFyZWFRdWVyeSB9IGZyb20gJy4uL21lc3NhZ2VzL3F1ZXJpZXMvZ2V0LWZlYXR1cmVzLWluLWFyZWEucXVlcnknO1xuaW1wb3J0IHsgSUlkZW50aWZpZWQgfSBmcm9tICcuLi9tb2RlbHMvaS1pZGVudGlmaWVkJztcbmltcG9ydCB7IE1hcENvbnN0YW50cyB9IGZyb20gJy4uL21vZGVscy9tYXAuY29uc3RhbnRzJztcbmltcG9ydCB7IEZpbHRlckZlYXR1cmVzSW5BcmVhRXhlY3V0b3IgfSBmcm9tICcuLi9tZXNzYWdlcy9leGVjdXRvcnMvZmlsdGVyLWZlYXR1cmVzLWluLWFyZWEuZXhlY3V0b3InO1xuaW1wb3J0IHsgR2VvbWV0cnkgfSBmcm9tICdvbC9nZW9tJztcbmltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tICdAYXJ0c3Rlc2gvY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgUmVtb3ZlSW1hZ2VMYXllckNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9yZW1vdmUtaW1hZ2UtbGF5ZXIuY29tbWFuZCc7XG5pbXBvcnQgeyBBZGRJbWFnZUxheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC1pbWFnZS1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IEFkZFJhc3RlclRpbGVDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvYWRkLXJhc3Rlci10aWxlLWNvbW1hbmQnO1xuaW1wb3J0IHsgUmVtb3ZlUmFzdGVyVGlsZUNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9yZW1vdmUtcmFzdGVyLXRpbGUuY29tbWFuZCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNYXBNYW5hZ2VtZW50U2VydmljZSBpbXBsZW1lbnRzIElQb3N0Ym95RGVwZW5kaW5nU2VydmljZSB7XG4gIHByaXZhdGUgbWFwPzogTWFwO1xuICBwcml2YXRlIGxheWVycyA9IG5ldyBEaWN0aW9uYXJ5PExheWVyPFZlY3RvclNvdXJjZTxhbnk+IHwgQ2x1c3Rlcj4+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwb3N0Ym95OiBNYXBQb3N0Ym95U2VydmljZSkge31cblxuICB1cCgpOiB2b2lkIHtcbiAgICB0aGlzLm9ic2VydmVNYXBSZW5kZXIoKTtcbiAgICB0aGlzLm9ic2VydmVBZGRMYXllcigpO1xuICAgIHRoaXMub2JzZXJ2ZVJlbW92ZUxheWVyKCk7XG4gICAgdGhpcy5vYnNlcnZlUGxhY2VGZWF0dXJlcygpO1xuICAgIHRoaXMub2JzZXJ2ZUFkZFRpbGUoKTtcbiAgICB0aGlzLm9ic2VydmVMYXllclF1ZXJ5KCk7XG4gICAgdGhpcy5vYnNlcnZlRmVhdHVyZXNJbkFyZWEoKTtcbiAgICB0aGlzLm9ic2VydmVGZWF0dXJlc0luUG9pbnQoKTtcbiAgICB0aGlzLm9ic2VydmVJbWFnZUxheWVyKCk7XG4gIH1cblxuICBwcml2YXRlIG9ic2VydmVMYXllclF1ZXJ5KCkge1xuICAgIHRoaXMucG9zdGJveS5zdWIoR2V0TGF5ZXJRdWVyeSkuc3Vic2NyaWJlKChldikgPT4gZXYuZmluaXNoKHRoaXMubGF5ZXJzLnRha2UoZXYubmFtZSkpKTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZUFkZFRpbGUoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YihBZGRUaWxlQ29tbWFuZCkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICBpZiAoIXRoaXMubWFwKSByZXR1cm47XG4gICAgICB0aGlzLm1hcC5hZGRMYXllcihjLmxheWVyKTtcbiAgICB9KTtcbiAgICB0aGlzLnBvc3Rib3kuc3ViKFJlbW92ZVRpbGVDb21tYW5kKS5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgIGlmICghdGhpcy5tYXApIHJldHVybjtcbiAgICAgIHRoaXMubWFwLnJlbW92ZUxheWVyKGMubGF5ZXIpO1xuICAgIH0pO1xuICAgIHRoaXMucG9zdGJveS5zdWIoQWRkUmFzdGVyVGlsZUNvbW1hbmQpLnN1YnNjcmliZSgoYykgPT4ge1xuICAgICAgaWYgKCF0aGlzLm1hcCkgcmV0dXJuO1xuICAgICAgdGhpcy5tYXAuYWRkTGF5ZXIoYy5sYXllcik7XG4gICAgfSk7XG4gICAgdGhpcy5wb3N0Ym95LnN1YihSZW1vdmVSYXN0ZXJUaWxlQ29tbWFuZCkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICBpZiAoIXRoaXMubWFwKSByZXR1cm47XG4gICAgICB0aGlzLm1hcC5yZW1vdmVMYXllcihjLmxheWVyKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZUltYWdlTGF5ZXIoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YihBZGRJbWFnZUxheWVyQ29tbWFuZCkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICBpZiAoIXRoaXMubWFwKSByZXR1cm47XG4gICAgICB0aGlzLm1hcC5hZGRMYXllcihjLmxheWVyKTtcbiAgICB9KTtcbiAgICB0aGlzLnBvc3Rib3kuc3ViKFJlbW92ZUltYWdlTGF5ZXJDb21tYW5kKS5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgIGlmICghdGhpcy5tYXApIHJldHVybjtcbiAgICAgIHRoaXMubWFwLnJlbW92ZUxheWVyKGMubGF5ZXIpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvYnNlcnZlTWFwUmVuZGVyKCkge1xuICAgIHRoaXMucG9zdGJveS5zdWIoTWFwUmVuZGVyZWRFdmVudCkuc3Vic2NyaWJlKChtKSA9PiB7XG4gICAgICB0aGlzLm1hcCA9IG0ubWFwO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvYnNlcnZlQWRkTGF5ZXIoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YihBZGRMYXllckNvbW1hbmQpLnN1YnNjcmliZSgoYykgPT4ge1xuICAgICAgaWYgKCF0aGlzLm1hcCkgcmV0dXJuO1xuICAgICAgdGhpcy5sYXllcnMucHV0KGMubGF5ZXIuZ2V0KCduYW1lJyksIGMubGF5ZXIpO1xuICAgICAgdGhpcy5tYXAuYWRkTGF5ZXIoYy5sYXllcik7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9ic2VydmVQbGFjZUZlYXR1cmVzKCkge1xuICAgIHRoaXMucG9zdGJveS5zdWIoUGxhY2VMYXllckZlYXR1cmVzQ29tbWFuZCkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICBpZiAoIXRoaXMubGF5ZXJzLmhhcyhjLmxheWVyKSkgcmV0dXJuO1xuICAgICAgbGV0IHNvdXJjZSA9IHRoaXMubGF5ZXJzLnRha2UoYy5sYXllcikhLmdldFNvdXJjZSgpO1xuICAgICAgaWYgKCEhKHNvdXJjZSBhcyBhbnkpWydnZXRTb3VyY2UnXSkgc291cmNlID0gKHNvdXJjZSBhcyBhbnkpPy5nZXRTb3VyY2UoKTtcbiAgICAgIHNvdXJjZT8uY2xlYXIoKTtcbiAgICAgICEhYy5mZWF0dXJlcz8ubGVuZ3RoICYmIHNvdXJjZT8uYWRkRmVhdHVyZXMoYy5mZWF0dXJlcyk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9ic2VydmVSZW1vdmVMYXllcigpIHtcbiAgICB0aGlzLnBvc3Rib3kuc3ViKFJlbW92ZUxheWVyQ29tbWFuZCkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICBpZiAoIXRoaXMubWFwKSByZXR1cm47XG4gICAgICB0aGlzLmxheWVycy5ybXYoYy5sYXllci5nZXQoJ25hbWUnKSk7XG4gICAgICB0aGlzLm1hcC5yZW1vdmVMYXllcihjLmxheWVyKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZUZlYXR1cmVzSW5BcmVhKCkge1xuICAgIHRoaXMucG9zdGJveS5zdWIoR2V0RmVhdHVyZXNJbkFyZWFRdWVyeSkuc3Vic2NyaWJlKChxcikgPT4ge1xuICAgICAgbGV0IHJlc3VsdCA9IG5ldyBEaWN0aW9uYXJ5PElJZGVudGlmaWVkW10+KCk7XG4gICAgICB0aGlzLmZvckVhY2hMYXllcigobCwgcykgPT4ge1xuICAgICAgICBsZXQgZmVhdHVyZXMgPSB0aGlzLnBvc3Rib3kuZXhlYzxGZWF0dXJlPEdlb21ldHJ5PltdPihcbiAgICAgICAgICBuZXcgRmlsdGVyRmVhdHVyZXNJbkFyZWFFeGVjdXRvcihxci5hcmVhLCBzPy5nZXRGZWF0dXJlcygpID8/IFtdKSxcbiAgICAgICAgKTtcbiAgICAgICAgcmVzdWx0LnB1dChcbiAgICAgICAgICBsLmdldCgnbmFtZScpLFxuICAgICAgICAgIGZlYXR1cmVzLm1hcCgoZSkgPT4gKHsgaWQ6IGUuZ2V0SWQoKSwgLi4uZS5nZXQoTWFwQ29uc3RhbnRzLkZlYXR1cmVJbmZvKSB9KSksXG4gICAgICAgICk7XG4gICAgICB9LCBxci5pZ25vcmUpO1xuICAgICAgcXIuZmluaXNoKHJlc3VsdCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9ic2VydmVGZWF0dXJlc0luUG9pbnQoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YihHZXRGZWF0dXJlc0luUG9pbnRRdWVyeSkuc3Vic2NyaWJlKChxcikgPT4ge1xuICAgICAgbGV0IHJlc3VsdCA9IG5ldyBEaWN0aW9uYXJ5PElJZGVudGlmaWVkW10+KCk7XG4gICAgICB0aGlzLmZvckVhY2hMYXllcigobCwgcykgPT4ge1xuICAgICAgICBsZXQgZmVhdHVyZXMgPSB0aGlzLnBvc3Rib3kuZXhlYzxGZWF0dXJlPEdlb21ldHJ5PltdPihcbiAgICAgICAgICBuZXcgRmlsdGVyRmVhdHVyZXNJblBvaW50RXhlY3V0b3IocXIubGF0LCBxci5sbmcsIHM/LmdldEZlYXR1cmVzKCkgPz8gW10pLFxuICAgICAgICApO1xuICAgICAgICByZXN1bHQucHV0KFxuICAgICAgICAgIGwuZ2V0KCduYW1lJyksXG4gICAgICAgICAgZmVhdHVyZXMubWFwKChlKSA9PiAoeyBpZDogZS5nZXRJZCgpLCAuLi5lLmdldChNYXBDb25zdGFudHMuRmVhdHVyZUluZm8pIH0pKSxcbiAgICAgICAgKTtcbiAgICAgIH0sIHFyLmlnbm9yZSk7XG4gICAgICBxci5maW5pc2gocmVzdWx0KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZm9yRWFjaExheWVyKFxuICAgIGFjdGlvbjogKGw6IExheWVyPGFueT4sIHM6IFZlY3RvclNvdXJjZTxhbnk+IHwgQ2x1c3RlciB8IG51bGwpID0+IHZvaWQsXG4gICAgaWdub3JlOiBTZXQ8c3RyaW5nPixcbiAgKTogdm9pZCB7XG4gICAgdGhpcy5sYXllcnMuZm9yRWFjaCgobCkgPT4ge1xuICAgICAgbGV0IGxheWVyTmFtZSA9IGwuZ2V0KCduYW1lJyk7XG4gICAgICBpZiAoaWdub3JlLmhhcyhsYXllck5hbWUpIHx8IGxheWVyTmFtZSA9PT0gTWFwQ29uc3RhbnRzLkRyYXdpbmdMYXllcklkKSByZXR1cm47XG4gICAgICBsZXQgc291cmNlID0gbC5nZXRTb3VyY2UoKTtcbiAgICAgIGlmICghIShzb3VyY2UgYXMgYW55KVsnZ2V0U291cmNlJ10pIHNvdXJjZSA9IChzb3VyY2UgYXMgYW55KT8uZ2V0U291cmNlKCk7XG4gICAgICBhY3Rpb24obCwgc291cmNlKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -1,14 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { PostboyService } from '@artstesh/postboy';
3
- import * as i0 from "@angular/core";
4
- export class MapPostboyService extends PostboyService {
5
- constructor() {
6
- super();
7
- }
8
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapPostboyService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
9
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapPostboyService });
10
- }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapPostboyService, decorators: [{
12
- type: Injectable
13
- }], ctorParameters: () => [] });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXBvc3Rib3kuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL3NlcnZpY2VzL21hcC1wb3N0Ym95LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBTW5ELE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxjQUFjO0lBQ25EO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO3VHQUhVLGlCQUFpQjsyR0FBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUG9zdGJveVNlcnZpY2UgfSBmcm9tICdAYXJ0c3Rlc2gvcG9zdGJveSc7XG5pbXBvcnQgeyBTdGFydERyYXdpbmdDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvc3RhcnQtZHJhd2luZy5jb21tYW5kJztcbmltcG9ydCB7IE1hcENsaWNrRXZlbnQgfSBmcm9tICcuLi9tZXNzYWdlcyc7XG5pbXBvcnQgeyBEcmF3aW5nRmluaXNoZWRFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzL2V2ZW50cy9kcmF3aW5nLWZpbmlzaGVkLmV2ZW50JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1hcFBvc3Rib3lTZXJ2aWNlIGV4dGVuZHMgUG9zdGJveVNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG59XG4iXX0=
@@ -1,48 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { MapMoveEndEvent, MapRenderedEvent, SetMapCenterCommand } from '../messages';
3
- import { first } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "./map-postboy.service";
6
- export class MapStateService {
7
- postboy;
8
- map;
9
- constructor(postboy) {
10
- this.postboy = postboy;
11
- }
12
- up() {
13
- this.observeMapRendering();
14
- this.observeCenter();
15
- }
16
- getMapPosition() {
17
- if (!this.map)
18
- return null;
19
- let [longitude, latitude] = this.map.getView().getCenter();
20
- const zoom = Math.floor(this.map.getView().getZoom());
21
- const extent = this.map.getView().calculateExtent();
22
- return { longitude, latitude, zoom, extent };
23
- }
24
- observeMapRendering() {
25
- this.postboy
26
- .sub(MapRenderedEvent)
27
- .pipe(first())
28
- .subscribe((ev) => {
29
- this.map = ev.map;
30
- this.map?.on('moveend', () => {
31
- this.postboy.fire(new MapMoveEndEvent(this.getMapPosition()));
32
- });
33
- });
34
- }
35
- observeCenter() {
36
- this.postboy.sub(SetMapCenterCommand).subscribe((c) => {
37
- this.map?.getView().setCenter([c.lng, c.lat]);
38
- if (c.zoom)
39
- this.map?.getView().setZoom(c.zoom);
40
- });
41
- }
42
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapStateService, deps: [{ token: i1.MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
43
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapStateService });
44
- }
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapStateService, decorators: [{
46
- type: Injectable
47
- }], ctorParameters: () => [{ type: i1.MapPostboyService }] });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXN0YXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9zZXJ2aWNlcy9tYXAtc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHckYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFJdkMsTUFBTSxPQUFPLGVBQWU7SUFHTjtJQUZaLEdBQUcsQ0FBTztJQUVsQixZQUFvQixPQUEwQjtRQUExQixZQUFPLEdBQVAsT0FBTyxDQUFtQjtJQUFHLENBQUM7SUFFbEQsRUFBRTtRQUNBLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sY0FBYztRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUc7WUFBRSxPQUFPLElBQUksQ0FBQztRQUMzQixJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUMsU0FBUyxFQUFHLENBQUM7UUFDNUQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRyxDQUFDLENBQUM7UUFDdkQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsT0FBTzthQUNULEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQzthQUNyQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDYixTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUNoQixJQUFJLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUM7WUFDbEIsSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRTtnQkFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNoRSxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLGFBQWE7UUFDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNwRCxJQUFJLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDOUMsSUFBSSxDQUFDLENBQUMsSUFBSTtnQkFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3VHQW5DVSxlQUFlOzJHQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBRDNCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXAgfSBmcm9tICdvbCc7XG5pbXBvcnQgeyBNYXBNb3ZlRW5kRXZlbnQsIE1hcFJlbmRlcmVkRXZlbnQsIFNldE1hcENlbnRlckNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcyc7XG5pbXBvcnQgeyBNYXBQb3N0Ym95U2VydmljZSB9IGZyb20gJy4vbWFwLXBvc3Rib3kuc2VydmljZSc7XG5pbXBvcnQgeyBJUG9zdGJveURlcGVuZGluZ1NlcnZpY2UgfSBmcm9tICdAYXJ0c3Rlc2gvcG9zdGJveSc7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE1hcFBvc2l0aW9uIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1hcFN0YXRlU2VydmljZSBpbXBsZW1lbnRzIElQb3N0Ym95RGVwZW5kaW5nU2VydmljZSB7XG4gIHByaXZhdGUgbWFwPzogTWFwO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcG9zdGJveTogTWFwUG9zdGJveVNlcnZpY2UpIHt9XG5cbiAgdXAoKTogdm9pZCB7XG4gICAgdGhpcy5vYnNlcnZlTWFwUmVuZGVyaW5nKCk7XG4gICAgdGhpcy5vYnNlcnZlQ2VudGVyKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0TWFwUG9zaXRpb24oKTogTWFwUG9zaXRpb24gfCBudWxsIHtcbiAgICBpZiAoIXRoaXMubWFwKSByZXR1cm4gbnVsbDtcbiAgICBsZXQgW2xvbmdpdHVkZSwgbGF0aXR1ZGVdID0gdGhpcy5tYXAuZ2V0VmlldygpLmdldENlbnRlcigpITtcbiAgICBjb25zdCB6b29tID0gTWF0aC5mbG9vcih0aGlzLm1hcC5nZXRWaWV3KCkuZ2V0Wm9vbSgpISk7XG4gICAgY29uc3QgZXh0ZW50ID0gdGhpcy5tYXAuZ2V0VmlldygpLmNhbGN1bGF0ZUV4dGVudCgpO1xuICAgIHJldHVybiB7IGxvbmdpdHVkZSwgbGF0aXR1ZGUsIHpvb20sIGV4dGVudCB9O1xuICB9XG5cbiAgcHJpdmF0ZSBvYnNlcnZlTWFwUmVuZGVyaW5nKCkge1xuICAgIHRoaXMucG9zdGJveVxuICAgICAgLnN1YihNYXBSZW5kZXJlZEV2ZW50KVxuICAgICAgLnBpcGUoZmlyc3QoKSlcbiAgICAgIC5zdWJzY3JpYmUoKGV2KSA9PiB7XG4gICAgICAgIHRoaXMubWFwID0gZXYubWFwO1xuICAgICAgICB0aGlzLm1hcD8ub24oJ21vdmVlbmQnLCAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5wb3N0Ym95LmZpcmUobmV3IE1hcE1vdmVFbmRFdmVudCh0aGlzLmdldE1hcFBvc2l0aW9uKCkpKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZUNlbnRlcigpIHtcbiAgICB0aGlzLnBvc3Rib3kuc3ViKFNldE1hcENlbnRlckNvbW1hbmQpLnN1YnNjcmliZSgoYykgPT4ge1xuICAgICAgdGhpcy5tYXA/LmdldFZpZXcoKS5zZXRDZW50ZXIoW2MubG5nLCBjLmxhdF0pO1xuICAgICAgaWYgKGMuem9vbSkgdGhpcy5tYXA/LmdldFZpZXcoKS5zZXRab29tKGMuem9vbSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,105 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { FitToPolygonsCommand, GetFeaturesInPointQuery, MapPointerMoveEvent, MapRenderedEvent, PolygonSelfIntersectionExecutor, } from '../messages';
3
- import { AddLayerCommand } from '../messages/commands/add-layer.command';
4
- import { PlaceLayerFeaturesCommand } from '../messages/commands/place-layer-features.command';
5
- import { RemoveLayerCommand } from '../messages/commands/remove-layer.command';
6
- import { AddTileCommand } from '../messages/commands/add-tile.command';
7
- import { RemoveTileCommand } from '../messages/commands/remove-tile.command';
8
- import { PostboyAbstractRegistrator } from '@artstesh/postboy';
9
- import { MapClickEvent } from '../messages/events/map-click.event';
10
- import { CloseTooltipCommand } from '../messages/commands/close-tooltip.command';
11
- import { FitToFeaturesCommand } from '../messages/commands/fit-to-features.command';
12
- import { MapMoveEndEvent } from '../messages/events/map-move-end.event';
13
- import { CancelDrawingCommand } from '../messages/commands/cancel-drawing.command';
14
- import { StartDrawingCommand } from '../messages/commands/start-drawing.command';
15
- import { GetLayerQuery } from '../messages/queries/get-layer.query';
16
- import { DrawingFinishedEvent } from '../messages/events/drawing-finished.event';
17
- import { DrawingGenerationService } from './drawing/drawing-generation.service';
18
- import { FeatureService } from './feature.service';
19
- import { GetFeaturesInAreaQuery } from '../messages/queries/get-features-in-area.query';
20
- import { DrawSelectionAreaCommand } from '../messages/commands/draw-selection-area.command';
21
- import { FilterFeaturesInAreaExecutor } from '../messages/executors/filter-features-in-area.executor';
22
- import { GenerateDrawExecutor } from '../messages/executors/generate-draw.executor';
23
- import { CancelFeatureModificationCommand } from '../messages/commands/cancel-feature-modification.command';
24
- import { ModifyFeatureCommand } from '../messages/commands/modify-feature.command';
25
- import { GenerateZoomControlExecutor } from '../messages/executors/generate-zoom-control.executor';
26
- import { ZoomControlFactory } from '../map-plate/controls/map-control-zoom/zoom-control.factory';
27
- import { RemoveControlCommand } from '../messages/commands/remove-control.command';
28
- import { AddControlCommand } from '../messages/commands/add-control.command';
29
- import { SetMapCenterCommand } from '../messages/commands/set-map-center.command';
30
- import { CalculateAreaExecutor } from '../messages/executors/calculate-area.executor';
31
- import { GetMapPositionExecutor } from '../messages/executors/get-map-position.executor';
32
- import { FilterFeaturesInPointExecutor } from '../messages/executors/filter-features-in-point.executor';
33
- import { Subject } from 'rxjs';
34
- import { debounceTime } from 'rxjs/operators';
35
- import { MapFeatureHoveredEvent } from '../messages/events/map-feature-hovered.event';
36
- import { AddImageLayerCommand } from '../messages/commands/add-image-layer.command';
37
- import { RemoveImageLayerCommand } from '../messages/commands/remove-image-layer.command';
38
- import { AddRasterTileCommand } from '../messages/commands/add-raster-tile-command';
39
- import { RemoveRasterTileCommand } from '../messages/commands/remove-raster-tile.command';
40
- import { GetGeometryLengthExecutor, GetGeometryLengthExecutorHandler, } from '../messages/executors/get-geometry-length.executor';
41
- import * as i0 from "@angular/core";
42
- import * as i1 from "./map-postboy.service";
43
- import * as i2 from "./map-management.service";
44
- import * as i3 from "./map-state.service";
45
- import * as i4 from "./map-feature.service";
46
- import * as i5 from "./map-click.service";
47
- import * as i6 from "./drawing/drawing.service";
48
- import * as i7 from "./drawing/feature-modification.service";
49
- import * as i8 from "./controls/controls.service";
50
- export class MessageRegistratorService extends PostboyAbstractRegistrator {
51
- state;
52
- constructor(service, management, state, mapFeature, interaction, drawing, featureModification, controls) {
53
- super(service);
54
- this.state = state;
55
- this.registerServices([management, state, interaction, mapFeature, drawing, featureModification, controls]);
56
- }
57
- _up() {
58
- this.recordReplay(MapRenderedEvent);
59
- this.recordReplay(PlaceLayerFeaturesCommand);
60
- this.recordReplay(RemoveControlCommand);
61
- this.recordReplay(AddControlCommand);
62
- this.recordReplay(SetMapCenterCommand);
63
- this.recordSubject(AddLayerCommand);
64
- this.recordSubject(RemoveLayerCommand);
65
- this.recordSubject(AddTileCommand);
66
- this.recordSubject(AddRasterTileCommand);
67
- this.recordSubject(RemoveRasterTileCommand);
68
- this.recordSubject(RemoveImageLayerCommand);
69
- this.recordSubject(AddImageLayerCommand);
70
- this.recordSubject(RemoveTileCommand);
71
- this.recordSubject(MapClickEvent);
72
- this.recordSubject(CloseTooltipCommand);
73
- this.recordSubject(FitToFeaturesCommand);
74
- this.recordSubject(FitToPolygonsCommand);
75
- this.recordSubject(MapMoveEndEvent);
76
- this.recordSubject(CancelDrawingCommand);
77
- this.recordSubject(StartDrawingCommand);
78
- this.recordSubject(GetLayerQuery);
79
- this.recordSubject(MapFeatureHoveredEvent);
80
- this.recordWithPipe(MapPointerMoveEvent, new Subject(), (s) => s.pipe(debounceTime(150)));
81
- this.recordSubject(DrawingFinishedEvent);
82
- this.recordSubject(GetFeaturesInAreaQuery);
83
- this.recordSubject(DrawSelectionAreaCommand);
84
- this.recordSubject(CancelFeatureModificationCommand);
85
- this.recordSubject(ModifyFeatureCommand);
86
- this.recordSubject(GetFeaturesInPointQuery);
87
- this.setExecutors();
88
- }
89
- setExecutors() {
90
- this.recordExecutor(FilterFeaturesInAreaExecutor, (e) => FeatureService.filterFeaturesInArea(e));
91
- this.recordExecutor(FilterFeaturesInPointExecutor, (e) => FeatureService.filterFeaturesInPoint(e));
92
- this.recordExecutor(CalculateAreaExecutor, (e) => FeatureService.calculateArea(e.polygon?.feature?.getGeometry()));
93
- this.recordExecutor(PolygonSelfIntersectionExecutor, (e) => FeatureService.polygonSelfIntersects(e.polygon.feature));
94
- this.recordExecutor(GenerateDrawExecutor, (e) => DrawingGenerationService.getDraw(e));
95
- this.recordExecutor(GenerateZoomControlExecutor, (e) => ZoomControlFactory.build(e.settings));
96
- this.recordExecutor(GetMapPositionExecutor, () => this.state.getMapPosition());
97
- this.recordExecutor(GetGeometryLengthExecutor, (e) => new GetGeometryLengthExecutorHandler().handle(e));
98
- }
99
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MessageRegistratorService, deps: [{ token: i1.MapPostboyService }, { token: i2.MapManagementService }, { token: i3.MapStateService }, { token: i4.MapFeatureService }, { token: i5.MapClickService }, { token: i6.DrawingService }, { token: i7.FeatureModificationService }, { token: i8.ControlsService }], target: i0.ɵɵFactoryTarget.Injectable });
100
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MessageRegistratorService });
101
- }
102
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MessageRegistratorService, decorators: [{
103
- type: Injectable
104
- }], ctorParameters: () => [{ type: i1.MapPostboyService }, { type: i2.MapManagementService }, { type: i3.MapStateService }, { type: i4.MapFeatureService }, { type: i5.MapClickService }, { type: i6.DrawingService }, { type: i7.FeatureModificationService }, { type: i8.ControlsService }] });
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS1yZWdpc3RyYXRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvc2VydmljZXMvbWVzc2FnZS1yZWdpc3RyYXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUNMLG9CQUFvQixFQUNwQix1QkFBdUIsRUFDdkIsbUJBQW1CLEVBQ25CLGdCQUFnQixFQUNoQiwrQkFBK0IsR0FDaEMsTUFBTSxhQUFhLENBQUM7QUFDckIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUkvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFFakYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDcEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRWpGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQ0FBcUMsQ0FB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RSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztRQUMvRSxJQUFJLENBQUMsY0FBYyxDQUFDLHlCQUF5QixFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLGdDQUFnQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDMUcsQ0FBQzt1R0EzRFUseUJBQXlCOzJHQUF6Qix5QkFBeUI7OzJGQUF6Qix5QkFBeUI7a0JBRHJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXBQb3N0Ym95U2VydmljZSB9IGZyb20gJy4vbWFwLXBvc3Rib3kuc2VydmljZSc7XG5pbXBvcnQge1xuICBGaXRUb1BvbHlnb25zQ29tbWFuZCxcbiAgR2V0RmVhdHVyZXNJblBvaW50UXVlcnksXG4gIE1hcFBvaW50ZXJNb3ZlRXZlbnQsXG4gIE1hcFJlbmRlcmVkRXZlbnQsXG4gIFBvbHlnb25TZWxmSW50ZXJzZWN0aW9uRXhlY3V0b3IsXG59IGZyb20gJy4uL21lc3NhZ2VzJztcbmltcG9ydCB7IEFkZExheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IFBsYWNlTGF5ZXJGZWF0dXJlc0NvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9wbGFjZS1sYXllci1mZWF0dXJlcy5jb21tYW5kJztcbmltcG9ydCB7IFJlbW92ZUxheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3JlbW92ZS1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IEFkZFRpbGVDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvYWRkLXRpbGUuY29tbWFuZCc7XG5pbXBvcnQgeyBSZW1vdmVUaWxlQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3JlbW92ZS10aWxlLmNvbW1hbmQnO1xuaW1wb3J0IHsgUG9zdGJveUFic3RyYWN0UmVnaXN0cmF0b3IgfSBmcm9tICdAYXJ0c3Rlc2gvcG9zdGJveSc7XG5pbXBvcnQgeyBNYXBNYW5hZ2VtZW50U2VydmljZSB9IGZyb20gJy4vbWFwLW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBNYXBTdGF0ZVNlcnZpY2UgfSBmcm9tICcuL21hcC1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1hcENsaWNrU2VydmljZSB9IGZyb20gJy4vbWFwLWNsaWNrLnNlcnZpY2UnO1xuaW1wb3J0IHsgTWFwQ2xpY2tFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzL2V2ZW50cy9tYXAtY2xpY2suZXZlbnQnO1xuaW1wb3J0IHsgQ2xvc2VUb29sdGlwQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2Nsb3NlLXRvb2x0aXAuY29tbWFuZCc7XG5pbXBvcnQgeyBNYXBGZWF0dXJlU2VydmljZSB9IGZyb20gJy4vbWFwLWZlYXR1cmUuc2VydmljZSc7XG5pbXBvcnQgeyBGaXRUb0ZlYXR1cmVzQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2ZpdC10by1mZWF0dXJlcy5jb21tYW5kJztcbmltcG9ydCB7IE1hcE1vdmVFbmRFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzL2V2ZW50cy9tYXAtbW92ZS1lbmQuZXZlbnQnO1xuaW1wb3J0IHsgQ2FuY2VsRHJhd2luZ0NvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9jYW5jZWwtZHJhd2luZy5jb21tYW5kJztcbmltcG9ydCB7IFN0YXJ0RHJhd2luZ0NvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9zdGFydC1kcmF3aW5nLmNvbW1hbmQnO1xuaW1wb3J0IHsgRHJhd2luZ1NlcnZpY2UgfSBmcm9tICcuL2RyYXdpbmcvZHJhd2luZy5zZXJ2aWNlJztcbmltcG9ydCB7IEdldExheWVyUXVlcnkgfSBmcm9tICcuLi9tZXNzYWdlcy9xdWVyaWVzL2dldC1sYXllci5xdWVyeSc7XG5pbXBvcnQgeyBEcmF3aW5nRmluaXNoZWRFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzL2V2ZW50cy9kcmF3aW5nLWZpbmlzaGVkLmV2ZW50JztcbmltcG9ydCB7IERyYXdpbmdHZW5lcmF0aW9uU2VydmljZSB9IGZyb20gJy4vZHJhd2luZy9kcmF3aW5nLWdlbmVyYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBGZWF0dXJlU2VydmljZSB9IGZyb20gJy4vZmVhdHVyZS5zZXJ2aWNlJztcbmltcG9ydCB7IEdldEZlYXR1cmVzSW5BcmVhUXVlcnkgfSBmcm9tICcuLi9tZXNzYWdlcy9xdWVyaWVzL2dldC1mZWF0dXJlcy1pbi1hcmVhLnF1ZXJ5JztcbmltcG9ydCB7IERyYXdTZWxlY3Rpb25BcmVhQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2RyYXctc2VsZWN0aW9uLWFyZWEuY29tbWFuZCc7XG5pbXBvcnQgeyBGaWx0ZXJGZWF0dXJlc0luQXJlYUV4ZWN1dG9yIH0gZnJvbSAnLi4vbWVzc2FnZXMvZXhlY3V0b3JzL2ZpbHRlci1mZWF0dXJlcy1pbi1hcmVhLmV4ZWN1dG9yJztcbmltcG9ydCB7IEdlbmVyYXRlRHJhd0V4ZWN1dG9yIH0gZnJvbSAnLi4vbWVzc2FnZXMvZXhlY3V0b3JzL2dlbmVyYXRlLWRyYXcuZXhlY3V0b3InO1xuaW1wb3J0IHsgRmVhdHVyZU1vZGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuL2RyYXdpbmcvZmVhdHVyZS1tb2RpZmljYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBDYW5jZWxGZWF0dXJlTW9kaWZpY2F0aW9uQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2NhbmNlbC1mZWF0dXJlLW1vZGlmaWNhdGlvbi5jb21tYW5kJztcbmltcG9ydCB7IE1vZGlmeUZlYXR1cmVDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvbW9kaWZ5LWZlYXR1cmUuY29tbWFuZCc7XG5pbXBvcnQgeyBHZW5lcmF0ZVpvb21Db250cm9sRXhlY3V0b3IgfSBmcm9tICcuLi9tZXNzYWdlcy9leGVjdXRvcnMvZ2VuZXJhdGUtem9vbS1jb250cm9sLmV4ZWN1dG9yJztcbmltcG9ydCB7IFpvb21Db250cm9sRmFjdG9yeSB9IGZyb20gJy4uL21hcC1wbGF0ZS9jb250cm9scy9tYXAtY29udHJvbC16b29tL3pvb20tY29udHJvbC5mYWN0b3J5JztcbmltcG9ydCB7IFJlbW92ZUNvbnRyb2xDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvcmVtb3ZlLWNvbnRyb2wuY29tbWFuZCc7XG5pbXBvcnQgeyBBZGRDb250cm9sQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC1jb250cm9sLmNvbW1hbmQnO1xuaW1wb3J0IHsgQ29udHJvbHNTZXJ2aWNlIH0gZnJvbSAnLi9jb250cm9scy9jb250cm9scy5zZXJ2aWNlJztcbmltcG9ydCB7IFNldE1hcENlbnRlckNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9zZXQtbWFwLWNlbnRlci5jb21tYW5kJztcbmltcG9ydCB7IENhbGN1bGF0ZUFyZWFFeGVjdXRvciB9IGZyb20gJy4uL21lc3NhZ2VzL2V4ZWN1dG9ycy9jYWxjdWxhdGUtYXJlYS5leGVjdXRvcic7XG5pbXBvcnQgeyBHZXRNYXBQb3NpdGlvbkV4ZWN1dG9yIH0gZnJvbSAnLi4vbWVzc2FnZXMvZXhlY3V0b3JzL2dldC1tYXAtcG9zaXRpb24uZXhlY3V0b3InO1xuaW1wb3J0IHsgRmlsdGVyRmVhdHVyZXNJblBvaW50RXhlY3V0b3IgfSBmcm9tICcuLi9tZXNzYWdlcy9leGVjdXRvcnMvZmlsdGVyLWZlYXR1cmVzLWluLXBvaW50LmV4ZWN1dG9yJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE1hcEZlYXR1cmVIb3ZlcmVkRXZlbnQgfSBmcm9tICcuLi9tZXNzYWdlcy9ldmVudHMvbWFwLWZlYXR1cmUtaG92ZXJlZC5ldmVudCc7XG5pbXBvcnQgeyBBZGRJbWFnZUxheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC1pbWFnZS1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IFJlbW92ZUltYWdlTGF5ZXJDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvcmVtb3ZlLWltYWdlLWxheWVyLmNvbW1hbmQnO1xuaW1wb3J0IHsgQWRkUmFzdGVyVGlsZUNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9hZGQtcmFzdGVyLXRpbGUtY29tbWFuZCc7XG5pbXBvcnQgeyBSZW1vdmVSYXN0ZXJUaWxlQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3JlbW92ZS1yYXN0ZXItdGlsZS5jb21tYW5kJztcbmltcG9ydCB7XG4gIEdldEdlb21ldHJ5TGVuZ3RoRXhlY3V0b3IsXG4gIEdldEdlb21ldHJ5TGVuZ3RoRXhlY3V0b3JIYW5kbGVyLFxufSBmcm9tICcuLi9tZXNzYWdlcy9leGVjdXRvcnMvZ2V0LWdlb21ldHJ5LWxlbmd0aC5leGVjdXRvcic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNZXNzYWdlUmVnaXN0cmF0b3JTZXJ2aWNlIGV4dGVuZHMgUG9zdGJveUFic3RyYWN0UmVnaXN0cmF0b3Ige1xuICBjb25zdHJ1Y3RvcihcbiAgICBzZXJ2aWNlOiBNYXBQb3N0Ym95U2VydmljZSxcbiAgICBtYW5hZ2VtZW50OiBNYXBNYW5hZ2VtZW50U2VydmljZSxcbiAgICBwcml2YXRlIHN0YXRlOiBNYXBTdGF0ZVNlcnZpY2UsXG4gICAgbWFwRmVhdHVyZTogTWFwRmVhdHVyZVNlcnZpY2UsXG4gICAgaW50ZXJhY3Rpb246IE1hcENsaWNrU2VydmljZSxcbiAgICBkcmF3aW5nOiBEcmF3aW5nU2VydmljZSxcbiAgICBmZWF0dXJlTW9kaWZpY2F0aW9uOiBGZWF0dXJlTW9kaWZpY2F0aW9uU2VydmljZSxcbiAgICBjb250cm9sczogQ29udHJvbHNTZXJ2aWNlLFxuICApIHtcbiAgICBzdXBlcihzZXJ2aWNlKTtcbiAgICB0aGlzLnJlZ2lzdGVyU2VydmljZXMoW21hbmFnZW1lbnQsIHN0YXRlLCBpbnRlcmFjdGlvbiwgbWFwRmVhdHVyZSwgZHJhd2luZywgZmVhdHVyZU1vZGlmaWNhdGlvbiwgY29udHJvbHNdKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfdXAoKTogdm9pZCB7XG4gICAgdGhpcy5yZWNvcmRSZXBsYXkoTWFwUmVuZGVyZWRFdmVudCk7XG4gICAgdGhpcy5yZWNvcmRSZXBsYXkoUGxhY2VMYXllckZlYXR1cmVzQ29tbWFuZCk7XG4gICAgdGhpcy5yZWNvcmRSZXBsYXkoUmVtb3ZlQ29udHJvbENvbW1hbmQpO1xuICAgIHRoaXMucmVjb3JkUmVwbGF5KEFkZENvbnRyb2xDb21tYW5kKTtcbiAgICB0aGlzLnJlY29yZFJlcGxheShTZXRNYXBDZW50ZXJDb21tYW5kKTtcbiAgICB0aGlzLnJlY29yZFN1YmplY3QoQWRkTGF5ZXJDb21tYW5kKTtcbiAgICB0aGlzLnJlY29yZFN1YmplY3QoUmVtb3ZlTGF5ZXJDb21tYW5kKTtcbiAgICB0aGlzLnJlY29yZFN1YmplY3QoQWRkVGlsZUNvbW1hbmQpO1xuICAgIHRoaXMucmVjb3JkU3ViamVjdChBZGRSYXN0ZXJUaWxlQ29tbWFuZCk7XG4gICAgdGhpcy5yZWNvcmRTdWJqZWN0KFJlbW92ZVJhc3RlclRpbGVDb21tYW5kKTtcbiAgICB0aGlzLnJlY29yZFN1YmplY3QoUmVtb3ZlSW1hZ2VMYXllckNvbW1hbmQpO1xuICAgIHRoaXMucmVjb3JkU3ViamVjdChBZGRJbWFnZUxheWVyQ29tbWFuZCk7XG4gICAgdGhpcy5yZWNvcmRTdWJqZWN0KFJlbW92ZVRpbGVDb21tYW5kKTtcbiAgICB0aGlzLnJlY29yZFN1YmplY3QoTWFwQ2xpY2tFdmVudCk7XG4gICAgdGhpcy5yZWNvcmRTdWJqZWN0KENsb3NlVG9vbHRpcENvbW1hbmQpO1xuICAgIHRoaXMucmVjb3JkU3ViamVjdChGaXRUb0ZlYXR1cmVzQ29tbWFuZCk7XG4gICAgdGhpcy5yZWNvcmRTdWJqZWN0KEZpdFRvUG9seWdvbnNDb21tYW5kKTtcbiAgICB0aGlzLnJlY29yZFN1YmplY3QoTWFwTW92ZUVuZEV2ZW50KTtcbiAgICB0aGlzLnJlY29yZFN1YmplY3QoQ2FuY2VsRHJhd2luZ0NvbW1hbmQpO1xuICAgIHRoaXMucmVjb3JkU3ViamVjdChTdGFydERyYXdpbmdDb21tYW5kKTtcbiAgICB0aGlzLnJlY29yZFN1YmplY3QoR2V0TGF5ZXJRdWVyeSk7XG4gICAgdGhpcy5yZWNvcmRTdWJqZWN0KE1hcEZlYXR1cmVIb3ZlcmVkRXZlbnQpO1xuICAgIHRoaXMucmVjb3JkV2l0aFBpcGUoTWFwUG9pbnRlck1vdmVFdmVudCwgbmV3IFN1YmplY3QoKSwgKHMpID0+IHMucGlwZShkZWJvdW5jZVRpbWUoMTUwKSkpO1xuICAgIHRoaXMucmVjb3JkU3ViamVjdChEcmF3aW5nRmluaXNoZWRFdmVudCk7XG4gICAgdGhpcy5yZWNvcmRTdWJqZWN0KEdldEZlYXR1cmVzSW5BcmVhUXVlcnkpO1xuICAgIHRoaXMucmVjb3JkU3ViamVjdChEcmF3U2VsZWN0aW9uQXJlYUNvbW1hbmQpO1xuICAgIHRoaXMucmVjb3JkU3ViamVjdChDYW5jZWxGZWF0dXJlTW9kaWZpY2F0aW9uQ29tbWFuZCk7XG4gICAgdGhpcy5yZWNvcmRTdWJqZWN0KE1vZGlmeUZlYXR1cmVDb21tYW5kKTtcbiAgICB0aGlzLnJlY29yZFN1YmplY3QoR2V0RmVhdHVyZXNJblBvaW50UXVlcnkpO1xuICAgIHRoaXMuc2V0RXhlY3V0b3JzKCk7XG4gIH1cblxuICBwcml2YXRlIHNldEV4ZWN1dG9ycygpIHtcbiAgICB0aGlzLnJlY29yZEV4ZWN1dG9yKEZpbHRlckZlYXR1cmVzSW5BcmVhRXhlY3V0b3IsIChlKSA9PiBGZWF0dXJlU2VydmljZS5maWx0ZXJGZWF0dXJlc0luQXJlYShlKSk7XG4gICAgdGhpcy5yZWNvcmRFeGVjdXRvcihGaWx0ZXJGZWF0dXJlc0luUG9pbnRFeGVjdXRvciwgKGUpID0+IEZlYXR1cmVTZXJ2aWNlLmZpbHRlckZlYXR1cmVzSW5Qb2ludChlKSk7XG4gICAgdGhpcy5yZWNvcmRFeGVjdXRvcihDYWxjdWxhdGVBcmVhRXhlY3V0b3IsIChlKSA9PiBGZWF0dXJlU2VydmljZS5jYWxjdWxhdGVBcmVhKGUucG9seWdvbj8uZmVhdHVyZT8uZ2V0R2VvbWV0cnkoKSkpO1xuICAgIHRoaXMucmVjb3JkRXhlY3V0b3IoUG9seWdvblNlbGZJbnRlcnNlY3Rpb25FeGVjdXRvciwgKGUpID0+XG4gICAgICBGZWF0dXJlU2VydmljZS5wb2x5Z29uU2VsZkludGVyc2VjdHMoZS5wb2x5Z29uLmZlYXR1cmUpLFxuICAgICk7XG4gICAgdGhpcy5yZWNvcmRFeGVjdXRvcihHZW5lcmF0ZURyYXdFeGVjdXRvciwgKGUpID0+IERyYXdpbmdHZW5lcmF0aW9uU2VydmljZS5nZXREcmF3KGUpKTtcbiAgICB0aGlzLnJlY29yZEV4ZWN1dG9yKEdlbmVyYXRlWm9vbUNvbnRyb2xFeGVjdXRvciwgKGUpID0+IFpvb21Db250cm9sRmFjdG9yeS5idWlsZChlLnNldHRpbmdzKSk7XG4gICAgdGhpcy5yZWNvcmRFeGVjdXRvcihHZXRNYXBQb3NpdGlvbkV4ZWN1dG9yLCAoKSA9PiB0aGlzLnN0YXRlLmdldE1hcFBvc2l0aW9uKCkpO1xuICAgIHRoaXMucmVjb3JkRXhlY3V0b3IoR2V0R2VvbWV0cnlMZW5ndGhFeGVjdXRvciwgKGUpID0+IG5ldyBHZXRHZW9tZXRyeUxlbmd0aEV4ZWN1dG9ySGFuZGxlcigpLmhhbmRsZShlKSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwcy1jb21wb25lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXBzLWNvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -1,5 +0,0 @@
1
- /*
2
- * Public API Surface of maps-components
3
- */
4
- export * from './map/public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG1hcHMtY29tcG9uZW50c1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbWFwL3B1YmxpYy1hcGknO1xuIl19
@@ -1,18 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class DestructibleComponent {
4
- subs = [];
5
- onDestroy;
6
- ngOnDestroy() {
7
- this.subs.forEach((s) => s.unsubscribe());
8
- if (this.onDestroy)
9
- this.onDestroy();
10
- }
11
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: DestructibleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: DestructibleComponent, selector: "ng-component", ngImport: i0, template: '', isInline: true });
13
- }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: DestructibleComponent, decorators: [{
15
- type: Component,
16
- args: [{ template: '' }]
17
- }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzdHJ1Y3RpYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL2NvbW1vbi9kZXN0cnVjdGlibGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWEsTUFBTSxlQUFlLENBQUM7O0FBSXJELE1BQU0sT0FBTyxxQkFBcUI7SUFDdEIsSUFBSSxHQUFtQixFQUFFLENBQUM7SUFDMUIsU0FBUyxDQUFjO0lBRWpDLFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDMUMsSUFBSSxJQUFJLENBQUMsU0FBUztZQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUN2QyxDQUFDO3VHQVBVLHFCQUFxQjsyRkFBckIscUJBQXFCLG9EQURYLEVBQUU7OzJGQUNaLHFCQUFxQjtrQkFEakMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoeyB0ZW1wbGF0ZTogJycgfSlcbmV4cG9ydCBjbGFzcyBEZXN0cnVjdGlibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcm90ZWN0ZWQgc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgcHJvdGVjdGVkIG9uRGVzdHJveT86ICgpID0+IHZvaWQ7XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzLmZvckVhY2goKHMpID0+IHMudW5zdWJzY3JpYmUoKSk7XG4gICAgaWYgKHRoaXMub25EZXN0cm95KSB0aGlzLm9uRGVzdHJveSgpO1xuICB9XG59XG4iXX0=
@@ -1,14 +0,0 @@
1
- export class IdGenerator {
2
- static collection = 'ABCDEFGHIJKLMNOPQRSTUVWXTZ0123456789'.split('');
3
- static get() {
4
- let result = [];
5
- for (let i = 0; i < 7; i++) {
6
- result.push(IdGenerator.collection
7
- .sort(() => 0.5 - Math.random())
8
- .slice(0, 5)
9
- .join(''));
10
- }
11
- return result.join('-');
12
- }
13
- }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQuZ2VuZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvY29tbW9uL2lkLmdlbmVyYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sV0FBVztJQUNkLE1BQU0sQ0FBQyxVQUFVLEdBQUcsc0NBQXNDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRXRFLE1BQU0sQ0FBQyxHQUFHO1FBQ2YsSUFBSSxNQUFNLEdBQWEsRUFBRSxDQUFDO1FBQzFCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMzQixNQUFNLENBQUMsSUFBSSxDQUNULFdBQVcsQ0FBQyxVQUFVO2lCQUNuQixJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztpQkFDL0IsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7aUJBQ1gsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUNaLENBQUM7UUFDSixDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgSWRHZW5lcmF0b3Ige1xuICBwcml2YXRlIHN0YXRpYyBjb2xsZWN0aW9uID0gJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFRaMDEyMzQ1Njc4OScuc3BsaXQoJycpO1xuXG4gIHB1YmxpYyBzdGF0aWMgZ2V0KCk6IHN0cmluZyB7XG4gICAgbGV0IHJlc3VsdDogc3RyaW5nW10gPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IDc7IGkrKykge1xuICAgICAgcmVzdWx0LnB1c2goXG4gICAgICAgIElkR2VuZXJhdG9yLmNvbGxlY3Rpb25cbiAgICAgICAgICAuc29ydCgoKSA9PiAwLjUgLSBNYXRoLnJhbmRvbSgpKVxuICAgICAgICAgIC5zbGljZSgwLCA1KVxuICAgICAgICAgIC5qb2luKCcnKSxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQuam9pbignLScpO1xuICB9XG59XG4iXX0=
@@ -1,5 +0,0 @@
1
- export * from './marker-style.helper';
2
- export * from './polygon-style.helper';
3
- export * from './text-style.helper';
4
- export * from './stringify-feature.helper';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9oZWxwZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21hcmtlci1zdHlsZS5oZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9wb2x5Z29uLXN0eWxlLmhlbHBlcic7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtc3R5bGUuaGVscGVyJztcbmV4cG9ydCAqIGZyb20gJy4vc3RyaW5naWZ5LWZlYXR1cmUuaGVscGVyJztcbiJdfQ==
@@ -1,55 +0,0 @@
1
- import Style from 'ol/style/Style';
2
- import { Circle, Fill, Icon, Stroke } from 'ol/style';
3
- /**
4
- * Helper class to create and modify marker styles.
5
- */
6
- export class MarkerStyleHelper {
7
- /**
8
- * Creates a new Style object from an SVG.
9
- * @param {string} svg - The SVG string.
10
- * @param {Array<number>} [size=[30, 30]] - The size of the icon image.
11
- * @param {number} [zIndex=400] - The zIndex of the style.
12
- * @returns {Style} A new Style object.
13
- */
14
- static fromSvg(svg, size = [30, 30], zIndex = 400) {
15
- let image = new Image();
16
- image.src = 'data:image/svg+xml,' + escape(svg);
17
- return new Style({
18
- image: new Icon({
19
- img: image,
20
- imgSize: size,
21
- }),
22
- zIndex,
23
- });
24
- }
25
- /**
26
- * Returns a Style object with a circle style.
27
- *
28
- * @param {number} radius - The radius of the circle.
29
- * @param {string} fill - The fill color of the circle. Format: '#RRGGBB' or 'rgba(R, G, B, A)'.
30
- * @param {string} strokeColor - The stroke color of the circle. Format: '#RRGGBB' or 'rgba(R, G, B, A)'.
31
- * @param {number} [strokeWidth=1] - The width of the stroke. Default is 1.
32
- * @returns {Style} - A Style object with a Circle image.
33
- */
34
- static circle(radius, fill, strokeColor, strokeWidth = 1) {
35
- return new Style({
36
- image: new Circle({
37
- radius,
38
- fill: new Fill({ color: fill }),
39
- stroke: new Stroke({ color: strokeColor, width: strokeWidth }),
40
- }),
41
- });
42
- }
43
- /**
44
- * Applies the given Text to the provided Style.
45
- *
46
- * @param {Style} style - The Style to modify.
47
- * @param {Text} text - The Text to apply to the Style.
48
- * @return {Style} - The modified Style with the applied Text.
49
- */
50
- static withText(style, text) {
51
- style.setText(text);
52
- return style;
53
- }
54
- }
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2VyLXN0eWxlLmhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL2hlbHBlcnMvbWFya2VyLXN0eWxlLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxnQkFBZ0IsQ0FBQztBQUNuQyxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFRLE1BQU0sVUFBVSxDQUFDO0FBRTVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGlCQUFpQjtJQUM1Qjs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQVcsRUFBRSxPQUF5QixDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxNQUFNLEdBQUcsR0FBRztRQUNoRixJQUFJLEtBQUssR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ3hCLEtBQUssQ0FBQyxHQUFHLEdBQUcscUJBQXFCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2hELE9BQU8sSUFBSSxLQUFLLENBQUM7WUFDZixLQUFLLEVBQUUsSUFBSSxJQUFJLENBQUM7Z0JBQ2QsR0FBRyxFQUFFLEtBQUs7Z0JBQ1YsT0FBTyxFQUFFLElBQUk7YUFDZCxDQUFDO1lBQ0YsTUFBTTtTQUNQLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBYyxFQUFFLElBQVksRUFBRSxXQUFtQixFQUFFLFdBQVcsR0FBRyxDQUFDO1FBQ3JGLE9BQU8sSUFBSSxLQUFLLENBQUM7WUFDZixLQUFLLEVBQUUsSUFBSSxNQUFNLENBQUM7Z0JBQ2hCLE1BQU07Z0JBQ04sSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDO2dCQUMvQixNQUFNLEVBQUUsSUFBSSxNQUFNLENBQUMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsQ0FBQzthQUMvRCxDQUFDO1NBQ0gsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBWSxFQUFFLElBQVU7UUFDN0MsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwQixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBTdHlsZSBmcm9tICdvbC9zdHlsZS9TdHlsZSc7XG5pbXBvcnQgeyBDaXJjbGUsIEZpbGwsIEljb24sIFN0cm9rZSwgVGV4dCB9IGZyb20gJ29sL3N0eWxlJztcblxuLyoqXG4gKiBIZWxwZXIgY2xhc3MgdG8gY3JlYXRlIGFuZCBtb2RpZnkgbWFya2VyIHN0eWxlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIE1hcmtlclN0eWxlSGVscGVyIHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgU3R5bGUgb2JqZWN0IGZyb20gYW4gU1ZHLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc3ZnIC0gVGhlIFNWRyBzdHJpbmcuXG4gICAqIEBwYXJhbSB7QXJyYXk8bnVtYmVyPn0gW3NpemU9WzMwLCAzMF1dIC0gVGhlIHNpemUgb2YgdGhlIGljb24gaW1hZ2UuXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBbekluZGV4PTQwMF0gLSBUaGUgekluZGV4IG9mIHRoZSBzdHlsZS5cbiAgICogQHJldHVybnMge1N0eWxlfSBBIG5ldyBTdHlsZSBvYmplY3QuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21Tdmcoc3ZnOiBzdHJpbmcsIHNpemU6IFtudW1iZXIsIG51bWJlcl0gPSBbMzAsIDMwXSwgekluZGV4ID0gNDAwKTogU3R5bGUge1xuICAgIGxldCBpbWFnZSA9IG5ldyBJbWFnZSgpO1xuICAgIGltYWdlLnNyYyA9ICdkYXRhOmltYWdlL3N2Zyt4bWwsJyArIGVzY2FwZShzdmcpO1xuICAgIHJldHVybiBuZXcgU3R5bGUoe1xuICAgICAgaW1hZ2U6IG5ldyBJY29uKHtcbiAgICAgICAgaW1nOiBpbWFnZSxcbiAgICAgICAgaW1nU2l6ZTogc2l6ZSxcbiAgICAgIH0pLFxuICAgICAgekluZGV4LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBTdHlsZSBvYmplY3Qgd2l0aCBhIGNpcmNsZSBzdHlsZS5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IHJhZGl1cyAtIFRoZSByYWRpdXMgb2YgdGhlIGNpcmNsZS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IGZpbGwgLSBUaGUgZmlsbCBjb2xvciBvZiB0aGUgY2lyY2xlLiBGb3JtYXQ6ICcjUlJHR0JCJyBvciAncmdiYShSLCBHLCBCLCBBKScuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzdHJva2VDb2xvciAtIFRoZSBzdHJva2UgY29sb3Igb2YgdGhlIGNpcmNsZS4gRm9ybWF0OiAnI1JSR0dCQicgb3IgJ3JnYmEoUiwgRywgQiwgQSknLlxuICAgKiBAcGFyYW0ge251bWJlcn0gW3N0cm9rZVdpZHRoPTFdIC0gVGhlIHdpZHRoIG9mIHRoZSBzdHJva2UuIERlZmF1bHQgaXMgMS5cbiAgICogQHJldHVybnMge1N0eWxlfSAtIEEgU3R5bGUgb2JqZWN0IHdpdGggYSBDaXJjbGUgaW1hZ2UuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNpcmNsZShyYWRpdXM6IG51bWJlciwgZmlsbDogc3RyaW5nLCBzdHJva2VDb2xvcjogc3RyaW5nLCBzdHJva2VXaWR0aCA9IDEpOiBTdHlsZSB7XG4gICAgcmV0dXJuIG5ldyBTdHlsZSh7XG4gICAgICBpbWFnZTogbmV3IENpcmNsZSh7XG4gICAgICAgIHJhZGl1cyxcbiAgICAgICAgZmlsbDogbmV3IEZpbGwoeyBjb2xvcjogZmlsbCB9KSxcbiAgICAgICAgc3Ryb2tlOiBuZXcgU3Ryb2tlKHsgY29sb3I6IHN0cm9rZUNvbG9yLCB3aWR0aDogc3Ryb2tlV2lkdGggfSksXG4gICAgICB9KSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBcHBsaWVzIHRoZSBnaXZlbiBUZXh0IHRvIHRoZSBwcm92aWRlZCBTdHlsZS5cbiAgICpcbiAgICogQHBhcmFtIHtTdHlsZX0gc3R5bGUgLSBUaGUgU3R5bGUgdG8gbW9kaWZ5LlxuICAgKiBAcGFyYW0ge1RleHR9IHRleHQgLSBUaGUgVGV4dCB0byBhcHBseSB0byB0aGUgU3R5bGUuXG4gICAqIEByZXR1cm4ge1N0eWxlfSAtIFRoZSBtb2RpZmllZCBTdHlsZSB3aXRoIHRoZSBhcHBsaWVkIFRleHQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHdpdGhUZXh0KHN0eWxlOiBTdHlsZSwgdGV4dDogVGV4dCk6IFN0eWxlIHtcbiAgICBzdHlsZS5zZXRUZXh0KHRleHQpO1xuICAgIHJldHVybiBzdHlsZTtcbiAgfVxufVxuIl19
@@ -1,54 +0,0 @@
1
- import Style from 'ol/style/Style';
2
- import { Circle, Fill, Stroke } from 'ol/style';
3
- /**
4
- * A helper class for creating polygon styles.
5
- * @class
6
- */
7
- export class PolygonStyleHelper {
8
- /**
9
- * Creates a Style object with the given fill color, stroke color, and stroke width.
10
- *
11
- * @param {string} fill - The fill color in hexadecimal or RGB format.
12
- * @param {string} stroke - The stroke color in hexadecimal or RGB format.
13
- * @param {number} [strokeWidth=1] - The width of the stroke. Defaults to 1.
14
- * @return {Style} The created Style object.
15
- */
16
- static simple(fill, stroke, strokeWidth = 1) {
17
- return new Style({
18
- fill: new Fill({
19
- color: fill,
20
- }),
21
- stroke: new Stroke({
22
- color: stroke,
23
- width: strokeWidth,
24
- }),
25
- });
26
- }
27
- /**
28
- * Creates a new Style object with the given fill, stroke, stroke width, and pin radius.
29
- *
30
- * @param {string} fill - The color to use for the fill of the style.
31
- * @param {string} stroke - The color to use for the stroke of the style.
32
- * @param {number} [strokeWidth=1] - The width of the stroke. Defaults to 1.
33
- * @param {number} [pinRadius=5] - The radius of the circle used as the image for the style. Defaults to 5.
34
- * @returns {Style} - The newly created Style object.
35
- */
36
- static edit(fill, stroke, strokeWidth = 1, pinRadius = 5) {
37
- return new Style({
38
- image: new Circle({
39
- fill: new Fill({
40
- color: stroke,
41
- }),
42
- radius: pinRadius,
43
- }),
44
- fill: new Fill({
45
- color: fill,
46
- }),
47
- stroke: new Stroke({
48
- color: stroke,
49
- width: strokeWidth,
50
- }),
51
- });
52
- }
53
- }
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbi1zdHlsZS5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9oZWxwZXJzL3BvbHlnb24tc3R5bGUuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLGdCQUFnQixDQUFDO0FBQ25DLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVoRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCOzs7Ozs7O09BT0c7SUFDSSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQVksRUFBRSxNQUFjLEVBQUUsY0FBc0IsQ0FBQztRQUN4RSxPQUFPLElBQUksS0FBSyxDQUFDO1lBQ2YsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDO2dCQUNiLEtBQUssRUFBRSxJQUFJO2FBQ1osQ0FBQztZQUNGLE1BQU0sRUFBRSxJQUFJLE1BQU0sQ0FBQztnQkFDakIsS0FBSyxFQUFFLE1BQU07Z0JBQ2IsS0FBSyxFQUFFLFdBQVc7YUFDbkIsQ0FBQztTQUNILENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBWSxFQUFFLE1BQWMsRUFBRSxjQUFzQixDQUFDLEVBQUUsU0FBUyxHQUFHLENBQUM7UUFDckYsT0FBTyxJQUFJLEtBQUssQ0FBQztZQUNmLEtBQUssRUFBRSxJQUFJLE1BQU0sQ0FBQztnQkFDaEIsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDO29CQUNiLEtBQUssRUFBRSxNQUFNO2lCQUNkLENBQUM7Z0JBQ0YsTUFBTSxFQUFFLFNBQVM7YUFDbEIsQ0FBQztZQUNGLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQztnQkFDYixLQUFLLEVBQUUsSUFBSTthQUNaLENBQUM7WUFDRixNQUFNLEVBQUUsSUFBSSxNQUFNLENBQUM7Z0JBQ2pCLEtBQUssRUFBRSxNQUFNO2dCQUNiLEtBQUssRUFBRSxXQUFXO2FBQ25CLENBQUM7U0FDSCxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgU3R5bGUgZnJvbSAnb2wvc3R5bGUvU3R5bGUnO1xuaW1wb3J0IHsgQ2lyY2xlLCBGaWxsLCBTdHJva2UgfSBmcm9tICdvbC9zdHlsZSc7XG5cbi8qKlxuICogQSBoZWxwZXIgY2xhc3MgZm9yIGNyZWF0aW5nIHBvbHlnb24gc3R5bGVzLlxuICogQGNsYXNzXG4gKi9cbmV4cG9ydCBjbGFzcyBQb2x5Z29uU3R5bGVIZWxwZXIge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIFN0eWxlIG9iamVjdCB3aXRoIHRoZSBnaXZlbiBmaWxsIGNvbG9yLCBzdHJva2UgY29sb3IsIGFuZCBzdHJva2Ugd2lkdGguXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBmaWxsIC0gVGhlIGZpbGwgY29sb3IgaW4gaGV4YWRlY2ltYWwgb3IgUkdCIGZvcm1hdC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHN0cm9rZSAtIFRoZSBzdHJva2UgY29sb3IgaW4gaGV4YWRlY2ltYWwgb3IgUkdCIGZvcm1hdC5cbiAgICogQHBhcmFtIHtudW1iZXJ9IFtzdHJva2VXaWR0aD0xXSAtIFRoZSB3aWR0aCBvZiB0aGUgc3Ryb2tlLiBEZWZhdWx0cyB0byAxLlxuICAgKiBAcmV0dXJuIHtTdHlsZX0gVGhlIGNyZWF0ZWQgU3R5bGUgb2JqZWN0LlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBzaW1wbGUoZmlsbDogc3RyaW5nLCBzdHJva2U6IHN0cmluZywgc3Ryb2tlV2lkdGg6IG51bWJlciA9IDEpOiBTdHlsZSB7XG4gICAgcmV0dXJuIG5ldyBTdHlsZSh7XG4gICAgICBmaWxsOiBuZXcgRmlsbCh7XG4gICAgICAgIGNvbG9yOiBmaWxsLFxuICAgICAgfSksXG4gICAgICBzdHJva2U6IG5ldyBTdHJva2Uoe1xuICAgICAgICBjb2xvcjogc3Ryb2tlLFxuICAgICAgICB3aWR0aDogc3Ryb2tlV2lkdGgsXG4gICAgICB9KSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IFN0eWxlIG9iamVjdCB3aXRoIHRoZSBnaXZlbiBmaWxsLCBzdHJva2UsIHN0cm9rZSB3aWR0aCwgYW5kIHBpbiByYWRpdXMuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBmaWxsIC0gVGhlIGNvbG9yIHRvIHVzZSBmb3IgdGhlIGZpbGwgb2YgdGhlIHN0eWxlLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc3Ryb2tlIC0gVGhlIGNvbG9yIHRvIHVzZSBmb3IgdGhlIHN0cm9rZSBvZiB0aGUgc3R5bGUuXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBbc3Ryb2tlV2lkdGg9MV0gLSBUaGUgd2lkdGggb2YgdGhlIHN0cm9rZS4gRGVmYXVsdHMgdG8gMS5cbiAgICogQHBhcmFtIHtudW1iZXJ9IFtwaW5SYWRpdXM9NV0gLSBUaGUgcmFkaXVzIG9mIHRoZSBjaXJjbGUgdXNlZCBhcyB0aGUgaW1hZ2UgZm9yIHRoZSBzdHlsZS4gRGVmYXVsdHMgdG8gNS5cbiAgICogQHJldHVybnMge1N0eWxlfSAtIFRoZSBuZXdseSBjcmVhdGVkIFN0eWxlIG9iamVjdC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZWRpdChmaWxsOiBzdHJpbmcsIHN0cm9rZTogc3RyaW5nLCBzdHJva2VXaWR0aDogbnVtYmVyID0gMSwgcGluUmFkaXVzID0gNSk6IFN0eWxlIHtcbiAgICByZXR1cm4gbmV3IFN0eWxlKHtcbiAgICAgIGltYWdlOiBuZXcgQ2lyY2xlKHtcbiAgICAgICAgZmlsbDogbmV3IEZpbGwoe1xuICAgICAgICAgIGNvbG9yOiBzdHJva2UsXG4gICAgICAgIH0pLFxuICAgICAgICByYWRpdXM6IHBpblJhZGl1cyxcbiAgICAgIH0pLFxuICAgICAgZmlsbDogbmV3IEZpbGwoe1xuICAgICAgICBjb2xvcjogZmlsbCxcbiAgICAgIH0pLFxuICAgICAgc3Ryb2tlOiBuZXcgU3Ryb2tlKHtcbiAgICAgICAgY29sb3I6IHN0cm9rZSxcbiAgICAgICAgd2lkdGg6IHN0cm9rZVdpZHRoLFxuICAgICAgfSksXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==