@stencila/thema
Version:
Themes for executable documents
33 lines (32 loc) • 1.16 kB
TypeScript
import Pickr from '@simonwep/pickr';
import '@simonwep/pickr/dist/themes/monolith.min.css';
import React from 'react';
interface Props {
name: string;
value: string;
onChange: (variable: string, value: string, commit?: boolean) => void;
}
interface State {
pickr: Pickr | null;
}
declare type Snapshot = null | {
valueChanged: boolean;
};
export declare class ColorInput extends React.PureComponent<Props, State> {
pickrEl: React.MutableRefObject<HTMLButtonElement | null>;
originalColor: Props['value'];
constructor(props: Props);
setColor: (value: string, commit?: boolean) => void;
setPickrColor: (value: string) => void;
showPickr: () => void;
hidePickr: () => void;
onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
onBlur: (e: React.ChangeEvent<HTMLInputElement>) => void;
onKeyUp: (e: React.KeyboardEvent<HTMLInputElement>) => void;
componentDidMount(): void;
getSnapshotBeforeUpdate(prevProps: Props): Snapshot;
componentDidUpdate(_prevProps: Props, _prevState: State, snapshot: Snapshot): void;
componentWillUnmount(): void;
render(): JSX.Element;
}
export {};