UNPKG

@jsonforms/vue-vuetify

Version:

Vue Vuetify renderers for JSON Forms

162 lines (160 loc) 4.69 kB
import { ControlElement, JsonSchema, UISchemaElement, JsonFormsRendererRegistryEntry, JsonFormsCellRendererRegistryEntry, Translator, BaseUISchemaElement, RankedTester, CombinatorTranslations } from '@jsonforms/core'; import { DefineComponent, PropType, ComputedRef, Ref, ComponentOptionsMixin, PublicProps, ExtractPropTypes } from 'vue'; import { IconAliases, Styles } from '..'; interface SchemaRenderInfo { schema: JsonSchema; resolvedSchema: JsonSchema; uischema: UISchemaElement; label: string; } export declare function getJsonDataType(value: any): string | null; declare const controlRenderer: DefineComponent<{ schema: { required: true; type: PropType<JsonSchema>; }; uischema: { required: true; type: PropType<ControlElement>; }; path: { required: true; type: StringConstructor; }; enabled: { required: false; type: BooleanConstructor; default: undefined; }; renderers: { required: boolean; type: PropType< JsonFormsRendererRegistryEntry[]>; default: undefined; }; cells: { required: boolean; type: PropType< JsonFormsCellRendererRegistryEntry[]>; default: undefined; }; config: { required: boolean; type: ObjectConstructor; default: undefined; }; }, { nullable: ComputedRef<boolean>; mixedRenderInfos: ComputedRef<(SchemaRenderInfo & { index: number; })[]>; selectedIndex: Ref<number | null | undefined>; t: ComputedRef<Translator>; valueType: Ref<string | null>; schema: ComputedRef<JsonSchema | undefined>; resolvedSchema: ComputedRef<JsonSchema | undefined>; uischema: ComputedRef< BaseUISchemaElement | undefined>; path: string; icons: { current: ComputedRef<IconAliases>; }; currentlyExpanded: Ref<number | null>; control: ComputedRef<{ uischema: ControlElement; schema: NonNullable<JsonSchema>; path: string; enabled: boolean; renderers: JsonFormsRendererRegistryEntry[]; cells: JsonFormsCellRendererRegistryEntry[] & { tester: RankedTester; cell: any; }[]; config: any; label: string; description: string; required: NonNullable<boolean | undefined>; i18nKeyPrefix: string; errors: string; data: any; rootSchema: NonNullable<JsonSchema>; id: string; visible: boolean; }> & ComputedRef<{ uischema: ControlElement; path: string; config: any; label: string; description: string; required: boolean; errors: string; id: string; visible: boolean; } & { errors: string; }> & ComputedRef<{ i18nKeyPrefix: string; label: string; } & { translations: CombinatorTranslations; }>; handleChange(path: string, value: any): void; styles: Styles; isFocused: Ref<boolean>; appliedOptions: ComputedRef<any>; controlWrapper: ComputedRef<{ id: string; description: string; errors: string; label: string; visible: boolean; required: boolean; }>; onChange: (value: any) => void; vuetifyProps: (path: string) => any; persistentHint: () => boolean; computedLabel: ComputedRef<string>; touched: Ref<boolean>; handleBlur: () => void; handleFocus: () => void; rawErrors: ComputedRef<string>; }, unknown, {}, { setToNull(): void; handleSelectChange(newIndex: number): void; }, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly< ExtractPropTypes<{ schema: { required: true; type: PropType<JsonSchema>; }; uischema: { required: true; type: PropType<ControlElement>; }; path: { required: true; type: StringConstructor; }; enabled: { required: false; type: BooleanConstructor; default: undefined; }; renderers: { required: boolean; type: PropType< JsonFormsRendererRegistryEntry[]>; default: undefined; }; cells: { required: boolean; type: PropType< JsonFormsCellRendererRegistryEntry[]>; default: undefined; }; config: { required: boolean; type: ObjectConstructor; default: undefined; }; }>>, { enabled: boolean; renderers: JsonFormsRendererRegistryEntry[]; cells: JsonFormsCellRendererRegistryEntry[]; config: Record<string, any>; }, {}>; export default controlRenderer;