mirror of
https://bitbucket.org/Mattrixwv/mattrixwvreactcomponents.git
synced 2025-12-07 14:13:58 -05:00
Fix broken types in imported library
This commit is contained in:
171
lib/types/InputTypes.ts
Normal file
171
lib/types/InputTypes.ts
Normal file
@@ -0,0 +1,171 @@
|
||||
import type React from "react";
|
||||
import type { ChangeEventHandler } from "react";
|
||||
|
||||
|
||||
export interface TextInputProps {
|
||||
id?: string;
|
||||
className?: string;
|
||||
inputClassName?: string;
|
||||
labelClassName?: string;
|
||||
name?: string;
|
||||
maxLength?: number;
|
||||
spellCheck?: boolean;
|
||||
placeholder?: string;
|
||||
defaultValue?: string;
|
||||
value?: string;
|
||||
onChange?: ChangeEventHandler<HTMLInputElement>;
|
||||
disabled?: boolean;
|
||||
}
|
||||
|
||||
export interface TextAreaProps {
|
||||
id?: string;
|
||||
className?: string;
|
||||
inputClassName?: string;
|
||||
labelClassName?: string;
|
||||
name?: string;
|
||||
maxLength?: number;
|
||||
spellCheck?: boolean;
|
||||
placeholder?: string;
|
||||
defaultValue?: string;
|
||||
value?: string;
|
||||
disabled?: boolean;
|
||||
rows?: number;
|
||||
cols?: number;
|
||||
onChange?: ChangeEventHandler<HTMLTextAreaElement>;
|
||||
}
|
||||
|
||||
export interface SelectInputProps {
|
||||
label: React.ReactNode;
|
||||
value?: string;
|
||||
onChange?: (newValue: string) => void;
|
||||
children: React.ReactNode;
|
||||
}
|
||||
|
||||
export interface OptionInputProps {
|
||||
id?: string;
|
||||
className?: string;
|
||||
value: string;
|
||||
children: React.ReactNode;
|
||||
}
|
||||
|
||||
export type MattrixwvSwitchSize = "none" | "xs" | "sm" | "md" | "lg" | "xl";
|
||||
|
||||
export interface MattrixwvSwitchProps {
|
||||
id?: string;
|
||||
className?: string;
|
||||
knobClassName?: string;
|
||||
size?: MattrixwvSwitchSize;
|
||||
wide?: boolean;
|
||||
name?: string;
|
||||
value?: string;
|
||||
defaultChecked?: boolean;
|
||||
checked?: boolean;
|
||||
onChange?: (newChecked: boolean) => void;
|
||||
disabled?: boolean;
|
||||
children?: React.ReactNode;
|
||||
offText?: React.ReactNode;
|
||||
onText?: React.ReactNode;
|
||||
}
|
||||
|
||||
export interface MattrixwvButtonSwitchProps {
|
||||
id?: string;
|
||||
className?: string;
|
||||
name?: string;
|
||||
value?: string;
|
||||
defaultChecked?: boolean;
|
||||
checked?: boolean;
|
||||
onChange?: (newChecked: boolean) => void;
|
||||
disabled?: boolean;
|
||||
onNode: React.ReactNode;
|
||||
offNode: React.ReactNode;
|
||||
}
|
||||
|
||||
export interface NumberInputProps {
|
||||
id?: string;
|
||||
className?: string;
|
||||
inputClassName?: string;
|
||||
labelClassName?: string;
|
||||
name?: string;
|
||||
min?: number;
|
||||
max?: number;
|
||||
defaultValue?: number;
|
||||
value?: number;
|
||||
onChange?: (newValue: number) => void;
|
||||
disabled?: boolean;
|
||||
children?: React.ReactNode;
|
||||
}
|
||||
|
||||
export interface NumberSliderProps {
|
||||
id?: string;
|
||||
className?: string;
|
||||
name?: string;
|
||||
min?: number;
|
||||
max?: number;
|
||||
step?: number;
|
||||
defaultValue?: number;
|
||||
value?: number;
|
||||
onChange?: (newValue: number) => void;
|
||||
disabled?: boolean;
|
||||
}
|
||||
|
||||
export interface FileInputProps {
|
||||
id?: string;
|
||||
className?: string;
|
||||
name?: string;
|
||||
minSize?: number;
|
||||
maxSize?: number;
|
||||
showFileName?: boolean;
|
||||
showSize?: boolean;
|
||||
onChange?: (newFile: File | undefined) => void;
|
||||
disabled?: boolean;
|
||||
children?: React.ReactNode;
|
||||
}
|
||||
|
||||
|
||||
export type CheckboxSize = "none" | "xs" | "sm" | "md" | "lg" | "xl";
|
||||
|
||||
export interface CheckboxProps {
|
||||
id?: string;
|
||||
className?: string;
|
||||
labelClassName?: string;
|
||||
name?: string;
|
||||
size?: CheckboxSize;
|
||||
box?: boolean;
|
||||
onChange?: (newChecked: boolean) => void;
|
||||
checked?: boolean;
|
||||
defaultChecked?: boolean;
|
||||
strokeWidth?: number;
|
||||
value?: string;
|
||||
children?: React.ReactNode;
|
||||
}
|
||||
|
||||
export type RadioButtonSize = "none" | "xs" | "sm" | "md" | "lg" | "xl";
|
||||
|
||||
export interface RadioButtonProps {
|
||||
id?: string;
|
||||
className?: string;
|
||||
labelClassName?: string;
|
||||
size?: RadioButtonSize;
|
||||
value: string;
|
||||
children?: React.ReactNode;
|
||||
}
|
||||
|
||||
export interface RadioListProps {
|
||||
id?: string;
|
||||
className?: string;
|
||||
name?: string;
|
||||
value?: string;
|
||||
onChange?: (value: string) => void;
|
||||
defaultValue?: string;
|
||||
direction?: "vertical" | "horizontal";
|
||||
children?: React.ReactNode;
|
||||
}
|
||||
|
||||
|
||||
export interface DateInputProps {
|
||||
id?: string;
|
||||
className?: string;
|
||||
defaultValue?: Date;
|
||||
value?: Date;
|
||||
onChange?: (newValue: Date) => void;
|
||||
}
|
||||
Reference in New Issue
Block a user