Body, Mind & Soul — API Reference
    Preparing search index...

    Class BodyMindSoulFeatureSheet

    AppV2 sheet for Feature items. Handles triggers via manual array updates (not submitOnChange) because Foundry's ArrayField doesn't support partial dot-notation updates.

    Hierarchy

    • any
      • BodyMindSoulFeatureSheet
    Index
    DEFAULT_OPTIONS: {
        actions: {
            addCondition: (event: any, target: any) => Promise<void>;
            addConfigEntry: (event: any, target: any) => Promise<void>;
            addModification: any;
            addOutcome: (event: any, target: any) => Promise<void>;
            addSubCondition: (event: any, target: any) => Promise<void>;
            addTrigger: (event: any, target: any) => Promise<void>;
            configureCondition: (event: any, target: any) => Promise<void>;
            configureOutcome: (event: any, target: any) => Promise<void>;
            configureSubCondition: (event: any, target: any) => Promise<void>;
            deleteCondition: (event: any, target: any) => Promise<void>;
            deleteConfigEntry: (event: any, target: any) => Promise<void>;
            deleteModification: any;
            deleteOutcome: (event: any, target: any) => Promise<void>;
            deleteSubCondition: (event: any, target: any) => Promise<void>;
            deleteTrigger: (event: any, target: any) => Promise<void>;
            editImage: any;
            importTrigger: (event: any, target: any) => void;
            toggleConfigPanel: (event: any, target: any) => void;
        };
        classes: string[];
        form: {
            handler: (event: any, form: any, formData: any) => Promise<void>;
            submitOnChange: boolean;
            submitOnClose: boolean;
        };
        tag: string;
        window: { height: number; icon: string; resizable: boolean; width: number };
    } = ...
    PARTS: {
        config: { scrollable: string[]; template: string };
        description: { template: string };
        effects: { scrollable: string[]; template: string };
        header: { template: string };
        modifications: { scrollable: string[]; template: string };
        portrait: { template: string };
        tabs: { template: string };
        triggers: { scrollable: string[]; template: string };
    } = ...
    TABS: {
        primary: {
            initial: string;
            labelPrefix: string;
            tabs: { icon: string; id: string; tooltip: string }[];
        };
    } = ...
    TEMPLATE_ROOT: string = "systems/body-mind-and-soul/templates/item/feature"
    • Parameters

      • partId: any
      • htmlElement: any
      • options: any

      Returns void

    • Parameters

      • options: any

      Returns Promise<any>

    • Parameters

      • event: any
      • target: any

      Returns Promise<void>

    • Parameters

      • event: any
      • target: any

      Returns Promise<void>

    • Process form submission — only handles simple fields (name, img, description). Trigger fields are handled by change listeners and action handlers.

      Parameters

      • event: any
      • form: any
      • formData: any

      Returns Promise<void>