UNPKG

extended-dynamic-forms

Version:

Extended React JSON Schema Form (RJSF) v6 with custom components, widgets, templates, layouts, and form events

42 lines (40 loc) 1.5 kB
import { RJSFSchema, UiSchema } from '@rjsf/utils'; import { ConditionalRule, ConditionalEvent, ConditionalActions, ConditionalEngineInstance } from '../types'; export declare class SimpleConditionalEngine implements ConditionalEngineInstance { private rules; private actions; private originalSchema; private originalUiSchema; constructor(rules: ConditionalRule[], schema: RJSFSchema, uiSchema?: UiSchema, extraActions?: ConditionalActions); /** * Get nested value from object using dot notation with array index support */ private getNestedValue; /** * Evaluate a single condition against form data */ private evaluateCondition; /** * Evaluate field-level condition */ private evaluateFieldCondition; addRule(rule: ConditionalRule): void; run(formData: any): Promise<ConditionalEvent[]>; processEvents(events: ConditionalEvent[], schema: RJSFSchema, uiSchema: UiSchema, formData: any): { schema: RJSFSchema; uiSchema: UiSchema; }; processFormData(formData: any): Promise<{ schema: RJSFSchema; uiSchema: UiSchema; formData: any; }>; runAndProcess(formData: any, schema: RJSFSchema, uiSchema: UiSchema): Promise<{ schema: RJSFSchema; uiSchema: UiSchema; events: ConditionalEvent[]; }>; getAvailableActions(): string[]; addAction(actionType: string, actionFunction: any): void; removeAction(actionType: string): void; }