@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
34 lines (31 loc) • 2.21 kB
TypeScript
import type Accessor from "../../core/Accessor.js";
import type { MapViewOrSceneView } from "../../views/MapViewOrSceneView.js";
export interface ZoomViewModelProperties extends Partial<Pick<ZoomViewModel, "view">> {}
export type ZoomViewModelState = "disabled" | "ready";
/**
* Provides the logic for the [Zoom](https://developers.arcgis.com/javascript/latest/references/core/widgets/Zoom/) widget.
*
* @deprecated since 5.0. Use the [Zoom component](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-zoom/) instead. To access the `canZoomIn`, `canZoomOut`, `zoomIn()`, and `zoomOut()` functionality, use the corresponding properties and methods on the [Map component](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-map/#canZoomIn), [Scene component](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-scene/#canZoomIn), [MapView](https://developers.arcgis.com/javascript/latest/references/core/views/MapView/#canZoomIn), or [SceneView](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/#canZoomIn) directly.
* @since 4.0
* @see [Zoom](https://developers.arcgis.com/javascript/latest/references/core/widgets/Zoom/) widget - _Deprecated since 4.32. Use the [Zoom component](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-zoom/) instead._
* @see [Programming patterns: Widget viewModel pattern](https://developers.arcgis.com/javascript/latest/programming-patterns/#widget-viewmodel-pattern)
*/
export default class ZoomViewModel extends Accessor {
constructor(properties?: ZoomViewModelProperties);
/** Indicates if the view can zoom in. */
get canZoomIn(): boolean;
/** Indicates if the view can zoom out. */
get canZoomOut(): boolean;
/**
* The current state of the widget.
*
* @default "disabled"
*/
get state(): ZoomViewModelState;
/** The view from which to operate. */
accessor view: MapViewOrSceneView | null | undefined;
/** Zooms the view in by an LOD factor of 0.5. */
zoomIn(): void;
/** Zooms the view out by an LOD factor of 2. */
zoomOut(): void;
}