@esri/solutions-components 0.3.2 → 0.3.3

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 (163) hide show
  1. package/dist/assets/t9n/public-notification/resources.json +4 -1
  2. package/dist/assets/t9n/public-notification/resources_en.json +4 -1
  3. package/dist/cjs/buffer-tools_6.cjs.entry.js +8 -7
  4. package/dist/cjs/calcite-combobox_3.cjs.entry.js +38 -25
  5. package/dist/cjs/calcite-input-message_5.cjs.entry.js +272 -21
  6. package/dist/cjs/{csvUtils-18a03353.js → csvUtils-83af7ae1.js} +5 -5
  7. package/dist/cjs/layer-table.cjs.entry.js +3 -3
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/map-search.cjs.entry.js +46 -7
  10. package/dist/cjs/{mapViewUtils-8ea9adc5.js → mapViewUtils-55ac76cb.js} +40 -25
  11. package/dist/cjs/public-notification.cjs.entry.js +101 -18
  12. package/dist/cjs/{publicNotificationStore-aca88430.js → publicNotificationStore-28a8759d.js} +3 -1
  13. package/dist/cjs/solutions-components.cjs.js +1 -1
  14. package/dist/collection/collection-manifest.json +0 -5
  15. package/dist/collection/components/buffer-tools/buffer-tools.js +7 -6
  16. package/dist/collection/components/layer-table/layer-table.js +1 -1
  17. package/dist/collection/components/map-layer-picker/map-layer-picker.js +47 -29
  18. package/dist/collection/components/map-search/map-search.js +66 -7
  19. package/dist/collection/components/map-select-tools/map-select-tools.js +125 -8
  20. package/dist/collection/components/pdf-download/pdf-download.js +32 -8
  21. package/dist/collection/components/public-notification/public-notification.css +46 -41
  22. package/dist/collection/components/public-notification/public-notification.js +267 -19
  23. package/dist/collection/components/refine-selection/refine-selection.js +18 -1
  24. package/dist/collection/components/refine-selection-tools/refine-selection-tools.js +22 -5
  25. package/dist/{solutions-components/demos/config-pdf-download.html → collection/demos/buffer-tools.html} +13 -21
  26. package/dist/collection/demos/index.html +0 -24
  27. package/dist/collection/demos/map-draw-tools.html +17 -17
  28. package/dist/collection/demos/map-layer-picker.html +2 -0
  29. package/dist/collection/demos/map-search.html +16 -15
  30. package/dist/collection/demos/map-select-tools.html +16 -24
  31. package/dist/collection/demos/new-public-notification.html +46 -35
  32. package/dist/collection/demos/pdf-download.html +8 -1
  33. package/dist/collection/utils/csvUtils.js +4 -4
  34. package/dist/collection/utils/csvUtils.ts +6 -4
  35. package/dist/collection/utils/interfaces.ts +65 -1
  36. package/dist/collection/utils/mapViewUtils.js +36 -22
  37. package/dist/collection/utils/mapViewUtils.ts +50 -27
  38. package/dist/collection/utils/publicNotificationStore.js +3 -1
  39. package/dist/collection/utils/publicNotificationStore.ts +3 -1
  40. package/dist/collection/utils/queryUtils.js +2 -2
  41. package/dist/collection/utils/queryUtils.ts +2 -2
  42. package/dist/components/buffer-tools2.js +1 -1
  43. package/dist/components/csvUtils.js +4 -4
  44. package/dist/components/index.d.ts +0 -5
  45. package/dist/components/index.js +0 -5
  46. package/dist/components/layer-table.js +2 -3
  47. package/dist/components/map-layer-picker2.js +177 -28
  48. package/dist/components/map-search.js +47 -7
  49. package/dist/components/map-select-tools2.js +56 -11
  50. package/dist/components/pdf-download2.js +217 -8
  51. package/dist/components/public-notification.js +154 -55
  52. package/dist/components/publicNotificationStore.js +3 -1
  53. package/dist/components/queryUtils.js +3 -3
  54. package/dist/components/refine-selection-tools2.js +9 -8
  55. package/dist/components/refine-selection2.js +3 -1
  56. package/dist/esm/buffer-tools_6.entry.js +8 -7
  57. package/dist/esm/calcite-combobox_3.entry.js +38 -25
  58. package/dist/esm/calcite-input-message_5.entry.js +271 -20
  59. package/dist/esm/{csvUtils-edc0c2a8.js → csvUtils-eb231cfb.js} +5 -5
  60. package/dist/esm/layer-table.entry.js +3 -3
  61. package/dist/esm/loader.js +1 -1
  62. package/dist/esm/map-search.entry.js +46 -7
  63. package/dist/esm/{mapViewUtils-31d2c2bb.js → mapViewUtils-e5d8a1e1.js} +39 -25
  64. package/dist/esm/public-notification.entry.js +101 -18
  65. package/dist/esm/{publicNotificationStore-3e762eea.js → publicNotificationStore-8e9cb73b.js} +3 -1
  66. package/dist/esm/solutions-components.js +1 -1
  67. package/dist/{collection/demos/config-pdf-download.html → solutions-components/demos/buffer-tools.html} +13 -21
  68. package/dist/solutions-components/demos/index.html +0 -24
  69. package/dist/solutions-components/demos/map-draw-tools.html +17 -17
  70. package/dist/solutions-components/demos/map-layer-picker.html +2 -0
  71. package/dist/solutions-components/demos/map-search.html +16 -15
  72. package/dist/solutions-components/demos/map-select-tools.html +16 -24
  73. package/dist/solutions-components/demos/new-public-notification.html +46 -35
  74. package/dist/solutions-components/demos/pdf-download.html +8 -1
  75. package/dist/solutions-components/p-07593958.entry.js +6 -0
  76. package/dist/solutions-components/p-3fa9b3c8.js +36 -0
  77. package/dist/solutions-components/p-9b5a9117.entry.js +12 -0
  78. package/dist/solutions-components/{p-15cd8a97.js → p-9c1ebc90.js} +1 -1
  79. package/dist/solutions-components/{p-c76f8ff7.entry.js → p-a516c658.entry.js} +1 -1
  80. package/dist/solutions-components/{p-ad42039f.js → p-b668daf8.js} +2 -2
  81. package/dist/solutions-components/p-bfa95147.entry.js +17 -0
  82. package/dist/solutions-components/p-d09a168c.entry.js +6 -0
  83. package/dist/solutions-components/{p-fa6046a8.entry.js → p-fc9609e6.entry.js} +2 -2
  84. package/dist/solutions-components/solutions-components.esm.js +1 -1
  85. package/dist/solutions-components/utils/csvUtils.ts +6 -4
  86. package/dist/solutions-components/utils/interfaces.ts +65 -1
  87. package/dist/solutions-components/utils/mapViewUtils.ts +50 -27
  88. package/dist/solutions-components/utils/publicNotificationStore.ts +3 -1
  89. package/dist/solutions-components/utils/queryUtils.ts +2 -2
  90. package/dist/types/components/buffer-tools/buffer-tools.d.ts +4 -3
  91. package/dist/types/components/map-layer-picker/map-layer-picker.d.ts +22 -11
  92. package/dist/types/components/map-search/map-search.d.ts +18 -1
  93. package/dist/types/components/map-select-tools/map-select-tools.d.ts +31 -1
  94. package/dist/types/components/pdf-download/pdf-download.d.ts +7 -2
  95. package/dist/types/components/public-notification/public-notification.d.ts +98 -4
  96. package/dist/types/components/refine-selection/refine-selection.d.ts +5 -0
  97. package/dist/types/components/refine-selection-tools/refine-selection-tools.d.ts +6 -1
  98. package/dist/types/components.d.ts +154 -180
  99. package/dist/types/preact.d.ts +0 -10
  100. package/dist/types/utils/csvUtils.d.ts +1 -1
  101. package/dist/types/utils/interfaces.d.ts +56 -1
  102. package/dist/types/utils/mapViewUtils.d.ts +19 -9
  103. package/dist/types/utils/publicNotificationStore.d.ts +1 -0
  104. package/package.json +1 -1
  105. package/dist/cjs/check-list.cjs.entry.js +0 -103
  106. package/dist/cjs/config-buffer-tools.cjs.entry.js +0 -125
  107. package/dist/cjs/config-draw-tools.cjs.entry.js +0 -85
  108. package/dist/cjs/config-layer-picker.cjs.entry.js +0 -113
  109. package/dist/cjs/config-pdf-download.cjs.entry.js +0 -117
  110. package/dist/cjs/labelFormats-3236d2e0.js +0 -212
  111. package/dist/collection/components/check-list/check-list.css +0 -3
  112. package/dist/collection/components/check-list/check-list.js +0 -179
  113. package/dist/collection/components/config-buffer-tools/config-buffer-tools.css +0 -34
  114. package/dist/collection/components/config-buffer-tools/config-buffer-tools.js +0 -209
  115. package/dist/collection/components/config-draw-tools/config-draw-tools.css +0 -17
  116. package/dist/collection/components/config-draw-tools/config-draw-tools.js +0 -150
  117. package/dist/collection/components/config-layer-picker/config-layer-picker.css +0 -17
  118. package/dist/collection/components/config-layer-picker/config-layer-picker.js +0 -218
  119. package/dist/collection/components/config-pdf-download/config-pdf-download.css +0 -17
  120. package/dist/collection/components/config-pdf-download/config-pdf-download.js +0 -183
  121. package/dist/collection/demos/check-list.html +0 -65
  122. package/dist/collection/demos/config-buffer-tools.html +0 -92
  123. package/dist/collection/demos/config-draw-tools.html +0 -58
  124. package/dist/collection/demos/config-layer-picker.html +0 -97
  125. package/dist/components/check-list.d.ts +0 -11
  126. package/dist/components/check-list.js +0 -11
  127. package/dist/components/check-list2.js +0 -131
  128. package/dist/components/config-buffer-tools.d.ts +0 -11
  129. package/dist/components/config-buffer-tools.js +0 -187
  130. package/dist/components/config-draw-tools.d.ts +0 -11
  131. package/dist/components/config-draw-tools.js +0 -121
  132. package/dist/components/config-layer-picker.d.ts +0 -11
  133. package/dist/components/config-layer-picker.js +0 -163
  134. package/dist/components/config-pdf-download.d.ts +0 -11
  135. package/dist/components/config-pdf-download.js +0 -154
  136. package/dist/components/labelFormats.js +0 -210
  137. package/dist/components/mapViewUtils.js +0 -129
  138. package/dist/esm/check-list.entry.js +0 -99
  139. package/dist/esm/config-buffer-tools.entry.js +0 -121
  140. package/dist/esm/config-draw-tools.entry.js +0 -81
  141. package/dist/esm/config-layer-picker.entry.js +0 -109
  142. package/dist/esm/config-pdf-download.entry.js +0 -113
  143. package/dist/esm/labelFormats-b37958c3.js +0 -210
  144. package/dist/solutions-components/demos/check-list.html +0 -65
  145. package/dist/solutions-components/demos/config-buffer-tools.html +0 -92
  146. package/dist/solutions-components/demos/config-draw-tools.html +0 -58
  147. package/dist/solutions-components/demos/config-layer-picker.html +0 -97
  148. package/dist/solutions-components/p-16a0e65a.entry.js +0 -6
  149. package/dist/solutions-components/p-35078393.entry.js +0 -17
  150. package/dist/solutions-components/p-3d72bba6.entry.js +0 -6
  151. package/dist/solutions-components/p-3e444242.entry.js +0 -6
  152. package/dist/solutions-components/p-67afea92.entry.js +0 -12
  153. package/dist/solutions-components/p-7dcab29d.js +0 -36
  154. package/dist/solutions-components/p-89f7b02a.entry.js +0 -6
  155. package/dist/solutions-components/p-906b7b96.entry.js +0 -6
  156. package/dist/solutions-components/p-99c98510.entry.js +0 -6
  157. package/dist/solutions-components/p-b1a3605f.entry.js +0 -6
  158. package/dist/solutions-components/p-e99b1247.js +0 -6
  159. package/dist/types/components/check-list/check-list.d.ts +0 -57
  160. package/dist/types/components/config-buffer-tools/config-buffer-tools.d.ts +0 -92
  161. package/dist/types/components/config-draw-tools/config-draw-tools.d.ts +0 -58
  162. package/dist/types/components/config-layer-picker/config-layer-picker.d.ts +0 -83
  163. package/dist/types/components/config-pdf-download/config-pdf-download.d.ts +0 -81
@@ -27,42 +27,60 @@ import { queryExtent } from "./queryUtils";
27
27
  * @returns Promise resolving with an array of layer names
28
28
  *
29
29
  */
30
- export async function getMapLayerNames(mapView) {
31
- let layerNames = [];
30
+ export async function getMapLayerHash(mapView) {
31
+ let layerHash = {};
32
32
  await mapView.when(() => {
33
- layerNames = mapView.map.layers.toArray().map((l) => {
34
- return l.title;
33
+ layerHash = mapView.map.layers.toArray().reduce((prev, cur) => {
34
+ prev[cur.id] = cur.title;
35
+ return prev;
36
+ }, {});
37
+ });
38
+ return layerHash;
39
+ }
40
+ /**
41
+ * Gets the layer names from the current map
42
+ *
43
+ * @param mapView the map view to fetch the layer names from
44
+ *
45
+ * @returns Promise resolving with an array of layer names
46
+ *
47
+ */
48
+ export async function getMapLayerIds(mapView) {
49
+ let layerIds = [];
50
+ await mapView.when(() => {
51
+ layerIds = mapView.map.layers.toArray().map((l) => {
52
+ return l.id;
35
53
  });
36
54
  });
37
- return layerNames;
55
+ return layerIds;
38
56
  }
39
57
  /**
40
- * Get a layer view by title
58
+ * Get a layer view by id
41
59
  *
42
60
  * @param mapView the map view to fetch the layer from
43
- * @param title the title if the layer to fetch
61
+ * @param id the id if the layer to fetch
44
62
  *
45
63
  * @returns Promise resolving with the fetched layer view
46
64
  *
47
65
  */
48
- export async function getMapLayerView(mapView, title) {
49
- const layer = await getMapLayer(mapView, title);
66
+ export async function getMapLayerView(mapView, id) {
67
+ const layer = await getMapLayer(mapView, id);
50
68
  return layer ? await mapView.whenLayerView(layer) : undefined;
51
69
  }
52
70
  /**
53
- * Get a layer by title
71
+ * Get a layer by id
54
72
  *
55
73
  * @param mapView the map view to fetch the layer from
56
- * @param title the title if the layer to fetch
74
+ * @param id the id if the layer to fetch
57
75
  *
58
76
  * @returns Promise resolving with the fetched layer
59
77
  *
60
78
  */
61
- export async function getMapLayer(mapView, title) {
79
+ export async function getMapLayer(mapView, id) {
62
80
  let layers = [];
63
81
  await mapView.when(() => {
64
82
  layers = mapView.map.layers.toArray().filter((l) => {
65
- return l.title === title;
83
+ return l.id === id;
66
84
  });
67
85
  });
68
86
  return layers.length > 0 ? layers[0] : undefined;
@@ -93,15 +111,11 @@ export async function highlightFeatures(ids, layerView, mapView, updateExtent =
93
111
  * @returns Promise resolving when the operation is complete
94
112
  *
95
113
  */
96
- export async function flashSelection(ids, layerView) {
97
- const featureFilter = {
114
+ export async function flashSelection(ids, layerView, featureEffect) {
115
+ const filter = {
98
116
  objectIds: ids
99
117
  };
100
- layerView.featureEffect = {
101
- filter: featureFilter,
102
- includedEffect: "invert(100%)",
103
- excludedEffect: "blur(5px)"
104
- };
118
+ layerView.featureEffect = Object.assign(Object.assign({}, featureEffect), { filter });
105
119
  setTimeout(() => {
106
120
  layerView.featureEffect = undefined;
107
121
  }, 1300);
@@ -117,10 +131,10 @@ export async function flashSelection(ids, layerView) {
117
131
  * @returns Promise resolving when the operation is complete
118
132
  *
119
133
  */
120
- export async function goToSelection(ids, layerView, mapView, flashFeatures = true) {
134
+ export async function goToSelection(ids, layerView, mapView, flashFeatures = true, featureEffect = undefined) {
121
135
  const result = await queryExtent(ids, layerView.layer);
122
136
  await mapView.goTo(result.extent);
123
137
  if (flashFeatures) {
124
- await flashSelection(ids, layerView);
138
+ await flashSelection(ids, layerView, featureEffect);
125
139
  }
126
140
  }
@@ -15,61 +15,83 @@
15
15
  */
16
16
 
17
17
  import { queryExtent } from "./queryUtils";
18
+ import { ILayerHash } from "./interfaces";
18
19
 
19
20
  /**
20
21
  * Gets the layer names from the current map
21
- *
22
+ *
22
23
  * @param mapView the map view to fetch the layer names from
23
24
  *
24
25
  * @returns Promise resolving with an array of layer names
25
26
  *
26
27
  */
27
- export async function getMapLayerNames(
28
+ export async function getMapLayerHash(
29
+ mapView: __esri.MapView
30
+ ): Promise<ILayerHash> {
31
+ let layerHash = {};
32
+ await mapView.when(() => {
33
+ layerHash = mapView.map.layers.toArray().reduce((prev, cur) => {
34
+ prev[cur.id] = cur.title;
35
+ return prev;
36
+ }, {});
37
+ });
38
+ return layerHash;
39
+ }
40
+
41
+ /**
42
+ * Gets the layer names from the current map
43
+ *
44
+ * @param mapView the map view to fetch the layer names from
45
+ *
46
+ * @returns Promise resolving with an array of layer names
47
+ *
48
+ */
49
+ export async function getMapLayerIds(
28
50
  mapView: __esri.MapView
29
51
  ): Promise<string[]> {
30
- let layerNames = [];
52
+ let layerIds = [];
31
53
  await mapView.when(() => {
32
- layerNames = mapView.map.layers.toArray().map((l) => {
33
- return l.title;
54
+ layerIds = mapView.map.layers.toArray().map((l) => {
55
+ return l.id;
34
56
  });
35
57
  });
36
- return layerNames;
58
+ return layerIds;
37
59
  }
38
60
 
39
61
  /**
40
- * Get a layer view by title
41
- *
62
+ * Get a layer view by id
63
+ *
42
64
  * @param mapView the map view to fetch the layer from
43
- * @param title the title if the layer to fetch
65
+ * @param id the id if the layer to fetch
44
66
  *
45
67
  * @returns Promise resolving with the fetched layer view
46
68
  *
47
69
  */
48
70
  export async function getMapLayerView(
49
71
  mapView: __esri.MapView,
50
- title: string
72
+ id: string
51
73
  ): Promise<__esri.FeatureLayerView> {
52
- const layer = await getMapLayer(mapView, title);
74
+ const layer = await getMapLayer(mapView, id);
53
75
  return layer ? await mapView.whenLayerView(layer) : undefined;
54
76
  }
55
77
 
56
78
  /**
57
- * Get a layer by title
58
- *
79
+ * Get a layer by id
80
+ *
59
81
  * @param mapView the map view to fetch the layer from
60
- * @param title the title if the layer to fetch
82
+ * @param id the id if the layer to fetch
61
83
  *
62
84
  * @returns Promise resolving with the fetched layer
63
85
  *
64
86
  */
65
87
  export async function getMapLayer(
66
88
  mapView: __esri.MapView,
67
- title: string
89
+ id: string
68
90
  ): Promise<__esri.FeatureLayer> {
69
91
  let layers = [];
70
92
  await mapView.when(() => {
71
93
  layers = mapView.map.layers.toArray().filter((l) => {
72
- return l.title === title;
94
+ return l.id === id;
73
95
  });
74
96
  });
75
97
  return layers.length > 0 ? layers[0] : undefined;
@@ -77,7 +99,7 @@ export async function getMapLayer(
77
99
 
78
100
  /**
79
101
  * Highlight features by OID
80
- *
102
+ *
81
103
  * @param ids the OIDs from the layer to highlight
82
104
  * @param layerView the layer view to highlight
83
105
  * @param mapView the map view used if updateExtent is true
@@ -100,7 +122,7 @@ export async function highlightFeatures(
100
122
 
101
123
  /**
102
124
  * Flash features by OID
103
- *
125
+ *
104
126
  * @param ids the OIDs from the layer to highlight
105
127
  * @param layerView the layer view to highlight
106
128
  *
@@ -109,15 +131,15 @@ export async function highlightFeatures(
109
131
  */
110
132
  export async function flashSelection(
111
133
  ids: number[],
112
- layerView: __esri.FeatureLayerView
134
+ layerView: __esri.FeatureLayerView,
135
+ featureEffect: __esri.FeatureEffect
113
136
  ): Promise<void> {
114
- const featureFilter = {
137
+ const filter = {
115
138
  objectIds: ids
116
139
  } as __esri.FeatureFilter;
117
140
  layerView.featureEffect = {
118
- filter: featureFilter,
119
- includedEffect: "invert(100%)",
120
- excludedEffect: "blur(5px)"
141
+ ...featureEffect,
142
+ filter
121
143
  } as __esri.FeatureEffect;
122
144
 
123
145
  setTimeout(() => {
@@ -127,12 +149,12 @@ export async function flashSelection(
127
149
 
128
150
  /**
129
151
  * Zoom to features based on OID
130
- *
152
+ *
131
153
  * @param ids the OIDs from the layer to go to
132
154
  * @param layerView the layer view that contains the OIDs
133
155
  * @param mapView the map view to show the extent change
134
156
  * @param flashFeatures optional (default true) boolean to indicate if we should flash the features
135
- *
157
+ *
136
158
  * @returns Promise resolving when the operation is complete
137
159
  *
138
160
  */
@@ -140,11 +162,12 @@ export async function goToSelection(
140
162
  ids: number[],
141
163
  layerView: __esri.FeatureLayerView,
142
164
  mapView: __esri.MapView,
143
- flashFeatures = true
165
+ flashFeatures = true,
166
+ featureEffect: __esri.FeatureEffect = undefined
144
167
  ): Promise<void> {
145
168
  const result = await queryExtent(ids, layerView.layer);
146
169
  await mapView.goTo(result.extent);
147
170
  if (flashFeatures) {
148
- await flashSelection(ids, layerView);
171
+ await flashSelection(ids, layerView, featureEffect);
149
172
  }
150
173
  }
@@ -23,7 +23,9 @@ const { state, onChange } = createStore({
23
23
  // List of layers added and managed by the component
24
24
  managedLayers: [],
25
25
  // Handle: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Handles.html#Handle
26
- highlightHandle: undefined
26
+ highlightHandle: undefined,
27
+ // ILayerHash title: id lookup to be used across components
28
+ layerNameHash: {}
27
29
  });
28
30
  const managedLayersChangedEvent = new CustomEvent("managedLayersChanged", {
29
31
  bubbles: true,
@@ -20,7 +20,9 @@ const { state, onChange } = createStore({
20
20
  // List of layers added and managed by the component
21
21
  managedLayers: [],
22
22
  // Handle: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Handles.html#Handle
23
- highlightHandle: undefined
23
+ highlightHandle: undefined,
24
+ // ILayerHash title: id lookup to be used across components
25
+ layerNameHash: {}
24
26
  });
25
27
 
26
28
  const managedLayersChangedEvent = new CustomEvent("managedLayersChanged", {
@@ -60,7 +60,7 @@ export async function queryObjectIds(geometries, layer) {
60
60
  results.forEach(resultIds => {
61
61
  ids = [
62
62
  ...ids,
63
- ...resultIds
63
+ ...resultIds || []
64
64
  ];
65
65
  });
66
66
  return ids;
@@ -99,7 +99,7 @@ export async function queryFeaturesByGeometry(start, layer, geometry, featuresCo
99
99
  geometry
100
100
  };
101
101
  const result = await layer.queryFeatures(query);
102
- featuresCollection[layer.title] = featuresCollection[layer.title].concat(result.features);
102
+ featuresCollection[layer.id] = featuresCollection[layer.id].concat(result.features);
103
103
  return result.exceededTransferLimit ?
104
104
  queryFeaturesByGeometry(start += num, layer, geometry, featuresCollection) :
105
105
  Promise.resolve(featuresCollection);
@@ -70,7 +70,7 @@ export async function queryObjectIds(
70
70
  results.forEach(resultIds => {
71
71
  ids = [
72
72
  ...ids,
73
- ...resultIds
73
+ ...resultIds || []
74
74
  ]
75
75
  });
76
76
  return ids;
@@ -120,7 +120,7 @@ export async function queryFeaturesByGeometry(
120
120
  };
121
121
 
122
122
  const result = await layer.queryFeatures(query);
123
- featuresCollection[layer.title] = featuresCollection[layer.title].concat(
123
+ featuresCollection[layer.id] = featuresCollection[layer.id].concat(
124
124
  result.features
125
125
  );
126
126
 
@@ -206,7 +206,7 @@ const BufferTools = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
206
206
  "sliderMin": [1026, "slider-min"],
207
207
  "sliderTicks": [1026, "slider-ticks"],
208
208
  "unionResults": [1028, "union-results"],
209
- "unit": [1032],
209
+ "unit": [1025],
210
210
  "_translations": [32]
211
211
  }]);
212
212
  function defineCustomElement() {
@@ -28,7 +28,7 @@ import { e as queryFeaturesByID } from './queryUtils.js';
28
28
  *
29
29
  * @returns Promise when the function has completed
30
30
  */
31
- async function exportCSV(layerView, ids) {
31
+ async function exportCSV(layerView, ids, addColumnTitle) {
32
32
  const featureSet = await queryFeaturesByID(ids, layerView.layer);
33
33
  const attributes = featureSet.features.map(f => f.attributes);
34
34
  const fieldNames = {};
@@ -38,7 +38,7 @@ async function exportCSV(layerView, ids) {
38
38
  fieldNames[k] = k;
39
39
  }
40
40
  });
41
- _downloadCSVFile(fieldNames, attributes, `notify-${Date.now().toString()}`);
41
+ _downloadCSVFile(fieldNames, attributes, `notify-${Date.now().toString()}`, addColumnTitle);
42
42
  }
43
43
  /**
44
44
  * Download the CSV file
@@ -51,8 +51,8 @@ async function exportCSV(layerView, ids) {
51
51
  *
52
52
  * @returns void
53
53
  */
54
- function _downloadCSVFile(fieldNames, attributes, fileTitle) {
55
- if (fieldNames) {
54
+ function _downloadCSVFile(fieldNames, attributes, fileTitle, addColumnTitle) {
55
+ if (addColumnTitle && fieldNames) {
56
56
  attributes.unshift(fieldNames);
57
57
  }
58
58
  // format values to string so it doesn't get tripped up when a value has a comma
@@ -2,12 +2,7 @@
2
2
  export { AddRecordModal as AddRecordModal } from '../types/components/add-record-modal/add-record-modal';
3
3
  export { BufferTools as BufferTools } from '../types/components/buffer-tools/buffer-tools';
4
4
  export { CardManager as CardManager } from '../types/components/card-manager/card-manager';
5
- export { CheckList as CheckList } from '../types/components/check-list/check-list';
6
5
  export { CommentCard as CommentCard } from '../types/components/comment-card/comment-card';
7
- export { ConfigBufferTools as ConfigBufferTools } from '../types/components/config-buffer-tools/config-buffer-tools';
8
- export { ConfigDrawTools as ConfigDrawTools } from '../types/components/config-draw-tools/config-draw-tools';
9
- export { ConfigLayerPicker as ConfigLayerPicker } from '../types/components/config-layer-picker/config-layer-picker';
10
- export { ConfigPdfDownload as ConfigPdfDownload } from '../types/components/config-pdf-download/config-pdf-download';
11
6
  export { CrowdsourceManager as CrowdsourceManager } from '../types/components/crowdsource-manager/crowdsource-manager';
12
7
  export { CrowdsourceReporter as CrowdsourceReporter } from '../types/components/crowdsource-reporter/crowdsource-reporter';
13
8
  export { DeductCalculator as DeductCalculator } from '../types/components/deduct-calculator/deduct-calculator';
@@ -101,12 +101,7 @@ export { CalciteTreeItem, defineCustomElement as defineCustomElementCalciteTreeI
101
101
  export { CalciteValueList, defineCustomElement as defineCustomElementCalciteValueList } from './calcite-value-list.js';
102
102
  export { CalciteValueListItem, defineCustomElement as defineCustomElementCalciteValueListItem } from './calcite-value-list-item.js';
103
103
  export { CardManager, defineCustomElement as defineCustomElementCardManager } from './card-manager.js';
104
- export { CheckList, defineCustomElement as defineCustomElementCheckList } from './check-list.js';
105
104
  export { CommentCard, defineCustomElement as defineCustomElementCommentCard } from './comment-card.js';
106
- export { ConfigBufferTools, defineCustomElement as defineCustomElementConfigBufferTools } from './config-buffer-tools.js';
107
- export { ConfigDrawTools, defineCustomElement as defineCustomElementConfigDrawTools } from './config-draw-tools.js';
108
- export { ConfigLayerPicker, defineCustomElement as defineCustomElementConfigLayerPicker } from './config-layer-picker.js';
109
- export { ConfigPdfDownload, defineCustomElement as defineCustomElementConfigPdfDownload } from './config-pdf-download.js';
110
105
  export { CrowdsourceManager, defineCustomElement as defineCustomElementCrowdsourceManager } from './crowdsource-manager.js';
111
106
  export { CrowdsourceReporter, defineCustomElement as defineCustomElementCrowdsourceReporter } from './crowdsource-reporter.js';
112
107
  export { DeductCalculator, defineCustomElement as defineCustomElementDeductCalculator } from './deduct-calculator.js';
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
7
7
  import { g as getLocaleComponentStrings } from './locale.js';
8
- import { a as goToSelection, b as getMapLayerView } from './mapViewUtils.js';
8
+ import { g as goToSelection, a as getMapLayerView, d as defineCustomElement$2 } from './map-layer-picker2.js';
9
9
  import { q as queryAllFeatures } from './queryUtils.js';
10
10
  import { e as exportCSV } from './csvUtils.js';
11
11
  import { d as defineCustomElement$l } from './button.js';
@@ -27,7 +27,6 @@ import { d as defineCustomElement$6 } from './scrim.js';
27
27
  import { d as defineCustomElement$5 } from './select.js';
28
28
  import { d as defineCustomElement$4 } from './split-button.js';
29
29
  import { d as defineCustomElement$3 } from './edit-record-modal2.js';
30
- import { d as defineCustomElement$2 } from './map-layer-picker2.js';
31
30
 
32
31
  const layerTableCss = ":host{display:block}.table{display:table;width:100%}.header{display:table-header-group;background-color:#757575;font-weight:500;font-size:var(--calcite-font-size-0);color:var(--calcite-ui-text-inverse);position:sticky;top:0;z-index:1}.table-header-cell{display:table-cell;text-align:justify;border-right:1px solid var(--calcite-ui-border-2);padding:0.5rem}.table-body{display:table-row-group}.row{display:table-row}.table-cell{display:table-cell;padding:0.5rem}.display-table-header{display:table-header-group}.display-flex{display:flex}.table-border{border:1px solid var(--calcite-ui-border-2)}.justify-center{justify-content:center}.table-container{width:100%}.overflow-auto{overflow:auto}.data-container{overflow:auto;height:calc(100% - 35px)}.row:nth-child(odd){background:var(--calcite-ui-foreground-3)}.padding-3-4{padding:0.75rem}.field-width{white-space:nowrap;min-width:300px;max-width:300px;overflow:hidden}";
33
32
 
@@ -239,7 +238,7 @@ const LayerTable$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
239
238
  */
240
239
  _exportToCSV() {
241
240
  const ids = this._getSelectedIds();
242
- void exportCSV(this._layerView, ids);
241
+ void exportCSV(this._layerView, ids, true);
243
242
  }
244
243
  /**
245
244
  * Zoom to all selected features