@arcgis/map-components 5.0.0-next.163 → 5.0.0-next.165
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/27EX7BAT.js +2 -0
- package/dist/cdn/{ANP7PYGJ.js → 2FBKLGCE.js} +1 -1
- package/dist/cdn/{U3H7EVCU.js → 2GYHEEJC.js} +1 -1
- package/dist/cdn/2KXVCJMQ.js +2 -0
- package/dist/cdn/{K4PC3ILQ.js → 2TODV24L.js} +1 -1
- package/dist/cdn/{MAM7YHLA.js → 2VVXUYOF.js} +1 -1
- package/dist/cdn/{QUHJMEBB.js → 2YI467ME.js} +1 -1
- package/dist/cdn/34S3BZS7.js +2 -0
- package/dist/cdn/{JCW65STL.js → 36NT6EOS.js} +1 -1
- package/dist/cdn/{7NOD6U2Y.js → 3K3Q3L5Z.js} +1 -1
- package/dist/cdn/{ORVYHFUJ.js → 3L6KP67K.js} +1 -1
- package/dist/cdn/{UELD2T53.js → 3O5MUEQE.js} +1 -1
- package/dist/cdn/{ILFME5US.js → 3RF66PN5.js} +1 -1
- package/dist/cdn/{PYMUS3H4.js → 46XRVUAH.js} +1 -1
- package/dist/cdn/{CO7UZYM2.js → 4IFHPHVF.js} +1 -1
- package/dist/cdn/{42WUBROP.js → 4OMTR2QQ.js} +1 -1
- package/dist/cdn/{RZ4T32PU.js → 4PK3GJ4F.js} +1 -1
- package/dist/cdn/{BGG5VIEL.js → 53LWO7HI.js} +1 -1
- package/dist/cdn/{TGUIWWDN.js → 5M4DDFN6.js} +1 -1
- package/dist/cdn/{JWT66RP2.js → 5PG27K3A.js} +1 -1
- package/dist/cdn/{U4TAMNG3.js → 5UFFQJSU.js} +1 -1
- package/dist/cdn/{TQRR2FH6.js → 5Y6NI7HQ.js} +1 -1
- package/dist/cdn/{KAZBQ6OA.js → 67G4OVIE.js} +1 -1
- package/dist/cdn/{QKSSTPS3.js → 7INPCVND.js} +1 -1
- package/dist/cdn/{LE7AXIL2.js → 7QF7HEDI.js} +1 -1
- package/dist/cdn/{7AGJFQHK.js → AAH2GFLP.js} +1 -1
- package/dist/cdn/AC3NQPKC.js +2 -0
- package/dist/cdn/{26SX6MF4.js → AGY724TJ.js} +1 -1
- package/dist/cdn/AHTIA2R6.js +2 -0
- package/dist/cdn/{25HB2UBJ.js → AIRTNDBH.js} +1 -1
- package/dist/cdn/{JZXMWXVD.js → AOZ2GPBD.js} +1 -1
- package/dist/cdn/{PZ2JPHRS.js → AX67NWFX.js} +1 -1
- package/dist/cdn/{WDTFIXMM.js → BHWPGG7Z.js} +1 -1
- package/dist/cdn/{F2HPTFLQ.js → BPZSPB4L.js} +1 -1
- package/dist/cdn/{67DKLGTW.js → BQDOPZG6.js} +1 -1
- package/dist/cdn/{H5RGMC7S.js → BYVF7WOC.js} +1 -1
- package/dist/cdn/{KGJGLAWM.js → CAW2JA3E.js} +1 -1
- package/dist/cdn/{JUHCPSPF.js → CAYSZWRK.js} +1 -1
- package/dist/cdn/{CSU7GLED.js → CBR6PUEY.js} +1 -1
- package/dist/cdn/{CEB3VR24.js → CFZXYFU7.js} +1 -1
- package/dist/cdn/{R2FIOZIL.js → CGRFWSSV.js} +1 -1
- package/dist/cdn/{KWIBK4I5.js → CGROBDHE.js} +1 -1
- package/dist/cdn/{N7QKWBTM.js → COEDZB6D.js} +1 -1
- package/dist/cdn/{BKYII5LQ.js → CQ6KMSIO.js} +1 -1
- package/dist/cdn/CXJGKZ7S.js +2 -0
- package/dist/cdn/{5LG4S2WV.js → DGDL4K6G.js} +1 -1
- package/dist/cdn/{4ESEDU4X.js → DHOVN4JA.js} +1 -1
- package/dist/cdn/{IQ7EVFBF.js → DI66GYDO.js} +1 -1
- package/dist/cdn/{M3AVHGBC.js → DMUVML6L.js} +1 -1
- package/dist/cdn/{ZOBY4YF2.js → DXJ7TMEQ.js} +1 -1
- package/dist/cdn/EGCQFNG3.js +2 -0
- package/dist/cdn/EOFEVRA3.js +2 -0
- package/dist/cdn/{XCDPFMHG.js → FFKZELBO.js} +1 -1
- package/dist/cdn/{EO66UQLI.js → FNAMDUKT.js} +1 -1
- package/dist/cdn/{HYBTGX3N.js → FOLIPPYI.js} +1 -1
- package/dist/cdn/{4WMWNIPN.js → FZVLJT66.js} +1 -1
- package/dist/cdn/{NMUWFJ4U.js → GD4LUFAZ.js} +1 -1
- package/dist/cdn/{WV6XSMZW.js → GK5T2FD6.js} +1 -1
- package/dist/cdn/{AJ64UYFM.js → GNCHWVNF.js} +1 -1
- package/dist/cdn/{IL56ZRDO.js → GOBIBDSA.js} +1 -1
- package/dist/cdn/HOBC5TEW.js +2 -0
- package/dist/cdn/{YLSIF5R2.js → HVRIARCB.js} +1 -1
- package/dist/cdn/{7WJ6TNOT.js → IEH4OYWP.js} +1 -1
- package/dist/cdn/IMPTONCA.js +2 -0
- package/dist/cdn/{RYKRMJMK.js → IPCQCFE3.js} +1 -1
- package/dist/cdn/{FRGWWVJK.js → J2N4NGSM.js} +1 -1
- package/dist/cdn/{F6QNNUIN.js → J4BNEHAO.js} +1 -1
- package/dist/cdn/JDP3YCBM.js +2 -0
- package/dist/cdn/{RE2BXNZ3.js → JPZMCGTS.js} +1 -1
- package/dist/cdn/{2FTXKTA4.js → JW5X664C.js} +1 -1
- package/dist/cdn/{NXZJ43G3.js → JYJBSAJT.js} +1 -1
- package/dist/cdn/{RB7GCEEB.js → K6Z5GBWL.js} +1 -1
- package/dist/cdn/{6424II7L.js → KBQK73Z2.js} +1 -1
- package/dist/cdn/{UQKKALKO.js → KCQB4NNK.js} +1 -1
- package/dist/cdn/{DT74YNQP.js → KRVZWYAS.js} +1 -1
- package/dist/cdn/{OFQNQF6N.js → KVJKF3VJ.js} +1 -1
- package/dist/cdn/{J4XU75P7.js → KXTLXAZQ.js} +1 -1
- package/dist/cdn/{Z6LXLPK7.js → LRUQSH7S.js} +1 -1
- package/dist/cdn/{X7QWBVC2.js → M3LMLGTS.js} +1 -1
- package/dist/cdn/{SQFVC4KA.js → MJBV536L.js} +1 -1
- package/dist/cdn/{FA3Z6QOE.js → MQYKZ2MY.js} +1 -1
- package/dist/cdn/{AX23Q2XH.js → N7JZUN7G.js} +1 -1
- package/dist/cdn/{ESNK6MCY.js → NMKZ77A3.js} +1 -1
- package/dist/cdn/{6IPVLMFQ.js → OJCRKH55.js} +1 -1
- package/dist/cdn/{WLNRPTCN.js → OKSHNWO7.js} +1 -1
- package/dist/cdn/{HKVQWRPL.js → OROETUZO.js} +1 -1
- package/dist/cdn/OY3WQBQM.js +2 -0
- package/dist/cdn/{KRVBBG4M.js → QGNFMBBV.js} +1 -1
- package/dist/cdn/{UW3G2BPO.js → QNCFWECI.js} +1 -1
- package/dist/cdn/{B7SDETM6.js → QSOGE4GS.js} +1 -1
- package/dist/cdn/{OKRTKYGF.js → QTOSV4XU.js} +1 -1
- package/dist/cdn/RTC24EVK.js +2 -0
- package/dist/cdn/{ONPN5M3Z.js → RTLNV5MH.js} +1 -1
- package/dist/cdn/RUC6NG6L.js +2 -0
- package/dist/cdn/RYH43ZOR.js +2 -0
- package/dist/cdn/{RMFIN5AS.js → RZDIL4FK.js} +1 -1
- package/dist/cdn/{NWXN5M4S.js → SAGJDTGS.js} +1 -1
- package/dist/cdn/SI3PITPE.js +2 -0
- package/dist/cdn/{AJIZTCGT.js → SS3BP5JY.js} +1 -1
- package/dist/cdn/{RU5U2DVA.js → STZ7NN7N.js} +1 -1
- package/dist/cdn/{T3JWZEB6.js → TBPQMJ3U.js} +1 -1
- package/dist/cdn/TCNK7NLA.js +2 -0
- package/dist/cdn/{3HYCJV4V.js → UCRB5RGH.js} +1 -1
- package/dist/cdn/{GAH6OGQE.js → UEUYXTE3.js} +1 -1
- package/dist/cdn/{LT5ALQM5.js → UFQOOCIO.js} +1 -1
- package/dist/cdn/{6IUQ5UHX.js → UFWKXIL5.js} +1 -1
- package/dist/cdn/UJXCCQWE.js +2 -0
- package/dist/cdn/{FD4A66OJ.js → V2QY34FP.js} +1 -1
- package/dist/cdn/{ZVTV4UKT.js → V4E5MPHA.js} +1 -1
- package/dist/cdn/{SK6O74LF.js → VAXL3OO6.js} +1 -1
- package/dist/cdn/{AHGLOKZI.js → VB66GDWY.js} +1 -1
- package/dist/cdn/{INYYRLED.js → VEBPC4NS.js} +1 -1
- package/dist/cdn/W627TIVM.js +2 -0
- package/dist/cdn/{DB2NOQ3D.js → WVRJP4IF.js} +1 -1
- package/dist/cdn/{QF7RABZH.js → WX4UNUXQ.js} +1 -1
- package/dist/cdn/{UBGE4QNR.js → WXQJ3OSA.js} +1 -1
- package/dist/cdn/{CGASUBOS.js → WXXTKBUN.js} +1 -1
- package/dist/cdn/{IKOLSNGV.js → WZVTF32R.js} +1 -1
- package/dist/cdn/X25QBU47.js +2 -0
- package/dist/cdn/{WBGZAAEK.js → X446GLUI.js} +1 -1
- package/dist/cdn/{G4FP7GXM.js → X4DF5NLE.js} +1 -1
- package/dist/cdn/{PQ5PGLJM.js → X4M3A7NY.js} +1 -1
- package/dist/cdn/{AEMKZZZS.js → X4PMY7Z5.js} +1 -1
- package/dist/cdn/{5DEOSU7J.js → X72XPU7O.js} +1 -1
- package/dist/cdn/{XIOIZK7A.js → X7Z2SLR4.js} +1 -1
- package/dist/cdn/{L5JWLRD3.js → XFCXD5BV.js} +1 -1
- package/dist/cdn/{D4PJU376.js → XL4ZVZQO.js} +1 -1
- package/dist/cdn/{SDWQW3ZX.js → XT5EYUOZ.js} +1 -1
- package/dist/cdn/{GCFNRINR.js → XUMBGLCM.js} +1 -1
- package/dist/cdn/{2AHY7O7C.js → Y7HAR5TE.js} +1 -1
- package/dist/cdn/{7OOAOM5T.js → YBPTQSLR.js} +1 -1
- package/dist/cdn/{YXYCWJFF.js → YGFR3GKE.js} +1 -1
- package/dist/cdn/{75LFOVPY.js → YJQ24JUD.js} +1 -1
- package/dist/cdn/{E5SXPWDJ.js → YOZLJOIM.js} +1 -1
- package/dist/cdn/{522HNMQI.js → YQ7TCV5A.js} +1 -1
- package/dist/cdn/{MD36SH63.js → YZSRJTGJ.js} +1 -1
- package/dist/cdn/{CXHSL2Y4.js → ZFHIU6DT.js} +1 -1
- package/dist/cdn/ZNBKMZP7.js +2 -0
- package/dist/cdn/{GMR2QJNU.js → ZY32LRC5.js} +1 -1
- package/dist/cdn/index.js +1 -1
- package/dist/chunks/esri-main.js +1 -1
- package/dist/chunks/measurementUtils.js +3 -3
- package/dist/components/arcgis-area-measurement-2d/customElement.js +62 -74
- package/dist/components/arcgis-area-measurement-3d/customElement.js +52 -64
- package/dist/components/arcgis-direct-line-measurement-3d/customElement.js +59 -71
- package/dist/components/arcgis-directions/customElement.d.ts +17 -0
- package/dist/components/arcgis-directions/customElement.js +5 -5
- package/dist/components/arcgis-distance-measurement-2d/customElement.js +58 -70
- package/dist/components/arcgis-elevation-profile/customElement.js +100 -111
- package/dist/components/arcgis-elevation-profile-settings/customElement.js +22 -22
- package/dist/components/arcgis-feature/customElement.js +6 -6
- package/dist/components/arcgis-feature-table/customElement.d.ts +57 -2
- package/dist/components/arcgis-feature-table/customElement.js +28 -13
- package/dist/components/arcgis-feature-templates/customElement.d.ts +3 -0
- package/dist/components/arcgis-feature-templates/customElement.js +2 -2
- package/dist/components/arcgis-feature-utility-network-association-list/customElement.js +16 -16
- package/dist/components/arcgis-feature-utility-network-associations/customElement.js +55 -55
- package/dist/components/arcgis-features/customElement.js +46 -52
- package/dist/components/arcgis-link-chart/customElement.js +10 -15
- package/dist/components/arcgis-map/customElement.js +1 -6
- package/dist/components/arcgis-paste/PasteViewModel.d.ts +1 -1
- package/dist/components/arcgis-paste/customElement.js +51 -47
- package/dist/components/arcgis-popup/customElement.js +106 -99
- package/dist/components/arcgis-popup/types.d.ts +1 -1
- package/dist/components/arcgis-print/customElement.d.ts +10 -0
- package/dist/components/arcgis-print/customElement.js +7 -7
- package/dist/components/arcgis-print-layout-advanced-options/customElement.js +12 -12
- package/dist/components/arcgis-print-layout-panel/customElement.js +6 -6
- package/dist/components/arcgis-print-main-panel/customElement.js +7 -7
- package/dist/components/arcgis-scene/customElement.js +8 -13
- package/dist/components/arcgis-slider-binary-color-size-legacy/customElement.d.ts +1 -1
- package/dist/components/arcgis-slider-binary-color-size-legacy/customElement.js +1 -1
- package/dist/components/arcgis-slider-classed-color-legacy/customElement.d.ts +1 -1
- package/dist/components/arcgis-slider-classed-color-legacy/customElement.js +1 -1
- package/dist/components/arcgis-slider-classed-size-legacy/customElement.d.ts +1 -1
- package/dist/components/arcgis-slider-classed-size-legacy/customElement.js +1 -1
- package/dist/components/arcgis-slider-color-size-legacy/customElement.d.ts +1 -1
- package/dist/components/arcgis-slider-color-size-legacy/customElement.js +1 -1
- package/dist/components/arcgis-slider-heatmap-legacy/customElement.d.ts +1 -1
- package/dist/components/arcgis-slider-heatmap-legacy/customElement.js +1 -1
- package/dist/components/arcgis-slider-opacity-legacy/customElement.d.ts +1 -1
- package/dist/components/arcgis-slider-opacity-legacy/customElement.js +1 -1
- package/dist/components/arcgis-slider-size-legacy/customElement.d.ts +1 -1
- package/dist/components/arcgis-slider-size-legacy/customElement.js +1 -1
- package/dist/components/arcgis-utility-network-aggregated-geometry/customElement.d.ts +12 -0
- package/dist/components/arcgis-utility-network-aggregated-geometry/customElement.js +7 -7
- package/dist/components/arcgis-utility-network-trace/customElement.d.ts +7 -2
- package/dist/components/arcgis-utility-network-trace/customElement.js +1 -1
- package/dist/components/arcgis-utility-network-trace-analysis/customElement.d.ts +74 -14
- package/dist/components/arcgis-utility-network-trace-analysis/customElement.js +47 -40
- package/dist/components/arcgis-utility-network-trace-inputs/customElement.d.ts +12 -0
- package/dist/components/arcgis-utility-network-trace-inputs/customElement.js +80 -65
- package/dist/components/arcgis-utility-network-trace-location/customElement.d.ts +4 -0
- package/dist/components/arcgis-utility-network-trace-location/customElement.js +17 -14
- package/dist/components/arcgis-utility-network-trace-results/customElement.d.ts +13 -0
- package/dist/components/arcgis-utility-network-trace-results/customElement.js +39 -26
- package/dist/components/arcgis-volume-measurement/customElement.js +84 -84
- package/dist/components/types.d.ts +5 -3
- 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/loader.js +21 -21
- package/dist/types/lumina.d.ts +14 -14
- package/dist/types/preact.d.ts +14 -14
- package/dist/types/react.d.ts +14 -14
- package/dist/types/stencil.d.ts +14 -14
- package/package.json +4 -4
- package/dist/cdn/3URKZO5O.js +0 -2
- package/dist/cdn/55TRWAT7.js +0 -2
- package/dist/cdn/BHPXKX47.js +0 -2
- package/dist/cdn/D4LTASH2.js +0 -2
- package/dist/cdn/FKQSJXNW.js +0 -2
- package/dist/cdn/H7O5I4IF.js +0 -2
- package/dist/cdn/I5M2Z7WS.js +0 -2
- package/dist/cdn/L6YZXUBB.js +0 -2
- package/dist/cdn/LEUHIPSJ.js +0 -2
- package/dist/cdn/NZXDNMVC.js +0 -2
- package/dist/cdn/ODGGFBDK.js +0 -2
- package/dist/cdn/P76K34HQ.js +0 -2
- package/dist/cdn/P7PWOUNZ.js +0 -2
- package/dist/cdn/Q4B4MXH4.js +0 -2
- package/dist/cdn/RN57AN5P.js +0 -2
- package/dist/cdn/SKIP3GUP.js +0 -2
- package/dist/cdn/UNLAUFXF.js +0 -2
- package/dist/cdn/URUFNID2.js +0 -2
- package/dist/cdn/WREEAAEV.js +0 -2
- package/dist/cdn/WTTBFFC2.js +0 -2
- package/dist/cdn/Y4RMI55P.js +0 -2
|
@@ -18,7 +18,7 @@ import type { PublicLitElement as LitElement } from "@arcgis/lumina";
|
|
|
18
18
|
import type { ArcgisReferenceElement, IconName } from "../types.js";
|
|
19
19
|
import type { FeatureStoreItem, ActionColumnConfig, FeatureTableSupportedFilters, ColumnSortOrder, FeatureTableSupportedLayer } from "@arcgis/core/widgets/FeatureTable/support/types.js";
|
|
20
20
|
import type { CollectionChangeEvent } from "@arcgis/core/core/Collection.js";
|
|
21
|
-
import type { TableInteractionColumnReorderEvent, TableInteractionCellPointeroverEvent, TableInteractionCellPointeroutEvent, TableInteractionCellKeydownEvent, TableInteractionCellClickEvent, TableMenuConfig, GridMultiSortPriority, FeatureTableState } from "@arcgis/core/widgets/FeatureTable/Grid/types.js";
|
|
21
|
+
import type { DiscardPendingEditsParameters, FeatureStoreEdits, TableInteractionColumnReorderEvent, TableInteractionCellPointeroverEvent, TableInteractionCellPointeroutEvent, TableInteractionCellKeydownEvent, TableInteractionCellClickEvent, TableMenuConfig, GridMultiSortPriority, FeatureTableState } from "@arcgis/core/widgets/FeatureTable/Grid/types.js";
|
|
22
22
|
import type { MapViewOrSceneView } from "@arcgis/core/views/MapViewOrSceneView.js";
|
|
23
23
|
import type { FeatureTableDescriptionFunction, FeatureTableTitleFunction } from "@arcgis/core/widgets/FeatureTable.js";
|
|
24
24
|
import type { GeometryUnion } from "@arcgis/core/geometry/types.js";
|
|
@@ -964,10 +964,55 @@ export abstract class ArcgisFeatureTable extends LitElement {
|
|
|
964
964
|
* @since 4.33
|
|
965
965
|
*/
|
|
966
966
|
get visibleColumns(): Array<Column>;
|
|
967
|
+
/**
|
|
968
|
+
* Creates a pending edit with the specified parameters.
|
|
969
|
+
* A pending edit is not immediately saved to the layer.
|
|
970
|
+
*
|
|
971
|
+
* @param edits - Pending edits to be cached. Edits must include a valid objectId and field name.
|
|
972
|
+
* @since 5.0
|
|
973
|
+
* @example
|
|
974
|
+
* // Add pending edits for two cells in a single row
|
|
975
|
+
* table.addPendingEdits(
|
|
976
|
+
* [
|
|
977
|
+
* {
|
|
978
|
+
* objectId: 1,
|
|
979
|
+
* updates: [
|
|
980
|
+
* { fieldName: "Hotel_Name", value: "My Hotel" },
|
|
981
|
+
* { fieldName: "Address", value: "123 Hotel Street" },
|
|
982
|
+
* ]
|
|
983
|
+
* }
|
|
984
|
+
* ]
|
|
985
|
+
* );
|
|
986
|
+
*/
|
|
987
|
+
addPendingEdits(edits: FeatureStoreEdits[]): void;
|
|
967
988
|
/** @param showWarningPrompt */
|
|
968
989
|
deleteSelection(showWarningPrompt?: boolean): Promise<void>;
|
|
969
990
|
/** Permanently destroy the component. */
|
|
970
991
|
destroy(): Promise<void>;
|
|
992
|
+
/**
|
|
993
|
+
* Cancels any pending edits. This might be edits for a specific field or column, or
|
|
994
|
+
* all pending edits for a specific feature. If no parameters are supplied, all pending edits
|
|
995
|
+
* for all features are discarded. Additionally, if showWarningPrompt is 'true', the value returned
|
|
996
|
+
* from this method will reflect whether or not the user chose to discard the pending edits.
|
|
997
|
+
*
|
|
998
|
+
* @param edits - Information about which pending edits should be canceled. If nothing is provided, all pending edits are discarded.
|
|
999
|
+
* @param showWarningPrompt - Indicates the table should display a warning prompt, which allows users to confirm if pending edits should be discarded.
|
|
1000
|
+
* @since 5.0
|
|
1001
|
+
* @example
|
|
1002
|
+
* // Discard pending edits for single cell in a given row
|
|
1003
|
+
* table.discardPendingEdits([{ objectId: 1, fieldName: "Address" }]);
|
|
1004
|
+
*
|
|
1005
|
+
* // Discard pending edits for all cells in a given row
|
|
1006
|
+
* table.discardPendingEdits([{ objectId: 1 }]);
|
|
1007
|
+
*
|
|
1008
|
+
* // Discard all pending edits
|
|
1009
|
+
* table.discardPendingEdits();
|
|
1010
|
+
*
|
|
1011
|
+
* // Displays a confirmation prompt before discarding all pending edits
|
|
1012
|
+
* // Returns 'true' if edits were discarded
|
|
1013
|
+
* const editsWereDiscarded = await table.discardPendingEdits(undefined, true);
|
|
1014
|
+
*/
|
|
1015
|
+
discardPendingEdits(edits?: DiscardPendingEditsParameters[] | null, showWarningPrompt?: boolean): Promise<boolean>;
|
|
971
1016
|
/** @param includeGeometry */
|
|
972
1017
|
exportSelectionToCSV(includeGeometry?: boolean): Promise<void>;
|
|
973
1018
|
/** @param fieldName */
|
|
@@ -978,7 +1023,7 @@ export abstract class ArcgisFeatureTable extends LitElement {
|
|
|
978
1023
|
* @param objectId
|
|
979
1024
|
* @since 5.0
|
|
980
1025
|
*/
|
|
981
|
-
getFeatureStoreItemByObjectId(objectId: number | string): FeatureStoreItem | null | undefined
|
|
1026
|
+
getFeatureStoreItemByObjectId(objectId: number | string): Promise<FeatureStoreItem | null | undefined>;
|
|
982
1027
|
/** @param index */
|
|
983
1028
|
goToPage(index: number): Promise<void>;
|
|
984
1029
|
/** @param fieldName */
|
|
@@ -986,6 +1031,14 @@ export abstract class ArcgisFeatureTable extends LitElement {
|
|
|
986
1031
|
nextPage(): Promise<void>;
|
|
987
1032
|
previousPage(): Promise<void>;
|
|
988
1033
|
refresh(): Promise<void>;
|
|
1034
|
+
refreshCellContent(): Promise<void>;
|
|
1035
|
+
/**
|
|
1036
|
+
* Attempts to save any pending edits. If any edits are invalid, the save will be rejected until the edits are in a valid state.
|
|
1037
|
+
*
|
|
1038
|
+
* @returns Resolves when the edits are saved or rejected.
|
|
1039
|
+
* @since 5.0
|
|
1040
|
+
*/
|
|
1041
|
+
savePendingEdits(): Promise<void>;
|
|
989
1042
|
scrollToBottom(): Promise<void>;
|
|
990
1043
|
/** @param index */
|
|
991
1044
|
scrollToIndex(index: number): Promise<void>;
|
|
@@ -1001,6 +1054,8 @@ export abstract class ArcgisFeatureTable extends LitElement {
|
|
|
1001
1054
|
* @param direction
|
|
1002
1055
|
*/
|
|
1003
1056
|
sortColumn(path: string, direction: "asc" | "desc"): Promise<void>;
|
|
1057
|
+
/** @param fieldName */
|
|
1058
|
+
toggleColumnVisibility(fieldName: string): Promise<void>;
|
|
1004
1059
|
zoomToSelection(): Promise<void>;
|
|
1005
1060
|
"@setterTypes": {
|
|
1006
1061
|
icon?: IconName;
|
|
@@ -27,26 +27,32 @@ class w extends c {
|
|
|
27
27
|
set tableDisabled(e) {
|
|
28
28
|
this.widget.disabled = e;
|
|
29
29
|
}
|
|
30
|
+
addPendingEdits(e) {
|
|
31
|
+
this.widget.addPendingEdits(e);
|
|
32
|
+
}
|
|
30
33
|
async deleteSelection(e) {
|
|
31
|
-
await this.widget
|
|
34
|
+
await this.widget.deleteSelection(e);
|
|
32
35
|
}
|
|
33
36
|
async destroy() {
|
|
34
37
|
await this.manager.destroy();
|
|
35
38
|
}
|
|
39
|
+
async discardPendingEdits(e, i) {
|
|
40
|
+
return await this.widget.discardPendingEdits(e, i);
|
|
41
|
+
}
|
|
36
42
|
async exportSelectionToCSV(e) {
|
|
37
|
-
await this.widget
|
|
43
|
+
await this.widget.exportSelectionToCSV(e);
|
|
38
44
|
}
|
|
39
45
|
async findColumn(e) {
|
|
40
|
-
return this.widget
|
|
46
|
+
return this.widget.findColumn(e);
|
|
41
47
|
}
|
|
42
|
-
getFeatureStoreItemByObjectId(e) {
|
|
43
|
-
return this.widget
|
|
48
|
+
async getFeatureStoreItemByObjectId(e) {
|
|
49
|
+
return this.widget.getFeatureStoreItemByObjectId(e);
|
|
44
50
|
}
|
|
45
51
|
async goToPage(e) {
|
|
46
52
|
this.widget.goToPage(e);
|
|
47
53
|
}
|
|
48
54
|
async hideColumn(e) {
|
|
49
|
-
this.widget
|
|
55
|
+
this.widget.hideColumn(e);
|
|
50
56
|
}
|
|
51
57
|
async nextPage() {
|
|
52
58
|
this.widget.nextPage();
|
|
@@ -55,34 +61,43 @@ class w extends c {
|
|
|
55
61
|
this.widget.previousPage();
|
|
56
62
|
}
|
|
57
63
|
async refresh() {
|
|
58
|
-
await this.widget
|
|
64
|
+
await this.widget.refresh();
|
|
65
|
+
}
|
|
66
|
+
async refreshCellContent() {
|
|
67
|
+
this.widget.refreshCellContent();
|
|
68
|
+
}
|
|
69
|
+
async savePendingEdits() {
|
|
70
|
+
this.widget.savePendingEdits();
|
|
59
71
|
}
|
|
60
72
|
async scrollToBottom() {
|
|
61
73
|
this.widget.scrollToBottom();
|
|
62
74
|
}
|
|
63
75
|
async scrollToIndex(e) {
|
|
64
|
-
this.widget
|
|
76
|
+
this.widget.scrollToIndex(e);
|
|
65
77
|
}
|
|
66
78
|
async scrollToLeft() {
|
|
67
79
|
this.widget.scrollLeft();
|
|
68
80
|
}
|
|
69
81
|
async scrollToRow(e) {
|
|
70
|
-
this.widget
|
|
82
|
+
this.widget.scrollToRow(e);
|
|
71
83
|
}
|
|
72
84
|
async scrollToTop() {
|
|
73
85
|
this.widget.scrollToTop();
|
|
74
86
|
}
|
|
75
87
|
async showAllColumns() {
|
|
76
|
-
this.widget
|
|
88
|
+
this.widget.showAllColumns();
|
|
77
89
|
}
|
|
78
90
|
async showColumn(e) {
|
|
79
|
-
this.widget
|
|
91
|
+
this.widget.showColumn(e);
|
|
80
92
|
}
|
|
81
93
|
async sortColumn(e, i) {
|
|
82
|
-
this.widget
|
|
94
|
+
this.widget.sortColumn(e, i);
|
|
95
|
+
}
|
|
96
|
+
async toggleColumnVisibility(e) {
|
|
97
|
+
this.widget.toggleColumnVisibility(e);
|
|
83
98
|
}
|
|
84
99
|
async zoomToSelection() {
|
|
85
|
-
this.widget
|
|
100
|
+
this.widget.zoomToSelection();
|
|
86
101
|
}
|
|
87
102
|
load() {
|
|
88
103
|
this.manager.onLifecycle(() => this.widget.highlightIds.on("change", this.arcgisSelectionChange.emit));
|
|
@@ -9,6 +9,7 @@ import type { Filter, GroupByType } from "@arcgis/core/widgets/FeatureTemplates/
|
|
|
9
9
|
import type { HeadingLevel } from "@arcgis/core/widgets/support/types.js";
|
|
10
10
|
import type { Icon } from "@esri/calcite-components/components/calcite-icon";
|
|
11
11
|
import type { LayerWithFeatureTemplatesUnion } from "@arcgis/core/layers/types.js";
|
|
12
|
+
import type { MapViewOrSceneView as MapViewOrSceneView2 } from "@arcgis/core/views/MapViewOrSceneView.js";
|
|
12
13
|
|
|
13
14
|
/** @internal */
|
|
14
15
|
export abstract class ArcgisFeatureTemplates extends LitElement {
|
|
@@ -185,6 +186,8 @@ export abstract class ArcgisFeatureTemplates extends LitElement {
|
|
|
185
186
|
* @default "disabled"
|
|
186
187
|
*/
|
|
187
188
|
get state(): FeatureTemplatesViewModelState;
|
|
189
|
+
/** A reference to the MapView or SceneView. */
|
|
190
|
+
accessor view: MapViewOrSceneView2 | null | undefined;
|
|
188
191
|
/** Permanently destroy the component. */
|
|
189
192
|
destroy(): Promise<void>;
|
|
190
193
|
/**
|
|
@@ -9,10 +9,10 @@ import { css as n } from "lit";
|
|
|
9
9
|
const c = n`.esri-widget__heading{color:var(--calcite-color-text-2);margin:0 0 .5rem;font-weight:var(--calcite-font-weight-semibold)}h1.esri-widget__heading{font-size:var(--calcite-font-size-xl)}h2.esri-widget__heading{font-size:var(--calcite-font-size-md)}h3.esri-widget__heading,h4.esri-widget__heading,h5.esri-widget__heading,h6.esri-widget__heading{font-size:var(--calcite-font-size)}.esri-widget{box-sizing:border-box;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);font-size:var(--calcite-font-size);line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget *,.esri-widget :before,.esri-widget :after{box-sizing:inherit}.esri-widget.esri-widget--disabled>*{opacity:.4;pointer-events:none}.esri-widget.esri-widget--compact{--esri-widget-padding-y: 0;--esri-widget-padding-x: 0}.esri-widget__anchor{color:var(--calcite-color-text-2)}.esri-widget__anchor:hover{color:var(--calcite-color-text-3)}.esri-widget__anchor:hover,.esri-widget__anchor:focus{text-decoration:underline}.esri-widget__anchor--disabled{opacity:.4;pointer-events:none}.esri-widget__header{background-color:var(--calcite-color-foreground-1);flex:1 0 100%;justify-content:space-between;align-items:center;width:100%;min-height:48px;padding:12px 0 12px 15px;display:flex}.esri-widget__heading{word-break:break-word}.esri-widget__header .esri-widget__heading{width:calc(100% - 48px);text-align:initial;color:var(--calcite-color-text-1);align-items:center;margin:0;padding:0;display:flex}.esri-widget__header-button{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);border:none;flex:0 0 48px;justify-content:center;align-self:stretch;align-items:center;width:48px;padding:0;display:flex}.esri-widget__footer{background-color:var(--calcite-color-foreground-1);justify-content:center;align-items:center;width:100%;min-height:48px;display:flex}.esri-widget__footer-pagination{color:var(--calcite-color-text-2);justify-content:space-between;align-items:center;display:flex}.esri-widget__footer-pagination-previous-button,.esri-widget__footer-pagination-next-button{cursor:pointer;background-color:var(--calcite-color-foreground-1);border:0;margin:0 7px;padding:12px 15px;transition:background-color .125s ease-in-out}.esri-widget__footer-pagination-previous-button:hover,.esri-widget__footer-pagination-previous-button:focus,.esri-widget__footer-pagination-next-button:hover,.esri-widget__footer-pagination-next-button:focus{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1)}.esri-menu{visibility:hidden;z-index:1;background-clip:padding;background-color:var(--calcite-color-foreground-1);background-clip:padding-box;width:100%;max-height:0;margin:2px 0 0;padding:0;font-size:var(--calcite-font-size);line-height:var(--calcite-spacing-xl);position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 1px 2px #0000004d}.esri-menu .esri-menu__header{color:var(--calcite-color-text-inverse);background-color:var(--calcite-color-inverse);padding:6px 12px}.esri-menu__list{margin:0;padding:0;list-style:none}.esri-menu__list-item{cursor:pointer;border-top:1px solid #adadad4d;border-left:3px solid #0000;padding:.8em 1em}.esri-menu__list-item [class^=esri-icon-],.esri-menu__list-item [class*=" esri-icon-"]{padding-right:2.8px}.esri-menu__list-item:first-child{border-top:none}.esri-menu__list-item--focus,.esri-menu__list-item:hover,.esri-menu__list-item:focus{background-color:var(--calcite-color-foreground-1)}.esri-menu__list-item:active{background-color:var(--calcite-color-foreground-current)}.esri-menu__list-item--active,.esri-menu__list-item--active:hover,.esri-menu__list-item--active:focus{background-color:var(--calcite-color-foreground-1);border-left-color:var(--calcite-color-brand)}.esri-widget__table{border-collapse:collapse;color:var(--calcite-color-text-1);border:none;width:100%;line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget__table tr:nth-child(odd){background-color:var(--calcite-color-transparent)}.esri-widget__table tr:nth-child(2n){background-color:var(--calcite-color-transparent-press)}.esri-widget__table tr a{color:var(--calcite-color-text-2)}.esri-widget__table tr a:hover,.esri-widget__table tr a:focus{color:var(--calcite-color-text-1)}.esri-widget__table tr td,.esri-widget__table tr th{vertical-align:top;word-break:break-word;padding:.5em .7em;font-size:var(--calcite-font-size-sm);font-weight:var(--calcite-font-weight-regular)}.esri-widget__table tr th{text-align:left;border-right:3px solid #0000000d;width:50%}.esri-widget__table tr td{width:50%}.esri-input{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1);border:1px solid #959595;font-size:var(--calcite-font-size)}.esri-input::-ms-clear{display:none}.esri-input::placeholder{opacity:1;color:var(--calcite-color-text-2)}.esri-input:placeholder-shown{text-overflow:ellipsis}.esri-input[type=text],.esri-input[type=password],.esri-input[type=number]{height:32px;padding:0 .5em}calcite-combobox.esri-input{border:none}.esri-widget__content--empty{text-align:center;color:var(--calcite-color-border-input);flex-flow:column wrap;align-items:center;padding:18px 22px;display:flex}.esri-widget__content--empty h1.esri-widget__heading,.esri-widget__content--empty h2.esri-widget__heading,.esri-widget__content--empty h3.esri-widget__heading,.esri-widget__content--empty h4.esri-widget__heading,.esri-widget__content--empty h5.esri-widget__heading{font-weight:var(--calcite-font-weight-regular)}.esri-widget__content-illustration--empty{width:128px;padding:1rem 0}.esri-widget__content-icon--empty{width:32px;padding:.5rem 0}.esri-select{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background:var(--calcite-color-foreground-1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-8 -8 32 32' width='32' height='32'%3E%3Cpath d='M8 11.207l-4-4V5.793l4 4 4-4v1.414z' fill='%23adadad' fillrule='nonzero'/%3E%3C/svg%3E") 100% no-repeat;border:1px solid #959595;border-radius:0;width:100%;height:32px;margin:0;padding:0 .5em;font-family:inherit;font-size:.85em;display:block}.esri-select[disabled]{cursor:auto}.esri-select::-ms-expand{display:none}.esri-disabled a,.esri-disabled [role=menu],.esri-disabled [role=checkbox],.esri-disabled [class^=esri-icon-],.esri-disabled [class*=" esri-icon-"]{color:var(--calcite-color-text-3)}.keynav-mode .esri-widget:focus,.keynav-mode .esri-widget :focus{z-index:1;outline-offset:2px;outline:2px solid #adadad}.esri-widget__loader-animation{border:.15em solid #adadad4d;border-top-color:var(--calcite-color-border-input);border-radius:100%;width:1em;height:1em;font-size:var(--calcite-font-size-md);animation:1.25s linear infinite esri-rotate;display:block;transform:translateZ(0)}:dir(rtl) .esri-widget__table th{text-align:right;border-left:3px solid #0000000d;border-right:none}:dir(rtl) .esri-select{background-position:0}:dir(rtl) .esri-menu__list-item{border-left:none;border-right:3px solid #0000}:dir(rtl) .esri-menu__list-item [class^=esri-icon-],:dir(rtl) .esri-menu__list-item [class*=" esri-icon-"]{padding-left:2px;padding-right:0}:dir(rtl) .esri-menu__list-item--active{border-right-color:var(--calcite-color-brand)}.esri-icon-font-fallback-text{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.esri-rotating{animation:1.25s linear infinite esri-rotate;transform:translateZ(0)}.esri-clearfix:before,.esri-clearfix:after{content:" ";display:table}.esri-clearfix:after{clear:both}.esri-interactive{cursor:pointer}.esri-hidden{display:none!important}.esri-invisible{visibility:hidden!important}.esri-offscreen{position:absolute;top:-999em;left:-999em}.esri-match-height{flex-direction:column;flex:auto;display:flex;overflow:hidden}.esri-item-list{width:100%}.esri-item-list__filter-container--sticky{z-index:1;position:sticky;top:0}.esri-item-list__group{margin-top:12px}.esri-item-list__scroller{overflow-y:auto}.esri-item-list__scroller{z-index:0;position:relative}.esri-item-list__scroller--enabled{max-height:420px}.esri-item-list__group__header{color:var(--calcite-color-text-2);font-weight:var(--calcite-font-weight-medium)}.esri-item-list__list-item{cursor:pointer;min-height:32px}.esri-item-list__list-item[class^=esri-icon-],.esri-item-list__list-item[class*=" esri-icon-"]{padding-inline-end:2.8px}.esri-item-list__list-item--disabled{cursor:default}.esri-item-list__list-item-icon{justify-content:center;align-items:center;min-width:32px;height:32px;display:flex}.esri-item-list__list-item-icon span{line-height:0}.esri-thumbnail-preview{background-position:50%;width:22px;height:22px}.esri-item-list__no-matches-message{justify-content:center;align-items:center;height:96px;display:flex}.esri-feature-templates{background:var(--calcite-color-background);width:100%}.esri-feature-templates__list-item-icon{flex:0;justify-content:center;align-items:center;width:48px;min-width:48px;display:flex}.esri-feature-templates__list-item-icon>div{display:flex}.esri-ui .esri-feature-templates{width:300px}.esri-ui .esri-widget .esri-feature-templates{width:100%}.esri-feature-templates .esri-item-list__scroller--enabled{max-height:var(--arcgis-feature-templates-max-list-height, 420px)}`, d = l(o);
|
|
10
10
|
class g extends s {
|
|
11
11
|
constructor() {
|
|
12
|
-
super(...arguments), this.widget = d(this), this.viewModel = this.widget.viewModel, this.autoDestroyDisabled = !1, this.enableListScroll = this.widget.enableListScroll, this.filterFunction = this.widget.filterFunction, this.filterText = this.widget.filterText, this.groupBy = this.widget.groupBy, this.headingLevel = this.widget.headingLevel, this.hideFilter = this.widget.visibleElements.filter, this.disabledItemFunction = this.viewModel.disabledItemFunction, this.icon = this.widget.icon, this.label = this.widget.label, this.layers = this.widget.layers, this.selectionMode = this.widget.selectionMode, this.state = this.viewModel.state, this.items = this.viewModel.items, this.selectedItem = this.viewModel.selectedItem, this.arcgisPropertyChange = t()("state"), this.arcgisReady = a(), this.arcgisSelect = r(() => this.widget, "select");
|
|
12
|
+
super(...arguments), this.widget = d(this), this.viewModel = this.widget.viewModel, this.autoDestroyDisabled = !1, this.enableListScroll = this.widget.enableListScroll, this.filterFunction = this.widget.filterFunction, this.filterText = this.widget.filterText, this.groupBy = this.widget.groupBy, this.headingLevel = this.widget.headingLevel, this.hideFilter = this.widget.visibleElements.filter, this.disabledItemFunction = this.viewModel.disabledItemFunction, this.icon = this.widget.icon, this.label = this.widget.label, this.layers = this.widget.layers, this.selectionMode = this.widget.selectionMode, this.state = this.viewModel.state, this.items = this.viewModel.items, this.selectedItem = this.viewModel.selectedItem, this.view = this.viewModel.view, this.arcgisPropertyChange = t()("state"), this.arcgisReady = a(), this.arcgisSelect = r(() => this.widget, "select");
|
|
13
13
|
}
|
|
14
14
|
static {
|
|
15
|
-
this.properties = { autoDestroyDisabled: 5, enableListScroll: 5, filterFunction: 0, filterText: 1, groupBy: 1, headingLevel: 9, hideFilter: 5, disabledItemFunction: 0, icon: 1, label: 1, layers: 0, referenceElement: 1, selectionMode: 1, state: 32, items: 32, selectedItem: 32 };
|
|
15
|
+
this.properties = { autoDestroyDisabled: 5, enableListScroll: 5, filterFunction: 0, filterText: 1, groupBy: 1, headingLevel: 9, hideFilter: 5, disabledItemFunction: 0, icon: 1, label: 1, layers: 0, referenceElement: 1, selectionMode: 1, state: 32, items: 32, selectedItem: 32, view: 0 };
|
|
16
16
|
}
|
|
17
17
|
static {
|
|
18
18
|
this.styles = c;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
|
|
2
2
|
import { c as m } from "../../chunks/runtime.js";
|
|
3
|
-
import { css as f, html as
|
|
3
|
+
import { css as f, html as o } from "lit";
|
|
4
4
|
import { keyed as d } from "lit/directives/keyed.js";
|
|
5
5
|
import { ArcgisUtilityNetworkAssociationList as g } from "../arcgis-utility-network-association-list/customElement.js";
|
|
6
6
|
import { stripHTML as u } from "@arcgis/core/applications/Components/stringUtils.js";
|
|
@@ -12,7 +12,7 @@ class A extends g {
|
|
|
12
12
|
super(...arguments), this.displayCount = 3, this.flowType = "feature-utility-network-association-type";
|
|
13
13
|
}
|
|
14
14
|
static {
|
|
15
|
-
this.properties = { description: 1, displayCount: 9, endIndex: 32, flowItems: 0, flowType: 1, heading: 1, map: 0, spatialReference: 0, timeZone: 1, view: 0 };
|
|
15
|
+
this.properties = { description: 1, displayCount: 9, endIndex: 32, flowItems: 0, flowType: 1, heading: 1, map: 0, referenceElement: 1, spatialReference: 0, timeZone: 1, view: 0 };
|
|
16
16
|
}
|
|
17
17
|
static {
|
|
18
18
|
this.styles = b;
|
|
@@ -23,13 +23,13 @@ class A extends g {
|
|
|
23
23
|
}
|
|
24
24
|
_featureViewModelMatch(e, t) {
|
|
25
25
|
const s = e.graphic, i = s?.layer;
|
|
26
|
-
let
|
|
27
|
-
i?.type === "subtype-sublayer" && i.parent ?
|
|
28
|
-
const l =
|
|
26
|
+
let n = null;
|
|
27
|
+
i?.type === "subtype-sublayer" && i.parent ? n = i.parent.globalIdField ?? null : i && "globalIdField" in i && (n = i.globalIdField);
|
|
28
|
+
const l = n ? s?.getAttribute(n) : null, r = t.graphic, a = r?.layer;
|
|
29
29
|
let c = null;
|
|
30
30
|
a?.type === "subtype-sublayer" && a.parent ? c = a.parent.globalIdField ?? null : a && "globalIdField" in a && (c = a.globalIdField);
|
|
31
|
-
const h = c ? r?.
|
|
32
|
-
return l && h && l === h;
|
|
31
|
+
const h = c ? r?.getAttribute(c) : null;
|
|
32
|
+
return !!(l && h && l === h);
|
|
33
33
|
}
|
|
34
34
|
_findFlowItem(e) {
|
|
35
35
|
return this.flowItems?.findIndex((t) => {
|
|
@@ -75,7 +75,7 @@ class A extends g {
|
|
|
75
75
|
}
|
|
76
76
|
async _selectAssociation(e) {
|
|
77
77
|
const { flowItems: t } = this;
|
|
78
|
-
t && t.push(p(d(this.parentFeatureViewModel,
|
|
78
|
+
t && t.push(p(d(this.parentFeatureViewModel, o`<arcgis-feature .flowItems=${t} .flowType=${"feature-association"} .graphic=${e.graphic} .map=${this.map} .referenceElement=${this.referenceElement} show-utility-network-content .spatialReference=${this.spatialReference} .timeZone=${this.timeZone} .view=${this.view}></arcgis-feature>`)));
|
|
79
79
|
}
|
|
80
80
|
_showAllAssociations(e) {
|
|
81
81
|
const { flowItems: t, description: s } = this;
|
|
@@ -83,15 +83,15 @@ class A extends g {
|
|
|
83
83
|
return;
|
|
84
84
|
this.showAllEnabled = !0;
|
|
85
85
|
const i = e?.title ?? "";
|
|
86
|
-
t.push(p(
|
|
86
|
+
t.push(p(o`<arcgis-feature-utility-network-association-list .associationViewModels=${this.associationViewModels} .description=${s} .flowItems=${t} .flowType=${this.flowType} .heading=${i} .messages=${this.messages} .parentFeatureViewModel=${this.parentFeatureViewModel} .referenceElement=${this.referenceElement} .selectedLayer=${e} .showAllEnabled=${this.showAllEnabled}></arcgis-feature-utility-network-association-list>`));
|
|
87
87
|
}
|
|
88
88
|
render() {
|
|
89
89
|
const { associationViewModels: e, state: t } = this, s = this.selectedLayer?.title ?? this.messages?.noTitle ?? "";
|
|
90
|
-
return
|
|
90
|
+
return o`<div class="root">${t === "loading" || t === "querying" ? this._renderLoading() : o`<calcite-list .displayMode=${_} .filterEnabled=${this.showAllEnabled && !!this.selectedLayer} .filterLabel=${this.messages?.associationFilterPlaceholder} .filterPlaceholder=${this.messages?.associationFilterPlaceholder} .label=${s}>${this.showAllEnabled && this.selectedLayer ? o`${this._renderFeatureCountWarning()}${this._renderAssociatedFeatureListPage()}${this._renderFeatureObserver()}` : Array.from(e.keys(), (i) => this._renderTypeList(i))}</calcite-list>`}</div>`;
|
|
91
91
|
}
|
|
92
92
|
_renderAssociatedFeature(e) {
|
|
93
|
-
const { featureViewModel: t, title: s } = e, i = this.state === "loading",
|
|
94
|
-
return
|
|
93
|
+
const { featureViewModel: t, title: s } = e, i = this.state === "loading", n = this._findFlowItem(t), l = n < 0 && this._isParentFeature(t), r = l || n >= 0, a = `associated-feature-${e.association.globalId}`;
|
|
94
|
+
return o`<calcite-list-item class=${y(i ? "list-item--hidden" : "")} .description=${u(e.terminalName ?? "")} .label=${u(s)} @calciteListItemSelect=${async () => await this._handleFeatureClick(l, n, t)}>${this._isConnectivityAssociation(e.association) ? this._renderConnectivityIcon(e.association.associationType, a) : null}${this._isConnectivityMidspanAssociation(e.association) ? o`<calcite-chip .label=${this._formatPercentAlong(e.association)} scale=s slot=content-end>${this._formatPercentAlong(e.association)}</calcite-chip>` : null}${this._renderChevronIconNode(r)}</calcite-list-item>`;
|
|
95
95
|
}
|
|
96
96
|
_renderAssociatedFeatureList(e) {
|
|
97
97
|
return e.toArray().map((t) => this._renderAssociatedFeature(t));
|
|
@@ -101,15 +101,15 @@ class A extends g {
|
|
|
101
101
|
return [...this._renderTooltips(e), ...this._renderAssociatedFeatureList(e)];
|
|
102
102
|
}
|
|
103
103
|
_renderChevronIconNode(e) {
|
|
104
|
-
return
|
|
104
|
+
return o`<calcite-icon flip-rtl .icon=${e ? "move-up" : "chevron-right"} scale=s slot=content-end></calcite-icon>`;
|
|
105
105
|
}
|
|
106
106
|
_renderItemTooltip(e) {
|
|
107
107
|
const { tooltipReferenceMap: t } = this, s = `associated-feature-${e.association.globalId}`;
|
|
108
|
-
return this._isConnectivityAssociation(e.association) ?
|
|
108
|
+
return this._isConnectivityAssociation(e.association) ? o`<calcite-tooltip overlay-positioning=fixed .referenceElement=${t.get(s)}>${this.getConnectivityTooltip(e.association.associationType)}</calcite-tooltip>` : null;
|
|
109
109
|
}
|
|
110
110
|
_renderTypeList(e) {
|
|
111
|
-
const { messages: t } = this, { displayCount: s } = this, i = this.associationViewModels.get(e),
|
|
112
|
-
return d("show-all",
|
|
111
|
+
const { messages: t } = this, { displayCount: s } = this, i = this.associationViewModels.get(e), n = i.slice(0, s), l = n.length < i.length, r = $(t?.numberRecords ?? "", { number: i.length.toString() }), a = t?.showAll ?? "";
|
|
112
|
+
return d("show-all", o`<calcite-list-item expanded .label=${e.title} .value=${e.id}><calcite-chip .label=${String(i.length)} scale=s slot=content-end>${i.length}</calcite-chip><calcite-list .group=${e.id} .label=${e.title ?? ""}>${[this._renderTooltips(n), this._renderAssociatedFeatureList(n)]}${l ? d("show-all-item", o`<calcite-list-item .description=${r} .label=${a} @calciteListItemSelect=${() => this._showAllAssociations(e)}><calcite-icon icon=list scale=s slot=content-end></calcite-icon></calcite-list-item>`) : null}</calcite-list></calcite-list-item>`);
|
|
113
113
|
}
|
|
114
114
|
_renderTooltips(e) {
|
|
115
115
|
return e.toArray().map((t) => this._renderItemTooltip(t));
|
|
@@ -15,7 +15,7 @@ import P from "@arcgis/core/rest/support/Query.js";
|
|
|
15
15
|
import G from "@arcgis/core/widgets/Feature/FeatureViewModel.js";
|
|
16
16
|
import { LitElement as Q, renderElement as B } from "@arcgis/lumina";
|
|
17
17
|
import { debounce as L } from "@arcgis/toolkit/function";
|
|
18
|
-
const O = N`.list-container{min-height:var(--calcite-spacing-xxxl)}.loading-container{display:flex;justify-content:center;padding:var(--calcite-spacing-md) 0;width:100%}.sticky-loading-container{display:flex;position:sticky;bottom:var(--calcite-spacing-sm);align-items:center;justify-content:center;z-index:2;margin:0;padding:0;height:var(--calcite-spacing-xxxl);pointer-events:none;height:500px}`,
|
|
18
|
+
const O = N`.list-container{min-height:var(--calcite-spacing-xxxl)}.loading-container{display:flex;justify-content:center;padding:var(--calcite-spacing-md) 0;width:100%}.sticky-loading-container{display:flex;position:sticky;bottom:var(--calcite-spacing-sm);align-items:center;justify-content:center;z-index:2;margin:0;padding:0;height:var(--calcite-spacing-xxxl);pointer-events:none;height:500px}`, E = 100, q = {
|
|
19
19
|
assetGroup: "assetgroup",
|
|
20
20
|
assetType: "assettype"
|
|
21
21
|
}, S = "{00000000-0000-0000-0000-000000000000}";
|
|
@@ -43,12 +43,12 @@ class R extends Q {
|
|
|
43
43
|
this._loaded = !1, this._cancelQueryFeatureCount();
|
|
44
44
|
const t = new AbortController();
|
|
45
45
|
this._queryFeatureCountAbortController = t, await v(this._queryFeatureCount()), this._queryFeatureCountAbortController === t && (this._queryFeatureCountAbortController = null), this._loaded = !0;
|
|
46
|
-
}, this._queryDebounced = L(this._queryController,
|
|
46
|
+
}, this._queryDebounced = L(this._queryController, E), this._queryFeatureCountDebounced = L(this._queryFeatureCountController, E), this._structureAssociations = new w(), this._structureFeatureCount = 0, this._queryAssociationType = async () => {
|
|
47
47
|
this._activeAssociationType && this._queryDebounced(this._activeAssociationType);
|
|
48
48
|
}, this._associationFeatures = I(), this._associationViewModels = I(), this._featureCount = 0, this._loaded = !1, this._queryAbortController = null, this._queryFeatureCountAbortController = null, this._queryPageAbortController = null, this.associationTypes = null, this.autoDestroyDisabled = !1, this.flowType = "feature-utility-network-associations", this.headingLevel = 2, this.source = "popup";
|
|
49
49
|
}
|
|
50
50
|
static {
|
|
51
|
-
this.properties = { _activeAssociationType: 16, _associationFeatures: 16, _associationViewModels: 16, _canLoad: 16, _canQuery: 16, _featureCount: 16, _loaded: 16, _queryAbortController: 16, _queryFeatureCountAbortController: 16, _queryPageAbortController: 16, _state: 16, associationTypes: 0, autoDestroyDisabled: 5, description: 1, flowItems: 0, flowType: 1, graphic: 0, heading: 1, headingLevel: 9, layer: 0, map: 0, messages: 0, parentFeatureViewModel: 0, source: 1, spatialReference: 0, timeZone: 1, view: 0 };
|
|
51
|
+
this.properties = { _activeAssociationType: 16, _associationFeatures: 16, _associationViewModels: 16, _canLoad: 16, _canQuery: 16, _featureCount: 16, _loaded: 16, _queryAbortController: 16, _queryFeatureCountAbortController: 16, _queryPageAbortController: 16, _state: 16, associationTypes: 0, autoDestroyDisabled: 5, description: 1, flowItems: 0, flowType: 1, graphic: 0, heading: 1, headingLevel: 9, layer: 0, map: 0, messages: 0, parentFeatureViewModel: 0, referenceElement: 1, source: 1, spatialReference: 0, timeZone: 1, view: 0 };
|
|
52
52
|
}
|
|
53
53
|
static {
|
|
54
54
|
this.styles = O;
|
|
@@ -82,8 +82,8 @@ class R extends Q {
|
|
|
82
82
|
return !!this.layer?.capabilities?.query?.supportsPagination;
|
|
83
83
|
}
|
|
84
84
|
get _state() {
|
|
85
|
-
const { _canLoad: t, _canQuery: e, _featureCount: s, _loaded: o, _queryAbortController: i, _queryFeatureCountAbortController:
|
|
86
|
-
return
|
|
85
|
+
const { _canLoad: t, _canQuery: e, _featureCount: s, _loaded: o, _queryAbortController: i, _queryFeatureCountAbortController: r, _queryPageAbortController: u, associationTypes: c } = this;
|
|
86
|
+
return r || t && !o ? "loading" : i || u ? "querying" : !this._globalId || !c || !e || !s ? "disabled" : "ready";
|
|
87
87
|
}
|
|
88
88
|
get heading() {
|
|
89
89
|
return this._heading;
|
|
@@ -118,7 +118,7 @@ class R extends Q {
|
|
|
118
118
|
});
|
|
119
119
|
}
|
|
120
120
|
_addAssociationTypeFlowItem(t) {
|
|
121
|
-
this._addFlowItem(B(p`<arcgis-feature-utility-network-association-list .associationViewModels=${this._associationViewModels} .description=${this.parentFeatureViewModel?.title} .flowItems=${this.flowItems} .flowType=${this.flowType} .heading=${this._getAssociationTypeTitle(t)} .messages=${this.messages} .map=${this.map} .parentFeatureViewModel=${this.parentFeatureViewModel} .state=${this._state} .spatialReference=${this.spatialReference} .timeZone=${this.timeZone} .view=${this.view}></arcgis-feature-utility-network-association-list>`));
|
|
121
|
+
this._addFlowItem(B(p`<arcgis-feature-utility-network-association-list .associationViewModels=${this._associationViewModels} .description=${this.parentFeatureViewModel?.title} .flowItems=${this.flowItems} .flowType=${this.flowType} .heading=${this._getAssociationTypeTitle(t)} .messages=${this.messages} .map=${this.map} .parentFeatureViewModel=${this.parentFeatureViewModel} .referenceElement=${this.referenceElement} .state=${this._state} .spatialReference=${this.spatialReference} .timeZone=${this.timeZone} .view=${this.view}></arcgis-feature-utility-network-association-list>`));
|
|
122
122
|
}
|
|
123
123
|
_clearAssociations() {
|
|
124
124
|
this._attachmentAssociations.removeAll(), this._connectivityAssociations.removeAll(), this._containerAssociations.removeAll(), this._contentAssociations.removeAll(), this._structureAssociations.removeAll();
|
|
@@ -132,9 +132,9 @@ class R extends Q {
|
|
|
132
132
|
});
|
|
133
133
|
}
|
|
134
134
|
async _countAssociatedFeatureCount(t, e, s, o, i) {
|
|
135
|
-
const
|
|
135
|
+
const r = this._getFeatureQueryWhereClause(t, e, s, o);
|
|
136
136
|
return await t.queryFeatureCount({
|
|
137
|
-
where:
|
|
137
|
+
where: r,
|
|
138
138
|
outFields: ["*"],
|
|
139
139
|
returnGeometry: !1
|
|
140
140
|
}, {
|
|
@@ -144,37 +144,37 @@ class R extends Q {
|
|
|
144
144
|
async _countAssociatedFeatures(t, e, s, o, i) {
|
|
145
145
|
if (!e.length)
|
|
146
146
|
return 0;
|
|
147
|
-
const
|
|
148
|
-
await this._loadLayers(
|
|
149
|
-
const u =
|
|
150
|
-
return (await Promise.all(u)).reduce((
|
|
147
|
+
const r = await this._findLayersBySourceId(t);
|
|
148
|
+
await this._loadLayers(r);
|
|
149
|
+
const u = r.map((a) => this._countAssociatedFeatureCount(a, e, s, o, i));
|
|
150
|
+
return (await Promise.all(u)).reduce((a, d) => a + d, 0);
|
|
151
151
|
}
|
|
152
152
|
async _createAssociationFeatureObjects(t, e, s, o, i) {
|
|
153
153
|
if (!t.length)
|
|
154
154
|
return [];
|
|
155
|
-
const
|
|
156
|
-
const l = await this._findLayersBySourceId(
|
|
155
|
+
const r = /* @__PURE__ */ new Map(), u = Array.from(e.entries()).map(async ([a, d]) => {
|
|
156
|
+
const l = await this._findLayersBySourceId(a);
|
|
157
157
|
await this._loadLayers(l);
|
|
158
158
|
const y = l.map((n) => this._queryLayer(n, d, s, o, i));
|
|
159
159
|
(await Promise.all(y)).forEach((n) => {
|
|
160
160
|
n.forEach((h) => {
|
|
161
161
|
if (this.source === "popup" ? h.sourceLayer && h.getEffectivePopupTemplate() : !!h.sourceLayer) {
|
|
162
|
-
const f = h.layer.globalIdField ?? "", g = h.
|
|
163
|
-
b.push(h),
|
|
162
|
+
const f = h.layer.globalIdField ?? "", g = h.getAttribute(f), b = r.get(g) ?? [];
|
|
163
|
+
b.push(h), r.set(g, b);
|
|
164
164
|
}
|
|
165
165
|
});
|
|
166
166
|
});
|
|
167
167
|
});
|
|
168
168
|
await Promise.all(u);
|
|
169
169
|
const c = [];
|
|
170
|
-
return await Promise.all(t.toArray().map(async (
|
|
171
|
-
const { fromNetworkElement: d, toNetworkElement: l } =
|
|
170
|
+
return await Promise.all(t.toArray().map(async (a) => {
|
|
171
|
+
const { fromNetworkElement: d, toNetworkElement: l } = a, y = d.globalId === this._globalId ? l : d, m = r.get(y.globalId) ?? [];
|
|
172
172
|
await Promise.all(m.map(async (n) => {
|
|
173
173
|
const h = this._utilityNetwork?.getTerminalById(y?.terminalId ?? void 0)?.name, _ = await n.sourceLayer.getFeatureTitle(n) || this._getFeatureTitle(n);
|
|
174
174
|
c.push({
|
|
175
175
|
title: _,
|
|
176
176
|
feature: n,
|
|
177
|
-
association:
|
|
177
|
+
association: a,
|
|
178
178
|
terminalName: h
|
|
179
179
|
});
|
|
180
180
|
}));
|
|
@@ -188,16 +188,16 @@ class R extends Q {
|
|
|
188
188
|
let s = function(d, l) {
|
|
189
189
|
return d.networkSourceId === l.networkSourceId && d.globalId === l.globalId && d.terminalId === l.terminalId && d.firstUnit === l.firstUnit && d.numUnits === l.numUnits;
|
|
190
190
|
};
|
|
191
|
-
const o = t.fromNetworkElement, i = t.toNetworkElement,
|
|
192
|
-
return c &&
|
|
191
|
+
const o = t.fromNetworkElement, i = t.toNetworkElement, r = e.fromNetworkElement, u = e.toNetworkElement, c = s(o, r), a = s(i, u);
|
|
192
|
+
return c && a && t.associationType === e.associationType;
|
|
193
193
|
}
|
|
194
194
|
return t.globalId != null && e.globalId != null && t.globalId === e.globalId;
|
|
195
195
|
}
|
|
196
196
|
async _findLayersBySourceId(t) {
|
|
197
197
|
const { _utilityNetwork: e, map: s } = this;
|
|
198
198
|
e?.loaded || await e?.load();
|
|
199
|
-
const o = e.getLayerIdBySourceId(t), i = s.allLayers.filter((c) => !!e?.isUtilityLayer(c) && c.layerId === o),
|
|
200
|
-
return i.concat(
|
|
199
|
+
const o = e.getLayerIdBySourceId(t), i = s.allLayers.filter((c) => !!e?.isUtilityLayer(c) && c.layerId === o), r = s.allTables.filter((c) => !!e?.isUtilityLayer(c) && c.layerId === o);
|
|
200
|
+
return i.concat(r).toArray();
|
|
201
201
|
}
|
|
202
202
|
_getAssociationsByType(t) {
|
|
203
203
|
switch (t) {
|
|
@@ -245,15 +245,15 @@ class R extends Q {
|
|
|
245
245
|
}
|
|
246
246
|
}
|
|
247
247
|
_getFeatureQueryWhereClause(t, e, s, o) {
|
|
248
|
-
const i = t.globalIdField,
|
|
248
|
+
const i = t.globalIdField, r = t.fieldsIndex.get(q.assetGroup), u = t.fieldsIndex.get(q.assetType), c = s != null, a = o != null, d = i ? V.sqlIn(i, e) : null, l = c ? `(${r?.name} = ${s})` : null, y = c && a ? `(${u?.name} = ${o})` : null;
|
|
249
249
|
return [d, l, y].filter(Boolean).join(" AND ");
|
|
250
250
|
}
|
|
251
251
|
_getFeatureTitle(t) {
|
|
252
252
|
const e = t.attributes, s = t.sourceLayer;
|
|
253
253
|
if (!e || !s)
|
|
254
254
|
return "";
|
|
255
|
-
const o = "displayField" in s ? s.displayField : null, i = o != null ? e[o.toString()] : null,
|
|
256
|
-
return
|
|
255
|
+
const o = "displayField" in s ? s.displayField : null, i = o != null ? e[o.toString()] : null, r = i != null ? i.toString() : null, u = t.getObjectId()?.toString();
|
|
256
|
+
return r || u || "";
|
|
257
257
|
}
|
|
258
258
|
_isSubtypeGroupLayer(t) {
|
|
259
259
|
return t != null && typeof t == "object" && "type" in t && t.type === "subtype-group" && "sublayers" in t;
|
|
@@ -285,11 +285,11 @@ class R extends Q {
|
|
|
285
285
|
return this._equals(t.association, e.association);
|
|
286
286
|
}
|
|
287
287
|
async _queryAssociatedFeatures(t, e) {
|
|
288
|
-
const { layer: s, _globalId: o, associationTypes: i, _utilityNetwork:
|
|
289
|
-
if (await Promise.allSettled([s?.load(),
|
|
288
|
+
const { layer: s, _globalId: o, associationTypes: i, _utilityNetwork: r, _canQuery: u, _associationFeatures: c } = this;
|
|
289
|
+
if (await Promise.allSettled([s?.load(), r?.load()]), !u || !s || !i || !r)
|
|
290
290
|
return;
|
|
291
|
-
const
|
|
292
|
-
|
|
291
|
+
const a = this._getAssociationsByType(t.type), { associatedAssetGroup: d, associatedAssetType: l } = t, y = /* @__PURE__ */ new Map();
|
|
292
|
+
a.forEach((n) => {
|
|
293
293
|
const { fromNetworkElement: h, toNetworkElement: _ } = n, { networkSourceId: f, elementGlobalId: g } = h.globalId === o ? {
|
|
294
294
|
networkSourceId: _.networkSourceId,
|
|
295
295
|
elementGlobalId: _.globalId
|
|
@@ -299,35 +299,35 @@ class R extends Q {
|
|
|
299
299
|
}, b = y.get(f) || [];
|
|
300
300
|
b.push(g), y.set(f, b);
|
|
301
301
|
});
|
|
302
|
-
const m = await this._createAssociationFeatureObjects(
|
|
302
|
+
const m = await this._createAssociationFeatureObjects(a, y, d, l, e);
|
|
303
303
|
this._parseFeatureObjects(m, c);
|
|
304
304
|
}
|
|
305
305
|
async _queryAssociations(t) {
|
|
306
|
-
const { layer: e, _globalId: s, associationTypes: o, _utilityNetwork: i, _canQuery:
|
|
307
|
-
if (await Promise.allSettled([e?.load(), i?.load()]), this._clearAssociations(), !
|
|
306
|
+
const { layer: e, _globalId: s, associationTypes: o, _utilityNetwork: i, _canQuery: r } = this;
|
|
307
|
+
if (await Promise.allSettled([e?.load(), i?.load()]), this._clearAssociations(), !r || !e || !o || !i || !s)
|
|
308
308
|
return;
|
|
309
309
|
const u = this._isSubtypeSublayer(e) ? e.parent : e, c = new U({
|
|
310
310
|
globalId: s,
|
|
311
311
|
networkSourceId: i.getSourceIdByLayerId(u.layerId)
|
|
312
|
-
}),
|
|
312
|
+
}), a = /* @__PURE__ */ new Set();
|
|
313
313
|
o.forEach((n) => {
|
|
314
314
|
switch (n.type) {
|
|
315
315
|
case "attachment":
|
|
316
316
|
case "structure":
|
|
317
|
-
|
|
317
|
+
a.add("attachment");
|
|
318
318
|
break;
|
|
319
319
|
case "container":
|
|
320
320
|
case "content":
|
|
321
|
-
|
|
321
|
+
a.add("containment");
|
|
322
322
|
break;
|
|
323
323
|
case "connectivity":
|
|
324
|
-
|
|
324
|
+
a.add("connectivity"), a.add("junction-junction-connectivity"), a.add("junction-edge-from-connectivity"), a.add("junction-edge-midspan-connectivity"), a.add("junction-edge-to-connectivity");
|
|
325
325
|
break;
|
|
326
326
|
}
|
|
327
327
|
});
|
|
328
328
|
const d = await i?.queryAssociations(new x({
|
|
329
329
|
elements: [c],
|
|
330
|
-
types: Array.from(
|
|
330
|
+
types: Array.from(a)
|
|
331
331
|
}), {
|
|
332
332
|
signal: t?.signal
|
|
333
333
|
}), l = /* @__PURE__ */ new Map(), y = /* @__PURE__ */ new Map();
|
|
@@ -408,21 +408,21 @@ class R extends Q {
|
|
|
408
408
|
await this._queryAssociations(t), this._featureCount = this._attachmentFeatureCount + this._connectivityFeatureCount + this._containerFeatureCount + this._contentFeatureCount + this._structureFeatureCount;
|
|
409
409
|
}
|
|
410
410
|
async _queryLayer(t, e, s, o, i) {
|
|
411
|
-
const
|
|
412
|
-
where:
|
|
411
|
+
const r = this._getFeatureQueryWhereClause(t, e, s, o), u = new P({
|
|
412
|
+
where: r,
|
|
413
413
|
outFields: ["*"],
|
|
414
414
|
cacheHint: this._supportsCacheHint
|
|
415
415
|
}), c = D.fromJSON(await $(t, u, i));
|
|
416
|
-
return c.features.forEach((
|
|
416
|
+
return c.features.forEach((a) => {
|
|
417
417
|
const d = this._isSubtypeGroupLayer(t);
|
|
418
|
-
|
|
418
|
+
a.layer = d ? t.findSublayerForFeature(a) : t, a.sourceLayer = d ? t.findSublayerForFeature(a) : t;
|
|
419
419
|
}), c.features;
|
|
420
420
|
}
|
|
421
421
|
_parseFeatureObjects(t, e) {
|
|
422
422
|
const s = I();
|
|
423
423
|
t.forEach((o) => {
|
|
424
|
-
const
|
|
425
|
-
j(s,
|
|
424
|
+
const r = (o?.feature).sourceLayer;
|
|
425
|
+
j(s, r, () => new w()).add(o);
|
|
426
426
|
});
|
|
427
427
|
for (const [o, i] of s)
|
|
428
428
|
this._sortFeatureObjectsByTitle(i), e.set(o, i);
|
|
@@ -432,16 +432,16 @@ class R extends Q {
|
|
|
432
432
|
e && (this._activeAssociationType = t, this._setUpUtilityNetworkAssociationsViewModels(), this._addAssociationTypeFlowItem(t));
|
|
433
433
|
}
|
|
434
434
|
_setUpUtilityNetworkAssociationsViewModels() {
|
|
435
|
-
this._associationViewModels.forEach((i,
|
|
436
|
-
const u = this._associationFeatures.get(
|
|
435
|
+
this._associationViewModels.forEach((i, r) => {
|
|
436
|
+
const u = this._associationFeatures.get(r);
|
|
437
437
|
u ? i.forEach((c) => {
|
|
438
|
-
u.find((d) => this._matchesGlobalFeature(c, d)) || (i.remove(c), i.length || this._associationViewModels.delete(
|
|
439
|
-
}) : (i.removeAll(), this._associationViewModels.delete(
|
|
438
|
+
u.find((d) => this._matchesGlobalFeature(c, d)) || (i.remove(c), i.length || this._associationViewModels.delete(r));
|
|
439
|
+
}) : (i.removeAll(), this._associationViewModels.delete(r));
|
|
440
440
|
});
|
|
441
441
|
const { map: t, view: e, spatialReference: s, timeZone: o } = this;
|
|
442
|
-
this._associationFeatures.forEach((i,
|
|
443
|
-
const u = this._associationViewModels.get(
|
|
444
|
-
i?.filter(Boolean).forEach((c,
|
|
442
|
+
this._associationFeatures.forEach((i, r) => {
|
|
443
|
+
const u = this._associationViewModels.get(r) || new w();
|
|
444
|
+
i?.filter(Boolean).forEach((c, a) => {
|
|
445
445
|
if (!u.some((l) => this._matchesGlobalFeature(l, c))) {
|
|
446
446
|
const { association: l, feature: y, terminalName: m, title: n } = c;
|
|
447
447
|
u.add({
|
|
@@ -456,16 +456,16 @@ class R extends Q {
|
|
|
456
456
|
graphic: y
|
|
457
457
|
}),
|
|
458
458
|
terminalName: m
|
|
459
|
-
},
|
|
459
|
+
}, a);
|
|
460
460
|
}
|
|
461
|
-
}), this._associationViewModels.set(
|
|
461
|
+
}), this._associationViewModels.set(r, u);
|
|
462
462
|
});
|
|
463
463
|
}
|
|
464
464
|
_shouldDiscardNetworkElement(t, e, s) {
|
|
465
465
|
if (!t)
|
|
466
466
|
return !1;
|
|
467
|
-
const { networkSourceId: o } = t, i = s.get(e)?.associatedNetworkSourceId,
|
|
468
|
-
return i != null && i !== o || !
|
|
467
|
+
const { networkSourceId: o } = t, i = s.get(e)?.associatedNetworkSourceId, r = this._networkSourceIdsInUse.has(o);
|
|
468
|
+
return i != null && i !== o || !r;
|
|
469
469
|
}
|
|
470
470
|
_sortFeatureObjectsByTitle(t) {
|
|
471
471
|
t.sort(this._compareByFeatureTitle);
|