@arcgis/map-components 5.1.0-next.82 → 5.1.0-next.83

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 (82) hide show
  1. package/dist/cdn/{W5HIRRIH.js → 3ILSWQHC.js} +1 -1
  2. package/dist/cdn/{FDR2SJBL.js → 5SWQQWAZ.js} +1 -1
  3. package/dist/cdn/5UBX7NJZ.js +2 -0
  4. package/dist/cdn/6BESCJK6.js +2 -0
  5. package/dist/cdn/{FJ56R364.js → 6ECAKVHP.js} +1 -1
  6. package/dist/cdn/{KMLZW2K6.js → 6V7YOGR4.js} +1 -1
  7. package/dist/cdn/7752ICPP.js +2 -0
  8. package/dist/cdn/{J3EVRJDN.js → 7EBEAMCO.js} +1 -1
  9. package/dist/cdn/{LDCRZTCS.js → 7VOC4SRD.js} +1 -1
  10. package/dist/cdn/{254JE3ZB.js → A6P7RDWG.js} +1 -1
  11. package/dist/cdn/{LZEEYR7V.js → AQ77FNME.js} +2 -2
  12. package/dist/cdn/{UYQLS6YT.js → AW7QBRKJ.js} +1 -1
  13. package/dist/cdn/{IJ4FLOVC.js → CQ7BRDZC.js} +1 -1
  14. package/dist/cdn/{2HUI7DKS.js → CZKMCZP6.js} +1 -1
  15. package/dist/cdn/{WRSMGKLR.js → DTRSQHPV.js} +1 -1
  16. package/dist/cdn/{OZFNTMYH.js → E33LBHQA.js} +1 -1
  17. package/dist/cdn/{4XFY3WOK.js → F7UR4A5G.js} +1 -1
  18. package/dist/cdn/{3ST3R6TY.js → FMTWGY6C.js} +1 -1
  19. package/dist/cdn/{NNMPXVST.js → G4QTXMBQ.js} +1 -1
  20. package/dist/cdn/{W3OI3KIT.js → GCFIJLPC.js} +1 -1
  21. package/dist/cdn/GPU57C3Y.js +2 -0
  22. package/dist/cdn/{YKQI2WN5.js → GVYS3KF5.js} +1 -1
  23. package/dist/cdn/IFMQCWXY.js +2 -0
  24. package/dist/cdn/{TF7MXQLD.js → JT5PIQU5.js} +1 -1
  25. package/dist/cdn/{7F7JJMKX.js → K6DM6L64.js} +1 -1
  26. package/dist/cdn/{ZECK2VWO.js → K7IUUDPU.js} +1 -1
  27. package/dist/cdn/{W42FYJ5N.js → L3OVLVI3.js} +1 -1
  28. package/dist/cdn/{GXOC3E43.js → NGAZTR7Y.js} +1 -1
  29. package/dist/cdn/{VO26UGWY.js → OSKVGOGF.js} +1 -1
  30. package/dist/cdn/{LZPNTVQS.js → PLVNROBW.js} +1 -1
  31. package/dist/cdn/{R6AZRDBD.js → PQSRQNWY.js} +1 -1
  32. package/dist/cdn/{4LQLSE44.js → QCWXVSVT.js} +1 -1
  33. package/dist/cdn/{EFTBQLWG.js → R643Q3PN.js} +1 -1
  34. package/dist/cdn/{JYOARMEB.js → RHK3OQ5J.js} +1 -1
  35. package/dist/cdn/{EFPJ2MPR.js → TEDPQX2I.js} +1 -1
  36. package/dist/cdn/{DU2RY2NR.js → V6F3SIA2.js} +1 -1
  37. package/dist/cdn/{HAABWT7S.js → VEVJEIFK.js} +1 -1
  38. package/dist/cdn/{VAJP7Z3Y.js → VFIPW22C.js} +1 -1
  39. package/dist/cdn/{WCUAC5AB.js → VQ7UIUFE.js} +1 -1
  40. package/dist/cdn/{2AQAVHMV.js → WKA6U2M7.js} +1 -1
  41. package/dist/cdn/{SRBNKXRD.js → X5PGXXNB.js} +1 -1
  42. package/dist/cdn/{TU7J33HU.js → ZYKCW3VZ.js} +1 -1
  43. package/dist/cdn/assets/features/t9n/messages.en.json +1 -1
  44. package/dist/cdn/assets/utility-network-validate-network-topology/t9n/messages.en.json +1 -0
  45. package/dist/cdn/index.js +1 -1
  46. package/dist/cdn/main.css +1 -1
  47. package/dist/chunks/action-utils.js +53 -78
  48. package/dist/chunks/feature-utils.js +3 -6
  49. package/dist/chunks/slots.js +1 -1
  50. package/dist/components/arcgis-aggregated-features/customElement.js +144 -0
  51. package/dist/components/arcgis-aggregated-features/index.js +6 -0
  52. package/dist/components/arcgis-directions/customElement.js +1 -1
  53. package/dist/components/arcgis-feature/customElement.js +1 -1
  54. package/dist/components/arcgis-feature-attachments/customElement.js +8 -8
  55. package/dist/components/arcgis-feature-table/customElement.d.ts +1 -1
  56. package/dist/components/arcgis-feature-table/customElement.js +1 -1
  57. package/dist/components/arcgis-features/customElement.d.ts +17 -8
  58. package/dist/components/arcgis-features/customElement.js +125 -108
  59. package/dist/components/arcgis-features/index.js +1 -0
  60. package/dist/components/arcgis-home/customElement.js +4 -4
  61. package/dist/components/arcgis-layer-list-new/layer-list-item/customElement.js +1 -1
  62. package/dist/components/arcgis-oriented-imagery-viewer/customElement.d.ts +24 -1
  63. package/dist/components/arcgis-oriented-imagery-viewer/customElement.js +13 -10
  64. package/dist/components/arcgis-utility-network-validate-network-topology/customElement.d.ts +173 -0
  65. package/dist/components/arcgis-utility-network-validate-network-topology/customElement.js +208 -0
  66. package/dist/components/arcgis-utility-network-validate-network-topology/index.d.ts +1 -0
  67. package/dist/components/arcgis-utility-network-validate-network-topology/index.js +9 -0
  68. package/dist/docs/api.json +1 -1
  69. package/dist/docs/docs.json +1 -1
  70. package/dist/docs/vscode.html-custom-data.json +1 -1
  71. package/dist/docs/web-types.json +1 -1
  72. package/dist/index.d.ts +10 -0
  73. package/dist/loader.js +3 -1
  74. package/dist/types/lumina.d.ts +9 -1
  75. package/dist/types/preact.d.ts +10 -1
  76. package/dist/types/react.d.ts +11 -1
  77. package/dist/types/stencil.d.ts +9 -1
  78. package/dist/utils/async-utils.d.ts +3 -0
  79. package/package.json +5 -5
  80. package/dist/cdn/MT4BQEER.js +0 -2
  81. package/dist/cdn/SE77TIOS.js +0 -2
  82. package/dist/cdn/UZIVX6VP.js +0 -2
@@ -1,43 +1,48 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
2
  import { c as L } from "../../chunks/runtime.js";
3
- import { css as O, html as o } from "lit";
4
- import { keyed as $ } from "lit/directives/keyed.js";
5
- import B from "@arcgis/core/popup/Features.js";
6
- import { u as R } from "../../chunks/useT9n.js";
7
- import { classes as C } from "@arcgis/toolkit/dom";
8
- import { usePropertyChange as S, bypassReadOnly as T } from "@arcgis/lumina/controllers";
9
- import { m as P } from "../../chunks/useViewModel.js";
10
- import { LitElement as H, createEvent as y, renderElement as z, nothing as c, safeClassMap as A } from "@arcgis/lumina";
11
- import { substitute as d, formatNumber as _ } from "@arcgis/core/intl.js";
3
+ import { css as B, html as n } from "lit";
4
+ import { keyed as M } from "lit/directives/keyed.js";
5
+ import N from "@arcgis/core/support/actions/ActionButton.js";
6
+ import x from "@arcgis/core/core/Collection.js";
7
+ import R from "@arcgis/core/popup/Features.js";
8
+ import { LitElement as O, createEvent as $, renderElement as S, nothing as g, safeClassMap as C } from "@arcgis/lumina";
9
+ import { usePropertyChange as z, bypassReadOnly as T } from "@arcgis/lumina/controllers";
10
+ import { classes as A } from "@arcgis/toolkit/dom";
11
+ import { createRef as f, ref as p } from "lit/directives/ref.js";
12
+ import { g as P } from "../../chunks/feature-utils.js";
13
+ import { initializeProjection as H } from "@arcgis/core/applications/Components/featureUtils.js";
14
+ import { t as V, z as Z } from "../../chunks/action-utils.js";
15
+ import { m as U } from "../../chunks/useViewModel.js";
16
+ import { renderingSanitizer as v } from "@arcgis/core/applications/Components/sanitizerUtils.js";
17
+ import { stripHTML as y } from "@arcgis/core/applications/Components/stringUtils.js";
18
+ import { substitute as h, formatNumber as w } from "@arcgis/core/intl.js";
19
+ import { u as j } from "../../chunks/useT9n.js";
12
20
  import { watch as l } from "@arcgis/core/core/reactiveUtils.js";
13
- import { b as V, t as U, z as Z, a as j } from "../../chunks/action-utils.js";
14
- import { stripHTML as I } from "@arcgis/core/applications/Components/stringUtils.js";
15
- import k from "@arcgis/core/core/Collection.js";
16
- import { a as G } from "../../chunks/feature-utils.js";
17
- import { renderingSanitizer as m } from "@arcgis/core/applications/Components/sanitizerUtils.js";
18
- import { initializeProjection as K } from "@arcgis/core/applications/Components/featureUtils.js";
19
- import { createRef as w, ref as v } from "lit/directives/ref.js";
20
- const q = O`:host{display:flex;overflow:hidden;flex:1 1 auto}.root{--calcite-color-background: var(--calcite-color-foreground-1);display:flex;overflow:hidden;flex:1 1 auto;flex-direction:column}.root img{image-orientation:from-image}.flow-item-collapsed{--calcite-flow-item-header-border-block-end: none}.container{display:flex;flex:1 1 auto;background-color:var(--calcite-color-foreground-1)}.container calcite-list{width:100%}.container:not(:empty){padding:var(--arcgis-internal-padding-md, var(--calcite-spacing-md))}.root .arcgis-feature,.root .arcgis-feature-relationship,.root .arcgis-feature-utility-network-associations{background-color:transparent}.heading{word-break:break-word;word-wrap:break-word}.header,.footer{display:flex;align-items:center;justify-content:flex-end;background-color:var(--calcite-color-foreground-1)}.footer{flex:1}.pagination-text{padding-inline:var(--calcite-spacing-sm);color:var(--calcite-color-text-3);font-size:var(--calcite-font-size-sm)}.loader{align-self:center;padding-inline:var(--calcite-spacing-lg)}.pagination-action-bar{flex:1}.pagination-menu-button{padding-inline:var(--calcite-spacing-xxs);border-inline-start:var(--calcite-border-width-sm) solid var(--calcite-color-border-3)}.icon{display:inline-block;flex:0 0 var(--calcite-spacing-lg);width:var(--calcite-spacing-lg);height:var(--calcite-spacing-lg)}.action-image{flex:0 0 var(--calcite-spacing-lg);background-position:50% 50%;background-repeat:no-repeat;background-size:contain;width:var(--calcite-spacing-lg);height:var(--calcite-spacing-lg)}.header{border-block-end:var(--calcite-border-width-sm) solid var(--calcite-color-border-3)}.content-feature{--calcite-flow-item-footer-padding: 0}.feature-menu-observer{position:relative;bottom:var(--calcite-spacing-xxl);z-index:2;text-align:center}.action-exit{transform:scaleX(-1)}`, F = j.clone();
21
- function W(x) {
22
- return x?.declaredClass.startsWith("esri.layers.") ?? !1;
21
+ const G = B`:host{display:flex;overflow:hidden;flex:1 1 auto}.root{--calcite-color-background: var(--calcite-color-foreground-1);display:flex;overflow:hidden;flex:1 1 auto;flex-direction:column}.root img{image-orientation:from-image}.flow-item-collapsed{--calcite-flow-item-header-border-block-end: none}.container{display:flex;flex:1 1 auto;background-color:var(--calcite-color-foreground-1)}.container calcite-list{width:100%}.container:not(:empty){padding:var(--arcgis-internal-padding-md, var(--calcite-spacing-md))}.root .arcgis-feature,.root .arcgis-feature-relationship,.root .arcgis-feature-utility-network-associations{background-color:transparent}.heading{word-break:break-word;word-wrap:break-word}.header,.footer{display:flex;align-items:center;justify-content:flex-end;background-color:var(--calcite-color-foreground-1)}.footer{flex:1}.pagination-text{padding-inline:var(--calcite-spacing-sm);color:var(--calcite-color-text-3);font-size:var(--calcite-font-size-sm)}.loader{align-self:center;padding-inline:var(--calcite-spacing-lg)}.pagination-action-bar{flex:1}.pagination-menu-button{padding-inline:var(--calcite-spacing-xxs);border-inline-start:var(--calcite-border-width-sm) solid var(--calcite-color-border-3)}.icon{display:inline-block;flex:0 0 var(--calcite-spacing-lg);width:var(--calcite-spacing-lg);height:var(--calcite-spacing-lg)}.action-image{flex:0 0 var(--calcite-spacing-lg);background-position:50% 50%;background-repeat:no-repeat;background-size:contain;width:var(--calcite-spacing-lg);height:var(--calcite-spacing-lg)}.header{border-block-end:var(--calcite-border-width-sm) solid var(--calcite-color-border-3)}.content-feature{--calcite-flow-item-footer-padding: 0}.feature-menu-observer{position:relative;bottom:var(--calcite-spacing-xxl);z-index:2;text-align:center}.action-exit{transform:scaleX(-1)}`;
22
+ function K(I) {
23
+ return I?.declaredClass.startsWith("esri.layers.") ?? !1;
23
24
  }
24
- const X = P(B);
25
- class J extends H {
25
+ const q = U(R);
26
+ class W extends O {
26
27
  constructor() {
27
- super(...arguments), this._fetchFeaturesController = null, this._featureMenuIntersectionObserverCallback = ([e]) => {
28
+ super(...arguments), this._zoomToFeature = new N({
29
+ icon: "magnifying-glass-plus",
30
+ id: "zoom-to-feature",
31
+ title: "{messages.zoom}"
32
+ }), this._fetchFeaturesController = null, this._featureMenuIntersectionObserverCallback = ([e]) => {
28
33
  e?.isIntersecting && this.viewModel.featurePage != null && this.viewModel.featurePage++;
29
34
  }, this._featureMenuIntersectionObserver = new IntersectionObserver(this._featureMenuIntersectionObserverCallback, {
30
35
  root: window.document
31
- }), this._featureMenuIntersectionObserverNode = null, this._rootFlowItemNode = w(), this._featureMenuViewportNode = w(), this._actionBarMenuNode = w(), this._flowContainerNode = w(), this.messages = R(), this._selectedFeatureComponent = w(), this._cancelOpenRelatedFeature = () => {
36
+ }), this._featureMenuIntersectionObserverNode = null, this._rootFlowItemNode = f(), this._featureMenuViewportNode = f(), this._actionBarMenuNode = f(), this._flowContainerNode = f(), this.messages = j(), this._selectedFeatureComponent = f(), this._cancelOpenRelatedFeature = () => {
32
37
  const { _openRelatedFeatureAbortController: e } = this;
33
38
  e && e.abort(), this._openRelatedFeatureAbortController = null;
34
- }, this._openRelatedFeatureAbortController = null, this.flowItems = new k(), this.viewModel = X(this), this.actions = this.viewModel.actions, this.active = this.viewModel.active, this.autoDestroyDisabled = !1, this.collapsed = !1, this.content = this.viewModel.content, this.defaultPopupTemplateEnabled = this.viewModel.defaultPopupTemplateEnabled, this.featureCount = this.viewModel.featureCount, this.featureMenuOpen = !1, this.featureNavigationTop = !1, this.features = this.viewModel.features, this.featuresPerPage = this.viewModel.featuresPerPage, this.featureItemAbilities = this.viewModel.featureItemAbilities, this.goToOverride = this.viewModel.goToOverride, this.headerActions = new k(), this.heading = this.viewModel.heading, this.headingLevel = 2, this.hideActionBar = !1, this.hideCloseButton = !1, this.hideFeatureMenuHeading = !1, this.hideFeatureNavigation = !1, this.hideFeatureListLayerTitle = !1, this.hideHeading = !1, this.hideSelectFeature = !1, this.hideSpinner = !1, this.hideContent = !1, this.chartAnimationDisabled = this.viewModel.featureItemAbilities?.chartAnimation, this.hideAttachmentsContent = this.viewModel.featureItemAbilities?.attachmentsContent, this.hideCustomContent = this.viewModel.featureItemAbilities?.customContent, this.hideExpressionContent = !1, this.hideFieldsContent = this.viewModel.featureItemAbilities?.fieldsContent, this.hideMediaContent = this.viewModel.featureItemAbilities?.mediaContent, this.hideRelationshipContent = this.viewModel.featureItemAbilities?.relationshipContent, this.hideTextContent = this.viewModel.featureItemAbilities?.textContent, this.hideUtilityNetworkContent = this.viewModel.featureItemAbilities?.utilityNetworkAssociationsContent, this.hideLastEditedInfo = !1, this.highlightDisabled = this.viewModel.highlightEnabled, this.includeDefaultActionsDisabled = this.viewModel.includeDefaultActions, this.initialDisplayMode = this.viewModel.initialDisplayMode, this.location = this.viewModel.location, this.map = this.viewModel.map, this.open = this.viewModel.open, this.promises = this.viewModel.promises, this.responsiveActionsEnabled = !1, this.selectedFeature = this.viewModel.selectedFeature, this.selectedFeatureIndex = this.viewModel.selectedFeatureIndex, this.showCollapseButton = !1, this.spatialReference = this.viewModel.spatialReference, this.state = this.viewModel.state, this.timeZone = this.viewModel.timeZone, this.updateLocationEnabled = this.viewModel.updateLocationEnabled, this.view = this.viewModel.view, this.arcgisPropertyChange = S()("active", "collapsed", "featureCount", "featureMenuOpen", "features", "promises", "selectedDrillInFeature", "selectedFeature", "selectedFeatureComponent", "selectedFeatureIndex", "state", "open"), this.arcgisReady = y(), this.arcgisClose = y(), this.arcgisTriggerAction = y();
39
+ }, this._openRelatedFeatureAbortController = null, this.flowItems = new x(), this._aggregatedFeatureCount = 0, this._aggregatedFeaturesLoading = !1, this.viewModel = q(this), this.actions = this.viewModel.actions, this.active = this.viewModel.active, this.autoDestroyDisabled = !1, this.collapsed = !1, this.content = this.viewModel.content, this.defaultPopupTemplateEnabled = this.viewModel.defaultPopupTemplateEnabled, this.featureCount = this.viewModel.featureCount, this.featureMenuOpen = !1, this.featureNavigationTop = !1, this.features = this.viewModel.features, this.featuresPerPage = this.viewModel.featuresPerPage, this.featureItemAbilities = this.viewModel.featureItemAbilities, this.goToOverride = this.viewModel.goToOverride, this.headerActions = new x(), this.heading = this.viewModel.heading, this.headingLevel = 2, this.hideActionBar = !1, this.hideCloseButton = !1, this.hideFeatureMenuHeading = !1, this.hideFeatureNavigation = !1, this.hideFeatureListLayerTitle = !1, this.hideHeading = !1, this.hideSelectFeature = !1, this.hideSpinner = !1, this.hideContent = !1, this.chartAnimationDisabled = this.viewModel.featureItemAbilities?.chartAnimation, this.hideAttachmentsContent = this.viewModel.featureItemAbilities?.attachmentsContent, this.hideCustomContent = this.viewModel.featureItemAbilities?.customContent, this.hideExpressionContent = !1, this.hideFieldsContent = this.viewModel.featureItemAbilities?.fieldsContent, this.hideMediaContent = this.viewModel.featureItemAbilities?.mediaContent, this.hideRelationshipContent = this.viewModel.featureItemAbilities?.relationshipContent, this.hideTextContent = this.viewModel.featureItemAbilities?.textContent, this.hideUtilityNetworkContent = this.viewModel.featureItemAbilities?.utilityNetworkAssociationsContent, this.hideLastEditedInfo = !1, this.highlightDisabled = this.viewModel.highlightEnabled, this.includeDefaultActionsDisabled = this.viewModel.includeDefaultActions, this.initialDisplayMode = this.viewModel.initialDisplayMode, this.location = this.viewModel.location, this.map = this.viewModel.map, this.open = this.viewModel.open, this.promises = this.viewModel.promises, this.responsiveActionsEnabled = !1, this.selectedFeature = this.viewModel.selectedFeature, this.selectedFeatureIndex = this.viewModel.selectedFeatureIndex, this.showCollapseButton = !1, this.spatialReference = this.viewModel.spatialReference, this.state = this.viewModel.state, this.timeZone = this.viewModel.timeZone, this.updateLocationEnabled = this.viewModel.updateLocationEnabled, this.view = this.viewModel.view, this.arcgisPropertyChange = z()("active", "collapsed", "featureCount", "featureMenuOpen", "features", "promises", "selectedDrillInFeature", "selectedFeature", "selectedFeatureComponent", "selectedFeatureIndex", "state", "open"), this.arcgisReady = $(), this.arcgisClose = $(), this.arcgisTriggerAction = $();
35
40
  }
36
41
  static {
37
- this.properties = { _openRelatedFeatureAbortController: 16, flowItems: 16, _hideActionText: 16, _featureNavigationVisible: 16, _isCollapsed: 16, _collapseEnabled: 16, _featureFlowItemSelected: 16, viewModel: 0, actions: 0, active: 0, autoDestroyDisabled: 5, collapsed: 5, content: 1, defaultPopupTemplateEnabled: 5, featureCount: 9, featureMenuOpen: 5, featureMenuTitle: 1, featureNavigationTop: 5, features: 0, featuresPerPage: 9, featureItemAbilities: 0, goToOverride: 0, headerActions: 0, heading: 1, headingLevel: 9, hideActionBar: 5, hideCloseButton: 5, hideFeatureMenuHeading: 5, hideFeatureNavigation: 5, hideFeatureListLayerTitle: 5, hideHeading: 5, hideSelectFeature: 5, hideSpinner: 5, hideContent: 5, chartAnimationDisabled: 5, hideAttachmentsContent: 5, hideCustomContent: 5, hideExpressionContent: 5, hideFieldsContent: 5, hideMediaContent: 5, hideRelationshipContent: 5, hideTextContent: 5, hideUtilityNetworkContent: 5, hideLastEditedInfo: 5, highlightDisabled: 5, icon: 1, includeDefaultActionsDisabled: 5, initialDisplayMode: 1, label: 1, location: 0, map: 0, messageOverrides: 0, open: 5, referenceElement: 1, promises: 0, responsiveActionsEnabled: 5, selectedDrillInFeature: 32, selectedFeature: 0, selectedFeatureComponent: 32, selectedFeatureIndex: 9, showCollapseButton: 5, spatialReference: 0, state: 32, timeZone: 1, updateLocationEnabled: 5, view: 0 };
42
+ this.properties = { _openRelatedFeatureAbortController: 16, flowItems: 16, _aggregatedFeatureCount: 16, _aggregatedFeaturesLoading: 16, _hideActionText: 16, _featureNavigationVisible: 16, _isCollapsed: 16, _collapseEnabled: 16, _featureFlowItemSelected: 16, viewModel: 0, actions: 0, active: 0, autoDestroyDisabled: 5, collapsed: 5, content: 1, defaultPopupTemplateEnabled: 5, featureCount: 9, featureMenuOpen: 5, featureMenuTitle: 1, featureNavigationTop: 5, features: 0, featuresPerPage: 9, featureItemAbilities: 0, goToOverride: 0, headerActions: 0, heading: 1, headingLevel: 9, hideActionBar: 5, hideCloseButton: 5, hideFeatureMenuHeading: 5, hideFeatureNavigation: 5, hideFeatureListLayerTitle: 5, hideHeading: 5, hideSelectFeature: 5, hideSpinner: 5, hideContent: 5, chartAnimationDisabled: 5, hideAttachmentsContent: 5, hideCustomContent: 5, hideExpressionContent: 5, hideFieldsContent: 5, hideMediaContent: 5, hideRelationshipContent: 5, hideTextContent: 5, hideUtilityNetworkContent: 5, hideLastEditedInfo: 5, highlightDisabled: 5, icon: 1, includeDefaultActionsDisabled: 5, initialDisplayMode: 1, label: 1, location: 0, map: 0, messageOverrides: 0, open: 5, referenceElement: 1, promises: 0, responsiveActionsEnabled: 5, selectedDrillInFeature: 32, selectedFeature: 0, selectedFeatureComponent: 32, selectedFeatureIndex: 9, showCollapseButton: 5, spatialReference: 0, state: 32, timeZone: 1, updateLocationEnabled: 5, view: 0 };
38
43
  }
39
44
  static {
40
- this.styles = q;
45
+ this.styles = G;
41
46
  }
42
47
  get _hideActionText() {
43
48
  if (!this.responsiveActionsEnabled)
@@ -68,14 +73,14 @@ class J extends H {
68
73
  }
69
74
  async fetchFeatures(e, t) {
70
75
  this._cancelFetchingFeatures();
71
- const { signal: i } = t ?? {}, s = new AbortController(), { signal: a } = s, n = i ? AbortSignal.any([a, i]) : a;
72
- if (this._fetchFeaturesController = s, !e && this.view && this.location && (await K(this.location.spatialReference, this.view.spatialReference, null, {
73
- signal: n
76
+ const { signal: i } = t ?? {}, a = new AbortController(), { signal: s } = a, o = i ? AbortSignal.any([s, i]) : s;
77
+ if (this._fetchFeaturesController = a, !e && this.view && this.location && (await H(this.location.spatialReference, this.view.spatialReference, null, {
78
+ signal: o
74
79
  }), e = this.view.toScreen(this.location) ?? void 0), !e)
75
80
  return;
76
81
  const r = await this.viewModel.fetchFeatures(e, {
77
82
  ...t,
78
- signal: n
83
+ signal: o
79
84
  });
80
85
  this.location = r.location, this.promises = r.pendingFeatures;
81
86
  }
@@ -90,12 +95,12 @@ class J extends H {
90
95
  }
91
96
  async triggerAction(e) {
92
97
  if (!e.disabled)
93
- return e?.type === "toggle" && (e.value = !e.value), e?.id === V.id && (this.featureMenuOpen = !1), await U(e, this.viewModel);
98
+ return e?.type === "toggle" && (e.value = !e.value), await V(e, this.viewModel);
94
99
  }
95
100
  loaded() {
96
101
  this.manager.onLifecycle(() => [
97
102
  l(() => this.viewModel?.selectedFeatureIndex, (e, t) => this._selectedFeatureIndexUpdated(e, t)),
98
- l(() => this.viewModel?.view, () => this._viewChange()),
103
+ l(() => this.viewModel?.view, (e, t) => t && this._viewChange()),
99
104
  l(() => this._spinnerEl?.screenLocation, () => this._closeOpenActionMenu()),
100
105
  l(() => this.selectedFeatureComponent?.viewModel, () => this._removeFlowItems()),
101
106
  l(() => this.viewModel?.featureItems, () => this._featureMenuViewportScrollTop()),
@@ -106,16 +111,13 @@ class J extends H {
106
111
  l(() => [this.flowItems?.length, this.featureMenuOpen], () => {
107
112
  this.setFocus();
108
113
  }),
114
+ l(() => this.viewModel.aggregatedFeaturesEnabled, (e) => {
115
+ e || (this._aggregatedFeatureCount = 0, this._aggregatedFeaturesLoading = !1, this._removeFlowItems());
116
+ }),
109
117
  l(() => this.referenceElement, (e, t) => {
110
118
  this._destroySpinner(t), this._createSpinner();
111
119
  }, { initial: !0 }),
112
- l(() => [
113
- this.hideSpinner,
114
- this.viewModel?.view,
115
- this.viewModel?.location,
116
- this.viewModel?.waitingForResult,
117
- this.viewModel?.view
118
- ], () => {
120
+ l(() => [this.hideSpinner, this.viewModel?.view, this.viewModel?.location, this.viewModel?.waitingForResult], () => {
119
121
  this._createSpinner();
120
122
  }, { initial: !0 })
121
123
  ]);
@@ -133,11 +135,11 @@ class J extends H {
133
135
  _groupResultsByLayer() {
134
136
  const { featureItems: e } = this.viewModel, t = /* @__PURE__ */ new Map();
135
137
  return e.forEach((i) => {
136
- const s = i?.graphic;
137
- if (!s)
138
+ const a = i?.graphic;
139
+ if (!a)
138
140
  return;
139
- const a = G(s), n = W(a) ? a : null, r = t.get(n) ?? [];
140
- t.set(n, [...r, i]);
141
+ const s = P(a), o = K(s) ? s : null, r = t.get(o) ?? [];
142
+ t.set(o, [...r, i]);
141
143
  }), t;
142
144
  }
143
145
  _handleCollapseToggle() {
@@ -146,13 +148,20 @@ class J extends H {
146
148
  async _openRelatedFeature(e) {
147
149
  this._cancelOpenRelatedFeature();
148
150
  const t = new AbortController();
149
- this._openRelatedFeatureAbortController = t, await e.updateGeometry();
150
- const i = e.graphic, s = i?.geometry;
151
- if (s == null || i == null)
151
+ if (this._openRelatedFeatureAbortController = t, await e.updateGeometry(), this._openRelatedFeatureAbortController !== t)
152
+ return;
153
+ const i = e.graphic, a = i?.geometry;
154
+ if (a == null || i == null) {
155
+ this._openRelatedFeatureAbortController === t && (this._openRelatedFeatureAbortController = null);
156
+ return;
157
+ }
158
+ if (this._removeFlowItems(), await this.viewModel.zoomTo({ target: a }), this._openRelatedFeatureAbortController !== t)
152
159
  return;
153
- this._removeFlowItems(), await this.viewModel.zoomTo({ target: s });
154
- const n = (await import("@arcgis/core/geometry/operators/labelPointOperator.js")).execute(s);
155
- n != null && (this.location = n), this.features = [i], this.open = !0, await this.setFocus(), this._openRelatedFeatureAbortController === t && (this._openRelatedFeatureAbortController = null);
160
+ const s = await import("@arcgis/core/geometry/operators/labelPointOperator.js");
161
+ if (this._openRelatedFeatureAbortController !== t)
162
+ return;
163
+ const o = s.execute(a);
164
+ o != null && (this.location = o), this.features = [i], this.open = !0, await this.setFocus(), this._openRelatedFeatureAbortController === t && (this._openRelatedFeatureAbortController = null);
156
165
  }
157
166
  _handlePaginationMenuButton() {
158
167
  this._updateFeatureMenu();
@@ -195,32 +204,35 @@ class J extends H {
195
204
  this._unobserveFeatureMenuObserver(), e && this._featureMenuIntersectionObserver.observe(e), this._featureMenuIntersectionObserverNode = e;
196
205
  }
197
206
  _getActionTitle(e) {
198
- const { messages: t, selectedFeature: i } = this, { id: s } = e, a = i?.attributes, n = e.title ?? "", r = s === "zoom-to-feature" ? d(n, { messages: t }) : s === "remove-selected-feature" ? d(n, { messages: t }) : s === "zoom-to-clustered-features" ? d(n, { messages: t }) : s === "browse-clustered-features" ? d(n, { messages: t }) : e.title;
199
- return r && a ? d(r, a) : r ?? "";
207
+ const { messages: t, selectedFeature: i } = this, { id: a } = e, s = i?.attributes, o = e.title ?? "", r = a === "zoom-to-feature" ? h(o, { messages: t }) : a === "remove-selected-feature" ? h(o, { messages: t }) : a === "zoom-to-clustered-features" ? h(o, { messages: t }) : a === "browse-aggregated-features" ? h(o, { messages: t }) : e.title;
208
+ return r && s ? h(r, s) : r ?? "";
200
209
  }
201
210
  _onMainKeydown(e) {
202
211
  const { key: t } = e;
203
212
  t === "ArrowLeft" && (e.stopPropagation(), this._handleFeatureMenuBack(), this.previous(), this.setFocus()), t === "ArrowRight" && (e.stopPropagation(), this._handleFeatureMenuBack(), this.next(), this.setFocus());
204
213
  }
205
214
  _featureMenuViewportScrollTop() {
206
- this._featureMenuViewportNode && this._featureMenuViewportNode.value?.scrollContentTo({ top: 0 });
215
+ this._featureMenuViewportNode.value?.scrollContentTo({ top: 0 });
207
216
  }
208
217
  _selectedFeatureIndexUpdated(e, t) {
209
- const { featureCount: i, waitingForResult: s } = this.viewModel;
210
- s || !i || e === t || e === -1 || (this._removeFlowItems(), this._rootFlowItemNode.value?.scrollContentTo({ top: 0 }));
218
+ const { featureCount: i, waitingForResult: a } = this.viewModel;
219
+ a || !i || e === t || e === -1 || (this._aggregatedFeatureCount = 0, this._removeFlowItems(), this._rootFlowItemNode.value?.scrollContentTo({ top: 0 }));
211
220
  }
212
221
  _triggerAction(e) {
213
222
  this.triggerAction(e), this.arcgisTriggerAction.emit({ action: e });
214
223
  }
215
224
  _viewChange() {
216
- this.viewModel.clear(), this.open = !1;
225
+ this.viewModel.clear(), this.open = !1, this._aggregatedFeatureCount = 0, this._removeFlowItems();
226
+ }
227
+ _handleAggregatedFeaturesPropertyChange({ detail: e, target: t }) {
228
+ e.name === "aggregatedFeatureCount" && (this._aggregatedFeatureCount = t.aggregatedFeatureCount), e.name === "loading" && (this._aggregatedFeaturesLoading = t.loading);
217
229
  }
218
230
  _closeOpenActionMenu() {
219
231
  const { _actionBarMenuNode: e } = this;
220
232
  e.value && (e.value.menuOpen = !1);
221
233
  }
222
234
  _removeFlowItems() {
223
- this.flowItems?.destroyAll();
235
+ this.viewModel.aggregatedFeaturesEnabled = !1, this.flowItems?.destroyAll();
224
236
  }
225
237
  _getDrillInFlowItemDescription(e) {
226
238
  switch (e.flowType) {
@@ -245,10 +257,10 @@ class J extends H {
245
257
  }
246
258
  async _createSpinner() {
247
259
  const e = this.referenceElement;
248
- e && (await this._destroySpinner(e), this._spinnerEl = z(o`<arcgis-spinner auto-destroy-disabled .label=${this.messages.loading ?? ""} .trackLocation=${!this.hideSpinner && this.viewModel?.waitingForResult} .location=${this.viewModel?.location ?? void 0} .view=${this.viewModel?.view ?? void 0}></arcgis-spinner>`), e.manager?.component?.extraContent?.add(this._spinnerEl));
260
+ e && (await this._destroySpinner(e), this._spinnerEl = S(n`<arcgis-spinner auto-destroy-disabled .label=${this.messages.loading ?? ""} .trackLocation=${!this.hideSpinner && this.viewModel?.waitingForResult} .location=${this.viewModel?.location ?? void 0} .view=${this.viewModel?.view ?? void 0}></arcgis-spinner>`), e.manager?.component?.extraContent?.add(this._spinnerEl));
249
261
  }
250
262
  render() {
251
- return o`<div class="root" @keydown=${this._onMainKeydown}>${this._renderHeader()}${this._renderContentContainer()}</div>`;
263
+ return n`<div class="root" @keydown=${this._onMainKeydown}>${this._renderHeader()}${this._renderContentContainer()}</div>`;
252
264
  }
253
265
  _renderFeatureNavigation() {
254
266
  return [
@@ -257,96 +269,101 @@ class J extends H {
257
269
  ];
258
270
  }
259
271
  _renderHeader() {
260
- return this.featureNavigationTop && this._featureNavigationVisible ? o`<div class="header">${this._renderFeatureNavigation()}</div>` : null;
272
+ return this.featureNavigationTop && this._featureNavigationVisible ? n`<div class="header">${this._renderFeatureNavigation()}</div>` : null;
261
273
  }
262
274
  _renderFooter() {
263
- return !this.featureNavigationTop && this._featureNavigationVisible ? o`<div class="footer" slot=footer>${this._renderFeatureNavigation()}</div>` : null;
275
+ return !this.featureNavigationTop && this._featureNavigationVisible ? n`<div class="footer" slot=footer>${this._renderFeatureNavigation()}</div>` : null;
264
276
  }
265
277
  _renderFeaturePaginationText() {
266
- const { messages: e, viewModel: t } = this, { featureCount: i, selectedFeatureIndex: s } = t;
267
- return o`<div class="pagination-text">${d(e.pageText ?? "", {
268
- index: _(s + 1),
269
- total: _(i)
278
+ const { messages: e, viewModel: t } = this, { featureCount: i, selectedFeatureIndex: a } = t;
279
+ return n`<div class="pagination-text">${h(e.pageText ?? "", {
280
+ index: w(a + 1),
281
+ total: w(i)
270
282
  })}</div>`;
271
283
  }
272
284
  _renderFeatureMenuButton() {
273
- const { messages: e, viewModel: t } = this, { featureCount: i, selectedFeatureIndex: s, pendingPromisesCount: a } = t;
274
- return o`<calcite-action class="pagination-menu-button" icon=list .label=${e.selectFeature} .loading=${a > 0} @click=${this._handlePaginationMenuButton} .text=${d(e.pageText ?? "", {
275
- index: _(s + 1),
276
- total: _(i)
277
- })} text-enabled title=${e.selectFeature ?? c}></calcite-action>`;
285
+ const { messages: e, viewModel: t } = this, { featureCount: i, selectedFeatureIndex: a, pendingPromisesCount: s } = t;
286
+ return n`<calcite-action class="pagination-menu-button" icon=list .label=${e.selectFeature} .loading=${s > 0} @click=${this._handlePaginationMenuButton} .text=${h(e.pageText ?? "", {
287
+ index: w(a + 1),
288
+ total: w(i)
289
+ })} text-enabled title=${e.selectFeature ?? g}></calcite-action>`;
278
290
  }
279
291
  _renderPagination() {
280
292
  const { previous: e, next: t } = this.messages;
281
- return o`<calcite-action-bar class="pagination-action-bar" expand-disabled layout=horizontal overflow-actions-disabled scale=s><calcite-action-group scale=s><calcite-action class="pagination-previous" icon=chevron-left icon-flip-rtl .label=${e ?? ""} @click=${this._previousFeature} .text=${e ?? ""} title=${e ?? "" ?? c}></calcite-action><calcite-action icon=chevron-right icon-flip-rtl .label=${t ?? ""} @click=${this._nextFeature} .text=${t ?? ""} title=${t ?? "" ?? c}></calcite-action></calcite-action-group></calcite-action-bar>`;
293
+ return n`<calcite-action-bar class="pagination-action-bar" expand-disabled layout=horizontal overflow-actions-disabled scale=s><calcite-action-group scale=s><calcite-action class="pagination-previous" icon=chevron-left icon-flip-rtl .label=${e ?? ""} @click=${this._previousFeature} .text=${e ?? ""} title=${e ?? "" ?? g}></calcite-action><calcite-action icon=chevron-right icon-flip-rtl .label=${t ?? ""} @click=${this._nextFeature} .text=${t ?? ""} title=${t ?? "" ?? g}></calcite-action></calcite-action-group></calcite-action-bar>`;
282
294
  }
283
295
  _renderFeatureMenuItem(e) {
284
- const { initialDisplayMode: t } = this, { selectedFeatureItem: i, featureItems: s } = this.viewModel, a = e === i, n = s.indexOf(e);
285
- return o`<calcite-list-item @blur=${this._removeActiveFeature} @focus=${() => this._setActiveFeature(n)} @mouseleave=${this._removeActiveFeature} @mouseover=${() => this._setActiveFeature(n)} .selected=${a} @calciteListItemSelect=${() => this._selectFeature(n)}><span .innerHTML=${(m.sanitize(e.heading) || this.messages.untitled) ?? ""} slot=content></span>${t === "list" ? o`<calcite-icon flip-rtl icon=chevron-right scale=s slot=content-end></calcite-icon>` : null}</calcite-list-item>`;
296
+ const { initialDisplayMode: t } = this, { selectedFeatureItem: i, featureItems: a } = this.viewModel, s = e === i, o = a.indexOf(e);
297
+ return n`<calcite-list-item @blur=${this._removeActiveFeature} @focus=${() => this._setActiveFeature(o)} @mouseleave=${this._removeActiveFeature} @mouseover=${() => this._setActiveFeature(o)} .selected=${s} @calciteListItemSelect=${() => this._selectFeature(o)}><span .innerHTML=${(v.sanitize(e.heading) || this.messages.untitled) ?? ""} slot=content></span>${t === "list" ? n`<calcite-icon flip-rtl icon=chevron-right scale=s slot=content-end></calcite-icon>` : null}</calcite-list-item>`;
286
298
  }
287
299
  _renderFeatureMenu() {
288
- const { messages: e, viewModel: t } = this, i = this._groupResultsByLayer(), s = this.initialDisplayMode === "list" ? "none" : "single";
289
- return t.featureItems.length ? o`<calcite-list display-mode=flat .label=${e?.featuresList ?? ""} selection-appearance=icon .selectionMode=${s}>${Array.from(i.keys(), (a) => {
290
- const n = i.get(a)?.map((h) => this._renderFeatureMenuItem(h)), r = a ? a.title ?? this.messages.untitled : null;
291
- return !this.hideFeatureListLayerTitle && r !== null ? $(a ?? "map-graphics", o`<calcite-list-item-group .heading=${r}>${n}</calcite-list-item-group>`) : n;
300
+ const { messages: e, viewModel: t } = this, i = this._groupResultsByLayer(), a = this.initialDisplayMode === "list" ? "none" : "single";
301
+ return t.featureItems.length ? n`<calcite-list display-mode=flat .label=${e?.featuresList ?? ""} selection-appearance=icon .selectionMode=${a}>${Array.from(i.keys(), (s) => {
302
+ const o = i.get(s)?.map((c) => this._renderFeatureMenuItem(c)), r = s ? s.title ?? this.messages.untitled : null;
303
+ return !this.hideFeatureListLayerTitle && r !== null ? M(s ?? "map-graphics", n`<calcite-list-item-group .heading=${r}>${o}</calcite-list-item-group>`) : o;
292
304
  })}</calcite-list>` : null;
293
305
  }
294
306
  _renderHeaderAction(e) {
295
307
  const t = e.title || "";
296
- return e.visible ? o`<calcite-action .active=${e.type === "toggle" ? e.value : !1} .disabled=${e.disabled} .icon=${e.icon ?? void 0} .indicator=${e.active} .loading=${e.active} @click=${() => this._triggerAction(e)} slot=header-actions-end .text=${t} title=${t ?? c}></calcite-action>` : null;
308
+ return e.visible ? n`<calcite-action .active=${e.type === "toggle" ? e.value : !1} .disabled=${e.disabled} .icon=${e.icon ?? void 0} .indicator=${e.active} .loading=${e.active} @click=${() => this._triggerAction(e)} slot=header-actions-end .text=${t} title=${t ?? g}></calcite-action>` : null;
297
309
  }
298
310
  _renderHeaderActions() {
299
311
  return this.headerActions.map((e) => this._renderHeaderAction(e)).toArray();
300
312
  }
301
- _renderContentFeature() {
302
- const { headingLevel: e, hideCloseButton: t, _isCollapsed: i, _collapseEnabled: s, _featureFlowItemSelected: a, featureNavigationTop: n, flowItems: r, initialDisplayMode: h, selectedFeature: p } = this, { active: f } = this.viewModel, u = this._getHeading();
303
- if (h === "list" && !p)
304
- return null;
305
- const g = r.length === 0 && a;
306
- return o`<calcite-flow-item class=${A(C({
313
+ _renderContentFeature(e) {
314
+ const { headingLevel: t, hideCloseButton: i, _isCollapsed: a, _collapseEnabled: s, featureNavigationTop: o, initialDisplayMode: r, selectedFeature: c } = this, { active: u } = this.viewModel, d = this._getHeading();
315
+ return r === "list" && !c ? null : n`<calcite-flow-item class=${C(A({
307
316
  "content-feature": !0,
308
- "flow-item-collapsed": i
309
- }))} .closable=${!t} .closed=${!f} .collapsed=${i} .collapseDirection=${n ? "down" : "up"} .collapsible=${s} .headingLevel=${e} .selected=${g} @calciteFlowItemBack=${this._handleFeatureBack} .loading=${!!this._openRelatedFeatureAbortController} @calciteFlowItemClose=${this._handleClose} @calciteFlowItemToggle=${this._handleCollapseToggle} .heading=${I(u)} ${v(this._rootFlowItemNode)}><div slot=heading><div .innerHTML=${m.sanitize(u ?? "") ?? ""}></div></div>${this._renderHeaderActions()}${this._renderActionBar()}<div class=${A(C("container", "content-container"))}>${this._renderContent()}</div>${this._renderFooter()}</calcite-flow-item>`;
317
+ "flow-item-collapsed": a
318
+ }))} .closable=${!i} .closed=${!u} .collapsed=${a} .collapseDirection=${o ? "down" : "up"} .collapsible=${s} .headingLevel=${t} .selected=${e} @calciteFlowItemBack=${this._handleFeatureBack} .loading=${!!this._openRelatedFeatureAbortController} @calciteFlowItemClose=${this._handleClose} @calciteFlowItemToggle=${this._handleCollapseToggle} .heading=${y(d)} ${p(this._rootFlowItemNode)}><div slot=heading><div .innerHTML=${v.sanitize(d ?? "") ?? ""}></div></div>${this._renderHeaderActions()}${this._renderActionBar()}<div class=${C(A("container", "content-container"))}>${this._renderContent()}</div>${this._renderFooter()}</calcite-flow-item>`;
310
319
  }
311
320
  _renderFeatureMenuContainer() {
312
- const { viewModel: e, hideCloseButton: t, featureMenuTitle: i, messages: s, initialDisplayMode: a, featureMenuOpen: n, _featureFlowItemSelected: r, _collapseEnabled: h, _isCollapsed: p, featureNavigationTop: f, headingLevel: u } = this, { active: g, featureItems: M, pendingPromisesCount: b } = e, D = i ?? s.selectFeature;
313
- if (a === "feature" && !n)
321
+ const { viewModel: e, hideCloseButton: t, featureMenuTitle: i, messages: a, initialDisplayMode: s, featureMenuOpen: o, _featureFlowItemSelected: r, _collapseEnabled: c, _isCollapsed: u, featureNavigationTop: d, headingLevel: m } = this, { active: F, featureItems: _, pendingPromisesCount: b } = e, k = i ?? a.selectFeature;
322
+ if (s === "feature" && !o)
314
323
  return null;
315
- const N = !r;
316
- return o`<calcite-flow-item class=${A(C({
317
- "flow-item-collapsed": p
318
- }))} .closable=${a === "list" && !t} .closed=${!g} .collapsed=${a === "list" && p} .collapseDirection=${f ? "down" : "up"} .collapsible=${a === "list" && h} .description=${this.hideFeatureMenuHeading ? void 0 : d(s.total ?? "", {
319
- total: M.length
320
- })} .heading=${this.hideFeatureMenuHeading ? void 0 : D} .headingLevel=${u} .loading=${e.waitingForContents} .selected=${N} @calciteFlowItemBack=${(E) => {
324
+ const D = !r;
325
+ return n`<calcite-flow-item class=${C(A({
326
+ "flow-item-collapsed": u
327
+ }))} .closable=${s === "list" && !t} .closed=${!F} .collapsed=${s === "list" && u} .collapseDirection=${d ? "down" : "up"} .collapsible=${s === "list" && c} .description=${this.hideFeatureMenuHeading ? void 0 : h(a.total ?? "", {
328
+ total: _.length
329
+ })} .heading=${this.hideFeatureMenuHeading ? void 0 : k} .headingLevel=${m} .loading=${e.waitingForContents} .selected=${D} @calciteFlowItemBack=${(E) => {
321
330
  E.preventDefault(), this._handleFeatureMenuBack();
322
- }} @calciteFlowItemClose=${this._handleClose} @calciteFlowItemToggle=${this._handleCollapseToggle} ${v(this._featureMenuViewportNode)}>${a === "list" ? this._renderHeaderActions() : null}${b > 0 ? o`<calcite-loader class="loader" inline .label=${s.loading ?? ""} slot=header-actions-end></calcite-loader>` : null}<div class="container">${this._renderFeatureMenu()}</div><div class="feature-menu-observer" ${v(this._featureMenuIntersectionObserverCreated)}></div>${a === "feature" ? o`<calcite-button appearance=transparent @click=${this._handleFeatureMenuBack} slot=footer-start width=full>${s.back}</calcite-button>` : null}</calcite-flow-item>`;
331
+ }} @calciteFlowItemClose=${this._handleClose} @calciteFlowItemToggle=${this._handleCollapseToggle} ${p(this._featureMenuViewportNode)}>${s === "list" ? this._renderHeaderActions() : null}${b > 0 ? n`<calcite-loader class="loader" inline .label=${a.loading ?? ""} slot=header-actions-end></calcite-loader>` : null}<div class="container">${this._renderFeatureMenu()}</div><div class="feature-menu-observer" ${p(this._featureMenuIntersectionObserverCreated)}></div>${s === "feature" ? n`<calcite-button appearance=transparent @click=${this._handleFeatureMenuBack} slot=footer-start width=full>${a.back}</calcite-button>` : null}</calcite-flow-item>`;
323
332
  }
324
333
  _renderFlowItem(e, t) {
325
- const { messages: i, hideCloseButton: s, hideSelectFeature: a, active: n } = this, r = "graphic" in e && "isFeatureFromTable" in e && !e.isFeatureFromTable, h = r && !a, p = e.flowType === "feature-association", f = i.returnToInitialFeature ?? "", u = i?.selectFeature, g = this._getActionTitle(F), M = !this.hideActionBar && p && r;
326
- return o`<calcite-flow-item .closable=${!s} .closed=${!n} .description=${I(this._getDrillInFlowItemDescription(e) ?? "")} .heading=${this.hideHeading ? void 0 : I(e.heading ?? "")} .selected=${t} @calciteFlowItemBack=${(b) => {
334
+ const { messages: i, hideCloseButton: a, hideSelectFeature: s, active: o } = this, r = "graphic" in e && "isFeatureFromTable" in e && !e.isFeatureFromTable, c = r && !s, u = e.flowType === "feature-association", d = i.returnToInitialFeature ?? "", m = i?.selectFeature, F = this._getActionTitle(this._zoomToFeature), _ = !this.hideActionBar && u && r;
335
+ return n`<calcite-flow-item .closable=${!a} .closed=${!o} .description=${y(this._getDrillInFlowItemDescription(e) ?? "")} .heading=${this.hideHeading ? void 0 : y(e.heading ?? "")} .selected=${t} @calciteFlowItemBack=${(b) => {
327
336
  b.preventDefault(), this._handleDrillInBackClick();
328
- }} .loading=${!!this._openRelatedFeatureAbortController} @calciteFlowItemClose=${this._handleClose}>${this.hideHeading ? null : o`<div slot=heading><div .innerHTML=${m.sanitize(e.heading ?? "") ?? ""}></div></div>`}<div slot=description><div .innerHTML=${m.sanitize(this._getDrillInFlowItemDescription(e) ?? "") ?? ""}></div></div><calcite-action class="action-exit" icon=move-up @click=${this._removeFlowItems} slot=header-actions-start .text=${f ?? ""} title=${f ?? "" ?? c}></calcite-action>${h ? o`<calcite-action icon=zoom-to-object @click=${() => this._openRelatedFeature(e)} slot=header-actions-end .text=${u ?? ""} title=${u ?? c}></calcite-action>` : null}${M ? o`<calcite-action-bar expand-disabled expanded scale=s slot=action-bar><calcite-action-group overlay-positioning=fixed scale=s><calcite-action .disabled=${F.disabled} .icon=${F.icon ?? void 0} .loading=${F.active} scale=s text-enabled .text=${g} title=${g ?? c} @click=${() => Z(this.viewModel, e)}></calcite-action></calcite-action-group></calcite-action-bar>` : null}<div class="container">${e}</div></calcite-flow-item>`;
337
+ }} .loading=${!!this._openRelatedFeatureAbortController} @calciteFlowItemClose=${this._handleClose}>${this.hideHeading ? null : n`<div slot=heading><div .innerHTML=${v.sanitize(e.heading ?? "") ?? ""}></div></div>`}<div slot=description><div .innerHTML=${v.sanitize(this._getDrillInFlowItemDescription(e) ?? "") ?? ""}></div></div><calcite-action class="action-exit" icon=move-up @click=${this._removeFlowItems} slot=header-actions-start .text=${d ?? ""} title=${d ?? "" ?? g}></calcite-action>${c ? n`<calcite-action icon=zoom-to-object @click=${() => this._openRelatedFeature(e)} slot=header-actions-end .text=${m ?? ""} title=${m ?? g}></calcite-action>` : null}${_ ? n`<calcite-action-bar expand-disabled expanded scale=s slot=action-bar><calcite-action-group overlay-positioning=fixed scale=s><calcite-action .disabled=${this._zoomToFeature.disabled} .icon=${this._zoomToFeature.icon ?? void 0} .loading=${this._zoomToFeature.active} scale=s text-enabled .text=${F} title=${F ?? g} @click=${() => Z(this.viewModel, this._zoomToFeature, e)}></calcite-action></calcite-action-group></calcite-action-bar>` : null}<div class="container">${e}</div></calcite-flow-item>`;
329
338
  }
330
339
  _renderContentContainer() {
331
- const e = this.flowItems?.toArray(), t = e?.map((s, a) => this._renderFlowItem(s, this._featureFlowItemSelected && a === e.length - 1)), i = this.initialDisplayMode === "list" ? [this._renderFeatureMenuContainer(), this._renderContentFeature(), t] : [this._renderContentFeature(), t, this._renderFeatureMenuContainer()];
332
- return o`<calcite-flow ${v(this._flowContainerNode)}>${i}</calcite-flow>`;
340
+ const e = this.flowItems?.toArray(), t = e.length > 0, i = this.viewModel.aggregatedFeaturesEnabled && this.viewModel.selectedFeature?.isAggregate && !t, a = i && e.length === 0, s = e.length === 0 && this._featureFlowItemSelected && !i, o = e?.map((u, d) => this._renderFlowItem(u, this._featureFlowItemSelected && d === e.length - 1)), r = this._renderBrowseAggregateContainer(!!a), c = this.initialDisplayMode === "list" ? [this._renderFeatureMenuContainer(), this._renderContentFeature(s)] : [this._renderContentFeature(s), this._renderFeatureMenuContainer()];
341
+ return n`<calcite-flow ${p(this._flowContainerNode)}>${c}${r}${o}</calcite-flow>`;
342
+ }
343
+ _renderBrowseAggregateContainer(e) {
344
+ const { hideCloseButton: t, active: i, messages: a } = this, { selectedFeature: s } = this.viewModel;
345
+ return this.viewModel.aggregatedFeaturesEnabled && s?.isAggregate ? n`<calcite-flow-item .selected=${e} .closable=${!t} .closed=${!i} .description=${this._aggregatedFeatureCount ? h(a.total ?? "", {
346
+ total: this._aggregatedFeatureCount
347
+ }) : ""} .heading=${a.aggregatedFeatures} @calciteFlowItemBack=${(r) => {
348
+ r.preventDefault(), this.viewModel.aggregatedFeaturesEnabled = !1;
349
+ }} .loading=${this._aggregatedFeaturesLoading} @calciteFlowItemClose=${this._handleClose}><arcgis-aggregated-features .autoDestroyDisabled=${this.autoDestroyDisabled} .feature=${s ?? void 0} .flowItems=${this.flowItems} .map=${this.map ?? void 0} .messages=${a} @arcgisPropertyChange=${this._handleAggregatedFeaturesPropertyChange} .spatialReference=${this.spatialReference ?? void 0} .timeZone=${this.timeZone ?? void 0} .view=${this.view ?? void 0}></arcgis-aggregated-features><calcite-button appearance=transparent @click=${() => this.viewModel.aggregatedFeaturesEnabled = !1} slot=footer-start width=full>${a.back}</calcite-button></calcite-flow-item>` : null;
333
350
  }
334
351
  _renderActionBar() {
335
- const t = this.viewModel.selectedFeatureItem?.isFeatureFromTable && !this.location ? this.viewModel.allActions.filter((i) => i.id !== F.id) : this.viewModel.allActions;
336
- return !this._isCollapsed && !this.hideActionBar && t.length ? o`<calcite-action-bar expand-disabled .expanded=${!this._hideActionText} scale=s slot=action-bar><calcite-action-group overlay-positioning=fixed scale=s ${v(this._actionBarMenuNode)}>${this._renderActions()}</calcite-action-group></calcite-action-bar>` : null;
352
+ const e = this.viewModel.selectedFeatureItem?.isFeatureFromTable, t = this.viewModel.allActions.toArray(), i = e && !this.location ? t.filter((a) => a.id !== this._zoomToFeature.id) : t;
353
+ return !this._isCollapsed && !this.hideActionBar && i.length ? n`<calcite-action-bar expand-disabled .expanded=${!this._hideActionText} scale=s slot=action-bar><calcite-action-group overlay-positioning=fixed scale=s ${p(this._actionBarMenuNode)}>${this._renderActions(i)}</calcite-action-group></calcite-action-bar>` : null;
337
354
  }
338
- _renderActions() {
339
- return this.viewModel.allActions.toArray().map((e) => {
340
- const t = this._getActionTitle(e);
341
- return o`<calcite-action .active=${e.type === "toggle" ? e.value : !1} .disabled=${e.disabled} .icon=${e.icon ?? void 0} .loading=${e.active} scale=s .textEnabled=${!this._hideActionText} .text=${t ?? ""} title=${t ?? c} .hidden=${!e.visible} @click=${() => this._triggerAction(e)}></calcite-action>`;
355
+ _renderActions(e) {
356
+ return e.map((t) => {
357
+ const i = this._getActionTitle(t);
358
+ return n`<calcite-action .active=${t.type === "toggle" ? t.value : !1} .disabled=${t.disabled} .icon=${t.icon ?? void 0} .loading=${t.active} scale=s .textEnabled=${!this._hideActionText} .text=${i ?? ""} title=${i ?? g} .hidden=${!t.visible} @click=${() => this._triggerAction(t)}></calcite-action>`;
342
359
  });
343
360
  }
344
361
  _renderContent() {
345
362
  const { content: e, selectedFeatureItem: t } = this.viewModel;
346
- return t ? $(t, o`<arcgis-feature .autoDestroyDisabled=${this.autoDestroyDisabled} .chartAnimationDisabled=${this.chartAnimationDisabled} .defaultPopupTemplateEnabled=${this.defaultPopupTemplateEnabled} .flowItems=${this.flowItems} .graphic=${t.graphic} .headingLevel=${this.headingLevel + 1} .hideAttachmentsContent=${this.hideAttachmentsContent} .hideContent=${this.hideContent} .hideCustomContent=${this.hideCustomContent} .hideExpressionContent=${this.hideExpressionContent} .hideFieldsContent=${this.hideFieldsContent} hide-heading .hideLastEditedInfo=${this.hideLastEditedInfo} .hideMediaContent=${this.hideMediaContent} .hideTextContent=${this.hideTextContent} .location=${this.location} .map=${this.map} .referenceElement=${this.referenceElement} .showRelationshipContent=${!this.hideRelationshipContent} .showUtilityNetworkContent=${!this.hideUtilityNetworkContent} .spatialReference=${this.spatialReference} .timeZone=${this.timeZone} ${v(this._selectedFeatureComponent)}></arcgis-feature>`) : typeof e == "string" ? $(e, o`<div .innerHTML=${m.sanitize(e) ?? ""}></div>`) : e ?? null;
363
+ return t ? M(t, n`<arcgis-feature .autoDestroyDisabled=${this.autoDestroyDisabled} .chartAnimationDisabled=${this.chartAnimationDisabled} .defaultPopupTemplateEnabled=${this.defaultPopupTemplateEnabled} .flowItems=${this.flowItems} .graphic=${t.graphic} .headingLevel=${this.headingLevel + 1} .hideAttachmentsContent=${this.hideAttachmentsContent} .hideContent=${this.hideContent} .hideCustomContent=${this.hideCustomContent} .hideExpressionContent=${this.hideExpressionContent} .hideFieldsContent=${this.hideFieldsContent} hide-heading .hideLastEditedInfo=${this.hideLastEditedInfo} .hideMediaContent=${this.hideMediaContent} .hideTextContent=${this.hideTextContent} .location=${this.location} .map=${this.map} .referenceElement=${this.referenceElement} .showRelationshipContent=${!this.hideRelationshipContent} .showUtilityNetworkContent=${!this.hideUtilityNetworkContent} .spatialReference=${this.spatialReference} .timeZone=${this.timeZone} ${p(this._selectedFeatureComponent)}></arcgis-feature>`) : typeof e == "string" ? M(e, n`<div .innerHTML=${v.sanitize(e) ?? ""}></div>`) : e ?? null;
347
364
  }
348
365
  }
349
- L("arcgis-features", J);
366
+ L("arcgis-features", W);
350
367
  export {
351
- J as ArcgisFeatures
368
+ W as ArcgisFeatures
352
369
  };
@@ -10,5 +10,6 @@ import "@esri/calcite-components/components/calcite-flow-item";
10
10
  import "@esri/calcite-components/components/calcite-loader";
11
11
  import "@esri/calcite-components/components/calcite-button";
12
12
  import "@esri/calcite-components/components/calcite-flow";
13
+ import "../arcgis-aggregated-features/index.js";
13
14
  import "../arcgis-feature/index.js";
14
15
  export * from "./customElement.js";
@@ -2,7 +2,7 @@
2
2
  import { c as s } from "../../chunks/runtime.js";
3
3
  import { css as r, html as a } from "lit";
4
4
  import { watch as n } from "@arcgis/core/core/reactiveUtils.js";
5
- import { LitElement as c, createEvent as o, nothing as l, safeClassMap as h } from "@arcgis/lumina";
5
+ import { LitElement as c, createEvent as e, nothing as l, safeClassMap as h } from "@arcgis/lumina";
6
6
  import { usePropertyChange as g } from "@arcgis/lumina/controllers";
7
7
  import { classes as m } from "@arcgis/toolkit/dom";
8
8
  import { u as v } from "../../chunks/useT9n.js";
@@ -12,7 +12,7 @@ import { c as p } from "../../chunks/goTo.js";
12
12
  const w = r`.arcgis-button{--calcite-icon-color: var(--calcite-color-text-3);--calcite-button-background-color: var(--calcite-color-foreground-1);color:var(--calcite-color-text-3);line-height:var(--calcite-font-line-height-relative-tight);display:flex;flex-flow:column;cursor:pointer;background-color:var(--calcite-color-foreground-1);font-size:var(--calcite-font-size);:hover{--calcite-icon-color: var(--calcite-color-text-1);--calcite-button-background-color: var(--calcite-color-transparent-hover)}}:host{width:fit-content;height:fit-content}`;
13
13
  class f extends c {
14
14
  constructor() {
15
- super(...arguments), this.messages = v(), this.#i = null, this.#t = null, this.view = d(this), this.autoDestroyDisabled = !1, this.icon = "home", this.visualScale = "m", this.arcgisGo = o(), this.arcgisPropertyChange = g()("state", "viewpoint"), this.arcgisReady = o();
15
+ super(...arguments), this.messages = v(), this.#i = null, this.#t = null, this.view = d(this), this.autoDestroyDisabled = !1, this.icon = "home", this.visualScale = "m", this.arcgisGo = e(), this.arcgisPropertyChange = g()("state", "viewpoint"), this.arcgisReady = e();
16
16
  }
17
17
  static {
18
18
  this.properties = { view: 0, autoDestroyDisabled: 5, goToOverride: 0, icon: 1, label: 1, messageOverrides: 0, referenceElement: 1, visualScale: 1, state: 32, viewpoint: 0 };
@@ -65,8 +65,8 @@ class f extends c {
65
65
  this.state === "going-home" ? this.cancelGo() : this.go();
66
66
  }
67
67
  render() {
68
- const { messages: t, icon: e } = this, i = this.state === "going-home";
69
- return a`<div class=${h(m("root", u.arcgisButton))}><calcite-button .disabled=${this.state === "disabled"} .iconStart=${i ? void 0 : e ?? void 0} kind=neutral .label=${t.componentLabel} @click=${this._go} .scale=${this.visualScale} .loading=${i} title=${(i ? t.cancel : t.title) ?? l}></calcite-button></div>`;
68
+ const { messages: t, icon: o } = this, i = this.state === "going-home";
69
+ return a`<div class=${h(m("root", u.arcgisButton))}><calcite-button .disabled=${this.state === "disabled"} .iconStart=${i ? void 0 : o ?? void 0} kind=neutral .label=${t.componentLabel} @click=${this._go} .scale=${this.visualScale} .loading=${i} title=${(i ? t.cancel : t.title) ?? l}></calcite-button></div>`;
70
70
  }
71
71
  }
72
72
  s("arcgis-home", f);
@@ -5,7 +5,7 @@ import { isLayerFromCatalog as he } from "@arcgis/core/layers/catalog/catalogUti
5
5
  import { safeClassMap as d, safeStyleMap as Ie, nothing as r, renderElement as Ae } from "@arcgis/lumina";
6
6
  import { classes as P } from "@arcgis/toolkit/dom";
7
7
  import { createRef as X, ref as Y } from "lit/directives/ref.js";
8
- import { g as Ce, c as ie } from "../../../chunks/action-utils.js";
8
+ import { g as Ce, a as ie } from "../../../chunks/action-utils.js";
9
9
  import { g as Te, i as Z, l as Se, a as Me, c as xe, b as Le, d as Ee } from "../../../chunks/layer-list-utils.js";
10
10
  import { s as ke } from "../../../chunks/component-utils.js";
11
11
  function D(i) {
@@ -3,6 +3,7 @@ import type OrientedImageryLayer from "@arcgis/core/layers/OrientedImageryLayer.
3
3
  import type Point from "@arcgis/core/geometry/Point.js";
4
4
  import type { PublicLitElement as LitElement } from "@arcgis/lumina";
5
5
  import type { ArcgisReferenceElement, IconName } from "../types.js";
6
+ import type { AbortOptions } from "../../utils/async-utils.js";
6
7
  import type { MapViewOrSceneView } from "@arcgis/core/views/MapViewOrSceneView.js";
7
8
  import type { Icon } from "@esri/calcite-components/components/calcite-icon";
8
9
 
@@ -55,6 +56,20 @@ export abstract class ArcgisOrientedImageryViewer extends LitElement {
55
56
  * @default false
56
57
  */
57
58
  accessor galleryOpened: boolean;
59
+ /**
60
+ * Indicates whether to display the header of the widget.
61
+ *
62
+ * @default false
63
+ * @since 5.1
64
+ */
65
+ accessor hideHeader: boolean;
66
+ /**
67
+ * Indicates whether to display the action bar of the widget.
68
+ *
69
+ * @default false
70
+ * @since 5.1
71
+ */
72
+ accessor hideMenu: boolean;
58
73
  /**
59
74
  * Icon which represents the component.
60
75
  * Typically used when the component is controlled by another component (e.g. by the Expand component).
@@ -116,7 +131,7 @@ export abstract class ArcgisOrientedImageryViewer extends LitElement {
116
131
  */
117
132
  accessor layer: OrientedImageryLayer | null | undefined;
118
133
  /**
119
- * Layer Id of layer in the associated map. You can set `layer`, `layerId` or `routeLayerItemId`,
134
+ * Layer Id of layer in the associated map. You can set `layer`, `layerId` or `orientedImageryLayerItemId`,
120
135
  * but not more than one.
121
136
  *
122
137
  * @since 5.1
@@ -168,6 +183,14 @@ export abstract class ArcgisOrientedImageryViewer extends LitElement {
168
183
  accessor view: MapViewOrSceneView | null | undefined;
169
184
  /** Permanently destroy the component. */
170
185
  destroy(): Promise<void>;
186
+ /**
187
+ * Loads the best available image for a given map point and displays it in the viewer. The method takes a `Point` object as an argument, which represents the location on the map for which the best image should be loaded. The viewer will analyze the available images for that location and select the one that best matches the given location.
188
+ *
189
+ * @param mapPoint - The [point](https://developers.arcgis.com/javascript/latest/references/core/geometry/Point/) object representing the location on the map for which to load the best image.
190
+ * @param options - Optional parameters for aborting the image loading process. This can be used to cancel the operation if it takes too long or if the user navigates away from the location before the image is loaded.
191
+ * @since 5.1
192
+ */
193
+ loadBestImage(mapPoint: Point, options?: AbortOptions): Promise<void>;
171
194
  "@setterTypes": {
172
195
  icon?: IconName;
173
196
  };