@arcgis/map-components 5.2.0-next.95 → 5.2.0-next.97
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/22TB66OC.js +2 -0
- package/dist/cdn/{GIQDIWW4.js → 22VFTYTN.js} +1 -1
- package/dist/cdn/367Z3TKY.js +2 -0
- package/dist/cdn/{AY2PVEY5.js → 3AIQYNSA.js} +1 -1
- package/dist/cdn/{QTGJ2TIJ.js → 454H3MLO.js} +1 -1
- package/dist/cdn/{FRAZUJ7K.js → 4MSBOUHQ.js} +1 -1
- package/dist/cdn/{SK4OCYH7.js → 4YU2AF7S.js} +1 -1
- package/dist/cdn/5FWT3N7B.js +2 -0
- package/dist/cdn/6KYWLAYH.js +2 -0
- package/dist/cdn/6SEM26SM.js +2 -0
- package/dist/cdn/6ZE7BJTS.js +2 -0
- package/dist/cdn/72HH6FSN.js +2 -0
- package/dist/cdn/{SSJBKHEN.js → 77NK4UBY.js} +1 -1
- package/dist/cdn/{LPB2JMJ5.js → 7F2DXC54.js} +1 -1
- package/dist/cdn/{Y56FOEA4.js → A3KD2UAY.js} +1 -1
- package/dist/cdn/AJBOKAK6.js +2 -0
- package/dist/cdn/{2HYRTMJ6.js → AOBYM5ZK.js} +1 -1
- package/dist/cdn/{MXYWUI34.js → ASVNFERZ.js} +1 -1
- package/dist/cdn/AZ6IOGGT.js +2 -0
- package/dist/cdn/{PWY44JI6.js → B4KOVXN3.js} +1 -1
- package/dist/cdn/{7TTSWTGP.js → BHENVS42.js} +1 -1
- package/dist/cdn/BOPKJR3D.js +2 -0
- package/dist/cdn/{K2FKS4AS.js → BZGHEINJ.js} +1 -1
- package/dist/cdn/{VHHRBGXN.js → CJLML2XS.js} +1 -1
- package/dist/cdn/CKO4VE36.js +2 -0
- package/dist/cdn/{2F6NRCC5.js → DVGE5VPK.js} +1 -1
- package/dist/cdn/{I3VQ46FA.js → EAQV7AZQ.js} +1 -1
- package/dist/cdn/EDGLEFG3.js +2 -0
- package/dist/cdn/{CEMBX25Q.js → EXIPQBCY.js} +1 -1
- package/dist/cdn/FCNNRX3Q.js +2 -0
- package/dist/cdn/FCVLHRLJ.js +2 -0
- package/dist/cdn/G743AW46.js +2 -0
- package/dist/cdn/{XZGU6TR6.js → GGKOLSCH.js} +1 -1
- package/dist/cdn/{3CHIGFZL.js → GLMK45AB.js} +1 -1
- package/dist/cdn/H7KG55LR.js +2 -0
- package/dist/cdn/{S5XIZ2L4.js → HXNLIDLQ.js} +1 -1
- package/dist/cdn/{7ZZWKH2U.js → IPT3YBSG.js} +2 -2
- package/dist/cdn/{UAGCCYQB.js → IXDLJKJA.js} +1 -1
- package/dist/cdn/{B5FTF7WR.js → J624KHFL.js} +1 -1
- package/dist/cdn/{G2BLA5NQ.js → JAQYZZRT.js} +1 -1
- package/dist/cdn/{KZPPV365.js → JMYDF3AT.js} +1 -1
- package/dist/cdn/L4DWZT4V.js +2 -0
- package/dist/cdn/{XAZNEI2W.js → LCG5BEEY.js} +1 -1
- package/dist/cdn/{VWV6XWSU.js → LW6SRLBI.js} +1 -1
- package/dist/cdn/{5SVULVBJ.js → MAILUSIQ.js} +1 -1
- package/dist/cdn/N2RLGXGJ.js +2 -0
- package/dist/cdn/NRT2ZCWC.js +2 -0
- package/dist/cdn/{HOKDRJ4R.js → NSUQXUWH.js} +1 -1
- package/dist/cdn/{V42KBFW7.js → OCAPESF3.js} +1 -1
- package/dist/cdn/{F3JDX4A7.js → OMEJFPK7.js} +1 -1
- package/dist/cdn/P2JBFLSB.js +2 -0
- package/dist/cdn/{D6BWGR3Z.js → P5CQYFPA.js} +1 -1
- package/dist/cdn/R5GMCIAH.js +2 -0
- package/dist/cdn/{AKNAVXKD.js → RC7BSNQ3.js} +1 -1
- package/dist/cdn/{O6CGTOAO.js → S7JDLOX2.js} +1 -1
- package/dist/cdn/SA4IYYIE.js +2 -0
- package/dist/cdn/{QD3GVN2C.js → SDY4E3WA.js} +1 -1
- package/dist/cdn/{CJ536VHT.js → SGU4TP7V.js} +1 -1
- package/dist/cdn/TDGEDT35.js +2 -0
- package/dist/cdn/{66PT52ED.js → TZEAPNBI.js} +1 -1
- package/dist/cdn/{CA5LXWO6.js → UOZG2EH7.js} +1 -1
- package/dist/cdn/{GMSIYMNC.js → UPJTKQR3.js} +1 -1
- package/dist/cdn/{2JLMOWRT.js → VULA5TJD.js} +1 -1
- package/dist/cdn/VZXCU47M.js +2 -0
- package/dist/cdn/{FRSROWP4.js → W6IFUQTQ.js} +1 -1
- package/dist/cdn/{SVJ7AEMP.js → WAFRMU5C.js} +1 -1
- package/dist/cdn/WLGR4IHZ.js +2 -0
- package/dist/cdn/{CX3OZJEH.js → WMK7RLBA.js} +1 -1
- package/dist/cdn/{4FVOBVTD.js → YEN7K65V.js} +2 -2
- package/dist/cdn/YVQJ4XD4.js +2 -0
- package/dist/cdn/{FZDURX2Y.js → YWOTHCBH.js} +1 -1
- package/dist/cdn/{N5VJ4SAX.js → ZCRUGROJ.js} +1 -1
- package/dist/cdn/{VT2IDAHB.js → ZUWNZX6G.js} +1 -1
- package/dist/cdn/assets/layer-list-next/t9n/messages.en.json +1 -1
- package/dist/cdn/assets/selection-list/t9n/messages.en.json +1 -0
- package/dist/cdn/assets/video-player/t9n/messages.en.json +1 -1
- package/dist/cdn/index.js +1 -1
- package/dist/cdn/main.css +1 -1
- package/dist/chunks/esri-main.js +1 -1
- package/dist/chunks/layer-list-utils.js +23 -17
- package/dist/chunks/slots.js +1 -1
- package/dist/chunks/svgUtils.js +1 -1
- package/dist/chunks/univariateUtils.js +1 -1
- package/dist/chunks/utils2.js +66 -50
- package/dist/chunks/utils3.js +50 -13
- package/dist/chunks/utils4.js +13 -45
- package/dist/chunks/utils5.js +51 -0
- package/dist/components/arcgis-aggregated-features/customElement.js +7 -7
- package/dist/components/arcgis-area-measurement-2d/customElement.d.ts +21 -0
- package/dist/components/arcgis-area-measurement-2d/customElement.js +5 -5
- package/dist/components/arcgis-area-measurement-3d/customElement.d.ts +16 -0
- package/dist/components/arcgis-area-measurement-3d/customElement.js +10 -10
- package/dist/components/arcgis-basemap-layer-list-next/customElement.d.ts +5 -6
- package/dist/components/arcgis-basemap-layer-list-next/customElement.js +6 -5
- package/dist/components/arcgis-catalog-layer-list-next/customElement.d.ts +11 -1
- package/dist/components/arcgis-catalog-layer-list-next/customElement.js +1 -1
- package/dist/components/arcgis-catalog-layer-list-next/types.d.ts +2 -2
- package/dist/components/arcgis-direct-line-measurement-3d/customElement.d.ts +18 -0
- package/dist/components/arcgis-direct-line-measurement-3d/customElement.js +1 -1
- package/dist/components/arcgis-distance-measurement-2d/customElement.d.ts +19 -0
- package/dist/components/arcgis-distance-measurement-2d/customElement.js +5 -5
- package/dist/components/arcgis-feature/customElement.js +27 -27
- package/dist/components/arcgis-feature-attachments/customElement.js +73 -60
- package/dist/components/arcgis-feature-next/customElement.d.ts +7 -0
- package/dist/components/arcgis-feature-next/customElement.js +12 -12
- package/dist/components/arcgis-feature-relationship/customElement.js +54 -45
- package/dist/components/arcgis-features-next/customElement.d.ts +7 -0
- package/dist/components/arcgis-features-next/customElement.js +16 -16
- package/dist/components/arcgis-layer-list-item-indicator/customElement.js +6 -6
- package/dist/components/arcgis-layer-list-item-panel/customElement.js +20 -16
- package/dist/components/arcgis-layer-list-next/customElement.d.ts +41 -9
- package/dist/components/arcgis-layer-list-next/customElement.js +49 -45
- package/dist/components/arcgis-layer-list-next/layer-list-item/customElement.js +134 -10
- package/dist/components/arcgis-layer-list-next/types.d.ts +5 -0
- package/dist/components/arcgis-legend-card-color-ramp/customElement.js +1 -1
- package/dist/components/arcgis-legend-card-element/customElement.js +1 -1
- package/dist/components/arcgis-legend-card-size-ramp/customElement.js +1 -1
- package/dist/components/arcgis-legend-classic-color-ramp/customElement.js +1 -1
- package/dist/components/arcgis-legend-classic-element/customElement.js +1 -1
- package/dist/components/arcgis-legend-classic-size-ramp/customElement.js +1 -1
- package/dist/components/arcgis-legend-spike-ramp/customElement.js +1 -1
- package/dist/components/arcgis-oriented-imagery-viewer-panoramic-viewer/customElement.js +1 -1
- package/dist/components/arcgis-oriented-imagery-viewer-panoramic-viewer-zoom/customElement.js +1 -1
- package/dist/components/arcgis-popup/customElement.d.ts +7 -0
- package/dist/components/arcgis-popup/customElement.js +15 -15
- package/dist/components/arcgis-print-dpi-input/customElement.js +1 -1
- package/dist/components/arcgis-print-export-button/customElement.js +1 -1
- package/dist/components/arcgis-print-format-select/customElement.js +1 -1
- package/dist/components/arcgis-print-main-panel/customElement.js +1 -1
- package/dist/components/arcgis-print-template-select/customElement.js +1 -1
- package/dist/components/arcgis-print-template-selector/customElement.js +1 -1
- package/dist/components/arcgis-scene/customElement.d.ts +2 -2
- package/dist/components/arcgis-selection-list/customElement.d.ts +421 -0
- package/dist/components/arcgis-selection-list/customElement.js +279 -0
- package/dist/components/arcgis-selection-list/index.d.ts +1 -0
- package/dist/components/arcgis-selection-list/index.js +16 -0
- package/dist/components/arcgis-selection-list/types.d.ts +85 -0
- package/dist/components/arcgis-table-list-next/customElement.js +5 -5
- package/dist/components/arcgis-utility-network-aggregated-geometry-result-item/customElement.d.ts +2 -1
- package/dist/components/arcgis-utility-network-elements-result-item/customElement.d.ts +1 -1
- package/dist/components/arcgis-utility-network-elements-result-item/customElement.js +2 -2
- package/dist/components/arcgis-utility-network-trace-analysis-next/customElement.d.ts +11 -0
- package/dist/components/arcgis-utility-network-trace-analysis-next/customElement.js +76 -78
- package/dist/components/arcgis-utility-network-trace-results-next/customElement.d.ts +10 -4
- package/dist/components/arcgis-utility-network-trace-results-next/customElement.js +17 -25
- package/dist/components/arcgis-video-player/customElement.d.ts +3 -0
- package/dist/components/arcgis-video-player/customElement.js +1 -1
- package/dist/components/arcgis-video-player-slider/customElement.js +9 -9
- package/dist/components/arcgis-volume-measurement/customElement.d.ts +37 -0
- package/dist/components/arcgis-volume-measurement/customElement.js +1 -1
- package/dist/docs/api.json +1 -1
- package/dist/docs/docs.json +1 -1
- package/dist/docs/vscode.html-custom-data.json +1 -1
- package/dist/docs/web-types.json +1 -1
- package/dist/index.d.ts +10 -0
- package/dist/loader.js +15 -14
- package/dist/types/lumina.d.ts +19 -12
- package/dist/types/preact.d.ts +20 -12
- package/dist/types/react.d.ts +21 -12
- package/dist/types/stencil.d.ts +19 -12
- package/dist/utils/layer-list-utils.d.ts +1 -1
- package/package.json +7 -7
- package/dist/cdn/2GDWXNYN.js +0 -2
- package/dist/cdn/376WTHOL.js +0 -2
- package/dist/cdn/4YFREAQ2.js +0 -2
- package/dist/cdn/A6Z7H75I.js +0 -2
- package/dist/cdn/CDMVB72W.js +0 -2
- package/dist/cdn/D5TJRWW3.js +0 -2
- package/dist/cdn/ECXHREHJ.js +0 -2
- package/dist/cdn/FIIA3N5X.js +0 -2
- package/dist/cdn/FY6IGGPV.js +0 -2
- package/dist/cdn/G7HOUS4O.js +0 -2
- package/dist/cdn/HF3GCBAI.js +0 -2
- package/dist/cdn/HISWL3K3.js +0 -2
- package/dist/cdn/HPLMTKLF.js +0 -2
- package/dist/cdn/JKOIMKKL.js +0 -2
- package/dist/cdn/JOPAUFUX.js +0 -2
- package/dist/cdn/LDDAJOTV.js +0 -2
- package/dist/cdn/LKCX5SXM.js +0 -2
- package/dist/cdn/LMNH2RHA.js +0 -2
- package/dist/cdn/MBFY4GDJ.js +0 -2
- package/dist/cdn/PI55I5L7.js +0 -2
- package/dist/cdn/S3QMZKDY.js +0 -2
- package/dist/cdn/XQH6U57U.js +0 -2
- package/dist/cdn/YDP5A3EP.js +0 -2
- package/dist/cdn/ZSDNX326.js +0 -2
- package/dist/chunks/layer-list-item.js +0 -181
- /package/dist/cdn/{WKBILCAY.js → 2ZG7S6GM.js} +0 -0
- /package/dist/cdn/{4WURS3DM.js → 3VWL4SN7.js} +0 -0
- /package/dist/cdn/{4GIRSQMC.js → 4F6FNH6V.js} +0 -0
- /package/dist/cdn/{KYWZUC6M.js → 4J6DMRVO.js} +0 -0
- /package/dist/cdn/{FVZJPOWC.js → 5OBSJYCP.js} +0 -0
- /package/dist/cdn/{5CB7FWG6.js → 657KH5W3.js} +0 -0
- /package/dist/cdn/{ESYSNSNH.js → 6B4ROFUM.js} +0 -0
- /package/dist/cdn/{RKXHWHFR.js → 6RT7GRX4.js} +0 -0
- /package/dist/cdn/{3ZXNGXHC.js → 7DI2ZSB3.js} +0 -0
- /package/dist/cdn/{4AEFZEGM.js → 7JKYXV7H.js} +0 -0
- /package/dist/cdn/{NDWLSQ4W.js → 7NO3F7GQ.js} +0 -0
- /package/dist/cdn/{4KYPBCNM.js → AA2HLLIM.js} +0 -0
- /package/dist/cdn/{BU5HRIOW.js → ADZF7IHV.js} +0 -0
- /package/dist/cdn/{B4RNNO6A.js → B6JLKBMG.js} +0 -0
- /package/dist/cdn/{ZOGRVFHK.js → D2FVI5JG.js} +0 -0
- /package/dist/cdn/{HW5YYDPC.js → D5LP3DJA.js} +0 -0
- /package/dist/cdn/{OJOQP2IU.js → DNQGXWL3.js} +0 -0
- /package/dist/cdn/{QU5PA5MZ.js → DSPV4EIK.js} +0 -0
- /package/dist/cdn/{FV7FUSTO.js → E3AEBH36.js} +0 -0
- /package/dist/cdn/{2EDZ2LNR.js → FRGVEQAZ.js} +0 -0
- /package/dist/cdn/{ZXEH6MEU.js → G7DHB4QN.js} +0 -0
- /package/dist/cdn/{MGILHYX4.js → GJAC7GKP.js} +0 -0
- /package/dist/cdn/{G42D353L.js → GLZMKGGW.js} +0 -0
- /package/dist/cdn/{WRKX7F2G.js → H3RDAWS7.js} +0 -0
- /package/dist/cdn/{YFM2SKWI.js → HDYBFSI5.js} +0 -0
- /package/dist/cdn/{NGQUETWM.js → HH4A44WX.js} +0 -0
- /package/dist/cdn/{5EU3QVP7.js → HRTVHZHG.js} +0 -0
- /package/dist/cdn/{7427KHVF.js → IU63DGNP.js} +0 -0
- /package/dist/cdn/{O3SPKYBG.js → J3KTKVLP.js} +0 -0
- /package/dist/cdn/{BV52G5DA.js → JHF7SGKM.js} +0 -0
- /package/dist/cdn/{GLKTAVV5.js → JU4MCJPU.js} +0 -0
- /package/dist/cdn/{77ZD2RFI.js → KVIE42LT.js} +0 -0
- /package/dist/cdn/{W2UZH6QI.js → LG3G4BFF.js} +0 -0
- /package/dist/cdn/{VDTRRLON.js → MDTNPISF.js} +0 -0
- /package/dist/cdn/{XYRTRBXU.js → OO4SKY7C.js} +0 -0
- /package/dist/cdn/{SNX6WY7J.js → OTTKYEPK.js} +0 -0
- /package/dist/cdn/{J4VKIBXE.js → QH4RNPEX.js} +0 -0
- /package/dist/cdn/{IHWFNEBS.js → QJBQ3JLC.js} +0 -0
- /package/dist/cdn/{KG3HVAZY.js → SE4NXMGA.js} +0 -0
- /package/dist/cdn/{AZWQWNTK.js → SOOVHYLT.js} +0 -0
- /package/dist/cdn/{KMNELKA3.js → T5QDEAAE.js} +0 -0
- /package/dist/cdn/{W2YB27M6.js → TKEBTPPA.js} +0 -0
- /package/dist/cdn/{6URW6H47.js → TTBQBEDS.js} +0 -0
- /package/dist/cdn/{BIKEUMV7.js → VFHHDNXC.js} +0 -0
- /package/dist/cdn/{QZHFPTSI.js → X2MAQDWV.js} +0 -0
- /package/dist/cdn/{LGNLLGA6.js → YWQU6EBN.js} +0 -0
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
+
import { c as y } from "../../chunks/runtime.js";
|
|
3
|
+
import { css as w, html as s } from "lit";
|
|
4
|
+
import { keyed as n } from "lit/directives/keyed.js";
|
|
5
|
+
import { ref as x } from "lit/directives/ref.js";
|
|
6
|
+
import { substitute as v, formatNumber as g } from "@arcgis/core/intl.js";
|
|
7
|
+
import { isGroupLayerItem as b, isLayerItem as I, isFeatureItem as C } from "@arcgis/core/widgets/support/SelectionList/selectionListUtils.js";
|
|
8
|
+
import L from "@arcgis/core/widgets/support/SelectionList/SelectionListViewModel.js";
|
|
9
|
+
import { LitElement as M, createEvent as F, nothing as u, safeClassMap as r } from "@arcgis/lumina";
|
|
10
|
+
import { usePropertyChange as S } from "@arcgis/lumina/controllers";
|
|
11
|
+
import { u as T } from "../../chunks/useT9n.js";
|
|
12
|
+
import { m as k } from "../../chunks/useViewModel.js";
|
|
13
|
+
const c = {
|
|
14
|
+
container: "container",
|
|
15
|
+
flowItem: "flow-item",
|
|
16
|
+
layerDropdown: "layer-dropdown",
|
|
17
|
+
listItemFeature: "feature",
|
|
18
|
+
listItemFeatureIcon: "feature-icon",
|
|
19
|
+
listItemIcon: "icon",
|
|
20
|
+
itemCount: "item-count",
|
|
21
|
+
notice: "notice",
|
|
22
|
+
panel: "panel",
|
|
23
|
+
totalCount: "total-count"
|
|
24
|
+
}, A = w`:host{width:100%;display:flex;height:100%;flex:1 1 0;>*{align-items:center;align-self:center;width:100%;height:100%}}.root{display:flex;flex-direction:column}calcite-flow{height:100%;width:100%}.container,.flow-item,.panel{display:flex}.flow-item{overflow:auto}.flow-item[scale=s] .container{gap:var(--calcite-spacing-sm);padding:var(--calcite-spacing-sm) 0}.flow-item[scale=m] .container{gap:var(--calcite-spacing-md);padding:var(--calcite-spacing-md) 0}.flow-item[scale=l] .container{gap:var(--calcite-spacing-lg);padding:var(--calcite-spacing-lg) 0}.container{flex-direction:column;background-color:var(--calcite-color-foreground-1)}.container>*{background-color:var(--calcite-color-foreground-1)}.container>*[scale=s]{padding:0 var(--calcite-spacing-sm) 0 var(--calcite-spacing-sm);font-size:var(--calcite-font-size-sm)}.container>*[scale=m]{padding:0 var(--calcite-spacing-md) 0 var(--calcite-spacing-md);font-size:var(--calcite-font-size-md)}.container>*[scale=l]{padding:0 var(--calcite-spacing-lg) 0 var(--calcite-spacing-lg);font-size:var(--calcite-font-size-lg)}.icon{display:flex;align-items:center;justify-content:center;min-width:var(--calcite-spacing-xxl);height:var(--calcite-spacing-xxl)}.icon span{line-height:0}.feature-icon .icon{margin-inline-start:calc(var(--calcite-spacing-lg) * -1)}.total-count{align-self:center;margin-inline:var(--calcite-spacing-xxs);line-height:initial}.item-count{display:flex;gap:.5em;align-items:center}`, D = k(L);
|
|
25
|
+
class P extends M {
|
|
26
|
+
constructor() {
|
|
27
|
+
super(...arguments), this.viewModel = D(this), this.messages = T(), this.#i = !1, this.#t = /* @__PURE__ */ new WeakSet(), this.#e = null, this.autoDestroyDisabled = !1, this.icon = "selection", this.view = this.viewModel.view, this.displayMode = "group", this.filterText = this.viewModel.filterText, this.hideFilter = !1, this.hideFilterNotice = !1, this.hideHeader = !1, this.hideItemCloseActions = !1, this.hideItemCount = !1, this.hideItemIcons = !1, this.hideItemMenus = !1, this.hideLayerFilter = !1, this.hideMenu = !1, this.hideTotalCount = !1, this.hideZoomToButton = !1, this.highlightOnHoverDisabled = !1, this.layer = this.viewModel.layer, this.maxVisibleFeatureCountPerLayer = this.viewModel.maxVisibleFeatureCountPerLayer, this.menuScale = "m", this.selectionManager = this.viewModel.selectionManager, this.visualScale = "s", this.arcgisPropertyChange = S()("state"), this.arcgisReady = F();
|
|
28
|
+
}
|
|
29
|
+
static {
|
|
30
|
+
this.properties = { hasFilterText: 16, isUpdating: 16, itemWithOpenMenu: 16, autoDestroyDisabled: 5, disabled: 5, icon: 1, label: 1, referenceElement: 1, view: 0, activeLayerItem: 32, afterListItemSelect: 0, allLayerItems: 32, count: 32, displayMode: 1, effectiveSelectionManager: 32, filterText: 1, hideFilter: 5, hideFilterNotice: 5, hideHeader: 5, hideItemCloseActions: 5, hideItemCount: 5, hideItemIcons: 5, hideItemMenus: 5, hideLayerFilter: 5, hideMenu: 5, hideTotalCount: 5, hideZoomToButton: 5, highlightOnHoverDisabled: 5, listItemActionConfigurations: 0, listItemUnavailableFunction: 0, layer: 0, layerItems: 32, maxVisibleFeatureCountExceeded: 32, maxVisibleFeatureCountPerLayer: 9, menuScale: 1, selectionManager: 0, state: 32, visibleFeatureCount: 32, visibleFeatureItems: 32, visibleLayerCount: 32, visualScale: 1 };
|
|
31
|
+
}
|
|
32
|
+
static {
|
|
33
|
+
this.styles = A;
|
|
34
|
+
}
|
|
35
|
+
#i;
|
|
36
|
+
#t;
|
|
37
|
+
#e;
|
|
38
|
+
get hasFilterText() {
|
|
39
|
+
const { filterText: e } = this;
|
|
40
|
+
return e != null && e !== "";
|
|
41
|
+
}
|
|
42
|
+
get isUpdating() {
|
|
43
|
+
return this.viewModel.isUpdating;
|
|
44
|
+
}
|
|
45
|
+
get disabled() {
|
|
46
|
+
return this.#i || this.state === "disabled";
|
|
47
|
+
}
|
|
48
|
+
set disabled(e) {
|
|
49
|
+
this.#i = e;
|
|
50
|
+
}
|
|
51
|
+
get activeLayerItem() {
|
|
52
|
+
return this.viewModel.activeLayerItem;
|
|
53
|
+
}
|
|
54
|
+
get allLayerItems() {
|
|
55
|
+
return this.viewModel.allLayerItems;
|
|
56
|
+
}
|
|
57
|
+
get count() {
|
|
58
|
+
return this.viewModel.effectiveCount;
|
|
59
|
+
}
|
|
60
|
+
get effectiveSelectionManager() {
|
|
61
|
+
return this.viewModel.effectiveSelectionManager;
|
|
62
|
+
}
|
|
63
|
+
get layerItems() {
|
|
64
|
+
return this.viewModel.layerItems;
|
|
65
|
+
}
|
|
66
|
+
get maxVisibleFeatureCountExceeded() {
|
|
67
|
+
return this.viewModel.maxVisibleFeatureCountExceeded;
|
|
68
|
+
}
|
|
69
|
+
get state() {
|
|
70
|
+
return this.viewModel.state;
|
|
71
|
+
}
|
|
72
|
+
get visibleFeatureCount() {
|
|
73
|
+
return this.viewModel.visibleFeatureCount;
|
|
74
|
+
}
|
|
75
|
+
get visibleFeatureItems() {
|
|
76
|
+
return this.viewModel.visibleFeatureItems;
|
|
77
|
+
}
|
|
78
|
+
get visibleLayerCount() {
|
|
79
|
+
return this.viewModel.visibleLayerCount;
|
|
80
|
+
}
|
|
81
|
+
async clear() {
|
|
82
|
+
this.viewModel.clear();
|
|
83
|
+
}
|
|
84
|
+
async collapseAll() {
|
|
85
|
+
this.viewModel.collapseAll();
|
|
86
|
+
}
|
|
87
|
+
async deselectItem(e) {
|
|
88
|
+
this.viewModel.deselectItem(e);
|
|
89
|
+
}
|
|
90
|
+
async destroy() {
|
|
91
|
+
this.viewModel?.destroy();
|
|
92
|
+
}
|
|
93
|
+
async expandAll() {
|
|
94
|
+
this.viewModel.expandAll();
|
|
95
|
+
}
|
|
96
|
+
async findLayerItem(e) {
|
|
97
|
+
return this.viewModel.findLayerItem(e);
|
|
98
|
+
}
|
|
99
|
+
async findParentItem(e) {
|
|
100
|
+
return this.viewModel.findParentItem(e);
|
|
101
|
+
}
|
|
102
|
+
async goToItem(e) {
|
|
103
|
+
this.viewModel.goToItem(e);
|
|
104
|
+
}
|
|
105
|
+
async removeFromSelection(e) {
|
|
106
|
+
this.viewModel.removeFromSelection(e);
|
|
107
|
+
}
|
|
108
|
+
async replace(e) {
|
|
109
|
+
this.viewModel.replace(e);
|
|
110
|
+
}
|
|
111
|
+
async selectItem(e) {
|
|
112
|
+
this.viewModel.selectSingleItem(e);
|
|
113
|
+
}
|
|
114
|
+
connectedCallback() {
|
|
115
|
+
super.connectedCallback(), this.#e = new IntersectionObserver((e, t) => {
|
|
116
|
+
const { messages: a } = this;
|
|
117
|
+
e.forEach((i) => {
|
|
118
|
+
if (!i.isIntersecting)
|
|
119
|
+
return;
|
|
120
|
+
const l = i.target;
|
|
121
|
+
if (this.#t.has(l)) {
|
|
122
|
+
t.unobserve(l);
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
const d = l.getAttribute("data-thumbnail-key"), o = d ? this._getFeatureItemByThumbnailKey(d) : void 0;
|
|
126
|
+
if (!o)
|
|
127
|
+
return;
|
|
128
|
+
this.#t.add(l);
|
|
129
|
+
const m = o.title && a.previewTemplateAriaLabel ? v(a.previewTemplateAriaLabel, { label: o.title }) : a.preview;
|
|
130
|
+
if (o.thumbnail) {
|
|
131
|
+
l.appendChild(o.thumbnail);
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
o.fetchThumbnail({ ariaLabel: m }).then((h) => h && l.appendChild(h)).catch(() => this.#t.delete(l));
|
|
135
|
+
});
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
disconnectedCallback() {
|
|
139
|
+
super.disconnectedCallback(), this.#e?.disconnect();
|
|
140
|
+
}
|
|
141
|
+
_closeItemMenu(e) {
|
|
142
|
+
(!e || e === this.itemWithOpenMenu) && (this.itemWithOpenMenu = void 0);
|
|
143
|
+
}
|
|
144
|
+
_getFeatureItemByThumbnailKey(e) {
|
|
145
|
+
return this.viewModel.visibleFeatureItems.find((t) => t.thumbnailKey === e);
|
|
146
|
+
}
|
|
147
|
+
_isItemUnavailable(e) {
|
|
148
|
+
return !e.layerIsVisible || this.listItemUnavailableFunction?.({ item: e }) || !1;
|
|
149
|
+
}
|
|
150
|
+
_makeObserverRef() {
|
|
151
|
+
let e = null;
|
|
152
|
+
return (t) => {
|
|
153
|
+
t ? (e = t, this.#e?.observe(t)) : e && (this.#e?.unobserve(e), e = null);
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
_afterListItemSelect(e, t) {
|
|
157
|
+
t.stopPropagation(), this._closeItemMenu(), this.afterListItemSelect?.({ item: e });
|
|
158
|
+
}
|
|
159
|
+
#o() {
|
|
160
|
+
if (this.hideTotalCount || this.hideHeader)
|
|
161
|
+
return;
|
|
162
|
+
const { count: e, messages: t } = this, a = g(e), i = t.selectionCount ? v(t.selectionCount, { count: a }) : void 0;
|
|
163
|
+
return s`<calcite-chip appearance=outline class=${r(c.totalCount)} .closable=${e > 0} .closed=${e === 0} .disabled=${this.disabled} .icon=${this.maxVisibleFeatureCountExceeded ? "exclamation-mark-triangle" : void 0} .label=${a} .scale=${this.visualScale} slot=header-actions-end title=${i ?? u} @calciteChipClose=${this.clear}>${a}</calcite-chip>`;
|
|
164
|
+
}
|
|
165
|
+
#c() {
|
|
166
|
+
if (this.hideHeader || this.hideMenu)
|
|
167
|
+
return;
|
|
168
|
+
const { menuScale: e, messages: t } = this, a = this.disabled || this.count === 0;
|
|
169
|
+
return [
|
|
170
|
+
s`<calcite-action .disabled=${a} icon=reset .scale=${e} slot=header-menu-actions .text=${t.clear ?? ""} text-enabled @click=${this.clear}></calcite-action>`,
|
|
171
|
+
s`<calcite-action .disabled=${a} icon=folders .scale=${e} slot=header-menu-actions .text=${t.collapseAll ?? ""} text-enabled @click=${this.collapseAll}></calcite-action>`
|
|
172
|
+
];
|
|
173
|
+
}
|
|
174
|
+
#r() {
|
|
175
|
+
const { layerItems: e, messages: t } = this;
|
|
176
|
+
if (this.count === 0 || e.length < 2 || this.hideLayerFilter)
|
|
177
|
+
return;
|
|
178
|
+
const a = t.allLayersCount ? v(t.allLayersCount, { count: e.length }) : "";
|
|
179
|
+
return s`<calcite-combobox class=${r(c.layerDropdown)} .disabled=${this.disabled} .label=${t.filterByLayer ?? ""} overlay-positioning=fixed .placeholder=${t.filterByLayer} .scale=${this.visualScale} selection-mode=single-persist @calciteComboboxChange=${({ currentTarget: i }) => {
|
|
180
|
+
this.filterText = void 0;
|
|
181
|
+
const l = i.selectedItems[0]?.value ?? void 0;
|
|
182
|
+
this.layer = l === "all-layers" ? void 0 : l;
|
|
183
|
+
}}>${n("all-layers", s`<calcite-combobox-item .heading=${a} icon=layers .selected=${this.layer == null} value=all-layers></calcite-combobox-item>`)}${this.layerItems.map((i) => this.#h(i))}</calcite-combobox>`;
|
|
184
|
+
}
|
|
185
|
+
#d() {
|
|
186
|
+
if (!(this.hideFilter || this.count === 0))
|
|
187
|
+
return s`<calcite-input clearable .disabled=${this.disabled} icon=search .placeholder=${this.messages.filter} .scale=${this.visualScale} .value=${this.filterText} @calciteInputInput=${({ target: { value: e } }) => {
|
|
188
|
+
this.filterText = e;
|
|
189
|
+
}}></calcite-input>`;
|
|
190
|
+
}
|
|
191
|
+
#h(e) {
|
|
192
|
+
const t = e.title || this.messages?.untitledLayer || "";
|
|
193
|
+
return n(e.key, s`<calcite-combobox-item .heading=${t} .icon=${e.iconName} .selected=${e.layer === this.layer} .value=${e.layer}></calcite-combobox-item>`);
|
|
194
|
+
}
|
|
195
|
+
#u() {
|
|
196
|
+
const { messages: e } = this;
|
|
197
|
+
if (this.visibleFeatureCount !== 0)
|
|
198
|
+
return s`<calcite-list .disabled=${this.disabled} display-mode=nested interaction-mode=interactive .label=${e.componentLabel ?? ""} .loading=${this.isUpdating} .scale=${this.visualScale} selection-mode=none>${this.#s(this.allLayerItems)}</calcite-list>`;
|
|
199
|
+
}
|
|
200
|
+
#s(e) {
|
|
201
|
+
return this.activeLayerItem ? this.#l(this.activeLayerItem) : e.map((t) => b(t) ? this.#v(t) : I(t) ? this.#l(t) : null).filter((t) => t != null);
|
|
202
|
+
}
|
|
203
|
+
#m() {
|
|
204
|
+
if (!(this.disabled || this.visibleFeatureCount > 0 || this.hideFilter || this.hideFilterNotice))
|
|
205
|
+
return s`<calcite-notice class=${r(c.notice)} icon=exclamation-mark-triangle kind=info open .scale=${this.visualScale} width=full><div slot=message>${this.messages.noMatchingFeatures}</div></calcite-notice>`;
|
|
206
|
+
}
|
|
207
|
+
#p(e) {
|
|
208
|
+
if (this.hideItemCount)
|
|
209
|
+
return;
|
|
210
|
+
const { messages: t } = this, a = g(e.total), i = g(e.visibleTotal), l = t.selectionCount ? v(t.selectionCount, { count: a }) : void 0;
|
|
211
|
+
return !this.hasFilterText && e.maxVisibleFeatureCountExceeded ? s`<span class=${r(c.itemCount)} slot=content-end title=${l ?? u}><calcite-icon icon=exclamation-mark-triangle scale=s title=${t.tooManyFeatures ?? u}></calcite-icon>${`${g(this.maxVisibleFeatureCountPerLayer)}+`}</span>` : s`<span class=${r(c.itemCount)} slot=content-end title=${l ?? u}>${i}</span>`;
|
|
212
|
+
}
|
|
213
|
+
#a(e) {
|
|
214
|
+
if (this.hideItemMenus)
|
|
215
|
+
return;
|
|
216
|
+
const { messages: t } = this, a = this.itemWithOpenMenu === e, i = C(e), l = I(e), d = b(e), o = i ? t.deselectFeature : l ? t.deselectLayer : t.deselectGroup;
|
|
217
|
+
return [
|
|
218
|
+
n("dropdown", s`<calcite-dropdown .open=${a} overlay-positioning=fixed placement=bottom-end .scale=${this.menuScale} slot=actions-end width=m @calciteDropdownClose=${() => this._closeItemMenu(e)} @calciteDropdownOpen=${() => {
|
|
219
|
+
this.itemWithOpenMenu = e;
|
|
220
|
+
}}>${n("action", s`<calcite-action icon=ellipsis .scale=${this.visualScale} slot=trigger .text=${t.menu ?? ""}></calcite-action>`)}${// Only render menu-items for open menu(s) to reduce
|
|
221
|
+
// the total number of list item elements in the DOM at any time.
|
|
222
|
+
a ? n("dropdown-group", s`<calcite-dropdown-group selection-mode=none>${this.hideZoomToButton ? void 0 : n("zoom-to", s`<calcite-dropdown-item icon-start=layer-zoom-to @calciteDropdownItemSelect=${() => this.goToItem(e)}>${t.zoomTo}</calcite-dropdown-item>`)}${n("select-single", s`<calcite-dropdown-item icon-start=selection-filter @calciteDropdownItemSelect=${() => this.selectItem(e)}>${i ? t.onlySelectFeature : t.onlySelectThis}</calcite-dropdown-item>`)}${n("clear-selection", s`<calcite-dropdown-item icon-start=selection-x @calciteDropdownItemSelect=${() => this.deselectItem(e)}>${o}</calcite-dropdown-item>`)}${this.listItemActionConfigurations?.map((m) => {
|
|
223
|
+
const { disabled: h, hidden: f, label: $, type: p } = m;
|
|
224
|
+
if (!(typeof f == "function" ? f({ item: e }) : !!f) && (!p || p === "feature" && i || p === "layer" && l || p === "group" && d))
|
|
225
|
+
return n(`custom-action-${$}`, s`<calcite-dropdown-item .disabled=${typeof h == "function" ? h({ item: e }) : !!h} .iconStart=${m.icon ?? void 0} @calciteDropdownItemSelect=${() => m.callback({ item: e })}>${$}</calcite-dropdown-item>`);
|
|
226
|
+
})}</calcite-dropdown-group>`) : void 0}</calcite-dropdown>`)
|
|
227
|
+
];
|
|
228
|
+
}
|
|
229
|
+
#v(e) {
|
|
230
|
+
const t = e.title || this.messages.untitledLayer;
|
|
231
|
+
if (e.visibleTotal === 0)
|
|
232
|
+
return;
|
|
233
|
+
const { displayMode: a } = this;
|
|
234
|
+
return a === "layer" || a === "feature" ? this.#s(e.items) : n(e.key, s`<calcite-list-item .closable=${!this.hideItemCloseActions} .expanded=${e.expanded} .iconStart=${this.hideItemIcons ? void 0 : e.iconName} .label=${t} .unavailable=${this._isItemUnavailable(e)} .value=${e.title} @calciteListItemCollapse=${(i) => {
|
|
235
|
+
i.stopPropagation(), e.expanded = !1;
|
|
236
|
+
}} @calciteListItemClose=${(i) => {
|
|
237
|
+
i.stopPropagation(), this.deselectItem(e);
|
|
238
|
+
}} @calciteListItemExpand=${(i) => {
|
|
239
|
+
i.stopPropagation(), e.expanded = !0;
|
|
240
|
+
}} @calciteListItemSelect=${(i) => this._afterListItemSelect(e, i)}>${this.#a(e)}${this.#s(e.items)}</calcite-list-item>`);
|
|
241
|
+
}
|
|
242
|
+
#l(e) {
|
|
243
|
+
if (e.visibleTotal === 0 || !e.visible)
|
|
244
|
+
return;
|
|
245
|
+
if (this.displayMode === "feature")
|
|
246
|
+
return this.#n(e.featureItems);
|
|
247
|
+
const { messages: t } = this, a = e.title || t.untitledLayer;
|
|
248
|
+
return n(e.key, s`<calcite-list-item .closable=${!this.hideItemCloseActions} .expanded=${e.expanded} .iconStart=${this.hideItemIcons ? void 0 : e.iconName} .label=${a} title=${(e.layerIsVisible ? void 0 : t.layerIsNotVisible) ?? u} .unavailable=${this._isItemUnavailable(e)} .value=${e.title} @calciteListItemCollapse=${(i) => {
|
|
249
|
+
i.stopPropagation(), e.expanded = !1;
|
|
250
|
+
}} @calciteListItemClose=${(i) => {
|
|
251
|
+
i.stopPropagation(), this.deselectItem(e);
|
|
252
|
+
}} @calciteListItemExpand=${(i) => {
|
|
253
|
+
i.stopPropagation(), e.expanded = !0;
|
|
254
|
+
}} @calciteListItemSelect=${(i) => this._afterListItemSelect(e, i)}>${this.#p(e)}${this.#a(e)}${this.#n(e.featureItems)}${e.maxVisibleFeatureCountExceeded ? s`<calcite-notice class=${r(c.notice)} icon=exclamation-mark-triangle kind=info open .scale=${this.visualScale}><div slot=message>${t.tooManyFeatures}</div></calcite-notice>` : void 0}</calcite-list-item>`);
|
|
255
|
+
}
|
|
256
|
+
#n(e) {
|
|
257
|
+
return e.map((t) => this.#g(t));
|
|
258
|
+
}
|
|
259
|
+
#g(e) {
|
|
260
|
+
if (!e.visible)
|
|
261
|
+
return;
|
|
262
|
+
const { highlightOnHoverDisabled: t, messages: a, viewModel: i } = this, l = e.title || a.untitledFeature, d = !this.hideItemIcons && this.displayMode !== "feature";
|
|
263
|
+
return n(e.key, s`<calcite-list-item class=${r(d ? c.listItemFeatureIcon : c.listItemFeature)} .closable=${!this.hideItemCloseActions} .label=${l} .unavailable=${this._isItemUnavailable(e)} .value=${l} @blur=${t ? void 0 : () => i.removeTemporaryHighlight()} @calciteListItemClose=${(o) => {
|
|
264
|
+
o.stopPropagation(), this.deselectItem(e);
|
|
265
|
+
}} @calciteListItemSelect=${(o) => this._afterListItemSelect(e, o)} @focus=${t ? void 0 : () => i.addTemporaryHighlight(e)} @pointerenter=${t ? void 0 : () => i.addTemporaryHighlight(e)} @pointerleave=${t ? void 0 : () => i.removeTemporaryHighlight()}>${this.#f(e)}${this.#a(e)}</calcite-list-item>`);
|
|
266
|
+
}
|
|
267
|
+
#f(e) {
|
|
268
|
+
if (!this.hideItemIcons)
|
|
269
|
+
return n("thumbnail-container", s`<div class=${r(c.listItemIcon)} slot=content-start>${n(e.thumbnailKey, s`<span data-thumbnail-key=${e.thumbnailKey ?? u} ${x(this._makeObserverRef())}></span>`)}</div>`);
|
|
270
|
+
}
|
|
271
|
+
render() {
|
|
272
|
+
const e = this.hideHeader ? void 0 : this.el.title || this.messages.selection;
|
|
273
|
+
return s`<div><calcite-flow><calcite-flow-item class=${r(c.flowItem)} .heading=${e} .loading=${this.state === "loading"} overlay-positioning=fixed .scale=${this.visualScale} selected><calcite-panel class=${r(c.panel)} .disabled=${this.disabled} overlay-positioning=fixed .scale=${this.visualScale}><div class=${r(c.container)}>${this.#r()}${this.#d()}${this.#u()}${this.#m()}</div></calcite-panel>${this.#o()}${this.#c()}</calcite-flow-item></calcite-flow></div>`;
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
y("arcgis-selection-list", P);
|
|
277
|
+
export {
|
|
278
|
+
P as ArcgisSelectionList
|
|
279
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./customElement.js";
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import "@esri/calcite-components/components/calcite-chip";
|
|
2
|
+
import "@esri/calcite-components/components/calcite-action";
|
|
3
|
+
import "@esri/calcite-components/components/calcite-combobox";
|
|
4
|
+
import "@esri/calcite-components/components/calcite-combobox-item";
|
|
5
|
+
import "@esri/calcite-components/components/calcite-input";
|
|
6
|
+
import "@esri/calcite-components/components/calcite-list";
|
|
7
|
+
import "@esri/calcite-components/components/calcite-notice";
|
|
8
|
+
import "@esri/calcite-components/components/calcite-icon";
|
|
9
|
+
import "@esri/calcite-components/components/calcite-dropdown";
|
|
10
|
+
import "@esri/calcite-components/components/calcite-dropdown-group";
|
|
11
|
+
import "@esri/calcite-components/components/calcite-dropdown-item";
|
|
12
|
+
import "@esri/calcite-components/components/calcite-list-item";
|
|
13
|
+
import "@esri/calcite-components/components/calcite-flow";
|
|
14
|
+
import "@esri/calcite-components/components/calcite-flow-item";
|
|
15
|
+
import "@esri/calcite-components/components/calcite-panel";
|
|
16
|
+
export * from "./customElement.js";
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import type { ListItem } from "@arcgis/core/widgets/support/SelectionList/types.js";
|
|
2
|
+
import type { Icon } from "@esri/calcite-components/components/calcite-icon";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* A callback function that is called to determine if a menu action should be unavailable.
|
|
6
|
+
*
|
|
7
|
+
* @param params
|
|
8
|
+
* @since 5.2
|
|
9
|
+
*/
|
|
10
|
+
export type ListItemUnavailableFunction = (params: { item: ListItem; }) => boolean;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Configuration for list item menu actions.
|
|
14
|
+
*
|
|
15
|
+
* @since 5.2
|
|
16
|
+
*/
|
|
17
|
+
export interface ListItemActionConfiguration {
|
|
18
|
+
/**
|
|
19
|
+
* A label for the menu action. This will be displayed in the list item menu.
|
|
20
|
+
*
|
|
21
|
+
* @since 5.2
|
|
22
|
+
*/
|
|
23
|
+
label: string;
|
|
24
|
+
/** A callback function that is called when the menu action is selected. */
|
|
25
|
+
callback: ListItemActionCallbackFunction;
|
|
26
|
+
/**
|
|
27
|
+
* An optional callback function that is called to determine if the menu action should be disabled.
|
|
28
|
+
* If this function returns true, the menu action will be disabled. This value can also be a boolean.
|
|
29
|
+
*
|
|
30
|
+
* @since 5.2
|
|
31
|
+
*/
|
|
32
|
+
disabled?: ListItemActionDisabledFunction | boolean;
|
|
33
|
+
/**
|
|
34
|
+
* An optional callback function that is called to determine if the menu action should be hidden.
|
|
35
|
+
* If this function returns true, the menu action will be hidden. This value can also be a boolean.
|
|
36
|
+
*
|
|
37
|
+
* @since 5.2
|
|
38
|
+
*/
|
|
39
|
+
hidden?: ListItemActionHiddenFunction | boolean;
|
|
40
|
+
/**
|
|
41
|
+
* An optional property specifying an icon to display for the menu action.
|
|
42
|
+
*
|
|
43
|
+
* @since 5.2
|
|
44
|
+
*/
|
|
45
|
+
icon?: Icon["icon"];
|
|
46
|
+
/**
|
|
47
|
+
* The type of the list item that the menu action configuration applies to.
|
|
48
|
+
* If this property is not specified, the menu action will be available for all list item types.
|
|
49
|
+
*
|
|
50
|
+
* @since 5.2
|
|
51
|
+
*/
|
|
52
|
+
type?: null | undefined | "feature" | "group" | "layer";
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* A callback function that is called when a list item is selected.
|
|
57
|
+
*
|
|
58
|
+
* @param params
|
|
59
|
+
* @since 5.2
|
|
60
|
+
*/
|
|
61
|
+
export type ListItemSelectCallback = (params: { item: ListItem; }) => void;
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* A callback function that is called when a menu action is selected.
|
|
65
|
+
*
|
|
66
|
+
* @param params
|
|
67
|
+
* @since 5.2
|
|
68
|
+
*/
|
|
69
|
+
export type ListItemActionCallbackFunction = (params: { item: ListItem; }) => void;
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* A callback function that is called to determine if a menu action should be disabled.
|
|
73
|
+
*
|
|
74
|
+
* @param params
|
|
75
|
+
* @since 5.2
|
|
76
|
+
*/
|
|
77
|
+
export type ListItemActionDisabledFunction = (params: { item: ListItem; }) => boolean;
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* A callback function that is called to determine if a menu action should be hidden.
|
|
81
|
+
*
|
|
82
|
+
* @param params
|
|
83
|
+
* @since 5.2
|
|
84
|
+
*/
|
|
85
|
+
export type ListItemActionHiddenFunction = (params: { item: ListItem; }) => boolean;
|
|
@@ -10,19 +10,19 @@ import { usePropertyChange as T } from "@arcgis/lumina/controllers";
|
|
|
10
10
|
import { reEmitEvent as D } from "@arcgis/lumina/controllers/accessor";
|
|
11
11
|
import { classes as P } from "@arcgis/toolkit/dom";
|
|
12
12
|
import { generateGuid as N } from "@arcgis/toolkit/string";
|
|
13
|
-
import { createRef as U, ref as
|
|
13
|
+
import { createRef as U, ref as x } from "lit/directives/ref.js";
|
|
14
14
|
import { html as o } from "lit";
|
|
15
|
-
import { u as
|
|
15
|
+
import { u as A } from "../../chunks/useT9n.js";
|
|
16
16
|
import { g as u } from "../../chunks/globalCss.js";
|
|
17
17
|
import { m as B, b as R, r as k, e as S } from "../../chunks/layer-list-utils.js";
|
|
18
|
-
import {
|
|
18
|
+
import { ArcgisLayerListItem as G } from "../arcgis-layer-list-next/layer-list-item/customElement.js";
|
|
19
19
|
import { s as O, a as q } from "../../chunks/layer-list-next.js";
|
|
20
20
|
import { c as H } from "../../chunks/css.js";
|
|
21
21
|
import { m as V } from "../../chunks/useViewModel.js";
|
|
22
22
|
const w = H, y = "nested", j = V(L);
|
|
23
23
|
class z extends E {
|
|
24
24
|
constructor() {
|
|
25
|
-
super(...arguments), this._lastDragDetail = null, this._rootGroupUid = `table-${N()}`, this._rootListRef = U(), this._selectedDragItemLayerUid = null, this.messages =
|
|
25
|
+
super(...arguments), this._lastDragDetail = null, this._rootGroupUid = `table-${N()}`, this._rootListRef = U(), this._selectedDragItemLayerUid = null, this.messages = A(), this.viewModel = j(this), this._canMove = ({ dragEl: e, fromEl: t, toEl: i }, s) => {
|
|
26
26
|
const l = s === "pull" ? this.listItemCanGiveFunction : this.listItemCanReceiveFunction, a = this._getItem(e);
|
|
27
27
|
if (!a || !("sortable" in a) || !a.sortable)
|
|
28
28
|
return !1;
|
|
@@ -166,7 +166,7 @@ class z extends E {
|
|
|
166
166
|
const { collapsed: e, _visibleItems: t, _filterEnabled: i, _rootGroupUid: s, showCloseButton: l, showCollapseButton: a, showHeading: h, _dragEnabled: d, selectionMode: n, filterText: m, filterPlaceholder: f, messages: g } = this, p = [
|
|
167
167
|
o`<calcite-flow-item .closable=${l} .closed=${this.closed} .collapsed=${e} .collapsible=${a} .heading=${h ? this.label ?? g.componentLabel : void 0} .headingLevel=${this.headingLevel} .selected=${!this._openedPanelItems.length} @calciteFlowItemClose=${() => this._handleFlowItemClose()}>${t?.length ? o`<calcite-list .canPull=${(r) => this._canMove(r, "pull")} .canPut=${(r) => this._canMove(r, "put")} data-layer-type=${s ?? F} .displayMode=${y} .dragEnabled=${d} .filterEnabled=${i} .filterPlaceholder=${f} .filterProps=${S} .filterText=${i ? m : ""} .group=${s} .label=${this.label ?? g.componentLabel} selection-appearance=border .selectionMode=${n} @calciteListChange=${this._handleCalciteListChange} @calciteListDragEnd=${(r) => this._handleCalciteListDragEnd(r.detail)} @calciteListFilter=${(r) => {
|
|
168
168
|
this.filterText = r.currentTarget?.filterText ?? "", this.arcgisFilterChange.emit();
|
|
169
|
-
}} @calciteListOrderChange=${(r) => this._onCalciteListOrderChange(r.detail)} ${
|
|
169
|
+
}} @calciteListOrderChange=${(r) => this._onCalciteListOrderChange(r.detail)} ${x(this._rootListRef)}>${t.toArray().map((r) => this._renderItem(r))}${i && !this.hideNoFilterResultsNotice ? o`<div class=${b(w.filterNoResults)} slot=filter-no-results><calcite-notice kind=info open width=full>${this._renderNoItemsMessage()}</calcite-notice></div>` : null}</calcite-list>` : this._renderNoItems()}</calcite-flow-item>`,
|
|
170
170
|
this._renderPanelFlowItems()
|
|
171
171
|
];
|
|
172
172
|
return this.closed ? null : _("root-flow", o`<calcite-flow>${p}</calcite-flow>`);
|
package/dist/components/arcgis-utility-network-aggregated-geometry-result-item/customElement.d.ts
CHANGED
|
@@ -71,7 +71,8 @@ export abstract class ArcgisUtilityNetworkAggregatedGeometryResultItem extends L
|
|
|
71
71
|
/** The heading of the result item. */
|
|
72
72
|
accessor heading: string | undefined;
|
|
73
73
|
/**
|
|
74
|
-
* Whether
|
|
74
|
+
* Whether to hide the aggregated geometry [graphics](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-utility-network-aggregated-geometry-result-item/#geometryGraphics)
|
|
75
|
+
* from the map when the trace result contains aggregated geometry results.
|
|
75
76
|
*
|
|
76
77
|
* @default false
|
|
77
78
|
*/
|
|
@@ -177,7 +177,7 @@ export abstract class ArcgisUtilityNetworkElementsResultItem extends LitElement
|
|
|
177
177
|
clearResult(): void;
|
|
178
178
|
/** Permanently destroy the component. */
|
|
179
179
|
destroy(): Promise<void>;
|
|
180
|
-
readonly arcgisPropertyChange: import("@arcgis/lumina").TargetedEvent<this, { name: "isFeaturesListShown" | "selectedResultFeature"; }>;
|
|
180
|
+
readonly arcgisPropertyChange: import("@arcgis/lumina").TargetedEvent<this, { name: "isFeaturesListShown" | "selectedResultFeature" | "state"; }>;
|
|
181
181
|
/** Fires when the component finishes querying all features for the trace result elements. */
|
|
182
182
|
readonly arcgisResultReady: import("@arcgis/lumina").TargetedEvent<this, void>;
|
|
183
183
|
/** Emitted when an action is triggered on the component. */
|
|
@@ -12,7 +12,7 @@ import { q as S, c as p, d as v } from "../../chunks/layer-utils.js";
|
|
|
12
12
|
const $ = E`arcgis-features-next{height:100%}.elements-list-item{border:solid 1px var(--calcite-color-border-3);border-radius:var(--calcite-corner-radius-sm);margin:0 var(--calcite-spacing-sm)}.features-hidden{margin:var(--calcite-spacing-md);color:var(--calcite-color-text-3);font-size:var(--calcite-font-size)}`;
|
|
13
13
|
class A extends R {
|
|
14
14
|
constructor() {
|
|
15
|
-
super(...arguments), this._messages = L({ blocking: !0 }), this.#l = !0, this.#e = [], this.#t = [], this.#s = /* @__PURE__ */ new Map(), this.#n = /* @__PURE__ */ new Map(), this.#i = /* @__PURE__ */ new Map(), this.#r = /* @__PURE__ */ new Map(), this.#a = [], this._isFeaturesSelected = !1, this.autoDestroyDisabled = !1, this.disableHighlightFeatureResults = !1, this.features = [], this.hideActionBar = !1, this.hideFeatureResults = !1, this.hidePlaceholder = !1, this.includeDefaultActionsDisabled = !1, this.layers = [], this.state = "loading", this.arcgisPropertyChange = b()("isFeaturesListShown", "selectedResultFeature"), this.arcgisTriggerAction = y(), this.arcgisResultReady = y();
|
|
15
|
+
super(...arguments), this._messages = L({ blocking: !0 }), this.#l = !0, this.#e = [], this.#t = [], this.#s = /* @__PURE__ */ new Map(), this.#n = /* @__PURE__ */ new Map(), this.#i = /* @__PURE__ */ new Map(), this.#r = /* @__PURE__ */ new Map(), this.#a = [], this._isFeaturesSelected = !1, this.autoDestroyDisabled = !1, this.disableHighlightFeatureResults = !1, this.features = [], this.hideActionBar = !1, this.hideFeatureResults = !1, this.hidePlaceholder = !1, this.includeDefaultActionsDisabled = !1, this.layers = [], this.state = "loading", this.arcgisPropertyChange = b()("isFeaturesListShown", "selectedResultFeature", "state"), this.arcgisTriggerAction = y(), this.arcgisResultReady = y();
|
|
16
16
|
}
|
|
17
17
|
static {
|
|
18
18
|
this.properties = { _featuresComponentElement: 16, _isFeaturesSelected: 16, actions: 0, autoDestroyDisabled: 5, disableHighlightFeatureResults: 5, features: 32, heading: 1, hideActionBar: 5, hideFeatureResults: 5, hidePlaceholder: 5, includeDefaultActionsDisabled: 5, isFeaturesListShown: 32, layers: 0, messageOverrides: 0, numResults: 32, referenceElement: 1, selectedResultFeature: 32, state: 1, traceResult: 0, utilityNetwork: 0, view: 0 };
|
|
@@ -35,7 +35,7 @@ class A extends R {
|
|
|
35
35
|
#r;
|
|
36
36
|
#a;
|
|
37
37
|
get isFeaturesListShown() {
|
|
38
|
-
return (this._isFeaturesSelected || this.#o) && !this.hideFeatureResults && !this._featuresComponentElement?.manager
|
|
38
|
+
return (this._isFeaturesSelected || this.#o) && !this.hideFeatureResults && !this._featuresComponentElement?.manager?.destroyed;
|
|
39
39
|
}
|
|
40
40
|
get numResults() {
|
|
41
41
|
return this.features.length + this.#e.length;
|
|
@@ -255,6 +255,13 @@ export abstract class ArcgisUtilityNetworkTraceAnalysisNext extends LitElement {
|
|
|
255
255
|
* ```
|
|
256
256
|
*/
|
|
257
257
|
accessor hideFeatureResults: boolean;
|
|
258
|
+
/**
|
|
259
|
+
* Whether to hide the aggregated geometry [graphics](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-utility-network-aggregated-geometry-result-item/#geometryGraphics)
|
|
260
|
+
* from the map when the trace result contains aggregated geometry results.
|
|
261
|
+
*
|
|
262
|
+
* @default false
|
|
263
|
+
*/
|
|
264
|
+
accessor hideGraphics: boolean;
|
|
258
265
|
/**
|
|
259
266
|
* Whether to hide the placeholder string when feature results are hidden in the results tab.
|
|
260
267
|
*
|
|
@@ -349,6 +356,7 @@ export abstract class ArcgisUtilityNetworkTraceAnalysisNext extends LitElement {
|
|
|
349
356
|
* Event payload contains a boolean representing whether the aggregated geometry graphics are hidden.
|
|
350
357
|
* If true, the aggregated geometry graphics are hidden on the view.
|
|
351
358
|
*
|
|
359
|
+
* @deprecated since 5.2. Use [@arcgisPropertyChange](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-utility-network-trace-analysis-next/#event-arcgisPropertyChange) instead.
|
|
352
360
|
* @example
|
|
353
361
|
* ```js
|
|
354
362
|
* const traceElement = document.querySelector("arcgis-utility-network-trace-analysis-next");
|
|
@@ -359,6 +367,8 @@ export abstract class ArcgisUtilityNetworkTraceAnalysisNext extends LitElement {
|
|
|
359
367
|
* ```
|
|
360
368
|
*/
|
|
361
369
|
readonly arcgisHideGraphicsChange: import("@arcgis/lumina").TargetedEvent<this, boolean>;
|
|
370
|
+
/** Emitted when the value of a property is changed. Use this to listen to changes to properties. */
|
|
371
|
+
readonly arcgisPropertyChange: import("@arcgis/lumina").TargetedEvent<this, { name: "aggregatedGeometryGraphicsColor" | "hideGraphics"; }>;
|
|
362
372
|
/** Emitted when the component associated with a map or scene view is ready to be interacted with. */
|
|
363
373
|
readonly arcgisReady: import("@arcgis/lumina").TargetedEvent<this, void>;
|
|
364
374
|
/**
|
|
@@ -431,6 +441,7 @@ export abstract class ArcgisUtilityNetworkTraceAnalysisNext extends LitElement {
|
|
|
431
441
|
readonly arcgisTriggerAction: import("@arcgis/lumina").TargetedEvent<this, ActionEvent>;
|
|
432
442
|
readonly "@eventTypes": {
|
|
433
443
|
arcgisHideGraphicsChange: ArcgisUtilityNetworkTraceAnalysisNext["arcgisHideGraphicsChange"]["detail"];
|
|
444
|
+
arcgisPropertyChange: ArcgisUtilityNetworkTraceAnalysisNext["arcgisPropertyChange"]["detail"];
|
|
434
445
|
arcgisReady: ArcgisUtilityNetworkTraceAnalysisNext["arcgisReady"]["detail"];
|
|
435
446
|
arcgisTraceLocationSelectEnd: ArcgisUtilityNetworkTraceAnalysisNext["arcgisTraceLocationSelectEnd"]["detail"];
|
|
436
447
|
arcgisTraceLocationSelectStart: ArcgisUtilityNetworkTraceAnalysisNext["arcgisTraceLocationSelectStart"]["detail"];
|