UNPKG

react-konami-code

Version:

Trigger an easter egg by pressing a sequence of keys. Available as a component or a custom hook. Supports timeout and input debounce/reset.

40 lines (39 loc) 1.28 kB
import React from 'react'; import PropTypes from 'prop-types'; export interface KonamiProps { className?: string; code?: number[]; disabled?: boolean; resetDelay?: number; action?: (() => void) | null; timeout?: number; onTimeout?: (() => void) | null; children?: React.ReactNode; } export interface KonamiState { done: boolean; input: number[]; } declare const propTypes: { action: PropTypes.Requireable<(...args: any[]) => any>; className: PropTypes.Requireable<string>; code: PropTypes.Requireable<(number | null | undefined)[]>; disabled: PropTypes.Requireable<boolean>; onTimeout: PropTypes.Requireable<(...args: any[]) => any>; resetDelay: PropTypes.Requireable<number>; timeout: PropTypes.Requireable<number>; }; declare class Konami extends React.Component<KonamiProps, KonamiState> { private timeoutID; private _timer; static defaultProps: KonamiProps; static propTypes: typeof propTypes; constructor(props: KonamiProps); componentDidMount(): void; shouldComponentUpdate(nextProps: KonamiProps, nextState: KonamiState): boolean; componentWillUnmount(): void; onKeyUp(e: KeyboardEvent): void; resetInput(): void; render(): JSX.Element; } export default Konami;