@igo2/integration 1.15.3 → 1.15.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 (214) hide show
  1. package/esm2020/igo2-integration.mjs +4 -4
  2. package/esm2020/lib/about/about-tool/about-tool.component.mjs +185 -185
  3. package/esm2020/lib/about/about-tool/index.mjs +2 -2
  4. package/esm2020/lib/about/about.module.mjs +55 -55
  5. package/esm2020/lib/about/index.mjs +2 -2
  6. package/esm2020/lib/analytics/analytics-listener.service.mjs +127 -127
  7. package/esm2020/lib/analytics/analytics.module.mjs +16 -16
  8. package/esm2020/lib/analytics/index.mjs +2 -2
  9. package/esm2020/lib/catalog/catalog-browser-tool/catalog-browser-tool.component.mjs +113 -113
  10. package/esm2020/lib/catalog/catalog-browser-tool/catalog-browser-tool.module.mjs +29 -29
  11. package/esm2020/lib/catalog/catalog-library-tool/catalog-library-tool.component.mjs +89 -89
  12. package/esm2020/lib/catalog/catalog-library-tool/catalog-library-tool.module.mjs +29 -29
  13. package/esm2020/lib/catalog/catalog.module.mjs +24 -24
  14. package/esm2020/lib/catalog/catalog.state.mjs +54 -54
  15. package/esm2020/lib/catalog/index.mjs +6 -6
  16. package/esm2020/lib/context/context-editor-tool/context-editor-tool.component.mjs +34 -34
  17. package/esm2020/lib/context/context-manager-tool/context-manager-tool.component.mjs +44 -44
  18. package/esm2020/lib/context/context-permission-manager-tool/context-permission-manager-tool.component.mjs +25 -25
  19. package/esm2020/lib/context/context-share-tool/context-share-tool.component.mjs +34 -34
  20. package/esm2020/lib/context/context.module.mjs +39 -39
  21. package/esm2020/lib/context/context.state.mjs +88 -88
  22. package/esm2020/lib/context/index.mjs +6 -6
  23. package/esm2020/lib/directions/directions-tool/directions-tool.component.mjs +84 -84
  24. package/esm2020/lib/directions/directions-tool/index.mjs +2 -2
  25. package/esm2020/lib/directions/directions.module.mjs +26 -26
  26. package/esm2020/lib/directions/directions.state.mjs +64 -64
  27. package/esm2020/lib/directions/index.mjs +3 -3
  28. package/esm2020/lib/draw/draw.module.mjs +21 -21
  29. package/esm2020/lib/draw/draw.state.mjs +39 -39
  30. package/esm2020/lib/draw/drawing-tool/drawing-tool.component.mjs +72 -72
  31. package/esm2020/lib/draw/index.mjs +3 -3
  32. package/esm2020/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.animation.mjs +10 -10
  33. package/esm2020/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.component.mjs +44 -44
  34. package/esm2020/lib/filter/active-ogc-filter-tool/index.mjs +2 -2
  35. package/esm2020/lib/filter/active-time-filter-tool/active-time-filter-tool.animation.mjs +10 -10
  36. package/esm2020/lib/filter/active-time-filter-tool/active-time-filter-tool.component.mjs +44 -44
  37. package/esm2020/lib/filter/active-time-filter-tool/index.mjs +2 -2
  38. package/esm2020/lib/filter/filter.module.mjs +51 -51
  39. package/esm2020/lib/filter/index.mjs +6 -6
  40. package/esm2020/lib/filter/ogc-filter-tool/index.mjs +2 -2
  41. package/esm2020/lib/filter/ogc-filter-tool/ogc-filter-tool.component.mjs +25 -25
  42. package/esm2020/lib/filter/spatial-filter-tool/index.mjs +2 -2
  43. package/esm2020/lib/filter/spatial-filter-tool/spatial-filter-tool.component.mjs +535 -535
  44. package/esm2020/lib/filter/time-filter-tool/index.mjs +2 -2
  45. package/esm2020/lib/filter/time-filter-tool/time-filter-tool.component.mjs +25 -25
  46. package/esm2020/lib/import-export/import-export-tool/import-export-tool.component.mjs +141 -141
  47. package/esm2020/lib/import-export/import-export-tool/index.mjs +2 -2
  48. package/esm2020/lib/import-export/import-export.module.mjs +51 -51
  49. package/esm2020/lib/import-export/import-export.state.mjs +41 -41
  50. package/esm2020/lib/import-export/index.mjs +3 -3
  51. package/esm2020/lib/integration.module.mjs +72 -72
  52. package/esm2020/lib/map/advanced-map-tool/advanced-coordinates/advanced-coordinates.component.mjs +472 -472
  53. package/esm2020/lib/map/advanced-map-tool/advanced-map-tool.component.mjs +89 -89
  54. package/esm2020/lib/map/advanced-map-tool/advanced-swipe/advanced-swipe.component.mjs +218 -218
  55. package/esm2020/lib/map/advanced-map-tool/index.mjs +2 -2
  56. package/esm2020/lib/map/index.mjs +9 -9
  57. package/esm2020/lib/map/layer-list-tool.state.mjs +42 -42
  58. package/esm2020/lib/map/map-details-tool/index.mjs +2 -2
  59. package/esm2020/lib/map/map-details-tool/map-details-tool.component.mjs +256 -256
  60. package/esm2020/lib/map/map-legend/index.mjs +2 -2
  61. package/esm2020/lib/map/map-legend/map-legend-tool.component.mjs +275 -275
  62. package/esm2020/lib/map/map-proximity-tool/index.mjs +2 -2
  63. package/esm2020/lib/map/map-proximity-tool/map-proximity-tool.component.mjs +203 -203
  64. package/esm2020/lib/map/map-proximity.state.mjs +167 -167
  65. package/esm2020/lib/map/map-tool/index.mjs +2 -2
  66. package/esm2020/lib/map/map-tool/map-tool.component.mjs +130 -130
  67. package/esm2020/lib/map/map-tools/index.mjs +2 -2
  68. package/esm2020/lib/map/map-tools/map-tools.component.mjs +495 -495
  69. package/esm2020/lib/map/map.module.mjs +144 -144
  70. package/esm2020/lib/map/map.state.mjs +47 -47
  71. package/esm2020/lib/measure/index.mjs +4 -4
  72. package/esm2020/lib/measure/measure.module.mjs +20 -20
  73. package/esm2020/lib/measure/measure.state.mjs +35 -35
  74. package/esm2020/lib/measure/measurer-tool/measurer-tool.component.mjs +45 -45
  75. package/esm2020/lib/measure/measurer-tool/measurer-tool.module.mjs +25 -25
  76. package/esm2020/lib/print/index.mjs +2 -2
  77. package/esm2020/lib/print/print-tool/index.mjs +2 -2
  78. package/esm2020/lib/print/print-tool/print-tool.component.mjs +33 -33
  79. package/esm2020/lib/print/print.module.mjs +26 -26
  80. package/esm2020/lib/search/index.mjs +7 -7
  81. package/esm2020/lib/search/query.state.mjs +42 -34
  82. package/esm2020/lib/search/search-bar/search-bar-binding.directive.mjs +61 -61
  83. package/esm2020/lib/search/search-bar/search-bar.module.mjs +22 -22
  84. package/esm2020/lib/search/search-results-tool/search-results-tool.component.mjs +593 -593
  85. package/esm2020/lib/search/search-results-tool/search-results-tool.module.mjs +65 -65
  86. package/esm2020/lib/search/search.module.mjs +24 -24
  87. package/esm2020/lib/search/search.state.mjs +132 -132
  88. package/esm2020/lib/storage/index.mjs +2 -2
  89. package/esm2020/lib/storage/storage.module.mjs +16 -16
  90. package/esm2020/lib/storage/storage.state.mjs +23 -23
  91. package/esm2020/lib/tool/index.mjs +2 -2
  92. package/esm2020/lib/tool/tool.module.mjs +16 -16
  93. package/esm2020/lib/tool/tool.state.mjs +52 -52
  94. package/esm2020/lib/workspace/index.mjs +4 -4
  95. package/esm2020/lib/workspace/shared/edition-actions.service.mjs +156 -156
  96. package/esm2020/lib/workspace/shared/feature-actions.service.mjs +144 -144
  97. package/esm2020/lib/workspace/shared/index.mjs +3 -3
  98. package/esm2020/lib/workspace/shared/wfs-actions.service.mjs +158 -158
  99. package/esm2020/lib/workspace/shared/workspace.utils.mjs +7 -7
  100. package/esm2020/lib/workspace/workspace-button/index.mjs +2 -2
  101. package/esm2020/lib/workspace/workspace-button/workspace-button.component.mjs +69 -69
  102. package/esm2020/lib/workspace/workspace.module.mjs +37 -37
  103. package/esm2020/lib/workspace/workspace.state.mjs +188 -188
  104. package/esm2020/public_api.mjs +35 -35
  105. package/fesm2015/igo2-integration.mjs +6558 -6553
  106. package/fesm2015/igo2-integration.mjs.map +1 -1
  107. package/fesm2020/igo2-integration.mjs +6114 -6109
  108. package/fesm2020/igo2-integration.mjs.map +1 -1
  109. package/index.d.ts +5 -5
  110. package/lib/about/about-tool/about-tool.component.d.ts +34 -34
  111. package/lib/about/about-tool/index.d.ts +1 -1
  112. package/lib/about/about.module.d.ts +16 -16
  113. package/lib/about/index.d.ts +1 -1
  114. package/lib/analytics/analytics-listener.service.d.ts +33 -33
  115. package/lib/analytics/analytics.module.d.ts +6 -6
  116. package/lib/analytics/index.d.ts +1 -1
  117. package/lib/catalog/catalog-browser-tool/catalog-browser-tool.component.d.ts +57 -57
  118. package/lib/catalog/catalog-browser-tool/catalog-browser-tool.module.d.ts +12 -12
  119. package/lib/catalog/catalog-library-tool/catalog-library-tool.component.d.ts +50 -50
  120. package/lib/catalog/catalog-library-tool/catalog-library-tool.module.d.ts +12 -12
  121. package/lib/catalog/catalog.module.d.ts +8 -8
  122. package/lib/catalog/catalog.state.d.ts +37 -37
  123. package/lib/catalog/index.d.ts +5 -5
  124. package/lib/context/context-editor-tool/context-editor-tool.component.d.ts +9 -9
  125. package/lib/context/context-manager-tool/context-manager-tool.component.d.ts +15 -15
  126. package/lib/context/context-permission-manager-tool/context-permission-manager-tool.component.d.ts +5 -5
  127. package/lib/context/context-share-tool/context-share-tool.component.d.ts +13 -13
  128. package/lib/context/context.module.d.ts +11 -11
  129. package/lib/context/context.state.d.ts +37 -37
  130. package/lib/context/index.d.ts +5 -5
  131. package/lib/directions/directions-tool/directions-tool.component.d.ts +54 -54
  132. package/lib/directions/directions-tool/index.d.ts +1 -1
  133. package/lib/directions/directions.module.d.ts +10 -10
  134. package/lib/directions/directions.state.d.ts +28 -28
  135. package/lib/directions/index.d.ts +2 -2
  136. package/lib/draw/draw.module.d.ts +8 -8
  137. package/lib/draw/draw.state.d.ts +16 -16
  138. package/lib/draw/drawing-tool/drawing-tool.component.d.ts +31 -31
  139. package/lib/draw/index.d.ts +2 -2
  140. package/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.animation.d.ts +2 -2
  141. package/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.component.d.ts +12 -12
  142. package/lib/filter/active-ogc-filter-tool/index.d.ts +1 -1
  143. package/lib/filter/active-time-filter-tool/active-time-filter-tool.animation.d.ts +2 -2
  144. package/lib/filter/active-time-filter-tool/active-time-filter-tool.component.d.ts +12 -12
  145. package/lib/filter/active-time-filter-tool/index.d.ts +1 -1
  146. package/lib/filter/filter.module.d.ts +15 -15
  147. package/lib/filter/index.d.ts +5 -5
  148. package/lib/filter/ogc-filter-tool/index.d.ts +1 -1
  149. package/lib/filter/ogc-filter-tool/ogc-filter-tool.component.d.ts +6 -6
  150. package/lib/filter/spatial-filter-tool/index.d.ts +1 -1
  151. package/lib/filter/spatial-filter-tool/spatial-filter-tool.component.d.ts +82 -82
  152. package/lib/filter/time-filter-tool/index.d.ts +1 -1
  153. package/lib/filter/time-filter-tool/time-filter-tool.component.d.ts +6 -6
  154. package/lib/import-export/import-export-tool/import-export-tool.component.d.ts +33 -33
  155. package/lib/import-export/import-export-tool/index.d.ts +1 -1
  156. package/lib/import-export/import-export.module.d.ts +15 -15
  157. package/lib/import-export/import-export.state.d.ts +24 -24
  158. package/lib/import-export/index.d.ts +2 -2
  159. package/lib/integration.module.d.ts +20 -20
  160. package/lib/map/advanced-map-tool/advanced-coordinates/advanced-coordinates.component.d.ts +97 -97
  161. package/lib/map/advanced-map-tool/advanced-map-tool.component.d.ts +12 -12
  162. package/lib/map/advanced-map-tool/advanced-swipe/advanced-swipe.component.d.ts +65 -65
  163. package/lib/map/advanced-map-tool/index.d.ts +1 -1
  164. package/lib/map/index.d.ts +8 -8
  165. package/lib/map/layer-list-tool.state.d.ts +19 -19
  166. package/lib/map/map-details-tool/index.d.ts +1 -1
  167. package/lib/map/map-details-tool/map-details-tool.component.d.ts +38 -38
  168. package/lib/map/map-legend/index.d.ts +1 -1
  169. package/lib/map/map-legend/map-legend-tool.component.d.ts +40 -40
  170. package/lib/map/map-proximity-tool/index.d.ts +1 -1
  171. package/lib/map/map-proximity-tool/map-proximity-tool.component.d.ts +36 -36
  172. package/lib/map/map-proximity.state.d.ts +31 -31
  173. package/lib/map/map-tool/index.d.ts +1 -1
  174. package/lib/map/map-tool/map-tool.component.d.ts +27 -27
  175. package/lib/map/map-tools/index.d.ts +1 -1
  176. package/lib/map/map-tools/map-tools.component.d.ts +66 -66
  177. package/lib/map/map.module.d.ts +38 -38
  178. package/lib/map/map.state.d.ts +24 -24
  179. package/lib/measure/index.d.ts +3 -3
  180. package/lib/measure/measure.module.d.ts +7 -7
  181. package/lib/measure/measure.state.d.ts +16 -16
  182. package/lib/measure/measurer-tool/measurer-tool.component.d.ts +24 -24
  183. package/lib/measure/measurer-tool/measurer-tool.module.d.ts +11 -11
  184. package/lib/print/index.d.ts +1 -1
  185. package/lib/print/print-tool/index.d.ts +1 -1
  186. package/lib/print/print-tool/print-tool.component.d.ts +10 -10
  187. package/lib/print/print.module.d.ts +10 -10
  188. package/lib/search/index.d.ts +6 -6
  189. package/lib/search/query.state.d.ts +24 -20
  190. package/lib/search/search-bar/search-bar-binding.directive.d.ts +20 -20
  191. package/lib/search/search-bar/search-bar.module.d.ts +11 -11
  192. package/lib/search/search-results-tool/search-results-tool.component.d.ts +100 -100
  193. package/lib/search/search-results-tool/search-results-tool.module.d.ts +18 -18
  194. package/lib/search/search.module.d.ts +8 -8
  195. package/lib/search/search.state.d.ts +60 -60
  196. package/lib/storage/index.d.ts +1 -1
  197. package/lib/storage/storage.module.d.ts +6 -6
  198. package/lib/storage/storage.state.d.ts +12 -12
  199. package/lib/tool/index.d.ts +1 -1
  200. package/lib/tool/tool.module.d.ts +6 -6
  201. package/lib/tool/tool.state.d.ts +22 -22
  202. package/lib/workspace/index.d.ts +3 -3
  203. package/lib/workspace/shared/edition-actions.service.d.ts +26 -26
  204. package/lib/workspace/shared/feature-actions.service.d.ts +25 -25
  205. package/lib/workspace/shared/index.d.ts +2 -2
  206. package/lib/workspace/shared/wfs-actions.service.d.ts +27 -27
  207. package/lib/workspace/shared/workspace.utils.d.ts +2 -2
  208. package/lib/workspace/workspace-button/index.d.ts +1 -1
  209. package/lib/workspace/workspace-button/workspace-button.component.d.ts +21 -21
  210. package/lib/workspace/workspace.module.d.ts +12 -12
  211. package/lib/workspace/workspace.state.d.ts +63 -63
  212. package/ngcc.config.js +3 -3
  213. package/package.json +3 -3
  214. package/public_api.d.ts +31 -31
@@ -1,158 +1,158 @@
1
- import { Inject, Injectable } from '@angular/core';
2
- import { EntityStoreFilterCustomFuncStrategy, EntityStoreFilterSelectionStrategy } from '@igo2/common';
3
- import { BehaviorSubject } from 'rxjs';
4
- import { mapExtentStrategyActiveToolTip, noElementSelected, OgcFilterWidget, } from '@igo2/geo';
5
- import { StorageServiceEventEnum } from '@igo2/core';
6
- import { map, skipWhile } from 'rxjs/operators';
7
- import { handleZoomAuto } from './workspace.utils';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "../../storage/storage.state";
10
- import * as i2 from "@igo2/core";
11
- import * as i3 from "../../tool/tool.state";
12
- import * as i4 from "@igo2/common";
13
- export class WfsActionsService {
14
- constructor(ogcFilterWidget, storageState, languageService, mediaService, toolState) {
15
- this.ogcFilterWidget = ogcFilterWidget;
16
- this.storageState = storageState;
17
- this.languageService = languageService;
18
- this.mediaService = mediaService;
19
- this.toolState = toolState;
20
- this.maximize$ = new BehaviorSubject(this.storageService.get('workspaceMaximize'));
21
- this.selectOnlyCheckCondition$ = new BehaviorSubject(false);
22
- // rowsInMapExtentCheckCondition$: BehaviorSubject<boolean> = new BehaviorSubject(true);
23
- this.zoomAuto$ = new BehaviorSubject(false);
24
- }
25
- get storageService() {
26
- return this.storageState.storageService;
27
- }
28
- get zoomAuto() {
29
- return this.storageService.get('zoomAuto');
30
- }
31
- ngOnDestroy() {
32
- if (this.storageChange$$) {
33
- this.storageChange$$.unsubscribe();
34
- }
35
- }
36
- loadActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
37
- const actions = this.buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$);
38
- workspace.actionStore.load(actions);
39
- }
40
- buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
41
- this.zoomAuto$.next(this.zoomAuto);
42
- this.storageChange$$ = this.storageService.storageChange$
43
- .pipe(skipWhile((storageChange) => storageChange?.key !== 'zoomAuto' || storageChange?.event === StorageServiceEventEnum.CLEARED))
44
- .subscribe(() => {
45
- this.zoomAuto$.next(this.zoomAuto);
46
- handleZoomAuto(workspace, this.storageService);
47
- });
48
- const actions = [
49
- {
50
- id: 'zoomAuto',
51
- checkbox: true,
52
- title: 'igo.integration.workspace.zoomAuto.title',
53
- tooltip: 'igo.integration.workspace.zoomAuto.tooltip',
54
- checkCondition: this.zoomAuto$,
55
- handler: () => {
56
- handleZoomAuto(workspace, this.storageService);
57
- this.storageService.set('zoomAuto', !this.storageService.get('zoomAuto'));
58
- }
59
- },
60
- {
61
- id: 'filterInMapExtent',
62
- checkbox: true,
63
- title: 'igo.integration.workspace.inMapExtent.title',
64
- tooltip: mapExtentStrategyActiveToolTip(workspace),
65
- checkCondition: rowsInMapExtentCheckCondition$,
66
- handler: () => rowsInMapExtentCheckCondition$.next(!rowsInMapExtentCheckCondition$.value)
67
- },
68
- {
69
- id: 'selectedOnly',
70
- checkbox: true,
71
- title: 'igo.integration.workspace.selected.title',
72
- tooltip: 'igo.integration.workspace.selected.title',
73
- checkCondition: selectOnlyCheckCondition$,
74
- handler: () => selectOnlyCheckCondition$.next(!selectOnlyCheckCondition$.value)
75
- },
76
- {
77
- id: 'clearselection',
78
- icon: 'select-off',
79
- title: 'igo.integration.workspace.clearSelection.title',
80
- tooltip: 'igo.integration.workspace.clearSelection.tooltip',
81
- handler: (ws) => {
82
- ws.entityStore.state.updateMany(ws.entityStore.view.all(), { selected: false });
83
- },
84
- args: [workspace],
85
- availability: (ws) => noElementSelected(ws)
86
- },
87
- {
88
- id: 'wfsDownload',
89
- icon: 'file-export',
90
- title: 'igo.integration.workspace.download.title',
91
- tooltip: 'igo.integration.workspace.download.tooltip',
92
- handler: (ws) => {
93
- const filterStrategy = ws.entityStore.getStrategyOfType(EntityStoreFilterCustomFuncStrategy);
94
- const filterSelectionStrategy = ws.entityStore.getStrategyOfType(EntityStoreFilterSelectionStrategy);
95
- const layersWithSelection = filterSelectionStrategy.active ? [ws.layer.id] : [];
96
- this.toolState.toolToActivateFromOptions({
97
- tool: 'importExport',
98
- options: { layers: [ws.layer.id], featureInMapExtent: filterStrategy.active, layersWithSelection }
99
- });
100
- },
101
- args: [workspace]
102
- },
103
- {
104
- id: 'ogcFilter',
105
- icon: 'filter',
106
- title: 'igo.integration.workspace.ogcFilter.title',
107
- tooltip: 'igo.integration.workspace.ogcFilter.tooltip',
108
- handler: (widget, ws) => {
109
- ws.activateWidget(widget, {
110
- map: ws.map,
111
- layer: ws.layer
112
- });
113
- },
114
- args: [this.ogcFilterWidget, workspace]
115
- },
116
- {
117
- id: 'maximize',
118
- title: this.languageService.translate.instant('igo.integration.workspace.maximize'),
119
- tooltip: this.languageService.translate.instant('igo.integration.workspace.maximizeTooltip'),
120
- icon: 'resize',
121
- display: () => {
122
- return this.maximize$.pipe(map((v) => !v && !this.mediaService.isMobile()));
123
- },
124
- handler: () => {
125
- if (!this.mediaService.isMobile()) {
126
- this.maximize$.next(true);
127
- }
128
- },
129
- },
130
- {
131
- id: 'standardExtent',
132
- title: this.languageService.translate.instant('igo.integration.workspace.standardExtent'),
133
- tooltip: this.languageService.translate.instant('igo.integration.workspace.standardExtentTooltip'),
134
- icon: 'resize',
135
- display: () => {
136
- return this.maximize$.pipe(map((v) => v && !this.mediaService.isMobile()));
137
- },
138
- handler: () => {
139
- this.maximize$.next(false);
140
- }
141
- }
142
- ];
143
- return workspace.layer.dataSource.options.ogcFilters?.enabled ?
144
- actions : actions.filter(action => action.id !== 'ogcFilter');
145
- }
146
- }
147
- WfsActionsService.ɵfac = function WfsActionsService_Factory(t) { return new (t || WfsActionsService)(i0.ɵɵinject(OgcFilterWidget), i0.ɵɵinject(i1.StorageState), i0.ɵɵinject(i2.LanguageService), i0.ɵɵinject(i2.MediaService), i0.ɵɵinject(i3.ToolState)); };
148
- WfsActionsService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: WfsActionsService, factory: WfsActionsService.ɵfac, providedIn: 'root' });
149
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WfsActionsService, [{
150
- type: Injectable,
151
- args: [{
152
- providedIn: 'root'
153
- }]
154
- }], function () { return [{ type: i4.Widget, decorators: [{
155
- type: Inject,
156
- args: [OgcFilterWidget]
157
- }] }, { type: i1.StorageState }, { type: i2.LanguageService }, { type: i2.MediaService }, { type: i3.ToolState }]; }, null); })();
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ZzLWFjdGlvbnMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2ludGVncmF0aW9uL3NyYy9saWIvd29ya3NwYWNlL3NoYXJlZC93ZnMtYWN0aW9ucy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRTlELE9BQU8sRUFFTCxtQ0FBbUMsRUFDbkMsa0NBQWtDLEVBRW5DLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3JELE9BQU8sRUFFTCw4QkFBOEIsRUFDOUIsaUJBQWlCLEVBRWpCLGVBQWUsR0FFaEIsTUFBTSxXQUFXLENBQUM7QUFDbkIsT0FBTyxFQUF1Qyx1QkFBdUIsRUFBZ0MsTUFBTSxZQUFZLENBQUM7QUFFeEgsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7OztBQUtuRCxNQUFNLE9BQU8saUJBQWlCO0lBbUI1QixZQUNtQyxlQUF1QixFQUNoRCxZQUEwQixFQUMzQixlQUFnQyxFQUMvQixZQUEwQixFQUMxQixTQUFvQjtRQUpLLG9CQUFlLEdBQWYsZUFBZSxDQUFRO1FBQ2hELGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzNCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUMvQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBdEJ2QixjQUFTLEdBQTZCLElBQUksZUFBZSxDQUM5RCxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBWSxDQUN4RCxDQUFDO1FBRUYsOEJBQXlCLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pGLHdGQUF3RjtRQUN4RixjQUFTLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBZ0JoQyxDQUFDO0lBYmxDLElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBWSxDQUFDO0lBQ3hELENBQUM7SUFTRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUNULFNBQXVCLEVBQ3ZCLDhCQUF3RCxFQUN4RCx5QkFBbUQ7UUFFbkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FDL0IsU0FBUyxFQUNULDhCQUE4QixFQUM5Qix5QkFBeUIsQ0FDeEIsQ0FBQztRQUNKLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxZQUFZLENBQ1YsU0FBdUIsRUFDdkIsOEJBQXdELEVBQ3hELHlCQUFtRDtRQUVuRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWM7YUFDdEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLGFBQWtDLEVBQUUsRUFBRSxDQUNyRCxhQUFhLEVBQUUsR0FBRyxLQUFLLFVBQVUsSUFBSSxhQUFhLEVBQUUsS0FBSyxLQUFLLHVCQUF1QixDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ2hHLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbkMsY0FBYyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDakQsQ0FBQyxDQUFDLENBQUM7UUFDTCxNQUFNLE9BQU8sR0FBRztZQUNkO2dCQUNFLEVBQUUsRUFBRSxVQUFVO2dCQUNkLFFBQVEsRUFBRSxJQUFJO2dCQUNkLEtBQUssRUFBRSwwQ0FBMEM7Z0JBQ2pELE9BQU8sRUFBRSw0Q0FBNEM7Z0JBQ3JELGNBQWMsRUFBRSxJQUFJLENBQUMsU0FBUztnQkFDOUIsT0FBTyxFQUFFLEdBQUcsRUFBRTtvQkFDWixjQUFjLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztvQkFDL0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFZLENBQUMsQ0FBQztnQkFDdkYsQ0FBQzthQUNGO1lBQ0Q7Z0JBQ0UsRUFBRSxFQUFFLG1CQUFtQjtnQkFDdkIsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsS0FBSyxFQUFFLDZDQUE2QztnQkFDcEQsT0FBTyxFQUFFLDhCQUE4QixDQUFDLFNBQVMsQ0FBQztnQkFDbEQsY0FBYyxFQUFFLDhCQUE4QjtnQkFDOUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLDhCQUE4QixDQUFDLElBQUksQ0FBQyxDQUFDLDhCQUE4QixDQUFDLEtBQUssQ0FBQzthQUMxRjtZQUNEO2dCQUNFLEVBQUUsRUFBRSxjQUFjO2dCQUNsQixRQUFRLEVBQUUsSUFBSTtnQkFDZCxLQUFLLEVBQUUsMENBQTBDO2dCQUNqRCxPQUFPLEVBQUUsMENBQTBDO2dCQUNuRCxjQUFjLEVBQUUseUJBQXlCO2dCQUN6QyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLENBQUMseUJBQXlCLENBQUMsS0FBSyxDQUFDO2FBQ2hGO1lBQ0Q7Z0JBQ0UsRUFBRSxFQUFFLGdCQUFnQjtnQkFDcEIsSUFBSSxFQUFFLFlBQVk7Z0JBQ2xCLEtBQUssRUFBRSxnREFBZ0Q7Z0JBQ3ZELE9BQU8sRUFBRSxrREFBa0Q7Z0JBQzNELE9BQU8sRUFBRSxDQUFDLEVBQWdCLEVBQUUsRUFBRTtvQkFDNUIsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7Z0JBQ2xGLENBQUM7Z0JBQ0QsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDO2dCQUNqQixZQUFZLEVBQUUsQ0FBQyxFQUFnQixFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7YUFDMUQ7WUFDRDtnQkFDRSxFQUFFLEVBQUUsYUFBYTtnQkFDakIsSUFBSSxFQUFFLGFBQWE7Z0JBQ25CLEtBQUssRUFBRSwwQ0FBMEM7Z0JBQ2pELE9BQU8sRUFBRSw0Q0FBNEM7Z0JBQ3JELE9BQU8sRUFBRSxDQUFDLEVBQWdCLEVBQUUsRUFBRTtvQkFDNUIsTUFBTSxjQUFjLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO29CQUM3RixNQUFNLHVCQUF1QixHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLENBQUMsa0NBQWtDLENBQUMsQ0FBQztvQkFDckcsTUFBTSxtQkFBbUIsR0FBRyx1QkFBdUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO29CQUNoRixJQUFJLENBQUMsU0FBUyxDQUFDLHlCQUF5QixDQUFDO3dCQUN2QyxJQUFJLEVBQUUsY0FBYzt3QkFDcEIsT0FBTyxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0IsRUFBRSxjQUFjLENBQUMsTUFBTSxFQUFFLG1CQUFtQixFQUFtQjtxQkFDcEgsQ0FBQyxDQUFDO2dCQUNMLENBQUM7Z0JBQ0QsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDO2FBQ2xCO1lBQ0Q7Z0JBQ0UsRUFBRSxFQUFFLFdBQVc7Z0JBQ2YsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsS0FBSyxFQUFFLDJDQUEyQztnQkFDbEQsT0FBTyxFQUFFLDZDQUE2QztnQkFDdEQsT0FBTyxFQUFFLENBQUMsTUFBYyxFQUFFLEVBQWdCLEVBQUUsRUFBRTtvQkFDNUMsRUFBRSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUU7d0JBQ3hCLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRzt3QkFDWCxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUs7cUJBQ2hCLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsU0FBUyxDQUFDO2FBQ3hDO1lBQ0Q7Z0JBQ0UsRUFBRSxFQUFFLFVBQVU7Z0JBQ2QsS0FBSyxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxvQ0FBb0MsQ0FBQztnQkFDbkYsT0FBTyxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FDN0MsMkNBQTJDLENBQzVDO2dCQUNELElBQUksRUFBRSxRQUFRO2dCQUNkLE9BQU8sRUFBRSxHQUFHLEVBQUU7b0JBQ1osT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQzlFLENBQUM7Z0JBQ0QsT0FBTyxFQUFFLEdBQUcsRUFBRTtvQkFDWixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBRTt3QkFDakMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7cUJBQzNCO2dCQUNILENBQUM7YUFDRjtZQUNEO2dCQUNFLEVBQUUsRUFBRSxnQkFBZ0I7Z0JBQ3BCLEtBQUssRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQzNDLDBDQUEwQyxDQUMzQztnQkFDRCxPQUFPLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUM3QyxpREFBaUQsQ0FDbEQ7Z0JBQ0QsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsT0FBTyxFQUFFLEdBQUcsRUFBRTtvQkFDWixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQzdFLENBQUM7Z0JBQ0QsT0FBTyxFQUFFLEdBQUcsRUFBRTtvQkFDWixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDN0IsQ0FBQzthQUNGO1NBQ0YsQ0FBQztRQUNGLE9BQVEsU0FBUyxDQUFDLEtBQUssQ0FBQyxVQUFzQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDNUYsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxXQUFXLENBQUMsQ0FBQztJQUNoRSxDQUFDOztrRkFqS1UsaUJBQWlCLGNBb0JsQixlQUFlO3VFQXBCZCxpQkFBaUIsV0FBakIsaUJBQWlCLG1CQUZoQixNQUFNO3VGQUVQLGlCQUFpQjtjQUg3QixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7O3NCQXFCSSxNQUFNO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHtcclxuICBBY3Rpb24sXHJcbiAgRW50aXR5U3RvcmVGaWx0ZXJDdXN0b21GdW5jU3RyYXRlZ3ksXHJcbiAgRW50aXR5U3RvcmVGaWx0ZXJTZWxlY3Rpb25TdHJhdGVneSxcclxuICBXaWRnZXRcclxufSBmcm9tICdAaWdvMi9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtcclxuICBXZnNXb3Jrc3BhY2UsXHJcbiAgbWFwRXh0ZW50U3RyYXRlZ3lBY3RpdmVUb29sVGlwLFxyXG4gIG5vRWxlbWVudFNlbGVjdGVkLFxyXG4gIEV4cG9ydE9wdGlvbnMsXHJcbiAgT2djRmlsdGVyV2lkZ2V0LFxyXG4gIE9nY0ZpbHRlcmFibGVEYXRhU291cmNlLFxyXG59IGZyb20gJ0BpZ28yL2dlbyc7XHJcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlLCBTdG9yYWdlU2VydmljZUV2ZW50LCBTdG9yYWdlU2VydmljZUV2ZW50RW51bSwgTGFuZ3VhZ2VTZXJ2aWNlLCBNZWRpYVNlcnZpY2V9IGZyb20gJ0BpZ28yL2NvcmUnO1xyXG5pbXBvcnQgeyBTdG9yYWdlU3RhdGUgfSBmcm9tICcuLi8uLi9zdG9yYWdlL3N0b3JhZ2Uuc3RhdGUnO1xyXG5pbXBvcnQgeyBtYXAsIHNraXBXaGlsZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgVG9vbFN0YXRlIH0gZnJvbSAnLi4vLi4vdG9vbC90b29sLnN0YXRlJztcclxuaW1wb3J0IHsgaGFuZGxlWm9vbUF1dG8gfSBmcm9tICcuL3dvcmtzcGFjZS51dGlscyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBXZnNBY3Rpb25zU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcblxyXG4gIHB1YmxpYyBtYXhpbWl6ZSQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoXHJcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldCgnd29ya3NwYWNlTWF4aW1pemUnKSBhcyBib29sZWFuXHJcbiAgKTtcclxuXHJcbiAgc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XHJcbiAgLy8gcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRydWUpO1xyXG4gIHpvb21BdXRvJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XHJcbiAgcHJpdmF0ZSBzdG9yYWdlQ2hhbmdlJCQ6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgZ2V0IHN0b3JhZ2VTZXJ2aWNlKCk6IFN0b3JhZ2VTZXJ2aWNlIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTdGF0ZS5zdG9yYWdlU2VydmljZTtcclxuICB9XHJcblxyXG4gIGdldCB6b29tQXV0bygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldCgnem9vbUF1dG8nKSBhcyBib29sZWFuO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASW5qZWN0KE9nY0ZpbHRlcldpZGdldCkgcHJpdmF0ZSBvZ2NGaWx0ZXJXaWRnZXQ6IFdpZGdldCxcclxuICAgIHByaXZhdGUgc3RvcmFnZVN0YXRlOiBTdG9yYWdlU3RhdGUsXHJcbiAgICBwdWJsaWMgbGFuZ3VhZ2VTZXJ2aWNlOiBMYW5ndWFnZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG1lZGlhU2VydmljZTogTWVkaWFTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0b29sU3RhdGU6IFRvb2xTdGF0ZSkge31cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zdG9yYWdlQ2hhbmdlJCQpIHtcclxuICAgICAgdGhpcy5zdG9yYWdlQ2hhbmdlJCQudW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGxvYWRBY3Rpb25zKFxyXG4gICAgd29ya3NwYWNlOiBXZnNXb3Jrc3BhY2UsXHJcbiAgICByb3dzSW5NYXBFeHRlbnRDaGVja0NvbmRpdGlvbiQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPixcclxuICAgIHNlbGVjdE9ubHlDaGVja0NvbmRpdGlvbiQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPlxyXG4gICAgKSB7XHJcbiAgICBjb25zdCBhY3Rpb25zID0gdGhpcy5idWlsZEFjdGlvbnMoXHJcbiAgICAgIHdvcmtzcGFjZSxcclxuICAgICAgcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kLFxyXG4gICAgICBzZWxlY3RPbmx5Q2hlY2tDb25kaXRpb24kXHJcbiAgICAgICk7XHJcbiAgICB3b3Jrc3BhY2UuYWN0aW9uU3RvcmUubG9hZChhY3Rpb25zKTtcclxuICB9XHJcblxyXG4gIGJ1aWxkQWN0aW9ucyhcclxuICAgIHdvcmtzcGFjZTogV2ZzV29ya3NwYWNlLFxyXG4gICAgcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4sXHJcbiAgICBzZWxlY3RPbmx5Q2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj5cclxuICAgICk6IEFjdGlvbltdIHtcclxuICAgIHRoaXMuem9vbUF1dG8kLm5leHQodGhpcy56b29tQXV0byk7XHJcbiAgICB0aGlzLnN0b3JhZ2VDaGFuZ2UkJCA9IHRoaXMuc3RvcmFnZVNlcnZpY2Uuc3RvcmFnZUNoYW5nZSRcclxuICAgICAgLnBpcGUoc2tpcFdoaWxlKChzdG9yYWdlQ2hhbmdlOiBTdG9yYWdlU2VydmljZUV2ZW50KSA9PlxyXG4gICAgICAgIHN0b3JhZ2VDaGFuZ2U/LmtleSAhPT0gJ3pvb21BdXRvJyB8fCBzdG9yYWdlQ2hhbmdlPy5ldmVudCA9PT0gU3RvcmFnZVNlcnZpY2VFdmVudEVudW0uQ0xFQVJFRCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuem9vbUF1dG8kLm5leHQodGhpcy56b29tQXV0byk7XHJcbiAgICAgICAgaGFuZGxlWm9vbUF1dG8od29ya3NwYWNlLCB0aGlzLnN0b3JhZ2VTZXJ2aWNlKTtcclxuICAgICAgfSk7XHJcbiAgICBjb25zdCBhY3Rpb25zID0gW1xyXG4gICAgICB7XHJcbiAgICAgICAgaWQ6ICd6b29tQXV0bycsXHJcbiAgICAgICAgY2hlY2tib3g6IHRydWUsXHJcbiAgICAgICAgdGl0bGU6ICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLnpvb21BdXRvLnRpdGxlJyxcclxuICAgICAgICB0b29sdGlwOiAnaWdvLmludGVncmF0aW9uLndvcmtzcGFjZS56b29tQXV0by50b29sdGlwJyxcclxuICAgICAgICBjaGVja0NvbmRpdGlvbjogdGhpcy56b29tQXV0byQsXHJcbiAgICAgICAgaGFuZGxlcjogKCkgPT4ge1xyXG4gICAgICAgICAgaGFuZGxlWm9vbUF1dG8od29ya3NwYWNlLCB0aGlzLnN0b3JhZ2VTZXJ2aWNlKTtcclxuICAgICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0KCd6b29tQXV0bycsICF0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldCgnem9vbUF1dG8nKSBhcyBib29sZWFuKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBpZDogJ2ZpbHRlckluTWFwRXh0ZW50JyxcclxuICAgICAgICBjaGVja2JveDogdHJ1ZSxcclxuICAgICAgICB0aXRsZTogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2UuaW5NYXBFeHRlbnQudGl0bGUnLFxyXG4gICAgICAgIHRvb2x0aXA6IG1hcEV4dGVudFN0cmF0ZWd5QWN0aXZlVG9vbFRpcCh3b3Jrc3BhY2UpLFxyXG4gICAgICAgIGNoZWNrQ29uZGl0aW9uOiByb3dzSW5NYXBFeHRlbnRDaGVja0NvbmRpdGlvbiQsXHJcbiAgICAgICAgaGFuZGxlcjogKCkgPT4gcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kLm5leHQoIXJvd3NJbk1hcEV4dGVudENoZWNrQ29uZGl0aW9uJC52YWx1ZSlcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIGlkOiAnc2VsZWN0ZWRPbmx5JyxcclxuICAgICAgICBjaGVja2JveDogdHJ1ZSxcclxuICAgICAgICB0aXRsZTogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2Uuc2VsZWN0ZWQudGl0bGUnLFxyXG4gICAgICAgIHRvb2x0aXA6ICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLnNlbGVjdGVkLnRpdGxlJyxcclxuICAgICAgICBjaGVja0NvbmRpdGlvbjogc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJCxcclxuICAgICAgICBoYW5kbGVyOiAoKSA9PiBzZWxlY3RPbmx5Q2hlY2tDb25kaXRpb24kLm5leHQoIXNlbGVjdE9ubHlDaGVja0NvbmRpdGlvbiQudmFsdWUpXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBpZDogJ2NsZWFyc2VsZWN0aW9uJyxcclxuICAgICAgICBpY29uOiAnc2VsZWN0LW9mZicsXHJcbiAgICAgICAgdGl0bGU6ICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLmNsZWFyU2VsZWN0aW9uLnRpdGxlJyxcclxuICAgICAgICB0b29sdGlwOiAnaWdvLmludGVncmF0aW9uLndvcmtzcGFjZS5jbGVhclNlbGVjdGlvbi50b29sdGlwJyxcclxuICAgICAgICBoYW5kbGVyOiAod3M6IFdmc1dvcmtzcGFjZSkgPT4ge1xyXG4gICAgICAgICAgd3MuZW50aXR5U3RvcmUuc3RhdGUudXBkYXRlTWFueSh3cy5lbnRpdHlTdG9yZS52aWV3LmFsbCgpLCB7IHNlbGVjdGVkOiBmYWxzZSB9KTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGFyZ3M6IFt3b3Jrc3BhY2VdLFxyXG4gICAgICAgIGF2YWlsYWJpbGl0eTogKHdzOiBXZnNXb3Jrc3BhY2UpID0+IG5vRWxlbWVudFNlbGVjdGVkKHdzKVxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgaWQ6ICd3ZnNEb3dubG9hZCcsXHJcbiAgICAgICAgaWNvbjogJ2ZpbGUtZXhwb3J0JyxcclxuICAgICAgICB0aXRsZTogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2UuZG93bmxvYWQudGl0bGUnLFxyXG4gICAgICAgIHRvb2x0aXA6ICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLmRvd25sb2FkLnRvb2x0aXAnLFxyXG4gICAgICAgIGhhbmRsZXI6ICh3czogV2ZzV29ya3NwYWNlKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBmaWx0ZXJTdHJhdGVneSA9IHdzLmVudGl0eVN0b3JlLmdldFN0cmF0ZWd5T2ZUeXBlKEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5KTtcclxuICAgICAgICAgIGNvbnN0IGZpbHRlclNlbGVjdGlvblN0cmF0ZWd5ID0gd3MuZW50aXR5U3RvcmUuZ2V0U3RyYXRlZ3lPZlR5cGUoRW50aXR5U3RvcmVGaWx0ZXJTZWxlY3Rpb25TdHJhdGVneSk7XHJcbiAgICAgICAgICBjb25zdCBsYXllcnNXaXRoU2VsZWN0aW9uID0gZmlsdGVyU2VsZWN0aW9uU3RyYXRlZ3kuYWN0aXZlID8gW3dzLmxheWVyLmlkXSA6IFtdO1xyXG4gICAgICAgICAgdGhpcy50b29sU3RhdGUudG9vbFRvQWN0aXZhdGVGcm9tT3B0aW9ucyh7XHJcbiAgICAgICAgICAgIHRvb2w6ICdpbXBvcnRFeHBvcnQnLFxyXG4gICAgICAgICAgICBvcHRpb25zOiB7IGxheWVyczogW3dzLmxheWVyLmlkXSwgZmVhdHVyZUluTWFwRXh0ZW50OiBmaWx0ZXJTdHJhdGVneS5hY3RpdmUsIGxheWVyc1dpdGhTZWxlY3Rpb24gfSBhcyBFeHBvcnRPcHRpb25zXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGFyZ3M6IFt3b3Jrc3BhY2VdXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBpZDogJ29nY0ZpbHRlcicsXHJcbiAgICAgICAgaWNvbjogJ2ZpbHRlcicsXHJcbiAgICAgICAgdGl0bGU6ICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLm9nY0ZpbHRlci50aXRsZScsXHJcbiAgICAgICAgdG9vbHRpcDogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2Uub2djRmlsdGVyLnRvb2x0aXAnLFxyXG4gICAgICAgIGhhbmRsZXI6ICh3aWRnZXQ6IFdpZGdldCwgd3M6IFdmc1dvcmtzcGFjZSkgPT4ge1xyXG4gICAgICAgICAgd3MuYWN0aXZhdGVXaWRnZXQod2lkZ2V0LCB7XHJcbiAgICAgICAgICAgIG1hcDogd3MubWFwLFxyXG4gICAgICAgICAgICBsYXllcjogd3MubGF5ZXJcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgYXJnczogW3RoaXMub2djRmlsdGVyV2lkZ2V0LCB3b3Jrc3BhY2VdXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBpZDogJ21heGltaXplJyxcclxuICAgICAgICB0aXRsZTogdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2UubWF4aW1pemUnKSxcclxuICAgICAgICB0b29sdGlwOiB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudChcclxuICAgICAgICAgICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLm1heGltaXplVG9vbHRpcCdcclxuICAgICAgICApLFxyXG4gICAgICAgIGljb246ICdyZXNpemUnLFxyXG4gICAgICAgIGRpc3BsYXk6ICgpID0+IHtcclxuICAgICAgICAgIHJldHVybiB0aGlzLm1heGltaXplJC5waXBlKG1hcCgodikgPT4gIXYgJiYgIXRoaXMubWVkaWFTZXJ2aWNlLmlzTW9iaWxlKCkpKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGhhbmRsZXI6ICgpID0+IHtcclxuICAgICAgICAgIGlmICghdGhpcy5tZWRpYVNlcnZpY2UuaXNNb2JpbGUoKSkge1xyXG4gICAgICAgICAgICB0aGlzLm1heGltaXplJC5uZXh0KHRydWUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBpZDogJ3N0YW5kYXJkRXh0ZW50JyxcclxuICAgICAgICB0aXRsZTogdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXHJcbiAgICAgICAgICAnaWdvLmludGVncmF0aW9uLndvcmtzcGFjZS5zdGFuZGFyZEV4dGVudCdcclxuICAgICAgICApLFxyXG4gICAgICAgIHRvb2x0aXA6IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2Uuc3RhbmRhcmRFeHRlbnRUb29sdGlwJ1xyXG4gICAgICAgICksXHJcbiAgICAgICAgaWNvbjogJ3Jlc2l6ZScsXHJcbiAgICAgICAgZGlzcGxheTogKCkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHRoaXMubWF4aW1pemUkLnBpcGUobWFwKCh2KSA9PiB2ICYmICF0aGlzLm1lZGlhU2VydmljZS5pc01vYmlsZSgpKSk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBoYW5kbGVyOiAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLm1heGltaXplJC5uZXh0KGZhbHNlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIF07XHJcbiAgICByZXR1cm4gKHdvcmtzcGFjZS5sYXllci5kYXRhU291cmNlIGFzIE9nY0ZpbHRlcmFibGVEYXRhU291cmNlKS5vcHRpb25zLm9nY0ZpbHRlcnM/LmVuYWJsZWQgP1xyXG4gICAgYWN0aW9ucyA6IGFjdGlvbnMuZmlsdGVyKGFjdGlvbiA9PiBhY3Rpb24uaWQgIT09ICdvZ2NGaWx0ZXInKTtcclxuICB9XHJcbn1cclxuIl19
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { EntityStoreFilterCustomFuncStrategy, EntityStoreFilterSelectionStrategy } from '@igo2/common';
3
+ import { BehaviorSubject } from 'rxjs';
4
+ import { mapExtentStrategyActiveToolTip, noElementSelected, OgcFilterWidget, } from '@igo2/geo';
5
+ import { StorageServiceEventEnum } from '@igo2/core';
6
+ import { map, skipWhile } from 'rxjs/operators';
7
+ import { handleZoomAuto } from './workspace.utils';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../../storage/storage.state";
10
+ import * as i2 from "@igo2/core";
11
+ import * as i3 from "../../tool/tool.state";
12
+ import * as i4 from "@igo2/common";
13
+ export class WfsActionsService {
14
+ constructor(ogcFilterWidget, storageState, languageService, mediaService, toolState) {
15
+ this.ogcFilterWidget = ogcFilterWidget;
16
+ this.storageState = storageState;
17
+ this.languageService = languageService;
18
+ this.mediaService = mediaService;
19
+ this.toolState = toolState;
20
+ this.maximize$ = new BehaviorSubject(this.storageService.get('workspaceMaximize'));
21
+ this.selectOnlyCheckCondition$ = new BehaviorSubject(false);
22
+ // rowsInMapExtentCheckCondition$: BehaviorSubject<boolean> = new BehaviorSubject(true);
23
+ this.zoomAuto$ = new BehaviorSubject(false);
24
+ }
25
+ get storageService() {
26
+ return this.storageState.storageService;
27
+ }
28
+ get zoomAuto() {
29
+ return this.storageService.get('zoomAuto');
30
+ }
31
+ ngOnDestroy() {
32
+ if (this.storageChange$$) {
33
+ this.storageChange$$.unsubscribe();
34
+ }
35
+ }
36
+ loadActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
37
+ const actions = this.buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$);
38
+ workspace.actionStore.load(actions);
39
+ }
40
+ buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
41
+ this.zoomAuto$.next(this.zoomAuto);
42
+ this.storageChange$$ = this.storageService.storageChange$
43
+ .pipe(skipWhile((storageChange) => storageChange?.key !== 'zoomAuto' || storageChange?.event === StorageServiceEventEnum.CLEARED))
44
+ .subscribe(() => {
45
+ this.zoomAuto$.next(this.zoomAuto);
46
+ handleZoomAuto(workspace, this.storageService);
47
+ });
48
+ const actions = [
49
+ {
50
+ id: 'zoomAuto',
51
+ checkbox: true,
52
+ title: 'igo.integration.workspace.zoomAuto.title',
53
+ tooltip: 'igo.integration.workspace.zoomAuto.tooltip',
54
+ checkCondition: this.zoomAuto$,
55
+ handler: () => {
56
+ handleZoomAuto(workspace, this.storageService);
57
+ this.storageService.set('zoomAuto', !this.storageService.get('zoomAuto'));
58
+ }
59
+ },
60
+ {
61
+ id: 'filterInMapExtent',
62
+ checkbox: true,
63
+ title: 'igo.integration.workspace.inMapExtent.title',
64
+ tooltip: mapExtentStrategyActiveToolTip(workspace),
65
+ checkCondition: rowsInMapExtentCheckCondition$,
66
+ handler: () => rowsInMapExtentCheckCondition$.next(!rowsInMapExtentCheckCondition$.value)
67
+ },
68
+ {
69
+ id: 'selectedOnly',
70
+ checkbox: true,
71
+ title: 'igo.integration.workspace.selected.title',
72
+ tooltip: 'igo.integration.workspace.selected.title',
73
+ checkCondition: selectOnlyCheckCondition$,
74
+ handler: () => selectOnlyCheckCondition$.next(!selectOnlyCheckCondition$.value)
75
+ },
76
+ {
77
+ id: 'clearselection',
78
+ icon: 'select-off',
79
+ title: 'igo.integration.workspace.clearSelection.title',
80
+ tooltip: 'igo.integration.workspace.clearSelection.tooltip',
81
+ handler: (ws) => {
82
+ ws.entityStore.state.updateMany(ws.entityStore.view.all(), { selected: false });
83
+ },
84
+ args: [workspace],
85
+ availability: (ws) => noElementSelected(ws)
86
+ },
87
+ {
88
+ id: 'wfsDownload',
89
+ icon: 'file-export',
90
+ title: 'igo.integration.workspace.download.title',
91
+ tooltip: 'igo.integration.workspace.download.tooltip',
92
+ handler: (ws) => {
93
+ const filterStrategy = ws.entityStore.getStrategyOfType(EntityStoreFilterCustomFuncStrategy);
94
+ const filterSelectionStrategy = ws.entityStore.getStrategyOfType(EntityStoreFilterSelectionStrategy);
95
+ const layersWithSelection = filterSelectionStrategy.active ? [ws.layer.id] : [];
96
+ this.toolState.toolToActivateFromOptions({
97
+ tool: 'importExport',
98
+ options: { layers: [ws.layer.id], featureInMapExtent: filterStrategy.active, layersWithSelection }
99
+ });
100
+ },
101
+ args: [workspace]
102
+ },
103
+ {
104
+ id: 'ogcFilter',
105
+ icon: 'filter',
106
+ title: 'igo.integration.workspace.ogcFilter.title',
107
+ tooltip: 'igo.integration.workspace.ogcFilter.tooltip',
108
+ handler: (widget, ws) => {
109
+ ws.activateWidget(widget, {
110
+ map: ws.map,
111
+ layer: ws.layer
112
+ });
113
+ },
114
+ args: [this.ogcFilterWidget, workspace]
115
+ },
116
+ {
117
+ id: 'maximize',
118
+ title: this.languageService.translate.instant('igo.integration.workspace.maximize'),
119
+ tooltip: this.languageService.translate.instant('igo.integration.workspace.maximizeTooltip'),
120
+ icon: 'resize',
121
+ display: () => {
122
+ return this.maximize$.pipe(map((v) => !v && !this.mediaService.isMobile()));
123
+ },
124
+ handler: () => {
125
+ if (!this.mediaService.isMobile()) {
126
+ this.maximize$.next(true);
127
+ }
128
+ },
129
+ },
130
+ {
131
+ id: 'standardExtent',
132
+ title: this.languageService.translate.instant('igo.integration.workspace.standardExtent'),
133
+ tooltip: this.languageService.translate.instant('igo.integration.workspace.standardExtentTooltip'),
134
+ icon: 'resize',
135
+ display: () => {
136
+ return this.maximize$.pipe(map((v) => v && !this.mediaService.isMobile()));
137
+ },
138
+ handler: () => {
139
+ this.maximize$.next(false);
140
+ }
141
+ }
142
+ ];
143
+ return workspace.layer.dataSource.options.ogcFilters?.enabled ?
144
+ actions : actions.filter(action => action.id !== 'ogcFilter');
145
+ }
146
+ }
147
+ WfsActionsService.ɵfac = function WfsActionsService_Factory(t) { return new (t || WfsActionsService)(i0.ɵɵinject(OgcFilterWidget), i0.ɵɵinject(i1.StorageState), i0.ɵɵinject(i2.LanguageService), i0.ɵɵinject(i2.MediaService), i0.ɵɵinject(i3.ToolState)); };
148
+ WfsActionsService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: WfsActionsService, factory: WfsActionsService.ɵfac, providedIn: 'root' });
149
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WfsActionsService, [{
150
+ type: Injectable,
151
+ args: [{
152
+ providedIn: 'root'
153
+ }]
154
+ }], function () { return [{ type: i4.Widget, decorators: [{
155
+ type: Inject,
156
+ args: [OgcFilterWidget]
157
+ }] }, { type: i1.StorageState }, { type: i2.LanguageService }, { type: i2.MediaService }, { type: i3.ToolState }]; }, null); })();
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ZzLWFjdGlvbnMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2ludGVncmF0aW9uL3NyYy9saWIvd29ya3NwYWNlL3NoYXJlZC93ZnMtYWN0aW9ucy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRTlELE9BQU8sRUFFTCxtQ0FBbUMsRUFDbkMsa0NBQWtDLEVBRW5DLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3JELE9BQU8sRUFFTCw4QkFBOEIsRUFDOUIsaUJBQWlCLEVBRWpCLGVBQWUsR0FFaEIsTUFBTSxXQUFXLENBQUM7QUFDbkIsT0FBTyxFQUF1Qyx1QkFBdUIsRUFBZ0MsTUFBTSxZQUFZLENBQUM7QUFFeEgsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7OztBQUtuRCxNQUFNLE9BQU8saUJBQWlCO0lBbUI1QixZQUNtQyxlQUF1QixFQUNoRCxZQUEwQixFQUMzQixlQUFnQyxFQUMvQixZQUEwQixFQUMxQixTQUFvQjtRQUpLLG9CQUFlLEdBQWYsZUFBZSxDQUFRO1FBQ2hELGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzNCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUMvQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBdEJ2QixjQUFTLEdBQTZCLElBQUksZUFBZSxDQUM5RCxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBWSxDQUN4RCxDQUFDO1FBRUYsOEJBQXlCLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FB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QUNFLEVBQUUsRUFBRSxnQkFBZ0I7Z0JBQ3BCLEtBQUssRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQzNDLDBDQUEwQyxDQUMzQztnQkFDRCxPQUFPLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUM3QyxpREFBaUQsQ0FDbEQ7Z0JBQ0QsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsT0FBTyxFQUFFLEdBQUcsRUFBRTtvQkFDWixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQzdFLENBQUM7Z0JBQ0QsT0FBTyxFQUFFLEdBQUcsRUFBRTtvQkFDWixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDN0IsQ0FBQzthQUNGO1NBQ0YsQ0FBQztRQUNGLE9BQVEsU0FBUyxDQUFDLEtBQUssQ0FBQyxVQUFzQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDNUYsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxXQUFXLENBQUMsQ0FBQztJQUNoRSxDQUFDOztrRkFqS1UsaUJBQWlCLGNBb0JsQixlQUFlO3VFQXBCZCxpQkFBaUIsV0FBakIsaUJBQWlCLG1CQUZoQixNQUFNO3VGQUVQLGlCQUFpQjtjQUg3QixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7O3NCQXFCSSxNQUFNO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBBY3Rpb24sXG4gIEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5LFxuICBFbnRpdHlTdG9yZUZpbHRlclNlbGVjdGlvblN0cmF0ZWd5LFxuICBXaWRnZXRcbn0gZnJvbSAnQGlnbzIvY29tbW9uJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIFdmc1dvcmtzcGFjZSxcbiAgbWFwRXh0ZW50U3RyYXRlZ3lBY3RpdmVUb29sVGlwLFxuICBub0VsZW1lbnRTZWxlY3RlZCxcbiAgRXhwb3J0T3B0aW9ucyxcbiAgT2djRmlsdGVyV2lkZ2V0LFxuICBPZ2NGaWx0ZXJhYmxlRGF0YVNvdXJjZSxcbn0gZnJvbSAnQGlnbzIvZ2VvJztcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlLCBTdG9yYWdlU2VydmljZUV2ZW50LCBTdG9yYWdlU2VydmljZUV2ZW50RW51bSwgTGFuZ3VhZ2VTZXJ2aWNlLCBNZWRpYVNlcnZpY2V9IGZyb20gJ0BpZ28yL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmFnZVN0YXRlIH0gZnJvbSAnLi4vLi4vc3RvcmFnZS9zdG9yYWdlLnN0YXRlJztcbmltcG9ydCB7IG1hcCwgc2tpcFdoaWxlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVG9vbFN0YXRlIH0gZnJvbSAnLi4vLi4vdG9vbC90b29sLnN0YXRlJztcbmltcG9ydCB7IGhhbmRsZVpvb21BdXRvIH0gZnJvbSAnLi93b3Jrc3BhY2UudXRpbHMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBXZnNBY3Rpb25zU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG5cbiAgcHVibGljIG1heGltaXplJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldCgnd29ya3NwYWNlTWF4aW1pemUnKSBhcyBib29sZWFuXG4gICk7XG5cbiAgc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG4gIC8vIHJvd3NJbk1hcEV4dGVudENoZWNrQ29uZGl0aW9uJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh0cnVlKTtcbiAgem9vbUF1dG8kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgcHJpdmF0ZSBzdG9yYWdlQ2hhbmdlJCQ6IFN1YnNjcmlwdGlvbjtcblxuICBnZXQgc3RvcmFnZVNlcnZpY2UoKTogU3RvcmFnZVNlcnZpY2Uge1xuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTdGF0ZS5zdG9yYWdlU2VydmljZTtcbiAgfVxuXG4gIGdldCB6b29tQXV0bygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlU2VydmljZS5nZXQoJ3pvb21BdXRvJykgYXMgYm9vbGVhbjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoT2djRmlsdGVyV2lkZ2V0KSBwcml2YXRlIG9nY0ZpbHRlcldpZGdldDogV2lkZ2V0LFxuICAgIHByaXZhdGUgc3RvcmFnZVN0YXRlOiBTdG9yYWdlU3RhdGUsXG4gICAgcHVibGljIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgbWVkaWFTZXJ2aWNlOiBNZWRpYVNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0b29sU3RhdGU6IFRvb2xTdGF0ZSkge31cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdG9yYWdlQ2hhbmdlJCQpIHtcbiAgICAgIHRoaXMuc3RvcmFnZUNoYW5nZSQkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgbG9hZEFjdGlvbnMoXG4gICAgd29ya3NwYWNlOiBXZnNXb3Jrc3BhY2UsXG4gICAgcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4sXG4gICAgc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+XG4gICAgKSB7XG4gICAgY29uc3QgYWN0aW9ucyA9IHRoaXMuYnVpbGRBY3Rpb25zKFxuICAgICAgd29ya3NwYWNlLFxuICAgICAgcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kLFxuICAgICAgc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJFxuICAgICAgKTtcbiAgICB3b3Jrc3BhY2UuYWN0aW9uU3RvcmUubG9hZChhY3Rpb25zKTtcbiAgfVxuXG4gIGJ1aWxkQWN0aW9ucyhcbiAgICB3b3Jrc3BhY2U6IFdmc1dvcmtzcGFjZSxcbiAgICByb3dzSW5NYXBFeHRlbnRDaGVja0NvbmRpdGlvbiQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPixcbiAgICBzZWxlY3RPbmx5Q2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj5cbiAgICApOiBBY3Rpb25bXSB7XG4gICAgdGhpcy56b29tQXV0byQubmV4dCh0aGlzLnpvb21BdXRvKTtcbiAgICB0aGlzLnN0b3JhZ2VDaGFuZ2UkJCA9IHRoaXMuc3RvcmFnZVNlcnZpY2Uuc3RvcmFnZUNoYW5nZSRcbiAgICAgIC5waXBlKHNraXBXaGlsZSgoc3RvcmFnZUNoYW5nZTogU3RvcmFnZVNlcnZpY2VFdmVudCkgPT5cbiAgICAgICAgc3RvcmFnZUNoYW5nZT8ua2V5ICE9PSAnem9vbUF1dG8nIHx8IHN0b3JhZ2VDaGFuZ2U/LmV2ZW50ID09PSBTdG9yYWdlU2VydmljZUV2ZW50RW51bS5DTEVBUkVEKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnpvb21BdXRvJC5uZXh0KHRoaXMuem9vbUF1dG8pO1xuICAgICAgICBoYW5kbGVab29tQXV0byh3b3Jrc3BhY2UsIHRoaXMuc3RvcmFnZVNlcnZpY2UpO1xuICAgICAgfSk7XG4gICAgY29uc3QgYWN0aW9ucyA9IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICd6b29tQXV0bycsXG4gICAgICAgIGNoZWNrYm94OiB0cnVlLFxuICAgICAgICB0aXRsZTogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2Uuem9vbUF1dG8udGl0bGUnLFxuICAgICAgICB0b29sdGlwOiAnaWdvLmludGVncmF0aW9uLndvcmtzcGFjZS56b29tQXV0by50b29sdGlwJyxcbiAgICAgICAgY2hlY2tDb25kaXRpb246IHRoaXMuem9vbUF1dG8kLFxuICAgICAgICBoYW5kbGVyOiAoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlWm9vbUF1dG8od29ya3NwYWNlLCB0aGlzLnN0b3JhZ2VTZXJ2aWNlKTtcbiAgICAgICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldCgnem9vbUF1dG8nLCAhdGhpcy5zdG9yYWdlU2VydmljZS5nZXQoJ3pvb21BdXRvJykgYXMgYm9vbGVhbik7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnZmlsdGVySW5NYXBFeHRlbnQnLFxuICAgICAgICBjaGVja2JveDogdHJ1ZSxcbiAgICAgICAgdGl0bGU6ICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLmluTWFwRXh0ZW50LnRpdGxlJyxcbiAgICAgICAgdG9vbHRpcDogbWFwRXh0ZW50U3RyYXRlZ3lBY3RpdmVUb29sVGlwKHdvcmtzcGFjZSksXG4gICAgICAgIGNoZWNrQ29uZGl0aW9uOiByb3dzSW5NYXBFeHRlbnRDaGVja0NvbmRpdGlvbiQsXG4gICAgICAgIGhhbmRsZXI6ICgpID0+IHJvd3NJbk1hcEV4dGVudENoZWNrQ29uZGl0aW9uJC5uZXh0KCFyb3dzSW5NYXBFeHRlbnRDaGVja0NvbmRpdGlvbiQudmFsdWUpXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ3NlbGVjdGVkT25seScsXG4gICAgICAgIGNoZWNrYm94OiB0cnVlLFxuICAgICAgICB0aXRsZTogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2Uuc2VsZWN0ZWQudGl0bGUnLFxuICAgICAgICB0b29sdGlwOiAnaWdvLmludGVncmF0aW9uLndvcmtzcGFjZS5zZWxlY3RlZC50aXRsZScsXG4gICAgICAgIGNoZWNrQ29uZGl0aW9uOiBzZWxlY3RPbmx5Q2hlY2tDb25kaXRpb24kLFxuICAgICAgICBoYW5kbGVyOiAoKSA9PiBzZWxlY3RPbmx5Q2hlY2tDb25kaXRpb24kLm5leHQoIXNlbGVjdE9ubHlDaGVja0NvbmRpdGlvbiQudmFsdWUpXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ2NsZWFyc2VsZWN0aW9uJyxcbiAgICAgICAgaWNvbjogJ3NlbGVjdC1vZmYnLFxuICAgICAgICB0aXRsZTogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2UuY2xlYXJTZWxlY3Rpb24udGl0bGUnLFxuICAgICAgICB0b29sdGlwOiAnaWdvLmludGVncmF0aW9uLndvcmtzcGFjZS5jbGVhclNlbGVjdGlvbi50b29sdGlwJyxcbiAgICAgICAgaGFuZGxlcjogKHdzOiBXZnNXb3Jrc3BhY2UpID0+IHtcbiAgICAgICAgICB3cy5lbnRpdHlTdG9yZS5zdGF0ZS51cGRhdGVNYW55KHdzLmVudGl0eVN0b3JlLnZpZXcuYWxsKCksIHsgc2VsZWN0ZWQ6IGZhbHNlIH0pO1xuICAgICAgICB9LFxuICAgICAgICBhcmdzOiBbd29ya3NwYWNlXSxcbiAgICAgICAgYXZhaWxhYmlsaXR5OiAod3M6IFdmc1dvcmtzcGFjZSkgPT4gbm9FbGVtZW50U2VsZWN0ZWQod3MpXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ3dmc0Rvd25sb2FkJyxcbiAgICAgICAgaWNvbjogJ2ZpbGUtZXhwb3J0JyxcbiAgICAgICAgdGl0bGU6ICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLmRvd25sb2FkLnRpdGxlJyxcbiAgICAgICAgdG9vbHRpcDogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2UuZG93bmxvYWQudG9vbHRpcCcsXG4gICAgICAgIGhhbmRsZXI6ICh3czogV2ZzV29ya3NwYWNlKSA9PiB7XG4gICAgICAgICAgY29uc3QgZmlsdGVyU3RyYXRlZ3kgPSB3cy5lbnRpdHlTdG9yZS5nZXRTdHJhdGVneU9mVHlwZShFbnRpdHlTdG9yZUZpbHRlckN1c3RvbUZ1bmNTdHJhdGVneSk7XG4gICAgICAgICAgY29uc3QgZmlsdGVyU2VsZWN0aW9uU3RyYXRlZ3kgPSB3cy5lbnRpdHlTdG9yZS5nZXRTdHJhdGVneU9mVHlwZShFbnRpdHlTdG9yZUZpbHRlclNlbGVjdGlvblN0cmF0ZWd5KTtcbiAgICAgICAgICBjb25zdCBsYXllcnNXaXRoU2VsZWN0aW9uID0gZmlsdGVyU2VsZWN0aW9uU3RyYXRlZ3kuYWN0aXZlID8gW3dzLmxheWVyLmlkXSA6IFtdO1xuICAgICAgICAgIHRoaXMudG9vbFN0YXRlLnRvb2xUb0FjdGl2YXRlRnJvbU9wdGlvbnMoe1xuICAgICAgICAgICAgdG9vbDogJ2ltcG9ydEV4cG9ydCcsXG4gICAgICAgICAgICBvcHRpb25zOiB7IGxheWVyczogW3dzLmxheWVyLmlkXSwgZmVhdHVyZUluTWFwRXh0ZW50OiBmaWx0ZXJTdHJhdGVneS5hY3RpdmUsIGxheWVyc1dpdGhTZWxlY3Rpb24gfSBhcyBFeHBvcnRPcHRpb25zXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIGFyZ3M6IFt3b3Jrc3BhY2VdXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ29nY0ZpbHRlcicsXG4gICAgICAgIGljb246ICdmaWx0ZXInLFxuICAgICAgICB0aXRsZTogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2Uub2djRmlsdGVyLnRpdGxlJyxcbiAgICAgICAgdG9vbHRpcDogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2Uub2djRmlsdGVyLnRvb2x0aXAnLFxuICAgICAgICBoYW5kbGVyOiAod2lkZ2V0OiBXaWRnZXQsIHdzOiBXZnNXb3Jrc3BhY2UpID0+IHtcbiAgICAgICAgICB3cy5hY3RpdmF0ZVdpZGdldCh3aWRnZXQsIHtcbiAgICAgICAgICAgIG1hcDogd3MubWFwLFxuICAgICAgICAgICAgbGF5ZXI6IHdzLmxheWVyXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIGFyZ3M6IFt0aGlzLm9nY0ZpbHRlcldpZGdldCwgd29ya3NwYWNlXVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdtYXhpbWl6ZScsXG4gICAgICAgIHRpdGxlOiB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudCgnaWdvLmludGVncmF0aW9uLndvcmtzcGFjZS5tYXhpbWl6ZScpLFxuICAgICAgICB0b29sdGlwOiB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAnaWdvLmludGVncmF0aW9uLndvcmtzcGFjZS5tYXhpbWl6ZVRvb2x0aXAnXG4gICAgICAgICksXG4gICAgICAgIGljb246ICdyZXNpemUnLFxuICAgICAgICBkaXNwbGF5OiAoKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMubWF4aW1pemUkLnBpcGUobWFwKCh2KSA9PiAhdiAmJiAhdGhpcy5tZWRpYVNlcnZpY2UuaXNNb2JpbGUoKSkpO1xuICAgICAgICB9LFxuICAgICAgICBoYW5kbGVyOiAoKSA9PiB7XG4gICAgICAgICAgaWYgKCF0aGlzLm1lZGlhU2VydmljZS5pc01vYmlsZSgpKSB7XG4gICAgICAgICAgICB0aGlzLm1heGltaXplJC5uZXh0KHRydWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnc3RhbmRhcmRFeHRlbnQnLFxuICAgICAgICB0aXRsZTogdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2Uuc3RhbmRhcmRFeHRlbnQnXG4gICAgICAgICksXG4gICAgICAgIHRvb2x0aXA6IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLnN0YW5kYXJkRXh0ZW50VG9vbHRpcCdcbiAgICAgICAgKSxcbiAgICAgICAgaWNvbjogJ3Jlc2l6ZScsXG4gICAgICAgIGRpc3BsYXk6ICgpID0+IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5tYXhpbWl6ZSQucGlwZShtYXAoKHYpID0+IHYgJiYgIXRoaXMubWVkaWFTZXJ2aWNlLmlzTW9iaWxlKCkpKTtcbiAgICAgICAgfSxcbiAgICAgICAgaGFuZGxlcjogKCkgPT4ge1xuICAgICAgICAgIHRoaXMubWF4aW1pemUkLm5leHQoZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgXTtcbiAgICByZXR1cm4gKHdvcmtzcGFjZS5sYXllci5kYXRhU291cmNlIGFzIE9nY0ZpbHRlcmFibGVEYXRhU291cmNlKS5vcHRpb25zLm9nY0ZpbHRlcnM/LmVuYWJsZWQgP1xuICAgIGFjdGlvbnMgOiBhY3Rpb25zLmZpbHRlcihhY3Rpb24gPT4gYWN0aW9uLmlkICE9PSAnb2djRmlsdGVyJyk7XG4gIH1cbn1cbiJdfQ==
@@ -1,7 +1,7 @@
1
- import { FeatureMotion, FeatureStoreSelectionStrategy } from '@igo2/geo';
2
- export function handleZoomAuto(workspace, storageService) {
3
- const zoomStrategy = workspace.entityStore
4
- .getStrategyOfType(FeatureStoreSelectionStrategy);
5
- zoomStrategy.setMotion(storageService.get('zoomAuto') ? FeatureMotion.Default : FeatureMotion.None);
6
- }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya3NwYWNlLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi93b3Jrc3BhY2Uvc2hhcmVkL3dvcmtzcGFjZS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsYUFBYSxFQUNiLDZCQUE2QixFQUloQyxNQUFNLFdBQVcsQ0FBQztBQUduQixNQUFNLFVBQVUsY0FBYyxDQUFDLFNBQTZELEVBQUUsY0FBYztJQUN4RyxNQUFNLFlBQVksR0FBRyxTQUFTLENBQUMsV0FBVztTQUNyQyxpQkFBaUIsQ0FBQyw2QkFBNkIsQ0FBa0MsQ0FBQztJQUN2RixZQUFZLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFZLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNuSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIEZlYXR1cmVNb3Rpb24sXHJcbiAgICBGZWF0dXJlU3RvcmVTZWxlY3Rpb25TdHJhdGVneSxcclxuICAgIEZlYXR1cmVXb3Jrc3BhY2UsXHJcbiAgICBXZnNXb3Jrc3BhY2UsXHJcbiAgICBFZGl0aW9uV29ya3NwYWNlXHJcbn0gZnJvbSAnQGlnbzIvZ2VvJztcclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlWm9vbUF1dG8od29ya3NwYWNlOiBGZWF0dXJlV29ya3NwYWNlIHwgV2ZzV29ya3NwYWNlIHwgRWRpdGlvbldvcmtzcGFjZSwgc3RvcmFnZVNlcnZpY2UpIHtcclxuICAgIGNvbnN0IHpvb21TdHJhdGVneSA9IHdvcmtzcGFjZS5lbnRpdHlTdG9yZVxyXG4gICAgICAgIC5nZXRTdHJhdGVneU9mVHlwZShGZWF0dXJlU3RvcmVTZWxlY3Rpb25TdHJhdGVneSkgYXMgRmVhdHVyZVN0b3JlU2VsZWN0aW9uU3RyYXRlZ3k7XHJcbiAgICB6b29tU3RyYXRlZ3kuc2V0TW90aW9uKHN0b3JhZ2VTZXJ2aWNlLmdldCgnem9vbUF1dG8nKSBhcyBib29sZWFuID8gRmVhdHVyZU1vdGlvbi5EZWZhdWx0IDogRmVhdHVyZU1vdGlvbi5Ob25lKTtcclxufVxyXG5cclxuXHJcbiJdfQ==
1
+ import { FeatureMotion, FeatureStoreSelectionStrategy } from '@igo2/geo';
2
+ export function handleZoomAuto(workspace, storageService) {
3
+ const zoomStrategy = workspace.entityStore
4
+ .getStrategyOfType(FeatureStoreSelectionStrategy);
5
+ zoomStrategy.setMotion(storageService.get('zoomAuto') ? FeatureMotion.Default : FeatureMotion.None);
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya3NwYWNlLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi93b3Jrc3BhY2Uvc2hhcmVkL3dvcmtzcGFjZS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsYUFBYSxFQUNiLDZCQUE2QixFQUloQyxNQUFNLFdBQVcsQ0FBQztBQUduQixNQUFNLFVBQVUsY0FBYyxDQUFDLFNBQTZELEVBQUUsY0FBYztJQUN4RyxNQUFNLFlBQVksR0FBRyxTQUFTLENBQUMsV0FBVztTQUNyQyxpQkFBaUIsQ0FBQyw2QkFBNkIsQ0FBa0MsQ0FBQztJQUN2RixZQUFZLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFZLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNuSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBGZWF0dXJlTW90aW9uLFxuICAgIEZlYXR1cmVTdG9yZVNlbGVjdGlvblN0cmF0ZWd5LFxuICAgIEZlYXR1cmVXb3Jrc3BhY2UsXG4gICAgV2ZzV29ya3NwYWNlLFxuICAgIEVkaXRpb25Xb3Jrc3BhY2Vcbn0gZnJvbSAnQGlnbzIvZ2VvJztcblxuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlWm9vbUF1dG8od29ya3NwYWNlOiBGZWF0dXJlV29ya3NwYWNlIHwgV2ZzV29ya3NwYWNlIHwgRWRpdGlvbldvcmtzcGFjZSwgc3RvcmFnZVNlcnZpY2UpIHtcbiAgICBjb25zdCB6b29tU3RyYXRlZ3kgPSB3b3Jrc3BhY2UuZW50aXR5U3RvcmVcbiAgICAgICAgLmdldFN0cmF0ZWd5T2ZUeXBlKEZlYXR1cmVTdG9yZVNlbGVjdGlvblN0cmF0ZWd5KSBhcyBGZWF0dXJlU3RvcmVTZWxlY3Rpb25TdHJhdGVneTtcbiAgICB6b29tU3RyYXRlZ3kuc2V0TW90aW9uKHN0b3JhZ2VTZXJ2aWNlLmdldCgnem9vbUF1dG8nKSBhcyBib29sZWFuID8gRmVhdHVyZU1vdGlvbi5EZWZhdWx0IDogRmVhdHVyZU1vdGlvbi5Ob25lKTtcbn1cblxuXG4iXX0=
@@ -1,2 +1,2 @@
1
- export * from './workspace-button.component';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pbnRlZ3JhdGlvbi9zcmMvbGliL3dvcmtzcGFjZS93b3Jrc3BhY2UtYnV0dG9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3dvcmtzcGFjZS1idXR0b24uY29tcG9uZW50JztcclxuIl19
1
+ export * from './workspace-button.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pbnRlZ3JhdGlvbi9zcmMvbGliL3dvcmtzcGFjZS93b3Jrc3BhY2UtYnV0dG9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3dvcmtzcGFjZS1idXR0b24uY29tcG9uZW50JztcbiJdfQ==
@@ -1,69 +1,69 @@
1
- import { Component, Input, ChangeDetectionStrategy } from '@angular/core';
2
- import { BehaviorSubject, combineLatest } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../workspace.state";
5
- import * as i2 from "@angular/common";
6
- import * as i3 from "@angular/material/icon";
7
- import * as i4 from "@angular/material/button";
8
- import * as i5 from "@angular/material/tooltip";
9
- import * as i6 from "@ngx-translate/core";
10
- function WorkspaceButtonComponent_button_0_Template(rf, ctx) { if (rf & 1) {
11
- const _r2 = i0.ɵɵgetCurrentView();
12
- i0.ɵɵelementStart(0, "button", 1);
13
- i0.ɵɵlistener("click", function WorkspaceButtonComponent_button_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r2); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.activateWorkspace()); });
14
- i0.ɵɵpipe(1, "translate");
15
- i0.ɵɵelement(2, "mat-icon", 2);
16
- i0.ɵɵelementEnd();
17
- } if (rf & 2) {
18
- const ctx_r0 = i0.ɵɵnextContext();
19
- i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(1, 2, "igo.integration.workspace.toggleWorkspace"))("color", ctx_r0.color);
20
- } }
21
- export class WorkspaceButtonComponent {
22
- constructor(workspaceState) {
23
- this.workspaceState = workspaceState;
24
- this.hasWorkspace$ = new BehaviorSubject(false);
25
- this.layer$ = new BehaviorSubject(undefined);
26
- this.color = 'primary';
27
- }
28
- set layer(value) {
29
- this._layer = value;
30
- this.layer$.next(this._layer);
31
- }
32
- get layer() {
33
- return this._layer;
34
- }
35
- ngOnInit() {
36
- this.hasWorkspace$$ = combineLatest([this.workspaceState.workspaceEnabled$, this.layer$])
37
- .subscribe(bunch => this.hasWorkspace$.next(bunch[0] && bunch[1]?.options.workspace?.enabled));
38
- }
39
- ngOnDestroy() {
40
- this.hasWorkspace$$.unsubscribe();
41
- }
42
- activateWorkspace() {
43
- if (this.workspaceState.workspace$.value &&
44
- this.workspaceState.workspace$.value.layer.id === this.layer.id &&
45
- this.workspaceState.workspacePanelExpanded) {
46
- this.workspaceState.workspacePanelExpanded = false;
47
- }
48
- else {
49
- this.workspaceState.workspacePanelExpanded = true;
50
- this.workspaceState.setActiveWorkspaceById(this.layer.id);
51
- }
52
- }
53
- }
54
- WorkspaceButtonComponent.ɵfac = function WorkspaceButtonComponent_Factory(t) { return new (t || WorkspaceButtonComponent)(i0.ɵɵdirectiveInject(i1.WorkspaceState)); };
55
- WorkspaceButtonComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: WorkspaceButtonComponent, selectors: [["igo-workspace-button"]], inputs: { layer: "layer", color: "color" }, decls: 2, vars: 3, consts: [["mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", 3, "matTooltip", "color", "click", 4, "ngIf"], ["mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", 3, "matTooltip", "color", "click"], ["svgIcon", "table"]], template: function WorkspaceButtonComponent_Template(rf, ctx) { if (rf & 1) {
56
- i0.ɵɵtemplate(0, WorkspaceButtonComponent_button_0_Template, 3, 4, "button", 0);
57
- i0.ɵɵpipe(1, "async");
58
- } if (rf & 2) {
59
- i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(1, 1, ctx.hasWorkspace$));
60
- } }, dependencies: [i2.NgIf, i3.MatIcon, i4.MatButton, i5.MatTooltip, i2.AsyncPipe, i6.TranslatePipe], changeDetection: 0 });
61
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WorkspaceButtonComponent, [{
62
- type: Component,
63
- args: [{ selector: 'igo-workspace-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\r\n *ngIf=\"hasWorkspace$ | async\"\r\n mat-icon-button\r\n tooltip-position=\"below\"\r\n matTooltipShowDelay=\"500\"\r\n [matTooltip]=\"'igo.integration.workspace.toggleWorkspace' | translate\"\r\n [color]=\"color\"\r\n (click)=\"activateWorkspace()\"\r\n >\r\n <mat-icon svgIcon=\"table\"></mat-icon>\r\n</button>\r\n" }]
64
- }], function () { return [{ type: i1.WorkspaceState }]; }, { layer: [{
65
- type: Input
66
- }], color: [{
67
- type: Input
68
- }] }); })();
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya3NwYWNlLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pbnRlZ3JhdGlvbi9zcmMvbGliL3dvcmtzcGFjZS93b3Jrc3BhY2UtYnV0dG9uL3dvcmtzcGFjZS1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi93b3Jrc3BhY2Uvd29ya3NwYWNlLWJ1dHRvbi93b3Jrc3BhY2UtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLHVCQUF1QixFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUc3RixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBZ0IsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7SUNIcEUsaUNBUUc7SUFERCx3S0FBUyxlQUFBLDBCQUFtQixDQUFBLElBQUM7O0lBRTdCLDhCQUFxQztJQUN2QyxpQkFBUzs7O0lBTFAsOEZBQXNFLHVCQUFBOztBRE14RSxNQUFNLE9BQU8sd0JBQXdCO0lBbUJuQyxZQUFvQixjQUE4QjtRQUE5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFqQjNDLGtCQUFhLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBSXBFLFdBQU0sR0FBMkIsSUFBSSxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7UUFXL0QsVUFBSyxHQUFXLFNBQVMsQ0FBQztJQUVtQixDQUFDO0lBWnZELElBQ0ksS0FBSyxDQUFDLEtBQVk7UUFDcEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQU1ELFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ3RGLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FDNUYsQ0FBQztJQUNOLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFDRSxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxLQUFLO1lBQ25DLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLEtBQWEsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN4RSxJQUFJLENBQUMsY0FBYyxDQUFDLHNCQUFzQixFQUFFO1lBQzVDLElBQUksQ0FBQyxjQUFjLENBQUMsc0JBQXNCLEdBQUcsS0FBSyxDQUFDO1NBQ3BEO2FBQU07WUFDTCxJQUFJLENBQUMsY0FBYyxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQztZQUNsRCxJQUFJLENBQUMsY0FBYyxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDM0Q7SUFDSCxDQUFDOztnR0F6Q1Usd0JBQXdCOzJFQUF4Qix3QkFBd0I7UUNYckMsK0VBVVM7OztRQVROLDhEQUEyQjs7dUZEVWpCLHdCQUF3QjtjQU5wQyxTQUFTOzJCQUNFLHNCQUFzQixtQkFHZix1QkFBdUIsQ0FBQyxNQUFNO2lFQVUzQyxLQUFLO2tCQURSLEtBQUs7WUFVRyxLQUFLO2tCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHR5cGUgeyBMYXllciB9IGZyb20gJ0BpZ28yL2dlbyc7XHJcbmltcG9ydCB7IFdvcmtzcGFjZVN0YXRlIH0gZnJvbSAnLi4vd29ya3NwYWNlLnN0YXRlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaWdvLXdvcmtzcGFjZS1idXR0b24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi93b3Jrc3BhY2UtYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi93b3Jrc3BhY2UtYnV0dG9uLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFdvcmtzcGFjZUJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgcHVibGljIGhhc1dvcmtzcGFjZSQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xyXG4gIHByaXZhdGUgaGFzV29ya3NwYWNlJCQ6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgcHJpdmF0ZSBfbGF5ZXI6IExheWVyO1xyXG4gIHByaXZhdGUgbGF5ZXIkOiBCZWhhdmlvclN1YmplY3Q8TGF5ZXI+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh1bmRlZmluZWQpO1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGxheWVyKHZhbHVlOiBMYXllcikge1xyXG4gICAgdGhpcy5fbGF5ZXIgPSB2YWx1ZTtcclxuICAgIHRoaXMubGF5ZXIkLm5leHQodGhpcy5fbGF5ZXIpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxheWVyKCk6IExheWVyIHtcclxuICAgIHJldHVybiB0aGlzLl9sYXllcjtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIGNvbG9yOiBzdHJpbmcgPSAncHJpbWFyeSc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgd29ya3NwYWNlU3RhdGU6IFdvcmtzcGFjZVN0YXRlKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmhhc1dvcmtzcGFjZSQkID0gY29tYmluZUxhdGVzdChbdGhpcy53b3Jrc3BhY2VTdGF0ZS53b3Jrc3BhY2VFbmFibGVkJCwgdGhpcy5sYXllciRdKVxyXG4gICAgICAuc3Vic2NyaWJlKGJ1bmNoID0+IHRoaXMuaGFzV29ya3NwYWNlJC5uZXh0KGJ1bmNoWzBdICYmIGJ1bmNoWzFdPy5vcHRpb25zLndvcmtzcGFjZT8uZW5hYmxlZClcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5oYXNXb3Jrc3BhY2UkJC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgYWN0aXZhdGVXb3Jrc3BhY2UoKSB7XHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMud29ya3NwYWNlU3RhdGUud29ya3NwYWNlJC52YWx1ZSAmJlxyXG4gICAgICAodGhpcy53b3Jrc3BhY2VTdGF0ZS53b3Jrc3BhY2UkLnZhbHVlIGFzIGFueSkubGF5ZXIuaWQgPT09IHRoaXMubGF5ZXIuaWQgJiZcclxuICAgICAgdGhpcy53b3Jrc3BhY2VTdGF0ZS53b3Jrc3BhY2VQYW5lbEV4cGFuZGVkKSB7XHJcbiAgICAgIHRoaXMud29ya3NwYWNlU3RhdGUud29ya3NwYWNlUGFuZWxFeHBhbmRlZCA9IGZhbHNlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy53b3Jrc3BhY2VTdGF0ZS53b3Jrc3BhY2VQYW5lbEV4cGFuZGVkID0gdHJ1ZTtcclxuICAgICAgdGhpcy53b3Jrc3BhY2VTdGF0ZS5zZXRBY3RpdmVXb3Jrc3BhY2VCeUlkKHRoaXMubGF5ZXIuaWQpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8YnV0dG9uXHJcbiAgKm5nSWY9XCJoYXNXb3Jrc3BhY2UkIHwgYXN5bmNcIlxyXG4gIG1hdC1pY29uLWJ1dHRvblxyXG4gIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXHJcbiAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXHJcbiAgW21hdFRvb2x0aXBdPVwiJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2UudG9nZ2xlV29ya3NwYWNlJyB8IHRyYW5zbGF0ZVwiXHJcbiAgW2NvbG9yXT1cImNvbG9yXCJcclxuICAoY2xpY2spPVwiYWN0aXZhdGVXb3Jrc3BhY2UoKVwiXHJcbiAgPlxyXG4gIDxtYXQtaWNvbiBzdmdJY29uPVwidGFibGVcIj48L21hdC1pY29uPlxyXG48L2J1dHRvbj5cclxuIl19
1
+ import { Component, Input, ChangeDetectionStrategy } from '@angular/core';
2
+ import { BehaviorSubject, combineLatest } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../workspace.state";
5
+ import * as i2 from "@angular/common";
6
+ import * as i3 from "@angular/material/icon";
7
+ import * as i4 from "@angular/material/button";
8
+ import * as i5 from "@angular/material/tooltip";
9
+ import * as i6 from "@ngx-translate/core";
10
+ function WorkspaceButtonComponent_button_0_Template(rf, ctx) { if (rf & 1) {
11
+ const _r2 = i0.ɵɵgetCurrentView();
12
+ i0.ɵɵelementStart(0, "button", 1);
13
+ i0.ɵɵlistener("click", function WorkspaceButtonComponent_button_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r2); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.activateWorkspace()); });
14
+ i0.ɵɵpipe(1, "translate");
15
+ i0.ɵɵelement(2, "mat-icon", 2);
16
+ i0.ɵɵelementEnd();
17
+ } if (rf & 2) {
18
+ const ctx_r0 = i0.ɵɵnextContext();
19
+ i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(1, 2, "igo.integration.workspace.toggleWorkspace"))("color", ctx_r0.color);
20
+ } }
21
+ export class WorkspaceButtonComponent {
22
+ constructor(workspaceState) {
23
+ this.workspaceState = workspaceState;
24
+ this.hasWorkspace$ = new BehaviorSubject(false);
25
+ this.layer$ = new BehaviorSubject(undefined);
26
+ this.color = 'primary';
27
+ }
28
+ set layer(value) {
29
+ this._layer = value;
30
+ this.layer$.next(this._layer);
31
+ }
32
+ get layer() {
33
+ return this._layer;
34
+ }
35
+ ngOnInit() {
36
+ this.hasWorkspace$$ = combineLatest([this.workspaceState.workspaceEnabled$, this.layer$])
37
+ .subscribe(bunch => this.hasWorkspace$.next(bunch[0] && bunch[1]?.options.workspace?.enabled));
38
+ }
39
+ ngOnDestroy() {
40
+ this.hasWorkspace$$.unsubscribe();
41
+ }
42
+ activateWorkspace() {
43
+ if (this.workspaceState.workspace$.value &&
44
+ this.workspaceState.workspace$.value.layer.id === this.layer.id &&
45
+ this.workspaceState.workspacePanelExpanded) {
46
+ this.workspaceState.workspacePanelExpanded = false;
47
+ }
48
+ else {
49
+ this.workspaceState.workspacePanelExpanded = true;
50
+ this.workspaceState.setActiveWorkspaceById(this.layer.id);
51
+ }
52
+ }
53
+ }
54
+ WorkspaceButtonComponent.ɵfac = function WorkspaceButtonComponent_Factory(t) { return new (t || WorkspaceButtonComponent)(i0.ɵɵdirectiveInject(i1.WorkspaceState)); };
55
+ WorkspaceButtonComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: WorkspaceButtonComponent, selectors: [["igo-workspace-button"]], inputs: { layer: "layer", color: "color" }, decls: 2, vars: 3, consts: [["mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", 3, "matTooltip", "color", "click", 4, "ngIf"], ["mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", 3, "matTooltip", "color", "click"], ["svgIcon", "table"]], template: function WorkspaceButtonComponent_Template(rf, ctx) { if (rf & 1) {
56
+ i0.ɵɵtemplate(0, WorkspaceButtonComponent_button_0_Template, 3, 4, "button", 0);
57
+ i0.ɵɵpipe(1, "async");
58
+ } if (rf & 2) {
59
+ i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(1, 1, ctx.hasWorkspace$));
60
+ } }, dependencies: [i2.NgIf, i3.MatIcon, i4.MatButton, i5.MatTooltip, i2.AsyncPipe, i6.TranslatePipe], changeDetection: 0 });
61
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WorkspaceButtonComponent, [{
62
+ type: Component,
63
+ args: [{ selector: 'igo-workspace-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n *ngIf=\"hasWorkspace$ | async\"\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.integration.workspace.toggleWorkspace' | translate\"\n [color]=\"color\"\n (click)=\"activateWorkspace()\"\n >\n <mat-icon svgIcon=\"table\"></mat-icon>\n</button>\n" }]
64
+ }], function () { return [{ type: i1.WorkspaceState }]; }, { layer: [{
65
+ type: Input
66
+ }], color: [{
67
+ type: Input
68
+ }] }); })();
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya3NwYWNlLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pbnRlZ3JhdGlvbi9zcmMvbGliL3dvcmtzcGFjZS93b3Jrc3BhY2UtYnV0dG9uL3dvcmtzcGFjZS1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi93b3Jrc3BhY2Uvd29ya3NwYWNlLWJ1dHRvbi93b3Jrc3BhY2UtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLHVCQUF1QixFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUc3RixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBZ0IsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7SUNIcEUsaUNBUUc7SUFERCx3S0FBUyxlQUFBLDBCQUFtQixDQUFBLElBQUM7O0lBRTdCLDhCQUFxQztJQUN2QyxpQkFBUzs7O0lBTFAsOEZBQXNFLHVCQUFBOztBRE14RSxNQUFNLE9BQU8sd0JBQXdCO0lBbUJuQyxZQUFvQixjQUE4QjtRQUE5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFqQjNDLGtCQUFhLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBSXBFLFdBQU0sR0FBMkIsSUFBSSxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7UUFXL0QsVUFBSyxHQUFXLFNBQVMsQ0FBQztJQUVtQixDQUFDO0lBWnZELElBQ0ksS0FBSyxDQUFDLEtBQVk7UUFDcEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQU1ELFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ3RGLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FDNUYsQ0FBQztJQUNOLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFDRSxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxLQUFLO1lBQ25DLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLEtBQWEsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN4RSxJQUFJLENBQUMsY0FBYyxDQUFDLHNCQUFzQixFQUFFO1lBQzVDLElBQUksQ0FBQyxjQUFjLENBQUMsc0JBQXNCLEdBQUcsS0FBSyxDQUFDO1NBQ3BEO2FBQU07WUFDTCxJQUFJLENBQUMsY0FBYyxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQztZQUNsRCxJQUFJLENBQUMsY0FBYyxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDM0Q7SUFDSCxDQUFDOztnR0F6Q1Usd0JBQXdCOzJFQUF4Qix3QkFBd0I7UUNYckMsK0VBVVM7OztRQVROLDhEQUEyQjs7dUZEVWpCLHdCQUF3QjtjQU5wQyxTQUFTOzJCQUNFLHNCQUFzQixtQkFHZix1QkFBdUIsQ0FBQyxNQUFNO2lFQVUzQyxLQUFLO2tCQURSLEtBQUs7WUFVRyxLQUFLO2tCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB0eXBlIHsgTGF5ZXIgfSBmcm9tICdAaWdvMi9nZW8nO1xuaW1wb3J0IHsgV29ya3NwYWNlU3RhdGUgfSBmcm9tICcuLi93b3Jrc3BhY2Uuc3RhdGUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLXdvcmtzcGFjZS1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vd29ya3NwYWNlLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3dvcmtzcGFjZS1idXR0b24uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgV29ya3NwYWNlQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHB1YmxpYyBoYXNXb3Jrc3BhY2UkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgcHJpdmF0ZSBoYXNXb3Jrc3BhY2UkJDogU3Vic2NyaXB0aW9uO1xuXG4gIHByaXZhdGUgX2xheWVyOiBMYXllcjtcbiAgcHJpdmF0ZSBsYXllciQ6IEJlaGF2aW9yU3ViamVjdDxMYXllcj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHVuZGVmaW5lZCk7XG4gIEBJbnB1dCgpXG4gIHNldCBsYXllcih2YWx1ZTogTGF5ZXIpIHtcbiAgICB0aGlzLl9sYXllciA9IHZhbHVlO1xuICAgIHRoaXMubGF5ZXIkLm5leHQodGhpcy5fbGF5ZXIpO1xuICB9XG5cbiAgZ2V0IGxheWVyKCk6IExheWVyIHtcbiAgICByZXR1cm4gdGhpcy5fbGF5ZXI7XG4gIH1cblxuICBASW5wdXQoKSBjb2xvcjogc3RyaW5nID0gJ3ByaW1hcnknO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgd29ya3NwYWNlU3RhdGU6IFdvcmtzcGFjZVN0YXRlKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmhhc1dvcmtzcGFjZSQkID0gY29tYmluZUxhdGVzdChbdGhpcy53b3Jrc3BhY2VTdGF0ZS53b3Jrc3BhY2VFbmFibGVkJCwgdGhpcy5sYXllciRdKVxuICAgICAgLnN1YnNjcmliZShidW5jaCA9PiB0aGlzLmhhc1dvcmtzcGFjZSQubmV4dChidW5jaFswXSAmJiBidW5jaFsxXT8ub3B0aW9ucy53b3Jrc3BhY2U/LmVuYWJsZWQpXG4gICAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5oYXNXb3Jrc3BhY2UkJC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgYWN0aXZhdGVXb3Jrc3BhY2UoKSB7XG4gICAgaWYgKFxuICAgICAgdGhpcy53b3Jrc3BhY2VTdGF0ZS53b3Jrc3BhY2UkLnZhbHVlICYmXG4gICAgICAodGhpcy53b3Jrc3BhY2VTdGF0ZS53b3Jrc3BhY2UkLnZhbHVlIGFzIGFueSkubGF5ZXIuaWQgPT09IHRoaXMubGF5ZXIuaWQgJiZcbiAgICAgIHRoaXMud29ya3NwYWNlU3RhdGUud29ya3NwYWNlUGFuZWxFeHBhbmRlZCkge1xuICAgICAgdGhpcy53b3Jrc3BhY2VTdGF0ZS53b3Jrc3BhY2VQYW5lbEV4cGFuZGVkID0gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMud29ya3NwYWNlU3RhdGUud29ya3NwYWNlUGFuZWxFeHBhbmRlZCA9IHRydWU7XG4gICAgICB0aGlzLndvcmtzcGFjZVN0YXRlLnNldEFjdGl2ZVdvcmtzcGFjZUJ5SWQodGhpcy5sYXllci5pZCk7XG4gICAgfVxuICB9XG59XG4iLCI8YnV0dG9uXG4gICpuZ0lmPVwiaGFzV29ya3NwYWNlJCB8IGFzeW5jXCJcbiAgbWF0LWljb24tYnV0dG9uXG4gIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXG4gIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxuICBbbWF0VG9vbHRpcF09XCInaWdvLmludGVncmF0aW9uLndvcmtzcGFjZS50b2dnbGVXb3Jrc3BhY2UnIHwgdHJhbnNsYXRlXCJcbiAgW2NvbG9yXT1cImNvbG9yXCJcbiAgKGNsaWNrKT1cImFjdGl2YXRlV29ya3NwYWNlKClcIlxuICA+XG4gIDxtYXQtaWNvbiBzdmdJY29uPVwidGFibGVcIj48L21hdC1pY29uPlxuPC9idXR0b24+XG4iXX0=