FieldRule interface exported

Last updated: 2026-03-05T10:53:28.867Z

Metrics

LOC: 29 Complexity: 1 Params: 0

Signature

interface FieldRule

Summary

Rule to define how a specific field should be filled on a specific site

Source Code

export interface FieldRule {
  id: string;
  /** URL pattern (supports wildcards like *.example.com) */
  urlPattern: string;
  /** CSS selector or field identifier */
  fieldSelector: string;
  /** Optional: field name/id for matching */
  fieldName?: string;
  /** The type of value to generate */
  fieldType: FieldType;
  /** Fixed value — if set, always use this */
  fixedValue?: string;
  /** Generator to use when no fixed value */
  generator: "auto" | "ai" | "tensorflow" | FieldType;
  /** Custom prompt for AI generation */
  aiPrompt?: string;

  /** Override generator params per rule (min/max, formatted, length, etc.) */
  generatorParams?: import("./field-type-definitions").GeneratorParams;

  /** Select option index: 0 = auto (random), 1 = first option, 2 = second, etc. */
  selectOptionIndex?: number;
  /** Priority (higher = takes precedence) */
  priority: number;
  /** When this rule was created */
  createdAt: number;
  /** When this rule was last updated */
  updatedAt: number;
}

No outgoing dependencies.

Impact (Incoming)

graph LR FieldRule["FieldRule"] LearnedEntryView["LearnedEntryView"] loadRules["loadRules"] handle["handle"] fillAll["fillAll"] LearnedEntry["LearnedEntry"] handleRuleButtonClick["handleRuleButtonClick"] parseIncomingMessage["parseIncomingMessage"] generateDateForField["generateDateForField"] getRules["getRules"] makeEntry["makeEntry"] createField["createField"] LearnedEntryView -->|uses| FieldRule loadRules -->|uses| FieldRule handle -->|uses| FieldRule fillAll -->|uses| FieldRule LearnedEntry -->|uses| FieldRule handleRuleButtonClick -->|uses| FieldRule parseIncomingMessage -->|uses| FieldRule generateDateForField -->|uses| FieldRule getRules -->|uses| FieldRule makeEntry -->|uses| FieldRule createField -->|uses| FieldRule style FieldRule fill:#dbeafe,stroke:#2563eb,stroke-width:2px click FieldRule "2faad09a4e9d7546.html" click LearnedEntryView "909c3267620a90c2.html" click loadRules "9993895f2b3163a1.html" click handle "57ebaea8374ad16b.html" click fillAll "388f033c1be0f292.html" click LearnedEntry "05b9e576ce235a30.html" click handleRuleButtonClick "302ac6e6209ebb8e.html" click parseIncomingMessage "a979c41c6f827a26.html" click generateDateForField "a214011e5ced5989.html" click getRules "69aeb172cce4aa1c.html" click makeEntry "51dbe567b29f8f6e.html" click createField "13879e2aa13736be.html"