UNPKG

@tomorrowevening/ux-lib

Version:

React components extracted from Hermes editor

39 lines (38 loc) 952 B
export interface Vector2Value { x: number; y: number; } export interface Grid3Value { x: number; y: number; z: number; } export interface Grid4Value { x: number; y: number; z: number; w: number; } export interface OptionValue { label: string; value: string | number | boolean; } export type FieldValue = string | number | boolean | Vector2Value | Grid3Value | Grid4Value | OptionValue[]; export type FieldType = 'string' | 'number' | 'range' | 'boolean' | 'color' | 'vector2' | 'grid3' | 'grid4' | 'image' | 'option' | 'button'; export interface GroupItemData { type: FieldType; prop: string; title?: string; value?: unknown; min?: number; max?: number; step?: number; disabled?: boolean; options?: OptionValue[]; } export interface GroupData { title: string; expanded?: boolean; items: GroupItemData[]; onUpdate: (prop: string, value: unknown) => void; }