Skip to content

Time Slider

ESM:
Use dark colors for code blocksCopy
1
import "@arcgis/map-components/components/arcgis-time-slider";
CDN:
No specific import is needed for this component.
Since:ArcGIS Maps SDK for JavaScript 4.28

The Time Slider component simplifies visualization of temporal data in your application.

Demo

Properties

PropertyAttributeType
actionsCollection<Action>
autoDestroyDisabledauto-destroy-disabledboolean
disabled
reflected
disabledboolean
Array<Date>
fullTimeExtentTimeExtent
iconiconstring
labellabelstring
layoutlayout"auto" | "compact" | "wide"
looploopboolean
modemode"cumulative-from-end" | "cumulative-from-start" | "instant" | "time-window"
playRateplay-ratenumber
position
deprecated
position"bottom-leading" | "bottom-left" | "bottom-right" | "bottom-trailing" | "manual" | "top-leading" | "top-left" | "top-right" | "top-trailing"
referenceElementreference-elementHTMLArcgisLinkChartElement | HTMLArcgisMapElement | HTMLArcgisSceneElement | string
state
readonlyreflected
state"disabled" | "playing" | "ready"
stopsStopsByCount | StopsByDates | StopsByInterval
tickConfigsArray<TickConfig>
timeExtentTimeExtent
timeVisibletime-visibleboolean
timeZonetime-zonestring
viewMapView | SceneView

actions

Property
actions: Collection<Action>

Defines actions that will appear in a menu when the user clicks the ellipsis button timeSlider-actions-menu in the widget.

Read more...

autoDestroyDisabled

Property
autoDestroyDisabled: boolean

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 method when you are done to prevent memory leaks.

Attribute
auto-destroy-disabled
Default value
false

disabled

reflected
Property
disabled: boolean

When true, sets the widget to a disabled state so the user cannot interact with it.

Attribute
disabled
Default value
false

effectiveStops

readonlyProperty
effectiveStops: Array<Date>

Lists the specific locations on the timeline where handle(s) will snap to when manipulated.

Read more...

Default value
null

fullTimeExtent

Property
fullTimeExtent: TimeExtent

The temporal extent of the entire slider.

Read more...

icon

Property
icon: string

Icon which represents the component. Typically used when the component is controlled by another component (e.g. by the Expand component).

See also
Attribute
icon
Default value
"clock"

label

Property
label: string

The widget's default label.

Read more...

Attribute
label

layout

Property
layout: "auto" | "compact" | "wide"

Determines the layout used by the TimeSlider widget.

Attribute
layout
Default value
"auto"

loop

Property
loop: boolean

When true, the time slider will play its animation in a loop.

Attribute
loop
Default value
false

mode

Property
mode: "cumulative-from-end" | "cumulative-from-start" | "instant" | "time-window"

The time slider mode.

Attribute
mode
Default value
"time-window"

playRate

Property
playRate: number

The time (in milliseconds) between animation steps.

Attribute
play-rate
Default value
1000

position

deprecatedProperty
position: "bottom-leading" | "bottom-left" | "bottom-right" | "bottom-trailing" | "manual" | "top-leading" | "top-left" | "top-right" | "top-trailing"
Deprecatedsince 4.34, use slot instead.
Attribute
position

referenceElement

Property

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 also
Attribute
reference-element

state

readonlyreflected
Property
state: "disabled" | "playing" | "ready"

The current state of the component.

Attribute
state
Default value
"disabled"

stops

Property

Defines specific locations on the time slider where thumbs will snap to when manipulated.

Default value
{ count : 10 }

tickConfigs

Property
tickConfigs: Array<TickConfig>

When set, overrides the default TimeSlider ticks labelling system.

Default value
null

timeExtent

Property
timeExtent: TimeExtent

The current time extent of the time slider.

Default value
null

timeVisible

Property
timeVisible: boolean

Shows/hides time in the display.

Attribute
time-visible
Default value
false

timeZone

Property
timeZone: string

Dates and times displayed in the widget will be displayed in this time zone.

Read more...

Attribute
time-zone

view

Property

The view associated with the component.

Note: The recommended approach is to fully migrate applications to use map and scene components and avoid using MapView and SceneView directly. However, if you are migrating a large application from widgets to components, you might prefer a more gradual transition. To support this use case, the SDK includes this view property which connects a component to a MapView or SceneView. Ultimately, once migration is complete, the Time Slider component will be associated with a map or scene component rather than using the view property.

Methods

MethodSignature
applyTimeSliderSettingsapplyTimeSliderSettings(settings: Pick<__esri.TimeSliderProperties, "fullTimeExtent" | "loop" | "stops">): Promise<void>
componentOnReadycomponentOnReady(): Promise<void>
destroydestroy(): Promise<void>
nextnext(): Promise<void>
playplay(): Promise<void>
previousprevious(): Promise<void>
stopstop(): Promise<void>
updateWebDocumentupdateWebDocument(webmap: __esri.WebMap): Promise<void>

applyTimeSliderSettings

Method
applyTimeSliderSettings(settings: Pick<__esri.TimeSliderProperties, "fullTimeExtent" | "loop" | "stops">): Promise<void>
Parameters
ParameterTypeOptional?
settings{ loop?: boolean | undefined; fullTimeExtent?: nullish | TimeExtentProperties; stops?: nullish | Array<Date>; }
Returns
Promise<void>

componentOnReady

Method
componentOnReady(): Promise<void>

Create a promise that resolves once component is fully loaded.

Example
Use dark colors for code blocksCopy
1
2
3
4
const arcgisTimeSlider = document.querySelector("arcgis-time-slider");
document.body.append(arcgisTimeSlider);
await arcgisTimeSlider.componentOnReady();
console.log("arcgis-time-slider is ready to go!");
Returns
Promise<void>

destroy

Method
destroy(): Promise<void>

Permanently destroy the component.

Returns
Promise<void>

next

Method
next(): Promise<void>
Returns
Promise<void>

play

Method
play(): Promise<void>
Returns
Promise<void>

previous

Method
previous(): Promise<void>
Returns
Promise<void>

stop

Method
stop(): Promise<void>
Returns
Promise<void>

updateWebDocument

Method
updateWebDocument(webmap: __esri.WebMap): Promise<void>
Parameters
ParameterTypeOptional?
webmapWebMap
Returns
Promise<void>

Events

EventType
arcgisPropertyChangeCustomEvent<{ name: "state" | "timeExtent" | "effectiveStops" | "fullTimeExtent"; }>
arcgisReadyCustomEvent<void>
arcgisTriggerActionCustomEvent<TimeSliderTriggerActionEvent>

arcgisPropertyChange

Event
arcgisPropertyChange: CustomEvent<{ name: "state" | "timeExtent" | "effectiveStops" | "fullTimeExtent"; }>

Emitted when the value of a property is changed. Use this to listen to changes to properties.

bubbles
composed
cancelable

arcgisReady

Event
arcgisReady: CustomEvent<void>

Emitted when the component associated with a map or scene view is ready to be interacted with.

bubbles
composed
cancelable

arcgisTriggerAction

Event
arcgisTriggerAction: CustomEvent<TimeSliderTriggerActionEvent>

Emitted when an action is triggered on the component.

bubbles
composed
cancelable

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.