import type GraphicOrigin from "./GraphicOrigin.js"; import type AnnotationFeatureLayer from "../layers/AnnotationFeatureLayer.js"; import type AnnotationFeatureSublayer from "../layers/support/AnnotationFeatureSublayer.js"; /** * Provides information about the [AnnotationFeatureLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/AnnotationFeatureLayer/) from which a graphic originates. * The [origin](https://developers.arcgis.com/javascript/latest/references/core/Graphic/#origin) information may be available when a graphic is returned from methods such as * [hitTest()](https://developers.arcgis.com/javascript/latest/references/core/views/MapView/#hitTest) or [queryFeatures()](https://developers.arcgis.com/javascript/latest/references/core/layers/AnnotationFeatureLayer/#queryFeatures). * * @since 5.1 * @see [MapView.hitTest()](https://developers.arcgis.com/javascript/latest/references/core/views/MapView/#hitTest) * @see [SceneView.hitTest()](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/#hitTest) * @see [AnnotationFeatureLayer.queryFeatures()](https://developers.arcgis.com/javascript/latest/references/core/layers/AnnotationFeatureLayer/#queryFeatures) * @example * // get a point from view's click event * view.on("click", async (event) => { * // Search for all features only on included layer at the clicked location * const response = await view.hitTest(event, {include: layer}); * // if graphics are returned from layer, get the layer id from graphic origin * if (response.results.length > 0) { * const originId = response.results[0].graphic?.origin?.layer?.id; * } * }); */ export default class AnnotationFeatureGraphicOrigin extends GraphicOrigin { constructor(layer: AnnotationFeatureLayer, sublayer: AnnotationFeatureSublayer | null); /** A layer from which a graphic originates. */ readonly layer: AnnotationFeatureLayer; /** The [AnnotationFeatureSublayer](https://developers.arcgis.com/javascript/latest/references/core/layers/support/AnnotationFeatureSublayer/) from which a graphic originates. */ readonly sublayer: AnnotationFeatureSublayer | null; /** * Indicates the type of layer the graphic originated from. * * @default "annotation-feature" */ readonly type: AnnotationFeatureLayer["type"]; }