@esri/solutions-components 0.8.4 → 0.8.6
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.
- package/dist/assets/t9n/crowdsource-reporter/resources.json +5 -6
- package/dist/assets/t9n/crowdsource-reporter/resources_en.json +5 -6
- package/dist/assets/t9n/feature-list/resources.json +1 -1
- package/dist/assets/t9n/feature-list/resources_en.json +1 -1
- package/dist/assets/t9n/public-notification/resources.json +3 -1
- package/dist/assets/t9n/public-notification/resources_en.json +3 -1
- package/dist/cjs/buffer-tools_3.cjs.entry.js +2 -2
- package/dist/cjs/calcite-alert_4.cjs.entry.js +2 -2
- package/dist/cjs/calcite-combobox_5.cjs.entry.js +2 -2
- package/dist/cjs/calcite-flow_5.cjs.entry.js +163 -16
- package/dist/cjs/card-manager_3.cjs.entry.js +41 -2
- package/dist/cjs/crowdsource-manager.cjs.entry.js +2 -1
- package/dist/cjs/crowdsource-reporter.cjs.entry.js +120 -38
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/map-select-tools_3.cjs.entry.js +2 -2
- package/dist/cjs/public-notification.cjs.entry.js +110 -4
- package/dist/cjs/{publicNotificationStore-ef379d11.js → publicNotificationStore-e790601d.js} +2 -2
- package/dist/cjs/solutions-components.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/create-feature/create-feature.css +9 -0
- package/dist/collection/components/create-feature/create-feature.js +134 -6
- package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +19 -1
- package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.css +5 -0
- package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +120 -38
- package/dist/collection/components/feature-list/feature-list.js +93 -5
- package/dist/collection/components/info-card/info-card.css +1 -1
- package/dist/collection/components/info-card/info-card.js +1 -1
- package/dist/collection/components/layer-list/layer-list.js +6 -6
- package/dist/collection/components/map-card/map-card.js +27 -2
- package/dist/collection/components/map-draw-tools/map-draw-tools.js +1 -1
- package/dist/collection/components/map-layer-picker/map-layer-picker.js +1 -1
- package/dist/collection/components/map-select-tools/map-select-tools.js +1 -1
- package/dist/collection/components/public-notification/public-notification.js +110 -3
- package/dist/collection/demos/crowdsource-reporter.html +1 -1
- package/dist/collection/utils/interfaces.ts +7 -0
- package/dist/collection/utils/publicNotificationStore.js +2 -2
- package/dist/collection/utils/publicNotificationStore.ts +3 -2
- package/dist/components/create-feature2.js +111 -7
- package/dist/components/crowdsource-manager.js +3 -1
- package/dist/components/crowdsource-reporter.js +121 -39
- package/dist/components/feature-list2.js +54 -6
- package/dist/components/info-card2.js +2 -2
- package/dist/components/layer-list2.js +6 -6
- package/dist/components/map-card2.js +42 -2
- package/dist/components/map-draw-tools2.js +1 -1
- package/dist/components/map-layer-picker2.js +1 -1
- package/dist/components/map-select-tools2.js +1 -1
- package/dist/components/public-notification.js +110 -3
- package/dist/components/publicNotificationStore.js +2 -2
- package/dist/esm/buffer-tools_3.entry.js +2 -2
- package/dist/esm/calcite-alert_4.entry.js +3 -3
- package/dist/esm/calcite-combobox_5.entry.js +3 -3
- package/dist/esm/calcite-flow_5.entry.js +164 -17
- package/dist/esm/card-manager_3.entry.js +43 -4
- package/dist/esm/crowdsource-manager.entry.js +3 -2
- package/dist/esm/crowdsource-reporter.entry.js +121 -39
- package/dist/esm/{downloadUtils-0c13073b.js → downloadUtils-0c1e4d7b.js} +2 -2
- package/dist/esm/{index.es-ad250bc6.js → index.es-286e3cfa.js} +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/map-select-tools_3.entry.js +4 -4
- package/dist/esm/{mapViewUtils-20504620.js → mapViewUtils-253178f1.js} +1 -1
- package/dist/esm/public-notification.entry.js +112 -6
- package/dist/esm/{publicNotificationStore-3bf4de75.js → publicNotificationStore-223faed2.js} +2 -2
- package/dist/esm/solutions-components.js +1 -1
- package/dist/solutions-components/demos/crowdsource-reporter.html +1 -1
- package/dist/solutions-components/p-15f9624a.entry.js +6 -0
- package/dist/solutions-components/{p-955647ea.entry.js → p-1ea5e061.entry.js} +2 -2
- package/dist/solutions-components/{p-590a2a26.js → p-212b02e7.js} +1 -1
- package/dist/solutions-components/p-238d3b5f.entry.js +6 -0
- package/dist/solutions-components/p-273d833b.entry.js +6 -0
- package/dist/solutions-components/{p-cc280aa1.js → p-322868ec.js} +1 -1
- package/dist/solutions-components/{p-1d3a1794.js → p-331b5d1e.js} +2 -2
- package/dist/solutions-components/{p-c897e3eb.js → p-3af79063.js} +1 -1
- package/dist/solutions-components/p-45ed16d5.entry.js +6 -0
- package/dist/solutions-components/p-80b11ec1.entry.js +17 -0
- package/dist/solutions-components/{p-5c7e3941.entry.js → p-813fd8a4.entry.js} +2 -2
- package/dist/solutions-components/{p-ff302d95.entry.js → p-d136eab0.entry.js} +2 -2
- package/dist/solutions-components/p-e0446d5b.entry.js +6 -0
- package/dist/solutions-components/solutions-components.esm.js +1 -1
- package/dist/solutions-components/utils/interfaces.ts +7 -0
- package/dist/solutions-components/utils/publicNotificationStore.ts +3 -2
- package/dist/types/components/create-feature/create-feature.d.ts +43 -1
- package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +4 -0
- package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +31 -10
- package/dist/types/components/feature-list/feature-list.d.ts +31 -0
- package/dist/types/components/layer-list/layer-list.d.ts +3 -3
- package/dist/types/components/map-card/map-card.d.ts +8 -0
- package/dist/types/components/public-notification/public-notification.d.ts +48 -0
- package/dist/types/components.d.ts +37 -0
- package/dist/types/utils/interfaces.d.ts +6 -0
- package/dist/types/utils/publicNotificationStore.d.ts +2 -1
- package/package.json +2 -1
- package/dist/solutions-components/p-6512dc44.entry.js +0 -6
- package/dist/solutions-components/p-65ad1625.entry.js +0 -6
- package/dist/solutions-components/p-989bf0bf.entry.js +0 -6
- package/dist/solutions-components/p-a0611720.entry.js +0 -6
- package/dist/solutions-components/p-efe1694a.entry.js +0 -17
- package/dist/solutions-components/p-f3467807.entry.js +0 -6
|
@@ -565,3 +565,10 @@ export interface IPopupUtils {
|
|
|
565
565
|
export interface IConsentResponse {
|
|
566
566
|
granted: boolean;
|
|
567
567
|
}
|
|
568
|
+
|
|
569
|
+
/**
|
|
570
|
+
* Key is the layer name and the value is the type of layer
|
|
571
|
+
*/
|
|
572
|
+
export interface IManagedLayers {
|
|
573
|
+
[key: string]: "buffer" | "sketch";
|
|
574
|
+
}
|
|
@@ -15,10 +15,11 @@
|
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
17
|
import { createStore } from "@stencil/store";
|
|
18
|
+
import { IManagedLayers } from "./interfaces";
|
|
18
19
|
|
|
19
20
|
const { state, onChange } = createStore({
|
|
20
|
-
//
|
|
21
|
-
managedLayers:
|
|
21
|
+
// Key Value pair whose Key is the layer name and the Value is the type of layer ("buffer" | "sketch")
|
|
22
|
+
managedLayers: {} as IManagedLayers,
|
|
22
23
|
// List of tables added and managed by the component
|
|
23
24
|
managedTables: [],
|
|
24
25
|
// Handle[]: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Handles.html#Handle
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
/// <reference types="arcgis-js-api" />
|
|
17
17
|
import { EventEmitter } from "../../stencil-public-runtime";
|
|
18
|
+
import { ISearchConfiguration } from "../../utils/interfaces";
|
|
18
19
|
export declare class CreateFeature {
|
|
19
20
|
el: HTMLCreateFeatureElement;
|
|
20
21
|
/**
|
|
@@ -30,6 +31,14 @@ export declare class CreateFeature {
|
|
|
30
31
|
* This will hide the header and footer elements of the editor and user needs to execute the submit method manually.
|
|
31
32
|
*/
|
|
32
33
|
customizeSubmit?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* ISearchConfiguration: Configuration details for the Search widget
|
|
36
|
+
*/
|
|
37
|
+
searchConfiguration: ISearchConfiguration;
|
|
38
|
+
/**
|
|
39
|
+
* boolean: When true the search widget will shown
|
|
40
|
+
*/
|
|
41
|
+
showSearchWidget: boolean;
|
|
33
42
|
/**
|
|
34
43
|
* esri/widgets/Editor: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Editor.html
|
|
35
44
|
* The Editor constructor
|
|
@@ -40,6 +49,21 @@ export declare class CreateFeature {
|
|
|
40
49
|
* The Editor instance
|
|
41
50
|
*/
|
|
42
51
|
protected _editor: __esri.Editor;
|
|
52
|
+
/**
|
|
53
|
+
* https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html
|
|
54
|
+
* The Feature layer instance
|
|
55
|
+
*/
|
|
56
|
+
protected FeatureLayer: typeof import("esri/layers/FeatureLayer");
|
|
57
|
+
/**
|
|
58
|
+
* "esri/widgets/Search": https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html
|
|
59
|
+
* The Search instance
|
|
60
|
+
*/
|
|
61
|
+
protected Search: typeof import("esri/widgets/Search");
|
|
62
|
+
/**
|
|
63
|
+
* "esri/widgets/Search": https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html
|
|
64
|
+
* The Search instance
|
|
65
|
+
*/
|
|
66
|
+
protected _search: __esri.widgetsSearch;
|
|
43
67
|
/**
|
|
44
68
|
* esri/core/reactiveUtils: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-reactiveUtils.html
|
|
45
69
|
*/
|
|
@@ -48,6 +72,10 @@ export declare class CreateFeature {
|
|
|
48
72
|
* boolean: Flag to maintain the add attachment
|
|
49
73
|
*/
|
|
50
74
|
protected _addingAttachment: boolean;
|
|
75
|
+
/**
|
|
76
|
+
* ISearchConfiguration: config for search widget
|
|
77
|
+
*/
|
|
78
|
+
protected searchConfiguration1: ISearchConfiguration;
|
|
51
79
|
/**
|
|
52
80
|
* Called each time the mapView prop is changed.
|
|
53
81
|
*/
|
|
@@ -92,7 +120,7 @@ export declare class CreateFeature {
|
|
|
92
120
|
*/
|
|
93
121
|
render(): any;
|
|
94
122
|
/**
|
|
95
|
-
* Init Editor widget and
|
|
123
|
+
* Init Editor widget and Search widget
|
|
96
124
|
*/
|
|
97
125
|
protected init(): Promise<void>;
|
|
98
126
|
/**
|
|
@@ -111,6 +139,20 @@ export declare class CreateFeature {
|
|
|
111
139
|
* @protected
|
|
112
140
|
*/
|
|
113
141
|
protected startCreate(): Promise<void>;
|
|
142
|
+
/**
|
|
143
|
+
* Display search widget to search location
|
|
144
|
+
* @protected
|
|
145
|
+
*/
|
|
146
|
+
protected createSearchWidget(): Promise<void>;
|
|
147
|
+
/**
|
|
148
|
+
* Initialize the search widget based on user defined configuration
|
|
149
|
+
*
|
|
150
|
+
* @param searchConfiguration search configuration defined by the user
|
|
151
|
+
* @param view the current map view
|
|
152
|
+
*
|
|
153
|
+
* @protected
|
|
154
|
+
*/
|
|
155
|
+
protected _getSearchConfig(searchConfiguration: ISearchConfiguration, view: __esri.MapView): ISearchConfiguration;
|
|
114
156
|
/**
|
|
115
157
|
* Hides the elements of editor widget
|
|
116
158
|
* @protected
|
|
@@ -19,6 +19,10 @@ import CrowdsourceManager_T9n from "../../assets/t9n/crowdsource-manager/resourc
|
|
|
19
19
|
import { ELayoutMode, IBasemapConfig, IMapChange, IMapInfo, ISearchConfiguration, theme } from "../../utils/interfaces";
|
|
20
20
|
export declare class CrowdsourceManager {
|
|
21
21
|
el: HTMLCrowdsourceManagerElement;
|
|
22
|
+
/**
|
|
23
|
+
* Array of objects containing proxy information for premium platform services.
|
|
24
|
+
*/
|
|
25
|
+
appProxies: any;
|
|
22
26
|
/**
|
|
23
27
|
* string: default center point values for the map
|
|
24
28
|
* ; delimited x;y pair
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
import { VNode, EventEmitter } from "../../stencil-public-runtime";
|
|
18
18
|
import { IMapChange, IMapClick, IMapInfo, ISearchConfiguration, theme } from "../../utils/interfaces";
|
|
19
19
|
import CrowdsourceReporter_T9n from "../../assets/t9n/crowdsource-reporter/resources.json";
|
|
20
|
+
import { ILayerItemsHash } from "../layer-list/layer-list";
|
|
20
21
|
export declare class CrowdsourceReporter {
|
|
21
22
|
el: HTMLCrowdsourceReporterElement;
|
|
22
23
|
/**
|
|
@@ -172,6 +173,10 @@ export declare class CrowdsourceReporter {
|
|
|
172
173
|
* __esri.FeatureLayer[]: Valid layers from the current map
|
|
173
174
|
*/
|
|
174
175
|
protected _validLayers: __esri.FeatureLayer[];
|
|
176
|
+
/**
|
|
177
|
+
* string[]: Configured/all layers id from current map which can be used for reporting
|
|
178
|
+
*/
|
|
179
|
+
protected _editableLayerIds: string[];
|
|
175
180
|
/**
|
|
176
181
|
* string: The selected feature layer's id from the layer's list
|
|
177
182
|
*/
|
|
@@ -196,6 +201,10 @@ export declare class CrowdsourceReporter {
|
|
|
196
201
|
* HTMLLayerListElement: Create Layer list component instance
|
|
197
202
|
*/
|
|
198
203
|
protected _layerList: HTMLLayerListElement;
|
|
204
|
+
/**
|
|
205
|
+
* HTMLFeatureListElement: Create feature list component instance
|
|
206
|
+
*/
|
|
207
|
+
protected _featureList: HTMLFeatureListElement;
|
|
199
208
|
/**
|
|
200
209
|
* HTMLInstantAppsSocialShareElement: Share element
|
|
201
210
|
*/
|
|
@@ -307,18 +316,13 @@ export declare class CrowdsourceReporter {
|
|
|
307
316
|
* Navigates to layer-list
|
|
308
317
|
* @protected
|
|
309
318
|
*/
|
|
310
|
-
protected navigateToHomePage(): void
|
|
319
|
+
protected navigateToHomePage(): Promise<void>;
|
|
311
320
|
/**
|
|
312
|
-
*
|
|
321
|
+
* On layer select open the feature create flow item
|
|
313
322
|
* @param evt Event which has details of selected layerId and layerName
|
|
314
323
|
* @protected
|
|
315
324
|
*/
|
|
316
|
-
protected
|
|
317
|
-
/**
|
|
318
|
-
* On next button click open the feature create flow item
|
|
319
|
-
* @protected
|
|
320
|
-
*/
|
|
321
|
-
protected navigateToCreateFeature(): Promise<void>;
|
|
325
|
+
protected navigateToCreateFeature(evt: CustomEvent): Promise<void>;
|
|
322
326
|
/**
|
|
323
327
|
* On report an incident button click open the create a report panel with the layer list
|
|
324
328
|
* @protected
|
|
@@ -406,7 +410,7 @@ export declare class CrowdsourceReporter {
|
|
|
406
410
|
*/
|
|
407
411
|
protected handleMapClick(): void;
|
|
408
412
|
/**
|
|
409
|
-
* On map click do hitTest and get the clicked graphics
|
|
413
|
+
* On map click do hitTest and get the clicked graphics from both reporting and non-reporting layers, and show feature details
|
|
410
414
|
* @param event IMapClick map click event details
|
|
411
415
|
*
|
|
412
416
|
* @protected
|
|
@@ -418,10 +422,27 @@ export declare class CrowdsourceReporter {
|
|
|
418
422
|
* @protected
|
|
419
423
|
*/
|
|
420
424
|
protected _getTranslations(): Promise<void>;
|
|
425
|
+
/**
|
|
426
|
+
* Returns the ids of all OR configured layers that support edits with the update capability
|
|
427
|
+
* @param hash each layer item details
|
|
428
|
+
* @param layers list of layers id
|
|
429
|
+
* @returns array of editable layer ids
|
|
430
|
+
*/
|
|
431
|
+
protected reduceToConfiguredLayers(hash: ILayerItemsHash): string[];
|
|
432
|
+
/**
|
|
433
|
+
* Creates the list of layers to be listed in layer list
|
|
434
|
+
* @protected
|
|
435
|
+
*/
|
|
436
|
+
protected getLayersToShowInList(): Promise<void>;
|
|
437
|
+
/**
|
|
438
|
+
* renders feature list
|
|
439
|
+
* @protected
|
|
440
|
+
*/
|
|
441
|
+
protected renderFeaturesList(): Promise<void>;
|
|
421
442
|
/**
|
|
422
443
|
* Updates the share url for current selected feature
|
|
423
444
|
* @protected
|
|
424
|
-
|
|
445
|
+
*/
|
|
425
446
|
protected _updateShareURL(): void;
|
|
426
447
|
/**
|
|
427
448
|
* Navigates to selected features detail based on the URL params
|
|
@@ -39,6 +39,10 @@ export declare class FeatureList {
|
|
|
39
39
|
* boolean: Highlight feature on map optional (default false) boolean to indicate if we should highlight and zoom to the extent of the feature geometry
|
|
40
40
|
*/
|
|
41
41
|
highlightOnMap?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* boolean: Highlight feature on map optional (default false) boolean to indicate if we should highlight when hover on Feature in list
|
|
44
|
+
*/
|
|
45
|
+
highlightOnHover?: boolean;
|
|
42
46
|
/**
|
|
43
47
|
* calcite-list-item list of features with popup titles
|
|
44
48
|
*/
|
|
@@ -56,6 +60,11 @@ export declare class FeatureList {
|
|
|
56
60
|
* All UI strings should be defined here.
|
|
57
61
|
*/
|
|
58
62
|
_translations: typeof FeatureList_T9n;
|
|
63
|
+
/**
|
|
64
|
+
* "esri/Color": https://developers.arcgis.com/javascript/latest/api-reference/esri-Color.html
|
|
65
|
+
* The Color instance
|
|
66
|
+
*/
|
|
67
|
+
protected Color: typeof import("esri/Color");
|
|
59
68
|
/**
|
|
60
69
|
* IPopupUtils: To fetch the list label using popup titles
|
|
61
70
|
*/
|
|
@@ -72,6 +81,11 @@ export declare class FeatureList {
|
|
|
72
81
|
* Watch for selectedLayerId change and update layer instance and features list for new layerId
|
|
73
82
|
*/
|
|
74
83
|
selectedLayerWatchHandler(): Promise<void>;
|
|
84
|
+
/**
|
|
85
|
+
* Refresh the feature list which will fetch the latest features and update the features list
|
|
86
|
+
* @returns Promise that resolves when the operation is complete
|
|
87
|
+
*/
|
|
88
|
+
refresh(): Promise<void>;
|
|
75
89
|
/**
|
|
76
90
|
* Emitted on demand when feature is selected using the list
|
|
77
91
|
*/
|
|
@@ -89,6 +103,12 @@ export declare class FeatureList {
|
|
|
89
103
|
* Renders the component.
|
|
90
104
|
*/
|
|
91
105
|
render(): any;
|
|
106
|
+
/**
|
|
107
|
+
* Load esri javascript api modules
|
|
108
|
+
* @returns Promise resolving when function is done
|
|
109
|
+
* @protected
|
|
110
|
+
*/
|
|
111
|
+
protected initModules(): Promise<void>;
|
|
92
112
|
/**
|
|
93
113
|
* Initialize the features list using the selected layer
|
|
94
114
|
* @protected
|
|
@@ -107,6 +127,17 @@ export declare class FeatureList {
|
|
|
107
127
|
* @protected
|
|
108
128
|
*/
|
|
109
129
|
protected featureClicked(event: any, selectedFeature: __esri.Graphic): Promise<void>;
|
|
130
|
+
/**
|
|
131
|
+
* On feature hover in feature list highlight the feature on the map
|
|
132
|
+
* @param selectedFeature mouseovered feature graphic
|
|
133
|
+
* @protected
|
|
134
|
+
*/
|
|
135
|
+
protected onFeatureHover(selectedFeature: __esri.Graphic): Promise<void>;
|
|
136
|
+
/**
|
|
137
|
+
* Clears the highlight
|
|
138
|
+
* @protected
|
|
139
|
+
*/
|
|
140
|
+
protected clearHighlights(): void;
|
|
110
141
|
/**
|
|
111
142
|
* Query the selected feature layer, in descending order of object id's
|
|
112
143
|
* @param page 0th page number in the pagination item
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
/// <reference types="arcgis-js-api" />
|
|
17
17
|
import { VNode, EventEmitter } from "../../stencil-public-runtime";
|
|
18
18
|
import LayerList_T9n from "../../assets/t9n/layer-list/resources.json";
|
|
19
|
-
interface ILayerItemsHash {
|
|
19
|
+
export interface ILayerItemsHash {
|
|
20
20
|
[key: string]: ILayerDetailsHash;
|
|
21
21
|
}
|
|
22
22
|
interface ILayerDetailsHash {
|
|
@@ -115,11 +115,11 @@ export declare class LayerList {
|
|
|
115
115
|
*/
|
|
116
116
|
protected handleNoLayersToDisplay(): void;
|
|
117
117
|
/**
|
|
118
|
-
* Returns the ids of all OR configured layers that
|
|
118
|
+
* Returns the ids of all OR configured layers that needs to be shown in the list
|
|
119
119
|
* @param hash each layer item details
|
|
120
120
|
* @returns array of layer ids
|
|
121
121
|
*/
|
|
122
|
-
protected
|
|
122
|
+
protected getLayersToBeShownInList(hash: ILayerItemsHash): string[];
|
|
123
123
|
/**
|
|
124
124
|
* Render feature layer list
|
|
125
125
|
* @returns layer list
|
|
@@ -18,6 +18,10 @@ import { EventEmitter } from "../../stencil-public-runtime";
|
|
|
18
18
|
import { IBasemapConfig, IMapChange, IMapInfo, ISearchConfiguration, theme } from "../../utils/interfaces";
|
|
19
19
|
export declare class MapCard {
|
|
20
20
|
el: HTMLMapCardElement;
|
|
21
|
+
/**
|
|
22
|
+
* Array of objects containing proxy information for premium platform services.
|
|
23
|
+
*/
|
|
24
|
+
appProxies: any;
|
|
21
25
|
/**
|
|
22
26
|
* string: Item ID of the web map that should be selected by default when the app loads
|
|
23
27
|
*/
|
|
@@ -117,6 +121,10 @@ export declare class MapCard {
|
|
|
117
121
|
* IMapInfo: id and name of the map to display
|
|
118
122
|
*/
|
|
119
123
|
_webMapInfo: IMapInfo;
|
|
124
|
+
/**
|
|
125
|
+
* esri/config: https://developers.arcgis.com/javascript/latest/api-reference/esri-config.html
|
|
126
|
+
*/
|
|
127
|
+
protected esriConfig: typeof import("esri/config");
|
|
120
128
|
/**
|
|
121
129
|
* esri/widgets/Home: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Home.html
|
|
122
130
|
*/
|
|
@@ -112,6 +112,10 @@ export declare class PublicNotification {
|
|
|
112
112
|
* https://developers.arcgis.com/documentation/common-data-types/symbol-objects.htm
|
|
113
113
|
*/
|
|
114
114
|
sketchPolygonSymbol: __esri.SimpleFillSymbol | any;
|
|
115
|
+
/**
|
|
116
|
+
* boolean: When true a graphics will be added to the map on export
|
|
117
|
+
*/
|
|
118
|
+
_exportGraphics: boolean;
|
|
115
119
|
/**
|
|
116
120
|
* boolean: When true a map will be added on export
|
|
117
121
|
*/
|
|
@@ -174,6 +178,10 @@ export declare class PublicNotification {
|
|
|
174
178
|
* esri/geometry/geometryEngine: https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html
|
|
175
179
|
*/
|
|
176
180
|
protected _geometryEngine: __esri.geometryEngine;
|
|
181
|
+
/**
|
|
182
|
+
* esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html
|
|
183
|
+
*/
|
|
184
|
+
protected Graphic: typeof import("esri/Graphic");
|
|
177
185
|
/**
|
|
178
186
|
* esri/symbols/support/jsonUtils: https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-support-jsonUtils.html
|
|
179
187
|
*/
|
|
@@ -446,6 +454,46 @@ export declare class PublicNotification {
|
|
|
446
454
|
* @protected
|
|
447
455
|
*/
|
|
448
456
|
protected _getExportOptions(): VNode;
|
|
457
|
+
/**
|
|
458
|
+
* Toggle the _addMap state variable and update the graphics on the map
|
|
459
|
+
*
|
|
460
|
+
* @protected
|
|
461
|
+
*/
|
|
462
|
+
protected _handleAddMapChange(): void;
|
|
463
|
+
/**
|
|
464
|
+
* Toggle the _exportGraphics state variable and update the graphics on the map
|
|
465
|
+
*
|
|
466
|
+
* @protected
|
|
467
|
+
*/
|
|
468
|
+
protected _handleExportGraphicsChange(): void;
|
|
469
|
+
/**
|
|
470
|
+
* Get the "sketch" or "buffer" graphics layer
|
|
471
|
+
*
|
|
472
|
+
* @param type The type of managed layer to fetch "sketch" | "buffer"
|
|
473
|
+
*
|
|
474
|
+
* @protected
|
|
475
|
+
*/
|
|
476
|
+
protected _getManagedLayer(type: "sketch" | "buffer"): __esri.GraphicsLayer;
|
|
477
|
+
/**
|
|
478
|
+
* Update the export graphics by adding or removeing them
|
|
479
|
+
*
|
|
480
|
+
* @param clear When true the graphics layers will be cleared prior to adding any new graphics, defaults to false
|
|
481
|
+
*
|
|
482
|
+
* @protected
|
|
483
|
+
*/
|
|
484
|
+
protected _updateExportGraphics(clear?: boolean): void;
|
|
485
|
+
/**
|
|
486
|
+
* Remove all buffer and sketch graphics
|
|
487
|
+
*
|
|
488
|
+
* @protected
|
|
489
|
+
*/
|
|
490
|
+
_removeExportGraphics(): void;
|
|
491
|
+
/**
|
|
492
|
+
* Add all buffer and sketch graphics that are flagged for download
|
|
493
|
+
*
|
|
494
|
+
* @protected
|
|
495
|
+
*/
|
|
496
|
+
protected _addExportGraphics(): void;
|
|
449
497
|
/**
|
|
450
498
|
* Render the refine page
|
|
451
499
|
*
|
|
@@ -116,6 +116,10 @@ export namespace Components {
|
|
|
116
116
|
* esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html
|
|
117
117
|
*/
|
|
118
118
|
"mapView": __esri.MapView;
|
|
119
|
+
/**
|
|
120
|
+
* ISearchConfiguration: Configuration details for the Search widget
|
|
121
|
+
*/
|
|
122
|
+
"searchConfiguration": ISearchConfiguration;
|
|
119
123
|
/**
|
|
120
124
|
* string: Layer id of the feature layer in which the new feature is to be created
|
|
121
125
|
*/
|
|
@@ -127,6 +131,10 @@ export namespace Components {
|
|
|
127
131
|
"submit": () => Promise<void>;
|
|
128
132
|
}
|
|
129
133
|
interface CrowdsourceManager {
|
|
134
|
+
/**
|
|
135
|
+
* Array of objects containing proxy information for premium platform services.
|
|
136
|
+
*/
|
|
137
|
+
"appProxies": any;
|
|
130
138
|
/**
|
|
131
139
|
* IBasemapConfig: List of any basemaps to filter out from the basemap widget
|
|
132
140
|
*/
|
|
@@ -385,6 +393,10 @@ export namespace Components {
|
|
|
385
393
|
interface FeatureFormFlowItem {
|
|
386
394
|
}
|
|
387
395
|
interface FeatureList {
|
|
396
|
+
/**
|
|
397
|
+
* boolean: Highlight feature on map optional (default false) boolean to indicate if we should highlight when hover on Feature in list
|
|
398
|
+
*/
|
|
399
|
+
"highlightOnHover"?: boolean;
|
|
388
400
|
/**
|
|
389
401
|
* boolean: Highlight feature on map optional (default false) boolean to indicate if we should highlight and zoom to the extent of the feature geometry
|
|
390
402
|
*/
|
|
@@ -401,6 +413,11 @@ export namespace Components {
|
|
|
401
413
|
* number: Number features to be fetched per page, by default 100 features will be fetched
|
|
402
414
|
*/
|
|
403
415
|
"pageSize"?: number;
|
|
416
|
+
/**
|
|
417
|
+
* Refresh the feature list which will fetch the latest features and update the features list
|
|
418
|
+
* @returns Promise that resolves when the operation is complete
|
|
419
|
+
*/
|
|
420
|
+
"refresh": () => Promise<void>;
|
|
404
421
|
/**
|
|
405
422
|
* string: Layer id of the feature layer to show the list
|
|
406
423
|
*/
|
|
@@ -599,6 +616,10 @@ export namespace Components {
|
|
|
599
616
|
interface LocationFlowItem {
|
|
600
617
|
}
|
|
601
618
|
interface MapCard {
|
|
619
|
+
/**
|
|
620
|
+
* Array of objects containing proxy information for premium platform services.
|
|
621
|
+
*/
|
|
622
|
+
"appProxies": any;
|
|
602
623
|
/**
|
|
603
624
|
* IBasemapConfig: List of any basemaps to filter out from the basemap widget
|
|
604
625
|
*/
|
|
@@ -2231,12 +2252,20 @@ declare namespace LocalJSX {
|
|
|
2231
2252
|
* Emitted on demand when the feature is created successfully
|
|
2232
2253
|
*/
|
|
2233
2254
|
"onSuccess"?: (event: CreateFeatureCustomEvent<void>) => void;
|
|
2255
|
+
/**
|
|
2256
|
+
* ISearchConfiguration: Configuration details for the Search widget
|
|
2257
|
+
*/
|
|
2258
|
+
"searchConfiguration"?: ISearchConfiguration;
|
|
2234
2259
|
/**
|
|
2235
2260
|
* string: Layer id of the feature layer in which the new feature is to be created
|
|
2236
2261
|
*/
|
|
2237
2262
|
"selectedLayerId"?: string;
|
|
2238
2263
|
}
|
|
2239
2264
|
interface CrowdsourceManager {
|
|
2265
|
+
/**
|
|
2266
|
+
* Array of objects containing proxy information for premium platform services.
|
|
2267
|
+
*/
|
|
2268
|
+
"appProxies"?: any;
|
|
2240
2269
|
/**
|
|
2241
2270
|
* IBasemapConfig: List of any basemaps to filter out from the basemap widget
|
|
2242
2271
|
*/
|
|
@@ -2519,6 +2548,10 @@ declare namespace LocalJSX {
|
|
|
2519
2548
|
interface FeatureFormFlowItem {
|
|
2520
2549
|
}
|
|
2521
2550
|
interface FeatureList {
|
|
2551
|
+
/**
|
|
2552
|
+
* boolean: Highlight feature on map optional (default false) boolean to indicate if we should highlight when hover on Feature in list
|
|
2553
|
+
*/
|
|
2554
|
+
"highlightOnHover"?: boolean;
|
|
2522
2555
|
/**
|
|
2523
2556
|
* boolean: Highlight feature on map optional (default false) boolean to indicate if we should highlight and zoom to the extent of the feature geometry
|
|
2524
2557
|
*/
|
|
@@ -2743,6 +2776,10 @@ declare namespace LocalJSX {
|
|
|
2743
2776
|
interface LocationFlowItem {
|
|
2744
2777
|
}
|
|
2745
2778
|
interface MapCard {
|
|
2779
|
+
/**
|
|
2780
|
+
* Array of objects containing proxy information for premium platform services.
|
|
2781
|
+
*/
|
|
2782
|
+
"appProxies"?: any;
|
|
2746
2783
|
/**
|
|
2747
2784
|
* IBasemapConfig: List of any basemaps to filter out from the basemap widget
|
|
2748
2785
|
*/
|
|
@@ -487,3 +487,9 @@ export interface IPopupUtils {
|
|
|
487
487
|
export interface IConsentResponse {
|
|
488
488
|
granted: boolean;
|
|
489
489
|
}
|
|
490
|
+
/**
|
|
491
|
+
* Key is the layer name and the value is the type of layer
|
|
492
|
+
*/
|
|
493
|
+
export interface IManagedLayers {
|
|
494
|
+
[key: string]: "buffer" | "sketch";
|
|
495
|
+
}
|
|
@@ -13,8 +13,9 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
+
import { IManagedLayers } from "./interfaces";
|
|
16
17
|
declare const state: {
|
|
17
|
-
managedLayers:
|
|
18
|
+
managedLayers: IManagedLayers;
|
|
18
19
|
managedTables: any[];
|
|
19
20
|
highlightHandles: any[];
|
|
20
21
|
removeHandles: () => void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@esri/solutions-components",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.6",
|
|
4
4
|
"description": "Web Components for Esri's Solutions Applications",
|
|
5
5
|
"main": "dist/index.cjs.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -90,6 +90,7 @@
|
|
|
90
90
|
"@esri/hub-teams": "^12.4.1",
|
|
91
91
|
"@esri/instant-apps-components": "1.0.0-beta.206",
|
|
92
92
|
"@esri/solution-common": "^5.0.9",
|
|
93
|
+
"templates-common-library-esm": "npm:templates-common-library@0.0.454-esm",
|
|
93
94
|
"@pdf-lib/fontkit": "^1.1.1",
|
|
94
95
|
"focus-trap": "7.2.0",
|
|
95
96
|
"jspdf": "^2.5.1",
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright 2022 Esri
|
|
3
|
-
* Licensed under the Apache License, Version 2.0
|
|
4
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
-
*/
|
|
6
|
-
import{r as t,c as i,h as s,H as e,g as h}from"./p-7d280d8a.js";import{l as a,g as o}from"./p-be8ef276.js";import{a as l,b as c,h as n,g as r,q as d}from"./p-c897e3eb.js";import"./p-8ddc7786.js";import"./p-e2d0ad1b.js";import"./p-c1cf3ebc.js";const u=class{constructor(s){t(this,s),this.togglePanel=i(this,"togglePanel",7),this._noLayerToDisplayErrorMsg="Web map does not contain any editable layers.",this.description=void 0,this.isMobile=void 0,this.enableAnonymousAccess=void 0,this.enableAnonymousComments=void 0,this.enableComments=void 0,this.enableLogin=void 0,this.enableNewReports=void 0,this.layers=void 0,this.loginTitle=void 0,this.mapView=void 0,this.layerId=void 0,this.objectId=void 0,this.center=void 0,this.level=void 0,this.reportButtonText=void 0,this.reportsHeader=void 0,this.reportSubmittedMessage=void 0,this.searchConfiguration=void 0,this.showComments=void 0,this.defaultWebmap="",this.enableSearch=!0,this.enableHome=!0,this.mapInfos=[],this.theme="light",this.enableZoom=!0,this._mapInfo=void 0,this._flowItems=["layer-list"],this._sidePanelCollapsed=!1,this._translations=void 0,this._hasValidLayers=!1,this._selectedLayerName=void 0,this._reportSubmitted=!1,this._showSubmitCancelButton=!1,this._featureCreationFailedErrorMsg=void 0}async isMobileWatchHandler(){this._sidePanelCollapsed=!1}async mapViewWatchHandler(){await this.mapView.when((async()=>{await this.setMapView()}))}async componentWillLoad(){this._urlParamsLoaded=!1,await this._initModules(),await this._getTranslations()}render(){const t="dark"===this.theme?"calcite-mode-dark":"calcite-mode-light";return s(e,null,this._reportSubmitted&&s("calcite-alert",{"auto-close":!0,class:t,icon:"check-circle",kind:"success",label:"",onCalciteAlertClose:()=>{this._reportSubmitted=!1},open:!0,placement:"top"},s("div",{slot:"title"},this._translations.reportSubmit),s("div",{slot:"message"},this.reportSubmittedMessage?this.reportSubmittedMessage:this._translations.submitMsg)),this._featureCreationFailedErrorMsg&&s("calcite-alert",{"auto-close":!0,class:t,icon:"x-octagon",kind:"danger",label:"",onCalciteAlertClose:()=>{this._featureCreationFailedErrorMsg=""},open:!0,placement:"top"},s("div",{slot:"title"},this._translations.error),s("div",{slot:"message"},this._featureCreationFailedErrorMsg)),s("div",null,s("calcite-shell",{"content-behind":!0},this._getReporter())))}async _initModules(){const[t]=await a(["esri/core/reactiveUtils"]);this.reactiveUtils=t}setSelectedLayer(t,i){this._selectedLayerId=t,this._selectedLayerName=i,this._validLayers.forEach((i=>{i.set("visible",!t||i.id===t)}))}_getReporter(){const t=[];return this._flowItems.forEach((i=>{switch(i){case"layer-list":t.push(this.getLayerListFlowItem());break;case"feature-list":t.push(this.getFeatureListFlowItem(this._selectedLayerId,this._selectedLayerName));break;case"feature-details":t.push(this.getFeatureDetailsFlowItem());break;case"reporting-layer-list":t.push(this.getChooseCategoryFlowItem());break;case"feature-create":t.push(this.getFeatureCreateFlowItem())}})),s("calcite-panel",{class:"width-full "+("dark"===this.theme?"calcite-mode-dark":"calcite-mode-light")},this.mapView?s("calcite-flow",null,(null==t?void 0:t.length)>0&&t):s("calcite-loader",{label:"",scale:"m"}))}getLayerListFlowItem(){return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this.reportsHeader},this.isMobile&&this.getActionToExpandCollapsePanel(),this._hasValidLayers&&this.enableNewReports&&s("calcite-button",{appearance:"solid",onClick:this.navigateToChooseCategory.bind(this),slot:"footer",width:"full"},this.reportButtonText),s("calcite-panel",{"full-height":!0,"full-width":!0},s("layer-list",{class:"height-full",layers:this.layers,mapView:this.mapView,noLayerErrorMsg:this._noLayerToDisplayErrorMsg,onLayerSelect:this.displayFeaturesList.bind(this),onLayersListLoaded:this.layerListLoaded.bind(this),ref:t=>this._layerList=t,showFeatureCount:!0,showNextIcon:!0})))}getChooseCategoryFlowItem(){return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this._translations.createReportHeader,onCalciteFlowItemBack:this.backFromSelectedPanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),s("div",{class:"width-full",slot:"footer"},s("calcite-button",{appearance:"solid",class:"footer-top-button footer-button",disabled:!this._selectedLayerId,onClick:this.navigateToCreateFeature.bind(this),width:"full"},this._translations.next),s("calcite-button",{appearance:"outline",class:"footer-button",onClick:this.backFromSelectedPanel.bind(this),width:"full"},this._translations.cancel)),s("calcite-panel",{"full-height":!0,"full-width":!0},s("calcite-notice",{class:"notice-msg",icon:"lightbulb",kind:"success",open:!0},s("div",{slot:"message"},this._translations.chooseCategoryMsg)),s("layer-list",{class:"height-full",layers:this.layers,mapView:this.mapView,noLayerErrorMsg:this._noLayerToDisplayErrorMsg,onLayerSelect:this.highlightSelectedLayer.bind(this),showFeatureCount:!1,showNextIcon:!1})))}getFeatureCreateFlowItem(){return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this._selectedLayerName,onCalciteFlowItemBack:this.backFromCreateFeaturePanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),this._showSubmitCancelButton&&s("div",{class:"width-full",slot:"footer"},s("calcite-button",{appearance:"solid",class:"footer-top-button footer-button",onClick:this.onSubmitButtonClick.bind(this),width:"full"},this._translations.submit),s("calcite-button",{appearance:"outline",class:"footer-button",onClick:this.backFromCreateFeaturePanel.bind(this),width:"full"},this._translations.cancel)),s("calcite-panel",{"full-height":!0,"full-width":!0},s("calcite-notice",{class:"notice-msg",icon:"lightbulb",kind:"success",open:!0},s("div",{slot:"message"},this._translations.featureEditFormInfoMsg)),s("create-feature",{customizeSubmit:!0,mapView:this.mapView,onDrawComplete:this.onDrawComplete.bind(this),onEditingAttachment:this.showSubmitCancelButton.bind(this),onFail:this.createFeatureFailed.bind(this),onSuccess:this.onReportSubmitted.bind(this),ref:t=>this._createFeature=t,selectedLayerId:this._selectedLayerId})))}onDrawComplete(){this._showSubmitCancelButton=!0}showSubmitCancelButton(t){this._showSubmitCancelButton=!t.detail}onSubmitButtonClick(){this._createFeature&&this._createFeature.submit()}backFromCreateFeaturePanel(){this._createFeature&&this._createFeature.close(),this.backFromSelectedPanel()}createFeatureFailed(t){console.error(t.detail),this._featureCreationFailedErrorMsg=t.detail.message}onReportSubmitted(){this._reportSubmitted=!0,this.navigateToHomePage()}navigateToHomePage(){this._createFeature&&this._createFeature.close(),this._layerList&&this._layerList.refresh(),this.setSelectedFeatures([]),this._flowItems=["layer-list"]}highlightSelectedLayer(t){this.setSelectedLayer(t.detail.layerId,t.detail.layerName)}async navigateToCreateFeature(){this._showSubmitCancelButton=!1,this._flowItems=[...this._flowItems,"feature-create"]}navigateToChooseCategory(){this._flowItems=[...this._flowItems,"reporting-layer-list"]}async layerListLoaded(t){const i=t.detail,s=await l(this.mapView);this._validLayers=[],s.forEach((t=>{i.includes(t.id)&&this._validLayers.push(t)})),this.handleMapClick(),this._hasValidLayers=i.length>0,this._urlParamsLoaded||(this._urlParamsLoaded=!0,await this.loadFeatureFromURLParams())}displayFeaturesList(t){this.setSelectedLayer(t.detail.layerId,t.detail.layerName),this._flowItems=[...this._flowItems,"feature-list"]}backFromSelectedPanel(){const t=[...this._flowItems];t.pop(),this.clearHighlights(),1!==t.length?this._flowItems=[...t]:this.navigateToHomePage()}toggleSidePanel(){this._sidePanelCollapsed=!this._sidePanelCollapsed,this.togglePanel.emit(this._sidePanelCollapsed)}async onFeatureSelectFromList(t){this.setSelectedFeatures([t.detail]),this._flowItems=[...this._flowItems,"feature-details"]}getFeatureListFlowItem(t,i){return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:i,onCalciteFlowItemBack:this.backFromSelectedPanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),this.enableNewReports&&s("calcite-button",{appearance:"solid",onClick:this.navigateToCreateFeature.bind(this),slot:"footer",width:"full"},this.reportButtonText),s("calcite-panel",{"full-height":!0},s("feature-list",{class:"height-full",mapView:this.mapView,noFeaturesFoundMsg:this._translations.featureErrorMsg,onFeatureSelect:this.onFeatureSelectFromList.bind(this),pageSize:30,selectedLayerId:t})))}getFeatureDetailsFlowItem(){return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this._selectedLayerName,onCalciteFlowItemBack:this.backFromSelectedPanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),s("instant-apps-social-share",{autoUpdateShareUrl:!1,embed:!1,popoverButtonIconScale:"s",ref:t=>this._shareNode=t,scale:"m",shareButtonColor:"neutral",shareButtonType:"action",slot:"header-actions-end",socialMedia:!0,view:this.mapView}),s("calcite-panel",{"full-height":!0},s("info-card",{allowEditing:!1,graphics:this._selectedFeature,highlightEnabled:!1,isLoading:!1,isMobile:!1,mapView:this.mapView,onSelectionChanged:this.featureDetailsChanged.bind(this),zoomAndScrollToSelected:!0})))}setSelectedFeatures(t){this._selectedFeature=t,this.setCurrentFeature(this._selectedFeature.length?this._selectedFeature[0]:null)}setCurrentFeature(t){if(t&&t.layer){const i=t.layer;this.setSelectedLayer(i.id,i.title),this._currentFeatureId=t.attributes[i.objectIdField]}else this.setSelectedLayer("",""),this._currentFeatureId="";this._updateShareURL()}featureDetailsChanged(t){this.setCurrentFeature(t.detail[0]),this.highlightOnMap(t.detail[0])}async highlightOnMap(t){if(this.clearHighlights(),t&&t.geometry&&t.layer){const i=await c(this.mapView,t.layer.id);this._highlightHandle=await n([t.getObjectId()],i,this.mapView,!0)}}clearHighlights(){this._highlightHandle&&this._highlightHandle.remove()}getActionToExpandCollapsePanel(){return s("calcite-action",{icon:this._sidePanelCollapsed?"chevrons-up":"chevrons-down",onClick:this.toggleSidePanel.bind(this),slot:"header-actions-end",text:this._sidePanelCollapsed?this._translations.expand:this._translations.collapse})}async setMapView(){this.mapView.popupEnabled=!1,this._defaultCenter&&this._defaultLevel&&(await this.mapView.goTo({center:this._defaultCenter,zoom:this._defaultLevel}),this._defaultCenter=void 0,this._defaultLevel=void 0)}handleMapClick(){this._mapClickHandle&&this._mapClickHandle.remove(),this._mapClickHandle=this.reactiveUtils.on((()=>this.mapView),"click",this.onMapClick.bind(this))}async onMapClick(t){this.mapView.popupEnabled=!1;const i={include:this._validLayers},s=await this.mapView.hitTest(t,i);if(s.results.length>0){const t=[];s.results.forEach((function(i){"graphic"===i.type&&t.push(i.graphic)})),this.setSelectedFeatures(t),this._flowItems.length&&"feature-details"!==this._flowItems[this._flowItems.length-1]?this._flowItems=[...this._flowItems,"feature-details"]:(this._flowItems=[...this._flowItems],this.highlightOnMap(t[0]))}}async _getTranslations(){const t=await o(this.el);this._translations=t[0]}_updateShareURL(){var t,i;const s=null===(t=this._shareNode)||void 0===t?void 0:t.shareUrl;if(!s)return;const e=new URL(s);this._selectedLayerId?e.searchParams.set("layerid",this._selectedLayerId):e.searchParams.delete("layerid"),(null===(i=this._selectedFeature)||void 0===i?void 0:i.length)?e.searchParams.set("oid",this._currentFeatureId):e.searchParams.delete("oid"),this._shareNode.shareUrl=e.href}async loadFeatureFromURLParams(){if(this.center&&this.level&&await this.mapView.goTo({center:this.center.split(";").map(Number),zoom:this.level}),this.layerId&&this.objectId){const t=await r(this.mapView,this.layerId);if(t){const i=await d([Number(this.objectId)],t,[],!0,this.mapView.spatialReference);i.length&&(this._selectedFeature=i,this._flowItems=this._flowItems.length&&"feature-details"!==this._flowItems[this._flowItems.length-1]?[...this._flowItems,"feature-details"]:[...this._flowItems],await this.highlightOnMap(i[0]))}}}get el(){return h(this)}static get watchers(){return{isMobile:["isMobileWatchHandler"],mapView:["mapViewWatchHandler"]}}};u.style=":host{display:block;--calcite-label-margin-bottom:0px;--solutions-theme-foreground-color:var(--calcite-color-foreground-1)}.width-full{width:100% !important}.width-0{width:0}.height-full{height:100% !important}.height-0{height:0}.overflow-hidden{overflow:hidden}.border{border:1px solid var(--calcite-color-border-3)}.notice-msg{padding:10px;width:calc(100% - 20px)}.footer-top-button{padding-bottom:7px}.footer-button{height:35px}";export{u as crowdsource_reporter}
|