futurise
Ƭ Listener<E
>: (event
: E
) => void
Name | Type |
---|---|
E |
extends object |
▸ (event
): void
Name | Type |
---|---|
event |
E |
void
Ƭ ListenerOptions: Parameters
<EventTarget
["addEventListener"
]>[2
]
Ƭ PromiseStatus: "idle"
| "pending"
| "fulfilled"
| "rejected"
Status of a promise.
Ƭ Register<L
, O
>: (listener
: L
, options?
: O
) => Unregister
Name |
---|
L |
O |
▸ (listener
, options?
): Unregister
Name | Type |
---|---|
listener |
L |
options? |
O |
Ƭ Unregister: () => void
▸ (): void
void
▸ interval(duration
, callback
): Unregister
Calls callback
at least every duration
milliseconds. Returns a function that stops future calls of callback
. If duration
is falsy, uses requestAnimationFrame
if available.
Name | Type | Description |
---|---|---|
duration |
number |
Duration of each interval in milliseconds. |
callback |
() => void |
Called at the end of each interval. |
Function that cancels the interval.
▸ on<K
>(target
, eventName
, listener
, options?
): Unregister
Listens for event
on target
, calling listener(event)
at each incoming event
. The provided options
are identical to those provided to addEventListener
.
Returns a function that removes the listener
from the target
for the specified event
.
Name | Type |
---|---|
K |
extends keyof HTMLElementEventMap |
Name | Type | Description |
---|---|---|
target |
HTMLElement |
The target on which to listen for the event. |
eventName |
K |
- |
listener |
Listener <HTMLElementEventMap [K ]> |
The listener callback. |
options? |
boolean | AddEventListenerOptions |
Options to pass to the listener. |
A function that removes the listener
.
▸ on<K
>(target
, eventName
, listener
, options?
): Unregister
Name | Type |
---|---|
K |
extends keyof DocumentEventMap |
Name | Type |
---|---|
target |
Document |
eventName |
K |
listener |
Listener <DocumentEventMap [K ]> |
options? |
boolean | AddEventListenerOptions |
▸ on<K
>(target
, eventName
, listener
, options?
): Unregister
Name | Type |
---|---|
K |
extends keyof WorkerEventMap |
Name | Type |
---|---|
target |
Worker |
eventName |
K |
listener |
Listener <WorkerEventMap [K ]> |
options? |
boolean | AddEventListenerOptions |
▸ on<E
>(target
, eventName
, listener
, options?
): Unregister
Name | Type |
---|---|
E |
extends object |
Name | Type |
---|---|
target |
EventTarget |
eventName |
string |
listener |
Listener <E > |
options? |
boolean | AddEventListenerOptions |
▸ on<K
>(target
, eventName
): Register
<Listener
<HTMLElementEventMap
[K
]>, ListenerOptions
>
Returns a function that registers a listener
with optional options
for a given event
on the provided target
.
Name | Type |
---|---|
K |
extends keyof HTMLElementEventMap |
Name | Type | Description |
---|---|---|
target |
HTMLElement |
The target on which to listen for the event. |
eventName |
K |
- |
Register
<Listener
<HTMLElementEventMap
[K
]>, ListenerOptions
>
Function that registers a listener
with optional options
.
Example
const register = on(element, "click");
// Start listening
const off = register(callback);
// Stop listening
off();
▸ on<K
>(target
, eventName
): Register
<Listener
<DocumentEventMap
[K
]>, ListenerOptions
>
Name | Type |
---|---|
K |
extends keyof DocumentEventMap |
Name | Type |
---|---|
target |
Document |
eventName |
K |
Register
<Listener
<DocumentEventMap
[K
]>, ListenerOptions
>
▸ on<K
>(target
, eventName
): Register
<Listener
<WorkerEventMap
[K
]>, ListenerOptions
>
Name | Type |
---|---|
K |
extends keyof WorkerEventMap |
Name | Type |
---|---|
target |
Worker |
eventName |
K |
Register
<Listener
<WorkerEventMap
[K
]>, ListenerOptions
>
▸ on<E
>(target
, eventName
): Register
<Listener
<E
>, ListenerOptions
>
Name | Type |
---|---|
E |
extends object |
Name | Type |
---|---|
target |
EventTarget |
eventName |
string |
Register
<Listener
<E
>, ListenerOptions
>
▸ once<K
>(target
, eventName
, listener
, options?
): Unregister
Listens for event
on target
, calling listener(event)
at the first occuring event
. The listener
is then unregistered upon the first occurence. The provided options
are identical to those provided to addEventListener
.
Returns a function that removes the listener
from the target
for the specified event
.
Name | Type |
---|---|
K |
extends keyof HTMLElementEventMap |
Name | Type | Description |
---|---|---|
target |
HTMLElement |
The target on which to listen for the event. |
eventName |
K |
- |
listener |
Listener <HTMLElementEventMap [K ]> |
The listener callback. |
options? |
boolean | AddEventListenerOptions |
Options to pass to the listener. |
A function that removes the listener
.
▸ once<K
>(target
, eventName
, listener
, options?
): Unregister
Name | Type |
---|---|
K |
extends keyof DocumentEventMap |
Name | Type |
---|---|
target |
Document |
eventName |
K |
listener |
Listener <DocumentEventMap [K ]> |
options? |
boolean | AddEventListenerOptions |
▸ once<K
>(target
, eventName
, listener
, options?
): Unregister
Name | Type |
---|---|
K |
extends keyof WorkerEventMap |
Name | Type |
---|---|
target |
Worker |
eventName |
K |
listener |
Listener <WorkerEventMap [K ]> |
options? |
boolean | AddEventListenerOptions |
▸ once<E
>(target
, eventName
, listener
, options?
): Unregister
Name | Type |
---|---|
E |
extends object |
Name | Type |
---|---|
target |
EventTarget |
eventName |
string |
listener |
Listener <E > |
options? |
boolean | AddEventListenerOptions |
▸ once<K
>(target
, eventName
): Register
<Listener
<HTMLElementEventMap
[K
]>, ListenerOptions
>
Returns a function that registers a listener
with optional options
for a given event
on the provided target
. The listener
is then unregistered upon the first occurence of the event
.
Name | Type |
---|---|
K |
extends keyof HTMLElementEventMap |
Name | Type | Description |
---|---|---|
target |
HTMLElement |
The target on which to listen for the event. |
eventName |
K |
- |
Register
<Listener
<HTMLElementEventMap
[K
]>, ListenerOptions
>
Function that registers a listener
with optional options
.
Example
const register = on(element, "click");
// Start listening
const off = register(callback);
// Stop listening
off();
▸ once<K
>(target
, eventName
): Register
<Listener
<DocumentEventMap
[K
]>, ListenerOptions
>
Name | Type |
---|---|
K |
extends keyof DocumentEventMap |
Name | Type |
---|---|
target |
Document |
eventName |
K |
Register
<Listener
<DocumentEventMap
[K
]>, ListenerOptions
>
▸ once<K
>(target
, eventName
): Register
<Listener
<WorkerEventMap
[K
]>, ListenerOptions
>
Name | Type |
---|---|
K |
extends keyof WorkerEventMap |
Name | Type |
---|---|
target |
Worker |
eventName |
K |
Register
<Listener
<WorkerEventMap
[K
]>, ListenerOptions
>
▸ once<E
>(target
, eventName
): Register
<Listener
<E
>, ListenerOptions
>
Name | Type |
---|---|
E |
extends object |
Name | Type |
---|---|
target |
EventTarget |
eventName |
string |
Register
<Listener
<E
>, ListenerOptions
>
▸ reduceStatusList(...statusList
): PromiseStatus
Returns a reduced promise status, prioritizing "rejected"
over "pending"
over "idle"
over "fulfilled"
.
Name | Type | Description |
---|---|---|
...statusList |
PromiseStatus [] |
List of promise statuses. |
The reduced promise status.
▸ sleep(duration
, signal?
): Promise
<unknown
>
Returns a promise that resolves after at least duration
milliseconds elapsed.
If a signal
is provided, listens for an abort
event to reject the promise with the signal.reason
.
Name | Type | Description |
---|---|---|
duration |
number |
Sleep duration in milliseconds. |
signal? |
AbortSignal |
Optional signal parameter on which the abort event will be listened to. |
Promise
<unknown
>
▸ timeout(duration
, callback
): Unregister
Calls callback
after at least duration
milliseconds. Returns a function that cancels the future call of callback
, if not already called.
Name | Type | Description |
---|---|---|
duration |
number |
Timeout duration in milliseconds. |
callback |
() => void |
Called after the duration elapsed. |
Function that cancels the call of callback
.
▸ until<E
>(register
, signal?
, sentinel?
): Promise
<E
>
Listens for an event with the provided register
function until it happens or until sentinel(event)
returns a truthy value.
If a signal
is provided, listens to it to cancel the promise.
Name | Type |
---|---|
E |
extends object = Event |
Name | Type | Description |
---|---|---|
register |
Register <Listener <E >, any > |
Function that registers a listener for the event to catch. |
signal? |
AbortSignal |
Optional signal parameter on which the abort event will be listened to. |
sentinel? |
(event : E ) => boolean |
Optional sentinel function that validates an event occurence. |
Promise
<E
>
A promise that resolves to the event
.
▸ untilOnline(signal?
): Promise
<boolean
>
Returns a promise that waits for the browser to be back online.
Resolves to true
if it it was offline before calling this function, false
otherwise.
If a signal
is provided, listens to it to cancel the promise.
Name | Type | Description |
---|---|---|
signal? |
AbortSignal |
Optional signal parameter on which the abort event will be listened to. |
Promise
<boolean
>
true
if it it was offline before calling this function, false
otherwise.