@arcgis/map-components 5.0.0-next.163 → 5.0.0-next.164

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 (79) hide show
  1. package/dist/cdn/{G4FP7GXM.js → 3UILDMTJ.js} +1 -1
  2. package/dist/cdn/3V6ZTS7B.js +2 -0
  3. package/dist/cdn/{ANP7PYGJ.js → 3XJU4K4Z.js} +1 -1
  4. package/dist/cdn/5KET4V4O.js +2 -0
  5. package/dist/cdn/7EW22PZD.js +2 -0
  6. package/dist/cdn/AAGYR4XM.js +2 -0
  7. package/dist/cdn/AZN2TGWK.js +2 -0
  8. package/dist/cdn/{NWXN5M4S.js → DPW55W6W.js} +1 -1
  9. package/dist/cdn/{SK6O74LF.js → DUHFQ4AI.js} +1 -1
  10. package/dist/cdn/{UNLAUFXF.js → F5I4VDXM.js} +1 -1
  11. package/dist/cdn/{R2FIOZIL.js → FUHAGBXL.js} +1 -1
  12. package/dist/cdn/{ESNK6MCY.js → IWXXD73F.js} +1 -1
  13. package/dist/cdn/{FD4A66OJ.js → KDJV5F4T.js} +1 -1
  14. package/dist/cdn/{SQFVC4KA.js → MJBV536L.js} +1 -1
  15. package/dist/cdn/MU6C77DZ.js +2 -0
  16. package/dist/cdn/NPEMOLA3.js +2 -0
  17. package/dist/cdn/{2AHY7O7C.js → POP5NTRI.js} +1 -1
  18. package/dist/cdn/SI3PITPE.js +2 -0
  19. package/dist/cdn/SU6ZGF4G.js +2 -0
  20. package/dist/cdn/W3AN7XLR.js +2 -0
  21. package/dist/cdn/{7NOD6U2Y.js → WUISNRWL.js} +1 -1
  22. package/dist/cdn/X25QBU47.js +2 -0
  23. package/dist/cdn/Z22BBNTK.js +2 -0
  24. package/dist/cdn/{YXYCWJFF.js → Z6LBCKKH.js} +1 -1
  25. package/dist/cdn/{AJ64UYFM.js → ZFATBY4D.js} +1 -1
  26. package/dist/cdn/index.js +1 -1
  27. package/dist/chunks/esri-main.js +1 -1
  28. package/dist/components/arcgis-directions/customElement.js +5 -5
  29. package/dist/components/arcgis-feature/customElement.js +6 -6
  30. package/dist/components/arcgis-feature-table/customElement.d.ts +57 -2
  31. package/dist/components/arcgis-feature-table/customElement.js +28 -13
  32. package/dist/components/arcgis-feature-templates/customElement.d.ts +3 -0
  33. package/dist/components/arcgis-feature-templates/customElement.js +2 -2
  34. package/dist/components/arcgis-feature-utility-network-association-list/customElement.js +16 -16
  35. package/dist/components/arcgis-feature-utility-network-associations/customElement.js +55 -55
  36. package/dist/components/arcgis-features/customElement.js +46 -52
  37. package/dist/components/arcgis-link-chart/customElement.js +10 -15
  38. package/dist/components/arcgis-map/customElement.js +1 -6
  39. package/dist/components/arcgis-paste/customElement.js +44 -44
  40. package/dist/components/arcgis-popup/customElement.js +4 -4
  41. package/dist/components/arcgis-print/customElement.d.ts +10 -0
  42. package/dist/components/arcgis-print/customElement.js +7 -7
  43. package/dist/components/arcgis-print-layout-advanced-options/customElement.js +12 -12
  44. package/dist/components/arcgis-print-layout-panel/customElement.js +6 -6
  45. package/dist/components/arcgis-print-main-panel/customElement.js +7 -7
  46. package/dist/components/arcgis-scene/customElement.js +8 -13
  47. package/dist/components/arcgis-utility-network-aggregated-geometry/customElement.d.ts +12 -0
  48. package/dist/components/arcgis-utility-network-aggregated-geometry/customElement.js +7 -7
  49. package/dist/components/arcgis-utility-network-trace/customElement.d.ts +1 -1
  50. package/dist/components/arcgis-utility-network-trace/customElement.js +1 -1
  51. package/dist/components/arcgis-utility-network-trace-analysis/customElement.js +47 -40
  52. package/dist/components/arcgis-utility-network-trace-inputs/customElement.d.ts +12 -0
  53. package/dist/components/arcgis-utility-network-trace-inputs/customElement.js +80 -65
  54. package/dist/components/arcgis-utility-network-trace-location/customElement.d.ts +4 -0
  55. package/dist/components/arcgis-utility-network-trace-location/customElement.js +17 -14
  56. package/dist/components/arcgis-utility-network-trace-results/customElement.d.ts +13 -0
  57. package/dist/components/arcgis-utility-network-trace-results/customElement.js +39 -26
  58. package/dist/docs/api.json +1 -1
  59. package/dist/docs/docs.json +1 -1
  60. package/dist/docs/vscode.html-custom-data.json +1 -1
  61. package/dist/docs/web-types.json +1 -1
  62. package/dist/loader.js +12 -12
  63. package/dist/types/lumina.d.ts +6 -6
  64. package/dist/types/preact.d.ts +6 -6
  65. package/dist/types/react.d.ts +6 -6
  66. package/dist/types/stencil.d.ts +6 -6
  67. package/package.json +4 -4
  68. package/dist/cdn/55TRWAT7.js +0 -2
  69. package/dist/cdn/BHPXKX47.js +0 -2
  70. package/dist/cdn/D4LTASH2.js +0 -2
  71. package/dist/cdn/H7O5I4IF.js +0 -2
  72. package/dist/cdn/I5M2Z7WS.js +0 -2
  73. package/dist/cdn/L6YZXUBB.js +0 -2
  74. package/dist/cdn/P7PWOUNZ.js +0 -2
  75. package/dist/cdn/Q4B4MXH4.js +0 -2
  76. package/dist/cdn/RN57AN5P.js +0 -2
  77. package/dist/cdn/URUFNID2.js +0 -2
  78. package/dist/cdn/WREEAAEV.js +0 -2
  79. package/dist/cdn/WTTBFFC2.js +0 -2
@@ -1,43 +1,51 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
2
- import { c as y } from "../../chunks/runtime.js";
3
- import { repeat as b } from "lit/directives/repeat.js";
4
- import { queryAllJSON as g } from "@arcgis/core/applications/Components/featureUtils.js";
5
- import c from "@arcgis/core/core/Collection.js";
6
- import { watch as k } from "@arcgis/core/core/reactiveUtils.js";
7
- import { substitute as _ } from "@arcgis/core/intl.js";
8
- import S from "@arcgis/core/layers/GraphicsLayer.js";
9
- import T from "@arcgis/core/networks/support/UNTraceConfiguration.js";
10
- import L from "@arcgis/core/rest/networks/support/TraceLocation.js";
11
- import m from "@arcgis/core/rest/support/FeatureSet.js";
12
- import h from "@arcgis/core/views/interactive/snapping/FeatureSnappingLayerSource.js";
13
- import C from "@arcgis/core/widgets/Sketch/SketchViewModel.js";
14
- import { LitElement as N, createEvent as l } from "@arcgis/lumina";
15
- import { usePropertyChange as $ } from "@arcgis/lumina/controllers";
16
- import { log as u, composeMissingPropertyMessage as v, composeEmptyPropertyMessage as F } from "@arcgis/toolkit/log";
17
- import { css as E, html as s } from "lit";
18
- import { createRef as P, ref as U } from "lit/directives/ref.js";
19
- import { u as I } from "../../chunks/useT9n.js";
20
- import { h as f } from "../../chunks/feature-utils.js";
21
- import { a as A, i as M } from "../../chunks/layer-utils.js";
22
- const x = E`:host{flex-grow:1}calcite-flow{min-height:var(--arcgis-internal-panel-height-sm, 240px)}calcite-block-group{flex-grow:1;padding-bottom:var(--calcite-spacing-md);background-color:var(--calcite-color-foreground-1)}calcite-block{--calcite-block-content-space: 0;--calcite-block-border-color: transparent;margin:0}calcite-block calcite-select,calcite-block calcite-input{margin:0 var(--calcite-spacing-md)}calcite-block calcite-input-message{padding:var(--calcite-spacing-sm) var(--calcite-spacing-md) 0 var(--calcite-spacing-md)}calcite-block calcite-label:last-child{--calcite-label-margin-bottom: 0}calcite-notice{margin:var(--calcite-spacing-md)}#subnetwork-info-block{margin:var(--calcite-spacing-md) var(--calcite-spacing-md) 0 var(--calcite-spacing-md)}#results-limited-message{padding:var(--calcite-spacing-sm)}.inline-loader{--calcite-loader-spacing: var(--calcite-spacing-md)}.add-spatial-mode{display:flex;flex-direction:column;gap:var(--calcite-spacing-md);margin:var(--calcite-spacing-md)}.heading{color:var(--calcite-color-text-1);margin:0 0 var(--calcite-spacing-md) 0;font-size:var(--calcite-font-size);font-style:normal;font-weight:var(--calcite-font-weight-medium)}`, w = `utility-network-trace-inputs-sketch-${Date.now()}`, d = `utility-network-trace-inputs-flags-${Date.now()}`, B = 20;
23
- class V extends N {
2
+ import { c as _ } from "../../chunks/runtime.js";
3
+ import { repeat as k } from "lit/directives/repeat.js";
4
+ import { ref as h } from "lit/directives/ref.js";
5
+ import { queryAllJSON as m } from "@arcgis/core/applications/Components/featureUtils.js";
6
+ import l from "@arcgis/core/core/Collection.js";
7
+ import { watch as S } from "@arcgis/core/core/reactiveUtils.js";
8
+ import { substitute as T } from "@arcgis/core/intl.js";
9
+ import L from "@arcgis/core/layers/GraphicsLayer.js";
10
+ import C from "@arcgis/core/networks/support/UNTraceConfiguration.js";
11
+ import $ from "@arcgis/core/rest/networks/support/TraceLocation.js";
12
+ import f from "@arcgis/core/rest/support/FeatureSet.js";
13
+ import y from "@arcgis/core/views/interactive/snapping/FeatureSnappingLayerSource.js";
14
+ import N from "@arcgis/core/widgets/Sketch/SketchViewModel.js";
15
+ import { LitElement as v, createEvent as d } from "@arcgis/lumina";
16
+ import { usePropertyChange as E } from "@arcgis/lumina/controllers";
17
+ import { log as u, composeMissingPropertyMessage as F, composeEmptyPropertyMessage as I } from "@arcgis/toolkit/log";
18
+ import { css as P, html as s } from "lit";
19
+ import { u as U } from "../../chunks/useT9n.js";
20
+ import { h as w } from "../../chunks/feature-utils.js";
21
+ import { a as A, i as b } from "../../chunks/layer-utils.js";
22
+ const D = P`:host{flex-grow:1}calcite-flow{min-height:var(--arcgis-internal-panel-height-sm, 240px)}calcite-block-group{flex-grow:1;padding-bottom:var(--calcite-spacing-md);background-color:var(--calcite-color-foreground-1)}calcite-block{--calcite-block-content-space: 0;--calcite-block-border-color: transparent;margin:0}calcite-block calcite-select,calcite-block calcite-input{margin:0 var(--calcite-spacing-md)}calcite-block calcite-input-message{padding:var(--calcite-spacing-sm) var(--calcite-spacing-md) 0 var(--calcite-spacing-md)}calcite-block calcite-label:last-child{--calcite-label-margin-bottom: 0}calcite-notice{margin:var(--calcite-spacing-md)}#subnetwork-info-block{margin:var(--calcite-spacing-md) var(--calcite-spacing-md) 0 var(--calcite-spacing-md)}#results-limited-message{padding:var(--calcite-spacing-sm)}.inline-loader{--calcite-loader-spacing: var(--calcite-spacing-md)}.add-spatial-mode{display:flex;flex-direction:column;gap:var(--calcite-spacing-md);margin:var(--calcite-spacing-md)}.heading{color:var(--calcite-color-text-1);margin:0 0 var(--calcite-spacing-md) 0;font-size:var(--calcite-font-size);font-style:normal;font-weight:var(--calcite-font-weight-medium)}`, p = `utility-network-trace-inputs-sketch-${Date.now()}`, c = `utility-network-trace-inputs-flags-${Date.now()}`, M = 20;
23
+ class B extends v {
24
24
  constructor() {
25
- super(...arguments), this._defaultPopupTemplateEnabled = !0, this._messages = I({ blocking: !0 }), this._layerIdToLayer = /* @__PURE__ */ new Map(), this._startingPoints = new c(), this._barriers = new c(), this._stoppingPoints = new c(), this._subnetworkTraceTypes = /* @__PURE__ */ new Set([
25
+ super(...arguments), this._defaultPopupTemplateEnabled = !0, this._messages = U({ blocking: !0 }), this._layerIdToLayer = /* @__PURE__ */ new Map(), this._startingPoints = new l(), this._barriers = new l(), this._stoppingPoints = new l(), this._subnetworkTraceTypes = /* @__PURE__ */ new Set([
26
26
  "subnetwork",
27
27
  "subnetwork-controller",
28
28
  "upstream",
29
29
  "downstream",
30
30
  "isolation"
31
- ]), this._removeDuplicateSubnetworkNames = (e, t, i) => t === 0 || e.getAttribute("SUBNETWORKNAME") !== i[t - 1].getAttribute("SUBNETWORKNAME"), this._hitTestPromise = null, this._featuresFromHitTest = [], this._featuresComponentRef = P(), this._displayLimit = 20, this.compatibleSubnetworkNames = [], this.traceConfigurations = [], this._state = "ready", this._exceedDisplayLimit = !1, this.mode = "default", this.arcgisTraceInputsChange = l(), this.arcgisUtilityNetworkChange = l(), this.arcgisSelectedNamedTraceConfigurationChange = l(), this.arcgisTraceLocationSelectStart = l(), this.arcgisTraceLocationSelectEnd = l(), this.arcgisPropertyChange = $()("mode"), this.renderFeatureListItem = (e) => {
31
+ ]), this._removeDuplicateSubnetworkNames = (e, t, i) => t === 0 || e.getAttribute("SUBNETWORKNAME") !== i[t - 1].getAttribute("SUBNETWORKNAME"), this._hitTestPromise = null, this._featuresFromHitTest = [], this._displayLimit = 20, this._traceLocationStartingRefChange = (e) => {
32
+ e && (this._traceLocationStartingElement = e);
33
+ }, this._traceLocationBarrierRefChange = (e) => {
34
+ e && (this._traceLocationBarrierElement = e);
35
+ }, this._traceLocationStoppingRefChange = (e) => {
36
+ e && (this._traceLocationStoppingElement = e);
37
+ }, this._featuresComponentRefChange = (e) => {
38
+ e && (this._featuresComponentElement = e);
39
+ }, this.compatibleSubnetworkNames = [], this.traceConfigurations = [], this._state = "ready", this._exceedDisplayLimit = !1, this.autoDestroyDisabled = !1, this.mode = "default", this.arcgisPropertyChange = E()("mode"), this.arcgisSelectedNamedTraceConfigurationChange = d(), this.arcgisTraceInputsChange = d(), this.arcgisTraceLocationSelectEnd = d(), this.arcgisTraceLocationSelectStart = d(), this.arcgisUtilityNetworkChange = d(), this.renderFeatureListItem = (e) => {
32
40
  const { feature: t, label: i } = e;
33
41
  return s`<calcite-list-item .label=${i} @calciteListItemSelect=${() => this._handleFeatureSelectChange(t)}><calcite-icon icon=chevron-right slot=content-end></calcite-icon></calcite-list-item>`;
34
42
  };
35
43
  }
36
44
  static {
37
- this.properties = { compatibleSubnetworkNames: 16, subnetworksTable: 16, traceConfigurations: 16, utilityNetworks: 16, _unTraceConfiguration: 16, _state: 16, _activeTraceLocationType: 16, _selectedFeature: 16, _exceedDisplayLimit: 16, beforeTraceLocationSelectStart: 0, view: 0, selectedUtilityNetwork: 0, selectedNamedTraceConfiguration: 0, unTraceConfiguration: 32, referenceElement: 1, mode: 3, traceLocations: 32 };
45
+ this.properties = { compatibleSubnetworkNames: 16, subnetworksTable: 16, traceConfigurations: 16, utilityNetworks: 16, _unTraceConfiguration: 16, _state: 16, _activeTraceLocationType: 16, _selectedFeature: 16, _exceedDisplayLimit: 16, beforeTraceLocationSelectStart: 0, view: 0, selectedUtilityNetwork: 0, selectedNamedTraceConfiguration: 0, autoDestroyDisabled: 5, unTraceConfiguration: 32, referenceElement: 1, mode: 3, traceLocations: 32 };
38
46
  }
39
47
  static {
40
- this.styles = x;
48
+ this.styles = D;
41
49
  }
42
50
  get isSubnetworkNameTraceSelected() {
43
51
  const e = this.selectedNamedTraceConfiguration?.traceType;
@@ -59,7 +67,7 @@ class V extends N {
59
67
  get traceLocations() {
60
68
  const e = [], t = (i) => {
61
69
  i.flagProperties.terminalConfiguration && i.flagProperties.selectedTerminals ? i.flagProperties.selectedTerminals.forEach((r) => {
62
- e.push(new L({
70
+ e.push(new $({
63
71
  type: i.traceLocation.type,
64
72
  isFilterBarrier: i.traceLocation.isFilterBarrier,
65
73
  globalId: i.traceLocation.globalId,
@@ -70,9 +78,12 @@ class V extends N {
70
78
  };
71
79
  return this._startingPoints.forEach((i) => t(i)), this._barriers.forEach((i) => t(i)), this._stoppingPoints.forEach((i) => t(i)), e;
72
80
  }
81
+ async destroy() {
82
+ this._removeGraphicLayer(p), this._removeGraphicLayer(c), this._sketchViewModel?.cancel(), this._featuresComponentElement?.destroy(), this._traceLocationStartingElement?.destroy(), this._traceLocationBarrierElement?.destroy(), this._traceLocationStoppingElement?.destroy(), await this.manager.destroy();
83
+ }
73
84
  load() {
74
85
  this.manager.onLifecycle(() => [
75
- k(() => this.view?.map, () => {
86
+ S(() => this.view?.map, () => {
76
87
  this._setupUtilityNetwork(), this._setupSketchViewModel();
77
88
  }, { initial: !0 })
78
89
  ]);
@@ -81,13 +92,16 @@ class V extends N {
81
92
  const { utilityNetworks: t, selectedUtilityNetwork: i } = this;
82
93
  (e.has("utilityNetworks") || !t || t.length === 0 || !i || !t?.includes(i)) && this._handleUtilityNetworksChange(), e.has("selectedUtilityNetwork") && (this.arcgisUtilityNetworkChange.emit(), this._handleSelectedUtilityNetworkChange()), e.has("selectedNamedTraceConfiguration") && (this.arcgisTraceInputsChange.emit(), this.arcgisSelectedNamedTraceConfigurationChange.emit(), this._handleTraceConfigChange()), e.has("selectedSubnetworkName") && this.arcgisTraceInputsChange.emit();
83
94
  }
95
+ disconnectedCallback() {
96
+ super.disconnectedCallback(), this._layerIdToLayer.clear();
97
+ }
84
98
  _clearTraceLocations() {
85
- this._getGraphicLayer(d)?.removeAll(), this._startingPoints.removeAll(), this._barriers.removeAll(), this._stoppingPoints.removeAll();
99
+ this._getGraphicLayer(c)?.removeAll(), this._startingPoints.removeAll(), this._barriers.removeAll(), this._stoppingPoints.removeAll();
86
100
  }
87
101
  _createGraphicLayer(e) {
88
102
  const { map: t } = this.view;
89
103
  if (!t?.findLayerById(e)) {
90
- const a = new S({
104
+ const a = new L({
91
105
  id: e,
92
106
  listMode: "hide",
93
107
  title: e
@@ -99,22 +113,26 @@ class V extends N {
99
113
  const { map: t } = this.view;
100
114
  if (t) {
101
115
  const i = t.findLayerById(e);
102
- if (M(i))
116
+ if (b(i))
103
117
  return t.reorder(i, t.layers.length - 1), i;
104
118
  }
105
119
  return null;
106
120
  }
121
+ _removeGraphicLayer(e) {
122
+ const { map: t } = this.view, i = t?.findLayerById(e);
123
+ i && b(i) && t?.remove(i);
124
+ }
107
125
  _setSnappingOption() {
108
126
  const { _sketchViewModel: e, _unLayers: t } = this;
109
127
  if (e && t && t.length > 0) {
110
- const i = new c();
128
+ const i = new l();
111
129
  t.forEach((a) => {
112
130
  a.type === "subtype-group" ? a.sublayers.forEach((r) => {
113
- i.add(new h({
131
+ i.add(new y({
114
132
  layer: r,
115
133
  enabled: !0
116
134
  }));
117
- }) : i.add(new h({
135
+ }) : i.add(new y({
118
136
  layer: a,
119
137
  enabled: !0
120
138
  }));
@@ -126,17 +144,14 @@ class V extends N {
126
144
  }
127
145
  }
128
146
  _initializeSketchViewModel() {
129
- const { view: e, _unLayers: t } = this, i = this._getGraphicLayer(w), a = new c();
130
- return t?.forEach((r) => a.add(new h({
131
- layer: r,
132
- enabled: !0
133
- }))), new C({
134
- layer: i,
147
+ const { view: e } = this, t = this._getGraphicLayer(p);
148
+ return new N({
149
+ layer: t,
135
150
  view: e
136
151
  });
137
152
  }
138
153
  _setupSketchViewModel() {
139
- this._createGraphicLayer(w), this._createGraphicLayer(d), this._sketchViewModel = this._initializeSketchViewModel();
154
+ this._createGraphicLayer(p), this._createGraphicLayer(c), this._sketchViewModel = this._initializeSketchViewModel();
140
155
  }
141
156
  _clearSubnetworks() {
142
157
  this.selectedSubnetworkName = void 0, this.subnetworksTable = void 0, this.compatibleSubnetworkNames = [];
@@ -150,7 +165,7 @@ class V extends N {
150
165
  return;
151
166
  const t = e.createQuery();
152
167
  t.gdbVersion = this.selectedUtilityNetwork?.gdbVersion, t.where = this._getSubnetworkQueryWhereClause(), t.outFields = ["SUBNETWORKNAME"], t.orderByFields = ["SUBNETWORKNAME"];
153
- const i = m.fromJSON(await g(e, t));
168
+ const i = f.fromJSON(await m(e, t));
154
169
  this.compatibleSubnetworkNames = i.features.filter(this._removeDuplicateSubnetworkNames).map((a) => a.getAttribute("SUBNETWORKNAME"));
155
170
  }
156
171
  _getSubnetworkQueryWhereClause() {
@@ -172,8 +187,8 @@ class V extends N {
172
187
  }
173
188
  _handleTraceConfigChange() {
174
189
  const { selectedNamedTraceConfiguration: e } = this;
175
- if (!(e?.traceConfiguration instanceof T)) {
176
- u("error", this, v("selectedNamedTraceConfiguration.traceConfiguration")), this._unTraceConfiguration = void 0;
190
+ if (!(e?.traceConfiguration instanceof C)) {
191
+ u("error", this, F("selectedNamedTraceConfiguration.traceConfiguration")), this._unTraceConfiguration = void 0;
177
192
  return;
178
193
  }
179
194
  switch (this._unTraceConfiguration = e.traceConfiguration.clone(), e.traceType) {
@@ -190,12 +205,12 @@ class V extends N {
190
205
  }
191
206
  _filterUnLayers() {
192
207
  const { selectedUtilityNetwork: e } = this;
193
- this._unLayers = new c(this._allLayers.filter((t) => e?.isUtilityLayer(t))), this._setSnappingOption();
208
+ this._unLayers = new l(this._allLayers.filter((t) => e?.isUtilityLayer(t))), this._setSnappingOption();
194
209
  }
195
210
  _handleUtilityNetworksChange() {
196
211
  const { utilityNetworks: e } = this;
197
212
  if (!e || e.length === 0) {
198
- this._state = "error", u("error", this, F("utilityNetworks"));
213
+ this._state = "error", u("error", this, I("utilityNetworks"));
199
214
  return;
200
215
  }
201
216
  (!this.selectedUtilityNetwork || !e.includes(this.selectedUtilityNetwork)) && (this.selectedUtilityNetwork = e.at(0));
@@ -228,7 +243,7 @@ class V extends N {
228
243
  async _queryFeatures(e, t) {
229
244
  const i = e.createQuery();
230
245
  i.gdbVersion = this.selectedUtilityNetwork?.gdbVersion, i.objectIds = t.map((r) => r.getObjectId()), i.outFields = ["*"];
231
- const { features: a } = m.fromJSON(await g(e, i));
246
+ const { features: a } = f.fromJSON(await m(e, i));
232
247
  return a.forEach((r) => {
233
248
  r.layer = e.type === "subtype-group" ? e.findSublayerForFeature(r) : e, r.origin = r.layer;
234
249
  const o = r.layer;
@@ -242,8 +257,8 @@ class V extends N {
242
257
  if (r) {
243
258
  const o = r.layerId, n = this._getLayerByLayerId(o);
244
259
  if (n) {
245
- const p = t.get(n) || [];
246
- p.push(a), t.set(n, p);
260
+ const g = t.get(n) || [];
261
+ g.push(a), t.set(n, g);
247
262
  }
248
263
  }
249
264
  });
@@ -254,10 +269,10 @@ class V extends N {
254
269
  })), await Promise.all(i.map(async (a) => {
255
270
  const r = a.layer;
256
271
  if (r && "getFeatureTitle" in r) {
257
- const o = await r.getFeatureTitle(a) || f(a);
272
+ const o = await r.getFeatureTitle(a) || w(a);
258
273
  return { feature: a, label: o };
259
274
  }
260
- return { feature: a, label: f(a) };
275
+ return { feature: a, label: w(a) };
261
276
  }));
262
277
  }
263
278
  async _handleHitTestComplete(e) {
@@ -268,16 +283,16 @@ class V extends N {
268
283
  }
269
284
  _handleAddSpatialCancelClick(e) {
270
285
  e?.stopPropagation();
271
- const t = this._featuresComponentRef.value;
286
+ const t = this._featuresComponentElement;
272
287
  t && t.clear(), this._selectedFeature = void 0, this.mode = "default", this._sketchViewModel?.cancel(), this._hitTestPromise?.reject(), this._hitTestPromise = null;
273
288
  }
274
289
  _handleFeaturesClose() {
275
290
  this.mode = "add-spatial-feature-list", this._selectedFeature = void 0;
276
291
  }
277
292
  _handleAddSpatialAddClick() {
278
- const { _hitTestPromise: e, _featuresComponentRef: t } = this;
279
- if (e && t?.value) {
280
- const i = t.value, a = i.selectedDrillInFeature ?? i.selectedFeature;
293
+ const { _hitTestPromise: e, _featuresComponentElement: t } = this;
294
+ if (e && t) {
295
+ const i = t, a = i.selectedDrillInFeature ?? i.selectedFeature;
281
296
  if (!a)
282
297
  return;
283
298
  e.resolve(a), this._hitTestPromise = null;
@@ -296,7 +311,7 @@ class V extends N {
296
311
  const { _messages: e, traceConfigurations: t } = this, i = e.labels.traceConfiguration;
297
312
  if (t.length === 0)
298
313
  return this.renderError(e.errors.noTraceConfigurationError, !0);
299
- const a = b(t, (r) => r.globalId, (r) => s`<calcite-option .value=${r.globalId}>${r.title}</calcite-option>`);
314
+ const a = k(t, (r) => r.globalId, (r) => s`<calcite-option .value=${r.globalId}>${r.title}</calcite-option>`);
300
315
  return s`<calcite-block .heading=${i} .label=${i} expanded><calcite-select .label=${i} .value=${this.selectedNamedTraceConfiguration?.globalId || void 0} @calciteSelectChange=${(r) => {
301
316
  this._selectTraceConfigurationByGuid(r.target.value);
302
317
  }}>${a}</calcite-select></calcite-block>`;
@@ -326,11 +341,11 @@ class V extends N {
326
341
  const { _selectedFeature: e } = this;
327
342
  if (!e)
328
343
  return this.mode = "default", null;
329
- const t = this._featuresComponentRef.value, i = t?.selectedFeature ? [t.selectedFeature] : [e];
330
- return s`<arcgis-features .referenceElement=${this.referenceElement} .features=${i} .view=${this.view} .defaultPopupTemplateEnabled=${this._defaultPopupTemplateEnabled} open @arcgisClose=${() => this._handleFeaturesClose()} ${U(this._featuresComponentRef)}></arcgis-features>`;
344
+ const t = this._featuresComponentElement, i = t?.selectedFeature ? [t.selectedFeature] : [e];
345
+ return s`<arcgis-features .referenceElement=${this.referenceElement} .features=${i} .view=${this.view} .defaultPopupTemplateEnabled=${this._defaultPopupTemplateEnabled} open @arcgisClose=${() => this._handleFeaturesClose()} .autoDestroyDisabled=${this.autoDestroyDisabled} ${h(this._featuresComponentRefChange)}></arcgis-features>`;
331
346
  }
332
347
  renderAddSpatialFooter() {
333
- const { mode: e, _messages: t, selectedUtilityNetwork: i, _selectedFeature: a } = this, r = _(t.warnings.exceededDisplayLimit, {
348
+ const { mode: e, _messages: t, selectedUtilityNetwork: i, _selectedFeature: a } = this, r = T(t.warnings.exceededDisplayLimit, {
334
349
  limit: this._displayLimit.toString()
335
350
  }), o = e === "add-spatial-feature-list" && this._exceedDisplayLimit, n = a ? !(i?.isUtilityLayer(a.layer) ?? !0) : !0;
336
351
  return s`${o && s`<calcite-input-message id=results-limited-message icon=exclamation-mark-circle status=idle>${r}</calcite-input-message>` || ""}<calcite-button appearance=outline width=full @click=${() => {
@@ -340,13 +355,13 @@ class V extends N {
340
355
  }} .disabled=${n}>${t.buttons.add}</calcite-button>` || ""}`;
341
356
  }
342
357
  renderStartingPointSelection() {
343
- return s`<arcgis-utility-network-trace-location .view=${this.view} trace-location-type=starting-point .beforeTraceLocationSelectStart=${this.beforeTraceLocationSelectStart} @arcgisTraceLocationSelectStart=${this._handleTraceLocationSelectStart} @arcgisTraceLocationSelectEnd=${this._handleTraceLocationSelectEnd} @arcgisTraceLocationChange=${() => this.arcgisTraceInputsChange.emit()} .sketchViewModel=${this._sketchViewModel} .utilityNetwork=${this.selectedUtilityNetwork} .filterLayers=${this._unLayers} .flagLayer=${this._getGraphicLayer(d)} .traceLocations=${this._startingPoints} .afterHitTest=${this._handleHitTestComplete.bind(this)}></arcgis-utility-network-trace-location>`;
358
+ return s`<arcgis-utility-network-trace-location .view=${this.view} trace-location-type=starting-point .beforeTraceLocationSelectStart=${this.beforeTraceLocationSelectStart} @arcgisTraceLocationSelectStart=${this._handleTraceLocationSelectStart} @arcgisTraceLocationSelectEnd=${this._handleTraceLocationSelectEnd} @arcgisTraceLocationChange=${() => this.arcgisTraceInputsChange.emit()} .sketchViewModel=${this._sketchViewModel} .utilityNetwork=${this.selectedUtilityNetwork} .filterLayers=${this._unLayers} .flagLayer=${this._getGraphicLayer(c)} .traceLocations=${this._startingPoints} .afterHitTest=${this._handleHitTestComplete.bind(this)} .autoDestroyDisabled=${this.autoDestroyDisabled} ${h(this._traceLocationStartingRefChange)}></arcgis-utility-network-trace-location>`;
344
359
  }
345
360
  renderStoppingPointSelection() {
346
- return s`<arcgis-utility-network-trace-location .view=${this.view} trace-location-type=stopping-point .beforeTraceLocationSelectStart=${this.beforeTraceLocationSelectStart} @arcgisTraceLocationSelectStart=${this._handleTraceLocationSelectStart} @arcgisTraceLocationSelectEnd=${this._handleTraceLocationSelectEnd} @arcgisTraceLocationChange=${() => this.arcgisTraceInputsChange.emit()} .sketchViewModel=${this._sketchViewModel} .utilityNetwork=${this.selectedUtilityNetwork} .filterLayers=${this._unLayers} .flagLayer=${this._getGraphicLayer(d)} .traceLocations=${this._stoppingPoints} .afterHitTest=${this._handleHitTestComplete.bind(this)}></arcgis-utility-network-trace-location>`;
361
+ return s`<arcgis-utility-network-trace-location .view=${this.view} trace-location-type=stopping-point .beforeTraceLocationSelectStart=${this.beforeTraceLocationSelectStart} @arcgisTraceLocationSelectStart=${this._handleTraceLocationSelectStart} @arcgisTraceLocationSelectEnd=${this._handleTraceLocationSelectEnd} @arcgisTraceLocationChange=${() => this.arcgisTraceInputsChange.emit()} .sketchViewModel=${this._sketchViewModel} .utilityNetwork=${this.selectedUtilityNetwork} .filterLayers=${this._unLayers} .flagLayer=${this._getGraphicLayer(c)} .traceLocations=${this._stoppingPoints} .afterHitTest=${this._handleHitTestComplete.bind(this)} .autoDestroyDisabled=${this.autoDestroyDisabled} ${h(this._traceLocationStoppingRefChange)}></arcgis-utility-network-trace-location>`;
347
362
  }
348
363
  renderBarrierSelection() {
349
- return s`<arcgis-utility-network-trace-location .view=${this.view} trace-location-type=barrier .beforeTraceLocationSelectStart=${this.beforeTraceLocationSelectStart} @arcgisTraceLocationSelectStart=${this._handleTraceLocationSelectStart} @arcgisTraceLocationSelectEnd=${this._handleTraceLocationSelectEnd} @arcgisTraceLocationChange=${() => this.arcgisTraceInputsChange.emit()} .sketchViewModel=${this._sketchViewModel} .utilityNetwork=${this.selectedUtilityNetwork} .filterLayers=${this._unLayers} .flagLayer=${this._getGraphicLayer(d)} .traceLocations=${this._barriers} .afterHitTest=${this._handleHitTestComplete.bind(this)}></arcgis-utility-network-trace-location>`;
364
+ return s`<arcgis-utility-network-trace-location .view=${this.view} trace-location-type=barrier .beforeTraceLocationSelectStart=${this.beforeTraceLocationSelectStart} @arcgisTraceLocationSelectStart=${this._handleTraceLocationSelectStart} @arcgisTraceLocationSelectEnd=${this._handleTraceLocationSelectEnd} @arcgisTraceLocationChange=${() => this.arcgisTraceInputsChange.emit()} .sketchViewModel=${this._sketchViewModel} .utilityNetwork=${this.selectedUtilityNetwork} .filterLayers=${this._unLayers} .flagLayer=${this._getGraphicLayer(c)} .traceLocations=${this._barriers} .afterHitTest=${this._handleHitTestComplete.bind(this)} .autoDestroyDisabled=${this.autoDestroyDisabled} ${h(this._traceLocationBarrierRefChange)}></arcgis-utility-network-trace-location>`;
350
365
  }
351
366
  renderSubnetworkNameInput() {
352
367
  return s`<calcite-input clearable type=text .placeholder=${this._messages.instructions.enterSubnetworkName} max-length=64 .value=${this.selectedSubnetworkName} @calciteInputInput=${(e) => this.selectedSubnetworkName = e.target.value}></calcite-input><calcite-input-message icon=exclamation-mark-triangle status=idle>${this._messages.labels.tooManySubnetworks}</calcite-input-message>`;
@@ -356,7 +371,7 @@ class V extends N {
356
371
  }
357
372
  renderSubnetworkSelection() {
358
373
  const { compatibleSubnetworkNames: e } = this, t = this._messages.labels.subnetworkName;
359
- return this.isSubnetworkNameTraceSelected ? this._state === "loading" ? s`<calcite-loader class="inline-loader" label=loading scale=s></calcite-loader>` : e.length ? s`<calcite-block .heading=${t} .label=${t} expanded>${e.length > B ? this.renderSubnetworkNameInput() : this.renderSubnetworkSelectList()}</calcite-block>` : this.renderError(this._messages.errors.noCompatibleSubnetworks, !1, "exclamation-mark-triangle") : null;
374
+ return this.isSubnetworkNameTraceSelected ? this._state === "loading" ? s`<calcite-loader class="inline-loader" label=loading scale=s></calcite-loader>` : e.length ? s`<calcite-block .heading=${t} .label=${t} expanded>${e.length > M ? this.renderSubnetworkNameInput() : this.renderSubnetworkSelectList()}</calcite-block>` : this.renderError(this._messages.errors.noCompatibleSubnetworks, !1, "exclamation-mark-triangle") : null;
360
375
  }
361
376
  renderSubnetworkInfo() {
362
377
  const { _messages: e, selectedNamedTraceConfiguration: t, _unTraceConfiguration: i } = this;
@@ -374,7 +389,7 @@ class V extends N {
374
389
  return s`<calcite-panel>${e === "add-spatial-feature" ? this.renderSelectedFeature() : s`<calcite-flow>${this.renderDefaultMode()}${this.renderSpatialSelectInstructions()}${this.renderHitTestResults()}</calcite-flow>`}${e !== "default" ? this.renderAddSpatialFooter() : null}</calcite-panel>`;
375
390
  }
376
391
  }
377
- y("arcgis-utility-network-trace-inputs", V);
392
+ _("arcgis-utility-network-trace-inputs", B);
378
393
  export {
379
- V as ArcgisUtilityNetworkTraceInputs
394
+ B as ArcgisUtilityNetworkTraceInputs
380
395
  };
@@ -23,6 +23,8 @@ import type { T9nMeta } from "@arcgis/lumina/controllers";
23
23
  */
24
24
  export abstract class ArcgisUtilityNetworkTraceLocation extends LitElement {
25
25
  accessor afterHitTest: ((graphics: Graphic[]) => Promise<Graphic>) | undefined;
26
+ /** @default false */
27
+ accessor autoDestroyDisabled: boolean;
26
28
  /**
27
29
  * A function to run before trace location selection starts.
28
30
  *
@@ -99,6 +101,8 @@ export abstract class ArcgisUtilityNetworkTraceLocation extends LitElement {
99
101
  accessor utilityNetwork: UtilityNetwork | undefined;
100
102
  /** @required */
101
103
  accessor view: MapView | undefined;
104
+ /** Permanently destroy the component. */
105
+ destroy(): Promise<void>;
102
106
  readonly arcgisTraceLocationChange: import("@arcgis/lumina").TargetedEvent<this, void>;
103
107
  /**
104
108
  * Fires when the user completes the selection of a trace location.
@@ -1,28 +1,31 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
2
- import { c as L } from "../../chunks/runtime.js";
3
- import { css as k, html as f } from "lit";
2
+ import { c as k } from "../../chunks/runtime.js";
3
+ import { css as L, html as p } from "lit";
4
4
  import * as _ from "@arcgis/core/geometry/operators/cutOperator.js";
5
5
  import * as g from "@arcgis/core/geometry/operators/lengthOperator.js";
6
6
  import * as y from "@arcgis/core/geometry/operators/projectOperator.js";
7
7
  import v from "@arcgis/core/geometry/Polyline.js";
8
8
  import S from "@arcgis/core/geometry/SpatialReference.js";
9
- import x from "@arcgis/core/Graphic.js";
9
+ import A from "@arcgis/core/Graphic.js";
10
10
  import m from "@arcgis/core/rest/networks/support/TraceLocation.js";
11
11
  import b from "@arcgis/core/symbols/SimpleMarkerSymbol.js";
12
- import { LitElement as A, createEvent as w } from "@arcgis/lumina";
12
+ import { LitElement as x, createEvent as w } from "@arcgis/lumina";
13
13
  import { log as c } from "@arcgis/toolkit/log";
14
14
  import { u as I } from "../../chunks/useT9n.js";
15
- const C = k`calcite-block{--calcite-block-content-space: 0;--calcite-block-border-color: transparent;margin:0}.add-location-button{--calcite-button-border-color: var(--calcite-color-border-1);--calcite-button-icon-color: var(--calcite-color-text-1);--calcite-button-text-color: var(--calcite-color-text-1)}.button-container{justify-content:center;display:grid}.clear-button{--calcite-button-border-color: transparent}`;
16
- class F extends A {
15
+ const C = L`calcite-block{--calcite-block-content-space: 0;--calcite-block-border-color: transparent;margin:0}.add-location-button{--calcite-button-border-color: var(--calcite-color-border-1);--calcite-button-icon-color: var(--calcite-color-text-1);--calcite-button-text-color: var(--calcite-color-text-1)}.button-container{justify-content:center;display:grid}.clear-button{--calcite-button-border-color: transparent}`;
16
+ class F extends x {
17
17
  constructor() {
18
- super(...arguments), this.messages = I({ blocking: !0 }), this.isSelectWaiting = !1, this.traceLocationType = "starting-point", this.spatialTolerance = 0.05, this.arcgisTraceLocationChange = w(), this.arcgisTraceLocationSelectEnd = w(), this.arcgisTraceLocationSelectStart = w();
18
+ super(...arguments), this.messages = I({ blocking: !0 }), this.isSelectWaiting = !1, this.traceLocationType = "starting-point", this.spatialTolerance = 0.05, this.autoDestroyDisabled = !1, this.arcgisTraceLocationChange = w(), this.arcgisTraceLocationSelectEnd = w(), this.arcgisTraceLocationSelectStart = w();
19
19
  }
20
20
  static {
21
- this.properties = { isSelectWaiting: 16, beforeTraceLocationSelectStart: 0, afterHitTest: 0, view: 0, traceLocationType: 1, traceLocations: 0, filterLayers: 0, sketchViewModel: 0, flagLayer: 0, spatialTolerance: 9, utilityNetwork: 0 };
21
+ this.properties = { isSelectWaiting: 16, beforeTraceLocationSelectStart: 0, afterHitTest: 0, view: 0, traceLocationType: 1, traceLocations: 0, filterLayers: 0, sketchViewModel: 0, flagLayer: 0, spatialTolerance: 9, autoDestroyDisabled: 5, utilityNetwork: 0 };
22
22
  }
23
23
  static {
24
24
  this.styles = C;
25
25
  }
26
+ async destroy() {
27
+ this._resetAfterSketch(!1), await this.manager.destroy();
28
+ }
26
29
  async load() {
27
30
  y.isLoaded() || await y.load();
28
31
  }
@@ -46,8 +49,8 @@ class F extends A {
46
49
  const d = _.execute(a, h);
47
50
  if (d.length > 0) {
48
51
  const T = g.execute(a, { unit: "feet" });
49
- let p;
50
- return d[0].paths[0][0][0] === a.paths[0][0][0] ? p = g.execute(d[0], { unit: "feet" }) : p = g.execute(d[1], { unit: "feet" }), p / T;
52
+ let f;
53
+ return d[0].paths[0][0][0] === a.paths[0][0][0] ? f = g.execute(d[0], { unit: "feet" }) : f = g.execute(d[1], { unit: "feet" }), f / T;
51
54
  }
52
55
  return c("warn", this, "Unable to cut the source geometry with the flag geometry."), 0.5;
53
56
  }
@@ -114,7 +117,7 @@ class F extends A {
114
117
  const n = t.geometry?.type;
115
118
  if (this.traceLocations?.some((l) => l.traceLocation.globalId === e) && n !== "polyline")
116
119
  return c("warn", this, "A flag with the same globalId already exists."), null;
117
- const o = this._createFlagSymbol(), i = new x({
120
+ const o = this._createFlagSymbol(), i = new A({
118
121
  geometry: r,
119
122
  symbol: o,
120
123
  attributes: t.attributes
@@ -275,13 +278,13 @@ class F extends A {
275
278
  }
276
279
  renderAddLocationBlock() {
277
280
  const { traceLocationType: e, messages: t, traceLocations: r } = this, a = e === "starting-point" ? t.types.startingPoint : e === "barrier" ? t.types.barrier : t.types.stoppingPoint, s = a.heading, n = a.description, o = a.buttonText;
278
- return f`<calcite-block .heading=${s} .label=${s} expanded .description=${n}>${r?.length ? f`<calcite-button class="clear-button" slot=actions-end appearance=transparent .label=${t.buttons.clear} @click=${() => this._handleClearButtonClick()}>${t.buttons.clear}</calcite-button>` : null}<arcgis-utility-network-trace-location-list .traceLocations=${r} .traceLocationType=${e}></arcgis-utility-network-trace-location-list><div class="button-container"><calcite-button .loading=${this.isSelectWaiting} class="add-location-button" icon-start=select appearance=outline .label=${o} @click=${() => this._handleAddButtonClick()}>${o}</calcite-button></div></calcite-block>`;
281
+ return p`<calcite-block .heading=${s} .label=${s} expanded .description=${n}>${r?.length ? p`<calcite-button class="clear-button" slot=actions-end appearance=transparent .label=${t.buttons.clear} @click=${() => this._handleClearButtonClick()}>${t.buttons.clear}</calcite-button>` : null}<arcgis-utility-network-trace-location-list .traceLocations=${r} .traceLocationType=${e}></arcgis-utility-network-trace-location-list><div class="button-container"><calcite-button .loading=${this.isSelectWaiting} class="add-location-button" icon-start=select appearance=outline .label=${o} @click=${() => this._handleAddButtonClick()}>${o}</calcite-button></div></calcite-block>`;
279
282
  }
280
283
  render() {
281
- return f`<div class="root">${this.renderAddLocationBlock()}</div>`;
284
+ return p`<div class="root">${this.renderAddLocationBlock()}</div>`;
282
285
  }
283
286
  }
284
- L("arcgis-utility-network-trace-location", F);
287
+ k("arcgis-utility-network-trace-location", F);
285
288
  export {
286
289
  F as ArcgisUtilityNetworkTraceLocation
287
290
  };
@@ -87,6 +87,16 @@ export abstract class ArcgisUtilityNetworkTraceResults extends LitElement {
87
87
  unknown: string;
88
88
  }>;
89
89
  accessor aggregatedGeometryGraphicsColor: Color;
90
+ /**
91
+ * If true, the component will not be destroyed automatically when it is
92
+ * disconnected from the document. This is useful when you want to move the
93
+ * component to a different place on the page, or temporarily hide it. If this
94
+ * is set, make sure to call the [destroy()](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-utility-network-trace-results/#destroy) method when you are done to
95
+ * prevent memory leaks.
96
+ *
97
+ * @default false
98
+ */
99
+ accessor autoDestroyDisabled: boolean;
90
100
  get featuresFromSelectedLayer(): Graphic[];
91
101
  /** @default false */
92
102
  accessor hideFeatureResults: boolean;
@@ -141,6 +151,9 @@ export abstract class ArcgisUtilityNetworkTraceResults extends LitElement {
141
151
  accessor traceResultFeatures: Graphic[];
142
152
  accessor utilityNetwork: UtilityNetwork | undefined;
143
153
  accessor view: MapView | undefined;
154
+ clearAggregatedGeometryGraphics(): void;
155
+ /** Permanently destroy the component. */
156
+ destroy(): Promise<void>;
144
157
  readonly arcgisAggregatedGeometryGraphicsColorChange: import("@arcgis/lumina").TargetedEvent<this, string>;
145
158
  readonly arcgisHideGraphicsChange: import("@arcgis/lumina").TargetedEvent<this, boolean>;
146
159
  readonly arcgisSelectedLayerChange: import("@arcgis/lumina").TargetedEvent<this, void>;
@@ -1,24 +1,24 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
2
- import { c as f } from "../../chunks/runtime.js";
3
- import { queryAllJSON as _ } from "@arcgis/core/applications/Components/featureUtils.js";
2
+ import { c as _ } from "../../chunks/runtime.js";
3
+ import { ref as h } from "lit/directives/ref.js";
4
+ import { queryAllJSON as b } from "@arcgis/core/applications/Components/featureUtils.js";
4
5
  import v from "@arcgis/core/Color.js";
5
6
  import "@arcgis/core/core/Error.js";
6
- import * as h from "@arcgis/core/geometry/operators/shapePreservingProjectOperator.js";
7
+ import * as g from "@arcgis/core/geometry/operators/shapePreservingProjectOperator.js";
7
8
  import "@arcgis/core/Graphic.js";
8
- import b from "@arcgis/core/rest/support/FeatureSet.js";
9
- import { LitElement as $, createEvent as o } from "@arcgis/lumina";
10
- import { log as u, composeMissingPropertyMessage as g, composeEmptyPropertyMessage as F } from "@arcgis/toolkit/log";
11
- import { css as w, html as i } from "lit";
12
- import { createRef as L, ref as T } from "lit/directives/ref.js";
9
+ import $ from "@arcgis/core/rest/support/FeatureSet.js";
10
+ import { LitElement as F, createEvent as o } from "@arcgis/lumina";
11
+ import { log as u, composeMissingPropertyMessage as m, composeEmptyPropertyMessage as w } from "@arcgis/toolkit/log";
12
+ import { css as L, html as i } from "lit";
13
13
  import { u as C } from "../../chunks/useT9n.js";
14
- import { h as m } from "../../chunks/feature-utils.js";
15
- const R = w`:host{min-height:var(--arcgis-internal-panel-height-sm, 240px);height:100%}arcgis-features{height:100%}calcite-flow{min-height:var(--arcgis-internal-panel-height-sm, 240px);height:100%}calcite-table{--calcite-table-border-color: none}calcite-table-row{--calcite-table-row-border-color: var(--calcite-color-border-3)}.white-panel-background{--calcite-panel-background-color: var(--calcite-color-foreground-1)}.aggregated-geometry-container{display:flex;justify-content:space-between;padding:0 var(--calcite-spacing-md) var(--calcite-spacing-md) var(--calcite-spacing-md)}#elements-list-item{border:solid 1px var(--calcite-color-border-3);border-radius:var(--calcite-corner-radius-sm);margin:0 var(--calcite-spacing-sm)}.no-selectable-results{padding:0 var(--calcite-spacing-md);color:var(--calcite-color-text-3);font-size:var(--calcite-font-size)}.results-heading{display:flex;flex-direction:column;margin:var(--calcite-spacing-md);gap:var(--calcite-spacing-xs)}.results-heading .results-heading-title{font-weight:var(--calcite-font-weight-medium);font-size:var(--calcite-font-size);color:var(--calcite-color-text-1)}.results-heading .results-heading-subtitle{font-size:var(--calcite-font-size--1);color:var(--calcite-color-text-3)}.functions-heading{padding:var(--calcite-spacing-md) var(--calcite-spacing-md) var(--calcite-spacing-xxs) var(--calcite-spacing-md);font-weight:var(--calcite-font-weight-medium);font-size:var(--calcite-font-size);color:var(--calcite-color-text-1)}.no-results-landing{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;margin:var(--calcite-spacing-sm) var(--calcite-spacing-xl) var(--calcite-spacing-xl) var(--calcite-spacing-xl);gap:var(--calcite-spacing-md)}.no-results-landing calcite-icon{margin-bottom:var(--calcite-spacing-sm);--calcite-icon-color: var(--calcite-color-text-3)}.no-results-landing .no-results-heading{font-size:var(--calcite-font-size-2)}.no-results-landing .no-results-description{color:var(--calcite-color-text-3)}`, p = {
14
+ import { h as y } from "../../chunks/feature-utils.js";
15
+ const T = L`:host{min-height:var(--arcgis-internal-panel-height-sm, 240px);height:100%}arcgis-features{height:100%}calcite-flow{min-height:var(--arcgis-internal-panel-height-sm, 240px);height:100%}calcite-table{--calcite-table-border-color: none}calcite-table-row{--calcite-table-row-border-color: var(--calcite-color-border-3)}.white-panel-background{--calcite-panel-background-color: var(--calcite-color-foreground-1)}.aggregated-geometry-container{display:flex;justify-content:space-between;padding:0 var(--calcite-spacing-md) var(--calcite-spacing-md) var(--calcite-spacing-md)}#elements-list-item{border:solid 1px var(--calcite-color-border-3);border-radius:var(--calcite-corner-radius-sm);margin:0 var(--calcite-spacing-sm)}.no-selectable-results{padding:0 var(--calcite-spacing-md);color:var(--calcite-color-text-3);font-size:var(--calcite-font-size)}.results-heading{display:flex;flex-direction:column;margin:var(--calcite-spacing-md);gap:var(--calcite-spacing-xs)}.results-heading .results-heading-title{font-weight:var(--calcite-font-weight-medium);font-size:var(--calcite-font-size);color:var(--calcite-color-text-1)}.results-heading .results-heading-subtitle{font-size:var(--calcite-font-size--1);color:var(--calcite-color-text-3)}.functions-heading{padding:var(--calcite-spacing-md) var(--calcite-spacing-md) var(--calcite-spacing-xxs) var(--calcite-spacing-md);font-weight:var(--calcite-font-weight-medium);font-size:var(--calcite-font-size);color:var(--calcite-color-text-1)}.no-results-landing{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;margin:var(--calcite-spacing-sm) var(--calcite-spacing-xl) var(--calcite-spacing-xl) var(--calcite-spacing-xl);gap:var(--calcite-spacing-md)}.no-results-landing calcite-icon{margin-bottom:var(--calcite-spacing-sm);--calcite-icon-color: var(--calcite-color-text-3)}.no-results-landing .no-results-heading{font-size:var(--calcite-font-size-2)}.no-results-landing .no-results-description{color:var(--calcite-color-text-3)}`, p = {
16
16
  dirtyAreasDiscovered: -2147208511,
17
17
  noValidControllers: -2147208935
18
18
  };
19
- class E extends $ {
19
+ class R extends F {
20
20
  constructor() {
21
- super(...arguments), this._defaultPopupTemplateEnabled = !0, this._messages = C({ blocking: !0 }), this._elementsWithoutLayer = [], this._featuresComponentRef = L(), this._featuresFromSelectedLayer = [], this._layerIdToFeatures = /* @__PURE__ */ new Map(), this._layerIdToLayer = /* @__PURE__ */ new Map(), this._subtypeCodeToFeatures = /* @__PURE__ */ new Map(), this._sourceIdToElements = /* @__PURE__ */ new Map(), this._unLayers = [], this._compareByFeatureTitle = (e, t) => e.label.localeCompare(t.label, void 0, { numeric: !0 }), this._compareByLayerTitle = ([, e], [, t]) => {
21
+ super(...arguments), this._defaultPopupTemplateEnabled = !0, this._messages = C({ blocking: !0 }), this._elementsWithoutLayer = [], this._featuresFromSelectedLayer = [], this._layerIdToFeatures = /* @__PURE__ */ new Map(), this._layerIdToLayer = /* @__PURE__ */ new Map(), this._subtypeCodeToFeatures = /* @__PURE__ */ new Map(), this._sourceIdToElements = /* @__PURE__ */ new Map(), this._unLayers = [], this._compareByFeatureTitle = (e, t) => e.label.localeCompare(t.label, void 0, { numeric: !0 }), this._compareByLayerTitle = ([, e], [, t]) => {
22
22
  const a = e[0].feature.layer, s = t[0].feature.layer, l = a?.title ?? "", c = s?.title ?? "";
23
23
  return l.localeCompare(c, void 0, { numeric: !0 });
24
24
  }, this._queryFeaturesOnLayer = async ([e, t]) => {
@@ -29,17 +29,21 @@ class E extends $ {
29
29
  }
30
30
  const l = s.createQuery();
31
31
  l.gdbVersion = this.utilityNetwork?.gdbVersion, l.objectIds = t.map((r) => r.objectId), l.outFields = ["*"];
32
- const { features: c } = b.fromJSON(await _(s, l)), n = await Promise.all(c.map(async (r) => {
32
+ const { features: c } = $.fromJSON(await b(s, l)), n = await Promise.all(c.map(async (r) => {
33
33
  r.layer = s.type === "subtype-group" ? s.findSublayerForFeature(r) : s, r.origin = r.layer;
34
34
  const d = r.layer;
35
35
  if (r.getEffectivePopupTemplate(this._defaultPopupTemplateEnabled) || (r.popupTemplate = d.createPopupTemplate()), d && "getFeatureTitle" in d) {
36
- const y = await d.getFeatureTitle(r) || m(r);
37
- return { feature: r, label: y };
36
+ const f = await d.getFeatureTitle(r) || y(r);
37
+ return { feature: r, label: f };
38
38
  }
39
- return { feature: r, label: m(r) };
39
+ return { feature: r, label: y(r) };
40
40
  }));
41
41
  s.type === "subtype-group" ? n.forEach((r) => this._addOrCreateMapValue(this._subtypeCodeToFeatures, r.feature.layer.subtypeCode, r)) : this._layerIdToFeatures.set(a, n);
42
- }, this.aggregatedGeometryGraphicsColor = new v([255, 255, 0, 0.6]), this.hideFeatureResults = !1, this.isElementsSelected = !1, this.layers = [], this.state = "ready", this.traceResultFeatures = [], this.arcgisAggregatedGeometryGraphicsColorChange = o(), this.arcgisHideGraphicsChange = o(), this.arcgisSelectedLayerChange = o(), this.arcgisSelectedResultTypeChange = o(), this.arcgisTraceResultFeaturesReady = o(), this._renderLayerListItem = ([, e]) => {
42
+ }, this._aggregateGeometryRefChange = (e) => {
43
+ e && (this._aggregatedGeometryComponentElement = e);
44
+ }, this._featuresRefChange = (e) => {
45
+ e && (this._featuresComponentElement = e);
46
+ }, this.aggregatedGeometryGraphicsColor = new v([255, 255, 0, 0.6]), this.hideFeatureResults = !1, this.isElementsSelected = !1, this.layers = [], this.state = "ready", this.traceResultFeatures = [], this.autoDestroyDisabled = !1, this.arcgisAggregatedGeometryGraphicsColorChange = o(), this.arcgisHideGraphicsChange = o(), this.arcgisSelectedLayerChange = o(), this.arcgisSelectedResultTypeChange = o(), this.arcgisTraceResultFeaturesReady = o(), this._renderLayerListItem = ([, e]) => {
43
47
  if (!e.length)
44
48
  return null;
45
49
  const t = e[0].feature.layer, a = t?.title || this._messages.unknown;
@@ -50,14 +54,20 @@ class E extends $ {
50
54
  };
51
55
  }
52
56
  static {
53
- this.properties = { aggregatedGeometryGraphicsColor: 0, hideFeatureResults: 5, featuresFromSelectedLayer: 32, isElementsSelected: 5, layers: 0, messageOverrides: 0, referenceElement: 1, selectedFeature: 0, selectedLayer: 0, state: 1, traceConfigTitle: 1, traceError: 0, traceResult: 0, traceResultFeatures: 0, utilityNetwork: 0, view: 0 };
57
+ this.properties = { aggregatedGeometryGraphicsColor: 0, hideFeatureResults: 5, featuresFromSelectedLayer: 32, isElementsSelected: 5, layers: 0, messageOverrides: 0, referenceElement: 1, selectedFeature: 0, selectedLayer: 0, state: 1, traceConfigTitle: 1, traceError: 0, traceResult: 0, traceResultFeatures: 0, utilityNetwork: 0, view: 0, autoDestroyDisabled: 5 };
54
58
  }
55
59
  static {
56
- this.styles = R;
60
+ this.styles = T;
57
61
  }
58
62
  get featuresFromSelectedLayer() {
59
63
  return this._featuresFromSelectedLayer.map(({ feature: e }) => e);
60
64
  }
65
+ clearAggregatedGeometryGraphics() {
66
+ this._aggregatedGeometryComponentElement?.destroy();
67
+ }
68
+ async destroy() {
69
+ this._layerIdToFeatures.clear(), this._subtypeCodeToFeatures.clear(), this._sourceIdToElements.clear(), this._aggregatedGeometryComponentElement?.destroy(), this._featuresComponentElement?.destroy(), await this.manager.destroy();
70
+ }
61
71
  load() {
62
72
  this.traceResult && (this._setSourceIdToElements(), this._loadDependencies().then(() => this._queryTraceResultsFeatures()).then(() => this._loadProjectOperator()).finally(() => {
63
73
  this.arcgisTraceResultFeaturesReady.emit(), this.state = "ready";
@@ -67,7 +77,10 @@ class E extends $ {
67
77
  e.has("isElementsSelected") && this.arcgisSelectedResultTypeChange.emit(), e.has("selectedLayer") && this.arcgisSelectedLayerChange.emit(), e.has("traceResult") && (this.isElementsSelected = !1), (e.has("layers") || e.has("utilityNetwork")) && this._loadDependencies();
68
78
  }
69
79
  loaded() {
70
- this.utilityNetwork || u("warn", this, g("utilityNetwork")), this.layers.length === 0 && u("warn", this, F("layers")), this.view || u("warn", this, g("view"));
80
+ this.utilityNetwork || u("warn", this, m("utilityNetwork")), this.layers.length === 0 && u("warn", this, w("layers")), this.view || u("warn", this, m("view"));
81
+ }
82
+ disconnectedCallback() {
83
+ super.disconnectedCallback(), this._layerIdToLayer.clear();
71
84
  }
72
85
  _addOrCreateMapValue(e, t, a) {
73
86
  const s = e.get(t);
@@ -95,7 +108,7 @@ class E extends $ {
95
108
  }
96
109
  async _loadProjectOperator() {
97
110
  const { aggregatedGeometry: e } = this.traceResult;
98
- e && !h.isLoaded() && await h.load();
111
+ e && !g.isLoaded() && await g.load();
99
112
  }
100
113
  async _queryTraceResultsFeatures() {
101
114
  const e = Array.from(this._sourceIdToElements.entries());
@@ -140,8 +153,8 @@ class E extends $ {
140
153
  if (this.state === "loading")
141
154
  return this._renderGettingResults();
142
155
  if (this.selectedFeature) {
143
- const n = this._featuresComponentRef.value, r = n?.selectedFeature ? [n.selectedFeature] : [this.selectedFeature];
144
- return i`<arcgis-features .referenceElement=${this.referenceElement} .features=${r} .view=${this.view} open .defaultPopupTemplateEnabled=${this._defaultPopupTemplateEnabled} @arcgisClose=${() => this.selectedFeature = void 0} ${T(this._featuresComponentRef)}></arcgis-features>`;
156
+ const n = this._featuresComponentElement, r = n?.selectedFeature ? [n.selectedFeature] : [this.selectedFeature];
157
+ return i`<arcgis-features .referenceElement=${this.referenceElement} .features=${r} .view=${this.view} open .defaultPopupTemplateEnabled=${this._defaultPopupTemplateEnabled} @arcgisClose=${() => this.selectedFeature = void 0} .autoDestroyDisabled=${this.autoDestroyDisabled} ${h(this._featuresRefChange)}></arcgis-features>`;
145
158
  }
146
159
  const c = a.length > 0 && !s.length && !l;
147
160
  return this.hideFeatureResults && c ? this._renderFeaturesAreHidden() : i`<calcite-flow>${c ? null : i`<calcite-flow-item .selected=${!this.isElementsSelected}>${this._renderLanding(t)}</calcite-flow-item>`}<calcite-flow-item .heading=${this._messages.headings.features} .description=${this._messages.headings.totalFeatures.replace("{number}", this.traceResultFeatures.length.toString())} .selected=${(c || this.isElementsSelected) && !this.selectedLayer} @calciteFlowItemBack=${() => this.isElementsSelected = !1}>${this._renderLayerList()}</calcite-flow-item><calcite-flow-item .heading=${this.selectedLayer?.title ?? void 0} .description=${this._messages.headings.totalFeatures.replace("{number}", this._featuresFromSelectedLayer.length.toString())} .selected=${!!this.selectedLayer} @calciteFlowItemBack=${() => this.selectedLayer = void 0}>${this._renderFeaturesList()}</calcite-flow-item></calcite-flow>`;
@@ -154,7 +167,7 @@ class E extends $ {
154
167
  return i`<calcite-panel class="white-panel-background">${this._renderTraceResultsHeading()}${s != null ? this._renderAggregatedGeometry(s) : null}${s != null && !t.length ? this._renderNoSelectableResults() : null}${t.length > 0 ? this.hideFeatureResults ? this._renderFeaturesAreHidden() : this._renderElementsResults() : null}${a.length > 0 ? this._renderFunctionsResults(a) : null}</calcite-panel>`;
155
168
  }
156
169
  _renderAggregatedGeometry(e) {
157
- return i`<div class="aggregated-geometry-container"><arcgis-utility-network-aggregated-geometry .graphicsColor=${this.aggregatedGeometryGraphicsColor} .geometry=${e} .view=${this.view} @arcgisHideGraphicsChange=${this._handleHideGraphicsChange}></arcgis-utility-network-aggregated-geometry><calcite-swatch id=geometry-color-swatch .label=${this._messages.labels.aggregatedGeometryGraphicsColor} .color=${this.aggregatedGeometryGraphicsColor.toCss()}></calcite-swatch><calcite-popover .heading=${this._messages.headings.setColor} .label=${this._messages.headings.setColor} reference-element=geometry-color-swatch closable><calcite-color-picker alpha-channel channels-disabled clearable hex-disabled saved-disabled .value=${this.aggregatedGeometryGraphicsColor} @calciteColorPickerChange=${(t) => {
170
+ return i`<div class="aggregated-geometry-container"><arcgis-utility-network-aggregated-geometry .graphicsColor=${this.aggregatedGeometryGraphicsColor} .geometry=${e} .view=${this.view} @arcgisHideGraphicsChange=${this._handleHideGraphicsChange} .autoDestroyDisabled=${this.autoDestroyDisabled} ${h(this._aggregateGeometryRefChange)}></arcgis-utility-network-aggregated-geometry><calcite-swatch id=geometry-color-swatch .label=${this._messages.labels.aggregatedGeometryGraphicsColor} .color=${this.aggregatedGeometryGraphicsColor.toCss()}></calcite-swatch><calcite-popover .heading=${this._messages.headings.setColor} .label=${this._messages.headings.setColor} reference-element=geometry-color-swatch closable><calcite-color-picker alpha-channel channels-disabled clearable hex-disabled saved-disabled .value=${this.aggregatedGeometryGraphicsColor} @calciteColorPickerChange=${(t) => {
158
171
  const a = t.target.value;
159
172
  this.arcgisAggregatedGeometryGraphicsColorChange.emit(a);
160
173
  }}></calcite-color-picker></calcite-popover></div>`;
@@ -203,7 +216,7 @@ class E extends $ {
203
216
  return i`<calcite-panel class="white-panel-background">${this._renderTraceResultsHeading()}<div class="no-results-landing"><calcite-icon icon=utility-network-trace scale=l></calcite-icon><div class="no-results-heading">${this._messages.noTraceConfigHeading}</div><div class="no-results-description">${this._messages.noTraceConfigDescription}</div></div></calcite-panel>`;
204
217
  }
205
218
  }
206
- f("arcgis-utility-network-trace-results", E);
219
+ _("arcgis-utility-network-trace-results", R);
207
220
  export {
208
- E as ArcgisUtilityNetworkTraceResults
221
+ R as ArcgisUtilityNetworkTraceResults
209
222
  };