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

PreviewProvider

Preview provider - renders file previews, thumbnails, and fullscreen views

Signature

interface PreviewProvider {
    type: "preview";
    id: string;
    name: string;
    priority?: number;
    extensions?: string[];
    mimeTypes?: string[];
    categories?: FileCategory[];
    canHandle?: (file: FileEntry, api: FileMatchAPI) => boolean;
    thumbnail?: import("svelte").Component<ThumbnailProviderProps>;
    preview?: import("svelte").Component<PreviewProviderProps>;
    fullscreen?: import("svelte").Component<FullscreenProviderProps>;
    previewPaneSection?: PreviewPaneSectionConfig;
    detailsViewThumbnails?: ViewItemSizePreset[];
    overridesDoubleClick?: boolean;
    isEditable?: (file: FileEntry, metadata?: FileMetadata) => boolean;
}

Members

NameTypeRequiredDescription
type"preview"yes
idstringyes
namestringyes
prioritynumberno
extensionsstring[]noFile matching criteria
mimeTypesstring[]no
categoriesFileCategory[]no
canHandle(file: FileEntry, api: FileMatchAPI) => booleanno
thumbnailimport("svelte").Component<ThumbnailProviderProps>noComponents
previewimport("svelte").Component<PreviewProviderProps>no
fullscreenimport("svelte").Component<FullscreenProviderProps>no
previewPaneSectionPreviewPaneSectionConfignoPreview-sidebar collapsible header override (label required when set).
detailsViewThumbnailsViewItemSizePreset[]noDetails view row-height presets (xslg, details slider ticks) at which the leading column mounts . Omitted or empty = icon only.
overridesDoubleClickbooleannoBehavior
isEditable(file: FileEntry, metadata?: FileMetadata) => booleannoPreview can modify file contents (future host behavior; see Preview editor toolbar in docs/context/preview/toolbar.md).