@esri/solutions-components 0.8.5 → 0.8.7

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 (94) hide show
  1. package/dist/assets/t9n/crowdsource-reporter/resources.json +5 -6
  2. package/dist/assets/t9n/crowdsource-reporter/resources_en.json +5 -6
  3. package/dist/assets/t9n/feature-list/resources.json +1 -1
  4. package/dist/assets/t9n/feature-list/resources_en.json +1 -1
  5. package/dist/assets/t9n/public-notification/resources.json +3 -1
  6. package/dist/assets/t9n/public-notification/resources_en.json +3 -1
  7. package/dist/cjs/buffer-tools_3.cjs.entry.js +2 -2
  8. package/dist/cjs/calcite-alert_4.cjs.entry.js +2 -2
  9. package/dist/cjs/calcite-combobox_5.cjs.entry.js +2 -2
  10. package/dist/cjs/calcite-flow_5.cjs.entry.js +163 -16
  11. package/dist/cjs/crowdsource-manager.cjs.entry.js +6 -4
  12. package/dist/cjs/crowdsource-reporter.cjs.entry.js +124 -38
  13. package/dist/cjs/loader.cjs.js +1 -1
  14. package/dist/cjs/map-select-tools_3.cjs.entry.js +2 -2
  15. package/dist/cjs/public-notification.cjs.entry.js +110 -4
  16. package/dist/cjs/{publicNotificationStore-ef379d11.js → publicNotificationStore-e790601d.js} +2 -2
  17. package/dist/cjs/solutions-components.cjs.js +1 -1
  18. package/dist/collection/collection-manifest.json +1 -1
  19. package/dist/collection/components/create-feature/create-feature.css +9 -0
  20. package/dist/collection/components/create-feature/create-feature.js +134 -6
  21. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +102 -66
  22. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.css +5 -0
  23. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +196 -38
  24. package/dist/collection/components/feature-list/feature-list.js +93 -5
  25. package/dist/collection/components/info-card/info-card.css +1 -1
  26. package/dist/collection/components/info-card/info-card.js +1 -1
  27. package/dist/collection/components/layer-list/layer-list.js +6 -6
  28. package/dist/collection/components/map-draw-tools/map-draw-tools.js +1 -1
  29. package/dist/collection/components/map-layer-picker/map-layer-picker.js +1 -1
  30. package/dist/collection/components/map-select-tools/map-select-tools.js +1 -1
  31. package/dist/collection/components/public-notification/public-notification.js +110 -3
  32. package/dist/collection/demos/crowdsource-reporter.html +1 -1
  33. package/dist/collection/utils/interfaces.ts +23 -0
  34. package/dist/collection/utils/publicNotificationStore.js +2 -2
  35. package/dist/collection/utils/publicNotificationStore.ts +3 -2
  36. package/dist/components/create-feature2.js +111 -7
  37. package/dist/components/crowdsource-manager.js +12 -8
  38. package/dist/components/crowdsource-reporter.js +129 -39
  39. package/dist/components/feature-list2.js +54 -6
  40. package/dist/components/info-card2.js +2 -2
  41. package/dist/components/layer-list2.js +6 -6
  42. package/dist/components/map-draw-tools2.js +1 -1
  43. package/dist/components/map-layer-picker2.js +1 -1
  44. package/dist/components/map-select-tools2.js +1 -1
  45. package/dist/components/public-notification.js +110 -3
  46. package/dist/components/publicNotificationStore.js +2 -2
  47. package/dist/esm/buffer-tools_3.entry.js +2 -2
  48. package/dist/esm/calcite-alert_4.entry.js +3 -3
  49. package/dist/esm/calcite-combobox_5.entry.js +3 -3
  50. package/dist/esm/calcite-flow_5.entry.js +164 -17
  51. package/dist/esm/card-manager_3.entry.js +2 -2
  52. package/dist/esm/crowdsource-manager.entry.js +7 -5
  53. package/dist/esm/crowdsource-reporter.entry.js +125 -39
  54. package/dist/esm/{downloadUtils-0c13073b.js → downloadUtils-0c1e4d7b.js} +2 -2
  55. package/dist/esm/{index.es-ad250bc6.js → index.es-286e3cfa.js} +2 -2
  56. package/dist/esm/loader.js +1 -1
  57. package/dist/esm/map-select-tools_3.entry.js +4 -4
  58. package/dist/esm/{mapViewUtils-20504620.js → mapViewUtils-253178f1.js} +1 -1
  59. package/dist/esm/public-notification.entry.js +112 -6
  60. package/dist/esm/{publicNotificationStore-3bf4de75.js → publicNotificationStore-223faed2.js} +2 -2
  61. package/dist/esm/solutions-components.js +1 -1
  62. package/dist/solutions-components/demos/crowdsource-reporter.html +1 -1
  63. package/dist/solutions-components/p-15f9624a.entry.js +6 -0
  64. package/dist/solutions-components/{p-955647ea.entry.js → p-1ea5e061.entry.js} +2 -2
  65. package/dist/solutions-components/{p-590a2a26.js → p-212b02e7.js} +1 -1
  66. package/dist/solutions-components/p-238d3b5f.entry.js +6 -0
  67. package/dist/solutions-components/{p-cc280aa1.js → p-322868ec.js} +1 -1
  68. package/dist/solutions-components/{p-1d3a1794.js → p-331b5d1e.js} +2 -2
  69. package/dist/solutions-components/{p-c897e3eb.js → p-3af79063.js} +1 -1
  70. package/dist/solutions-components/p-6db185bf.entry.js +6 -0
  71. package/dist/solutions-components/p-80b11ec1.entry.js +17 -0
  72. package/dist/solutions-components/{p-5c7e3941.entry.js → p-813fd8a4.entry.js} +2 -2
  73. package/dist/solutions-components/{p-ff302d95.entry.js → p-d136eab0.entry.js} +2 -2
  74. package/dist/solutions-components/p-e0446d5b.entry.js +6 -0
  75. package/dist/solutions-components/p-e8f13354.entry.js +6 -0
  76. package/dist/solutions-components/solutions-components.esm.js +1 -1
  77. package/dist/solutions-components/utils/interfaces.ts +23 -0
  78. package/dist/solutions-components/utils/publicNotificationStore.ts +3 -2
  79. package/dist/types/components/create-feature/create-feature.d.ts +43 -1
  80. package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +22 -14
  81. package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +48 -11
  82. package/dist/types/components/feature-list/feature-list.d.ts +31 -0
  83. package/dist/types/components/layer-list/layer-list.d.ts +3 -3
  84. package/dist/types/components/public-notification/public-notification.d.ts +48 -0
  85. package/dist/types/components.d.ts +71 -2
  86. package/dist/types/utils/interfaces.d.ts +20 -0
  87. package/dist/types/utils/publicNotificationStore.d.ts +2 -1
  88. package/package.json +1 -1
  89. package/dist/solutions-components/p-6512dc44.entry.js +0 -6
  90. package/dist/solutions-components/p-6f65682c.entry.js +0 -6
  91. package/dist/solutions-components/p-989bf0bf.entry.js +0 -6
  92. package/dist/solutions-components/p-a0611720.entry.js +0 -6
  93. package/dist/solutions-components/p-b8c12736.entry.js +0 -6
  94. package/dist/solutions-components/p-efe1694a.entry.js +0 -17
@@ -565,3 +565,26 @@ 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
+ }
575
+
576
+ /**
577
+ * Key is the layers guid
578
+ */
579
+ export interface IReportingOptions {
580
+ [key: string]: IReportOption;
581
+ }
582
+
583
+ export interface IReportOption {
584
+ reporting: boolean;
585
+ comment: boolean;
586
+ like: boolean;
587
+ dislike: boolean;
588
+ likeField: string;
589
+ dislikeField: string;
590
+ }
@@ -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
- // List of layers added and managed by the component
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 starts the create workflow
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
@@ -23,6 +23,10 @@ export declare class CrowdsourceManager {
23
23
  * Array of objects containing proxy information for premium platform services.
24
24
  */
25
25
  appProxies: any;
26
+ /**
27
+ * IBasemapConfig: List of any basemaps to filter out from the basemap widget
28
+ */
29
+ basemapConfig: IBasemapConfig;
26
30
  /**
27
31
  * string: default center point values for the map
28
32
  * ; delimited x;y pair
@@ -52,6 +56,10 @@ export declare class CrowdsourceManager {
52
56
  * boolean: when true the layer table will auto refresh the data
53
57
  */
54
58
  enableAutoRefresh: boolean;
59
+ /**
60
+ * boolean: when true the basemap widget will be available
61
+ */
62
+ enableBasemap: boolean;
55
63
  /**
56
64
  * boolean: when true the layer table will support drag/drop of columns to adjust order
57
65
  */
@@ -68,6 +76,10 @@ export declare class CrowdsourceManager {
68
76
  * boolean: when true the fullscreen widget will be available
69
77
  */
70
78
  enableFullscreen: boolean;
79
+ /**
80
+ * boolean: when true the home widget will be available
81
+ */
82
+ enableHome: boolean;
71
83
  /**
72
84
  * boolean: when true edits can be applied directly within the table
73
85
  */
@@ -84,26 +96,14 @@ export declare class CrowdsourceManager {
84
96
  * boolean: when true the share widget will be available
85
97
  */
86
98
  enableShare: boolean;
87
- /**
88
- * boolean: when true the home widget will be available
89
- */
90
- enableHome: boolean;
91
99
  /**
92
100
  * boolean: when true the zoom widget will be available
93
101
  */
94
102
  enableZoom: boolean;
95
103
  /**
96
- * boolean: when true the basemap widget will be available
97
- */
98
- enableBasemap: boolean;
99
- /**
100
- * IBasemapConfig: List of any basemaps to filter out from the basemap widget
101
- */
102
- basemapConfig: IBasemapConfig;
103
- /**
104
- * boolean: when true the table will be sorted by objectid in descending order by default
104
+ * boolean: when true the map will be hidden on load
105
105
  */
106
- showNewestFirst: boolean;
106
+ hideMapOnLoad: boolean;
107
107
  /**
108
108
  * IMapInfo[]: array of map infos (name and id)
109
109
  */
@@ -124,6 +124,10 @@ export declare class CrowdsourceManager {
124
124
  * boolean: When true the share options will include social media sharing
125
125
  */
126
126
  shareIncludeSocial: boolean;
127
+ /**
128
+ * boolean: when true the table will be sorted by objectid in descending order by default
129
+ */
130
+ showNewestFirst: boolean;
127
131
  /**
128
132
  * theme: "light" | "dark" theme to be used
129
133
  */
@@ -132,6 +136,10 @@ export declare class CrowdsourceManager {
132
136
  * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table
133
137
  */
134
138
  zoomAndScrollToSelected: boolean;
139
+ /**
140
+ * number: default scale to zoom to when zooming to a single point feature
141
+ */
142
+ zoomToScale: number;
135
143
  /**
136
144
  * When true the info panel with the popup details will take the full height and prevent the map from displaying
137
145
  */
@@ -15,8 +15,9 @@
15
15
  */
16
16
  /// <reference types="arcgis-js-api" />
17
17
  import { VNode, EventEmitter } from "../../stencil-public-runtime";
18
- import { IMapChange, IMapClick, IMapInfo, ISearchConfiguration, theme } from "../../utils/interfaces";
18
+ import { IMapChange, IMapClick, IMapInfo, IReportingOptions, 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
  /**
@@ -75,6 +76,14 @@ export declare class CrowdsourceReporter {
75
76
  * string: Id of the zoom level from URL params
76
77
  */
77
78
  level: string;
79
+ /**
80
+ * string: The color that will be displayed on hover when expanding the popup header
81
+ */
82
+ popupHeaderHoverColor: string;
83
+ /**
84
+ * string: The background color to apply to the popup header
85
+ */
86
+ popupHeaderColor: string;
78
87
  /**
79
88
  * string: The word(s) to display in the reports submit button
80
89
  */
@@ -83,6 +92,10 @@ export declare class CrowdsourceReporter {
83
92
  * string: The word(s) to display in the reports header
84
93
  */
85
94
  reportsHeader: string;
95
+ /**
96
+ * IReportingOptions: Key options for reporting
97
+ */
98
+ reportingOptions: IReportingOptions;
86
99
  /**
87
100
  * string: The message to display when the report has been submitted
88
101
  */
@@ -119,6 +132,10 @@ export declare class CrowdsourceReporter {
119
132
  * boolean: when true the zoom widget will be available
120
133
  */
121
134
  enableZoom: boolean;
135
+ /**
136
+ * number: default scale to zoom to when zooming to a single point feature
137
+ */
138
+ zoomToScale: number;
122
139
  /**
123
140
  * IMapInfo: The current map info stores configuration details
124
141
  */
@@ -172,6 +189,10 @@ export declare class CrowdsourceReporter {
172
189
  * __esri.FeatureLayer[]: Valid layers from the current map
173
190
  */
174
191
  protected _validLayers: __esri.FeatureLayer[];
192
+ /**
193
+ * string[]: Configured/all layers id from current map which can be used for reporting
194
+ */
195
+ protected _editableLayerIds: string[];
175
196
  /**
176
197
  * string: The selected feature layer's id from the layer's list
177
198
  */
@@ -196,6 +217,10 @@ export declare class CrowdsourceReporter {
196
217
  * HTMLLayerListElement: Create Layer list component instance
197
218
  */
198
219
  protected _layerList: HTMLLayerListElement;
220
+ /**
221
+ * HTMLFeatureListElement: Create feature list component instance
222
+ */
223
+ protected _featureList: HTMLFeatureListElement;
199
224
  /**
200
225
  * HTMLInstantAppsSocialShareElement: Share element
201
226
  */
@@ -307,18 +332,13 @@ export declare class CrowdsourceReporter {
307
332
  * Navigates to layer-list
308
333
  * @protected
309
334
  */
310
- protected navigateToHomePage(): void;
335
+ protected navigateToHomePage(): Promise<void>;
311
336
  /**
312
- * Update the selected layer id and name
337
+ * On layer select open the feature create flow item
313
338
  * @param evt Event which has details of selected layerId and layerName
314
339
  * @protected
315
340
  */
316
- protected highlightSelectedLayer(evt: CustomEvent): void;
317
- /**
318
- * On next button click open the feature create flow item
319
- * @protected
320
- */
321
- protected navigateToCreateFeature(): Promise<void>;
341
+ protected navigateToCreateFeature(evt: CustomEvent): Promise<void>;
322
342
  /**
323
343
  * On report an incident button click open the create a report panel with the layer list
324
344
  * @protected
@@ -406,7 +426,7 @@ export declare class CrowdsourceReporter {
406
426
  */
407
427
  protected handleMapClick(): void;
408
428
  /**
409
- * On map click do hitTest and get the clicked graphics of valid layers and show feature details
429
+ * On map click do hitTest and get the clicked graphics from both reporting and non-reporting layers, and show feature details
410
430
  * @param event IMapClick map click event details
411
431
  *
412
432
  * @protected
@@ -418,10 +438,27 @@ export declare class CrowdsourceReporter {
418
438
  * @protected
419
439
  */
420
440
  protected _getTranslations(): Promise<void>;
441
+ /**
442
+ * Returns the ids of all OR configured layers that support edits with the update capability
443
+ * @param hash each layer item details
444
+ * @param layers list of layers id
445
+ * @returns array of editable layer ids
446
+ */
447
+ protected reduceToConfiguredLayers(hash: ILayerItemsHash): string[];
448
+ /**
449
+ * Creates the list of layers to be listed in layer list
450
+ * @protected
451
+ */
452
+ protected getLayersToShowInList(): Promise<void>;
453
+ /**
454
+ * renders feature list
455
+ * @protected
456
+ */
457
+ protected renderFeaturesList(): Promise<void>;
421
458
  /**
422
459
  * Updates the share url for current selected feature
423
460
  * @protected
424
- */
461
+ */
425
462
  protected _updateShareURL(): void;
426
463
  /**
427
464
  * 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 support edits with the update capability
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 getEditableIds(hash: ILayerItemsHash): string[];
122
+ protected getLayersToBeShownInList(hash: ILayerItemsHash): string[];
123
123
  /**
124
124
  * Render feature layer list
125
125
  * @returns layer list
@@ -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
  *
@@ -5,9 +5,9 @@
5
5
  * It contains typing information for all components that exist in this project.
6
6
  */
7
7
  import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
- import { ButtonType, DistanceUnit, EditType, EDrawMode, ELayoutMode, IBasemapConfig, IConsentResponse, IExportInfos, IInventoryItem, ILayerAndTableIds, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange, theme } from "./utils/interfaces";
8
+ import { ButtonType, DistanceUnit, EditType, EDrawMode, ELayoutMode, IBasemapConfig, IConsentResponse, IExportInfos, IInventoryItem, ILayerAndTableIds, IMapChange, IMapInfo, IReportingOptions, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange, theme } from "./utils/interfaces";
9
9
  import { UserSession } from "@esri/solution-common";
10
- export { ButtonType, DistanceUnit, EditType, EDrawMode, ELayoutMode, IBasemapConfig, IConsentResponse, IExportInfos, IInventoryItem, ILayerAndTableIds, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange, theme } from "./utils/interfaces";
10
+ export { ButtonType, DistanceUnit, EditType, EDrawMode, ELayoutMode, IBasemapConfig, IConsentResponse, IExportInfos, IInventoryItem, ILayerAndTableIds, IMapChange, IMapInfo, IReportingOptions, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange, theme } from "./utils/interfaces";
11
11
  export { UserSession } from "@esri/solution-common";
12
12
  export namespace Components {
13
13
  interface ArcgisLogin {
@@ -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
  */
@@ -207,6 +211,10 @@ export namespace Components {
207
211
  * boolean: when true the zoom widget will be available
208
212
  */
209
213
  "enableZoom": boolean;
214
+ /**
215
+ * boolean: when true the map will be hidden on load
216
+ */
217
+ "hideMapOnLoad": boolean;
210
218
  /**
211
219
  * IMapInfo[]: array of map infos (name and id)
212
220
  */
@@ -239,6 +247,10 @@ export namespace Components {
239
247
  * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table
240
248
  */
241
249
  "zoomAndScrollToSelected": boolean;
250
+ /**
251
+ * number: default scale to zoom to when zooming to a single point feature
252
+ */
253
+ "zoomToScale": number;
242
254
  }
243
255
  interface CrowdsourceReporter {
244
256
  /**
@@ -317,6 +329,14 @@ export namespace Components {
317
329
  * string: Object id of the feature from URL params
318
330
  */
319
331
  "objectId": string;
332
+ /**
333
+ * string: The background color to apply to the popup header
334
+ */
335
+ "popupHeaderColor": string;
336
+ /**
337
+ * string: The color that will be displayed on hover when expanding the popup header
338
+ */
339
+ "popupHeaderHoverColor": string;
320
340
  /**
321
341
  * string: The word(s) to display in the reports submit button
322
342
  */
@@ -325,6 +345,10 @@ export namespace Components {
325
345
  * string: The message to display when the report has been submitted
326
346
  */
327
347
  "reportSubmittedMessage": string;
348
+ /**
349
+ * IReportingOptions: Key options for reporting
350
+ */
351
+ "reportingOptions": IReportingOptions;
328
352
  /**
329
353
  * string: The word(s) to display in the reports header
330
354
  */
@@ -341,6 +365,10 @@ export namespace Components {
341
365
  * theme: "light" | "dark" theme to be used
342
366
  */
343
367
  "theme": theme;
368
+ /**
369
+ * number: default scale to zoom to when zooming to a single point feature
370
+ */
371
+ "zoomToScale": number;
344
372
  }
345
373
  interface DeductCalculator {
346
374
  }
@@ -389,6 +417,10 @@ export namespace Components {
389
417
  interface FeatureFormFlowItem {
390
418
  }
391
419
  interface FeatureList {
420
+ /**
421
+ * boolean: Highlight feature on map optional (default false) boolean to indicate if we should highlight when hover on Feature in list
422
+ */
423
+ "highlightOnHover"?: boolean;
392
424
  /**
393
425
  * boolean: Highlight feature on map optional (default false) boolean to indicate if we should highlight and zoom to the extent of the feature geometry
394
426
  */
@@ -405,6 +437,11 @@ export namespace Components {
405
437
  * number: Number features to be fetched per page, by default 100 features will be fetched
406
438
  */
407
439
  "pageSize"?: number;
440
+ /**
441
+ * Refresh the feature list which will fetch the latest features and update the features list
442
+ * @returns Promise that resolves when the operation is complete
443
+ */
444
+ "refresh": () => Promise<void>;
408
445
  /**
409
446
  * string: Layer id of the feature layer to show the list
410
447
  */
@@ -2239,6 +2276,10 @@ declare namespace LocalJSX {
2239
2276
  * Emitted on demand when the feature is created successfully
2240
2277
  */
2241
2278
  "onSuccess"?: (event: CreateFeatureCustomEvent<void>) => void;
2279
+ /**
2280
+ * ISearchConfiguration: Configuration details for the Search widget
2281
+ */
2282
+ "searchConfiguration"?: ISearchConfiguration;
2242
2283
  /**
2243
2284
  * string: Layer id of the feature layer in which the new feature is to be created
2244
2285
  */
@@ -2325,6 +2366,10 @@ declare namespace LocalJSX {
2325
2366
  * boolean: when true the zoom widget will be available
2326
2367
  */
2327
2368
  "enableZoom"?: boolean;
2369
+ /**
2370
+ * boolean: when true the map will be hidden on load
2371
+ */
2372
+ "hideMapOnLoad"?: boolean;
2328
2373
  /**
2329
2374
  * IMapInfo[]: array of map infos (name and id)
2330
2375
  */
@@ -2357,6 +2402,10 @@ declare namespace LocalJSX {
2357
2402
  * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table
2358
2403
  */
2359
2404
  "zoomAndScrollToSelected"?: boolean;
2405
+ /**
2406
+ * number: default scale to zoom to when zooming to a single point feature
2407
+ */
2408
+ "zoomToScale"?: number;
2360
2409
  }
2361
2410
  interface CrowdsourceReporter {
2362
2411
  /**
@@ -2439,6 +2488,14 @@ declare namespace LocalJSX {
2439
2488
  * Emitted when toggle panel button is clicked in reporter
2440
2489
  */
2441
2490
  "onTogglePanel"?: (event: CrowdsourceReporterCustomEvent<boolean>) => void;
2491
+ /**
2492
+ * string: The background color to apply to the popup header
2493
+ */
2494
+ "popupHeaderColor"?: string;
2495
+ /**
2496
+ * string: The color that will be displayed on hover when expanding the popup header
2497
+ */
2498
+ "popupHeaderHoverColor"?: string;
2442
2499
  /**
2443
2500
  * string: The word(s) to display in the reports submit button
2444
2501
  */
@@ -2447,6 +2504,10 @@ declare namespace LocalJSX {
2447
2504
  * string: The message to display when the report has been submitted
2448
2505
  */
2449
2506
  "reportSubmittedMessage"?: string;
2507
+ /**
2508
+ * IReportingOptions: Key options for reporting
2509
+ */
2510
+ "reportingOptions"?: IReportingOptions;
2450
2511
  /**
2451
2512
  * string: The word(s) to display in the reports header
2452
2513
  */
@@ -2463,6 +2524,10 @@ declare namespace LocalJSX {
2463
2524
  * theme: "light" | "dark" theme to be used
2464
2525
  */
2465
2526
  "theme"?: theme;
2527
+ /**
2528
+ * number: default scale to zoom to when zooming to a single point feature
2529
+ */
2530
+ "zoomToScale"?: number;
2466
2531
  }
2467
2532
  interface DeductCalculator {
2468
2533
  /**
@@ -2531,6 +2596,10 @@ declare namespace LocalJSX {
2531
2596
  interface FeatureFormFlowItem {
2532
2597
  }
2533
2598
  interface FeatureList {
2599
+ /**
2600
+ * boolean: Highlight feature on map optional (default false) boolean to indicate if we should highlight when hover on Feature in list
2601
+ */
2602
+ "highlightOnHover"?: boolean;
2534
2603
  /**
2535
2604
  * boolean: Highlight feature on map optional (default false) boolean to indicate if we should highlight and zoom to the extent of the feature geometry
2536
2605
  */