| Server IP : 185.208.173.17 / Your IP : 87.236.161.98 Web Server : Microsoft-IIS/10.0 System : Windows NT SRV8576125506 10.0 build 26100 (Windows Server 2016) AMD64 User : IUSR ( 0) PHP Version : 7.4.13 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /inetpub/wwwroot/parsmega.nuxt/node_modules/@splidejs/splide/src/js/constructors/State/ |
Upload File : |
import { includes, toArray } from '../../utils';
/**
* The interface for the State object.
*
* @since 3.0.0
*/
export interface StateObject {
set( state: number ): void;
is( states: number | number[] ): boolean;
}
/**
* The function providing a super simple state system.
*
* @param initialState - Specifies the initial state.
*/
export function State( initialState: number ): StateObject {
/**
* The current state.
*/
let state = initialState;
/**
* Sets a new state.
*
* @param value - A new state value.
*/
function set( value: number ): void {
state = value;
}
/**
* Checks if the current state matches the provided one.
*
* @param states - A state to check.
*
* @return `true` if the current state is the provided one.
*/
function is( states: number | number[] ): boolean {
return includes( toArray( states ), state );
}
return { set, is };
}