Phials developer documentation
User guide
AI Notice: Most documentation right now was auto-generated by an LLM. Handwritten documentation will be implemented over time on the road to 1.0

CoreEvents

Built-in core events (strongly typed)

Signature

interface CoreEvents {
    "core.navigation.changed": {
        path: string;
        paneId: string;
    };
    "core.selection.changed": {
        paths: string[];
        paneId: string;
    };
    "core.tab.created": {
        tabId: string;
    };
    "core.tab.closed": {
        tabId: string;
    };
    "core.tab.switched": {
        tabId: string;
        previousTabId: string;
    };
    "core.file.renamed": {
        oldPath: string;
        newPath: string;
    };
    "core.file.deleted": {
        paths: string[];
    };
    "core.file.saved": {
        path: string;
    };
    "core.file.opened": {
        path: string;
    };
    "core.file.created": {
        path: string;
    };
    "core.directory.changed": {
        path: string;
        paneId: string;
    };
    "core.directory.renamed": {
        oldPath: string;
        newPath: string;
    };
    "core.directory.deleted": {
        path: string;
    };
    "core.directory.created": {
        path: string;
    };
    "core.settings.changed": {
        key: string;
        value: unknown;
    };
    "core.known-vials.changed": {
        paths: string[];
    };
    "core.config.hidden-globs.changed": {
        globs: string[];
    };
    "core.audio.track.changed": {
        trackId: string | null;
        path: string | null;
        index: number;
    };
    "core.audio.queue.changed": {
        trackIds: string[];
        length: number;
    };
    "core.audio.playback.error": {
        trackId: string | null;
        message: string;
    };
    "core.drives.changed": DrivesChangedPayload;
    "core.columns.layout.changed": ColumnLayoutChangedPayload;
}

Members

NameTypeRequiredDescription
"core.navigation.changed"{ … }yesPane navigation path changed
"core.selection.changed"{ … }yesFile selection changed in a pane
"core.tab.created"{ … }yesNew tab created
"core.tab.closed"{ … }yesTab closed
"core.tab.switched"{ … }yesActive tab changed
"core.file.renamed"{ … }yesFile or directory renamed
"core.file.deleted"{ … }yesFiles deleted
"core.file.saved"{ … }yesFile saved
"core.file.opened"{ … }yesFile opened
"core.file.created"{ … }yesFile created
"core.directory.changed"{ … }yesDirectory contents changed (files added/removed/modified)
"core.directory.renamed"{ … }yesDirectory renamed
"core.directory.deleted"{ … }yesDirectory deleted
"core.directory.created"{ … }yesDirectory created
"core.settings.changed"{ … }yesApp setting value changed
"core.known-vials.changed"{ … }yesKnown vials list changed (add/remove/rename in session)
"core.config.hidden-globs.changed"{ … }yesExplorer always-hide globs changed
"core.audio.track.changed"{ … }yesGlobal audio: current track or index changed
"core.audio.queue.changed"{ … }yesGlobal audio: queue contents changed
"core.audio.playback.error"{ … }yesGlobal audio: playback error (e.g. decode / missing file)
"core.drives.changed"DrivesChangedPayloadyesDrive/volume set may have changed (after pane drive caches refreshed)
"core.columns.layout.changed"ColumnLayoutChangedPayloadyesDetails column layout changed in a pane (path-owned or saved-view-owned)