UNPKG

@blinkk/editor

Version:

Structured content editor with live previews.

48 lines (47 loc) 2.08 kB
import { EditorFileData, FileData } from '../../api'; import { TemplateResult } from '@blinkk/selective-edit'; import { FormDialogModal } from '../../ui/modal'; import { MenuSectionPart, MenuSectionPartConfig } from './index'; import { DataStorage } from '../../../utility/dataStorage'; import { LiveEditor } from '../../..'; interface DirectoryEventHandlers { fileCopy: (evt: Event, file: FileData) => void; fileDelete: (evt: Event, file: FileData) => void; fileLoad: (evt: Event, file: FileData) => void; fileNew: (evt: Event, directory: string) => void; render: () => void; } export declare class SitePart extends MenuSectionPart { fileStructure?: DirectoryStructure; constructor(config: MenuSectionPartConfig); classesForPart(): Record<string, boolean>; protected getOrCreateModalCopy(editor: LiveEditor): FormDialogModal; protected getOrCreateModalDelete(editor: LiveEditor): FormDialogModal; protected getOrCreateModalNew(editor: LiveEditor): FormDialogModal; loadFiles(): void; loadProject(): void; templateContent(editor: LiveEditor): TemplateResult; templateFileCopy(editor: LiveEditor): TemplateResult; templateFileDelete(editor: LiveEditor): TemplateResult; templateFileNew(editor: LiveEditor): TemplateResult; templateTitle(editor: LiveEditor): TemplateResult; get title(): string; } declare class DirectoryStructure { rootFiles: Array<FileData>; root: string; directories: Record<string, DirectoryStructure>; eventHandlers: DirectoryEventHandlers; files: Array<FileData>; isExpanded?: boolean; storage: DataStorage; constructor(rootFiles: Array<FileData>, eventHandlers: DirectoryEventHandlers, storage: DataStorage, root?: string); get base(): string; baseFromFilePath(file: FileData): string; expandToFile(file: EditorFileData): void; handleExpandCollapse(): void; template(editor: LiveEditor): TemplateResult; templateDirectories(editor: LiveEditor): TemplateResult; templateFiles(editor: LiveEditor): TemplateResult; } export {};