@acusti/css-value-input
CSSValueInput
is a React component that renders a text input that can
take and update a CSS value of a particular type with a default unit. The
input’s behavior is similar to those of design applications such as Adobe
Illustrator.
See the storybook docs and demo to get a feel for what it can do.
Usage
npm install @acusti/css-value-input
# or
yarn add @acusti/css-value-input
Props
This is the type signature for the props you can pass to CSSValueInput
.
The unique features provided by the component are called out and explained
above the corresponding prop via JSDoc comments:
type Props = {
allowEmpty?: boolean;
className?: string;
cssValueType?: CSSValueType;
disabled?: boolean;
getValueAsNumber?: (value: string | number) => number;
icon?: React.ReactNode;
label?: string;
max?: number;
min?: number;
name?: string;
onBlur?: (event: React.FocusEvent<HTMLInputElement>) => unknown;
onChange?: (event: React.ChangeEvent<HTMLInputElement>) => unknown;
onFocus?: (event: React.FocusEvent<HTMLInputElement>) => unknown;
onKeyDown?: (event: React.KeyboardEvent<HTMLInputElement>) => unknown;
onKeyUp?: (event: React.KeyboardEvent<HTMLInputElement>) => unknown;
onSubmitValue: (value: string) => unknown;
placeholder?: string;
step?: number;
tabIndex?: number;
title?: string;
unit?: string;
validator?: RegExp | ((value: string) => boolean);
value?: string;
};