UNPKG

@arcgis/map-components

Version:
123 lines (121 loc) 5.35 kB
/// <reference types="@arcgis/core/interfaces.d.ts" /> /// <reference types="../../index.d.ts" /> import { Use } from '@arcgis/lumina/controllers'; import { JsxNode, PublicLitElement as LitElement, TargetedEvent } from '@arcgis/lumina'; import { ArcgisReferenceElement } from '../../utils/component-utils'; import { default as LocateViewModel } from './LocateViewModel'; declare const useLocateViewModel: (component: LitElement & Pick<LocateViewModel, never> & import('../../controllers/useViewModel').ViewModelControllerUses<LocateViewModel>) => LocateViewModel; /** * The Locate component animates the Map or Scene to the user's current location. * * This component uses the browser's [Geolocation API](https://developer.mozilla.org/en-US/docs/Web/API/Geolocation_API) which is only available in [secure contexts](https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts), such as HTTPS. * Note that localhost is considered "potentially secure" and can be used for easy testing in browsers that support * [Window.isSecureContext](https://developer.mozilla.org/en-US/docs/Web/API/isSecureContext#browser_compatibility). * * [Read more...](https://developers.arcgis.com/javascript/latest/references/map-components/arcgis-locate/) */ export declare class ArcgisLocate extends LitElement { /** * If true, the component will not be destroyed automatically when it is * disconnected from the document. This is useful when you want to move the * component to a different place on the page, or temporarily hide it. If this * is set, make sure to call the [destroy](https://developers.arcgis.com/javascript/latest/references/map-components/arcgis-locate/#destroy) method when you are done to * prevent memory leaks. * * @default false */ autoDestroyDisabled: boolean; geolocationOptions: PositionOptions | undefined; /** * Indicates whether to navigate the view to the position and scale of the geolocated result. * * @default false */ goToLocationDisabled: boolean; goToOverride: __esri.GoToOverride | undefined; /** The graphic used to show the user's location on the map. */ graphic: __esri.Graphic; /** @default "gps-off" */ icon?: string | undefined; /** The component's default label. */ label?: string; /** * Replace localized message strings with your own strings. * * _**Note**: Individual message keys may change between releases._ */ messageOverrides?: typeof this.messages._overrides; /** @default false */ popupDisabled: boolean; /** @default "top-left" */ position: __esri.UIPosition; /** * By assigning the `id` attribute of the Map or Scene component to this property, you can position a child component anywhere in the DOM while still maintaining a connection to the Map or Scene. * * @see [Associate components with a Map or Scene component](https://developers.arcgis.com/javascript/latest/programming-patterns/#associate-components-with-a-map-or-scene-component) */ referenceElement?: ArcgisReferenceElement | string; /** * Indicates the scale to set on the view when navigating to the position of the geolocated * result, after a location is returned from the [track](#event-track) event. * * @default null */ scale: number | undefined; /** The current state of the component. */ state: "ready" | "disabled" | "error" | "feature-unsupported" | "locating"; /** * This function provides the ability to interrupt and cancel the process of * programmatically obtaining the location of the user's device. */ cancelLocate(): Promise<void>; /** Permanently destroy the component. */ destroy(): Promise<void>; locate(): Promise<GeolocationPosition | null>; readonly arcgisError: TargetedEvent<this, { error: GeolocationPositionError; }>; /** Emitted when the value of a property is changed. Use this to listen to changes to properties. */ readonly arcgisPropertyChange: TargetedEvent<this, { name: "state"; }>; /** Emitted when the component associated with a map or scene view is is ready to be interacted with. */ readonly arcgisReady: TargetedEvent<this, void>; readonly arcgisSuccess: TargetedEvent<this, { position: GeolocationPosition; }>; private messages: Partial<{ componentLabel: string; title: string; currentLocation: string; timestamp: string; latitude: string; longitude: string; accuracy: string; altitude: string; altitudeAccuracy: string; heading: string; speed: string; permissionError: string; timeoutError: string; positionUnavailable: string; cancel: string; }> & import('@arcgis/lumina/controllers').T9nMeta<{ componentLabel: string; title: string; currentLocation: string; timestamp: string; latitude: string; longitude: string; accuracy: string; altitude: string; altitudeAccuracy: string; heading: string; speed: string; permissionError: string; timeoutError: string; positionUnavailable: string; cancel: string; }>; } export {};