UNPKG

chrome-devtools-frontend

Version:
123 lines (95 loc) 3.17 kB
// Copyright 2018 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. /* eslint-disable rulesdir/no_underscored_properties */ import * as Common from '../common/common.js'; // eslint-disable-line no-unused-vars import * as i18n from '../i18n/i18n.js'; import * as TextUtils from '../text_utils/text_utils.js'; // eslint-disable-line no-unused-vars export const UIStrings = { /** *@description Assertion error message when failing to load a file */ unableToReadFilesWithThis: 'Unable to read files with this implementation.', }; const str_ = i18n.i18n.registerUIStrings('persistence/PlatformFileSystem.ts', UIStrings); const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_); export class PlatformFileSystem { _path: string; _type: string; constructor(path: string, type: string) { this._path = path; this._type = type; } getMetadata(_path: string): Promise<{modificationTime: Date, size: number}|null> { return Promise.resolve(null); } initialFilePaths(): string[] { return []; } initialGitFolders(): string[] { return []; } path(): string { return this._path; } embedderPath(): string { throw new Error('Not implemented'); } type(): string { // TODO(kozyatinskiy): remove type, overrides should implement this interface. return this._type; } async createFile(_path: string, _name: string|null): Promise<string|null> { return Promise.resolve(null); } deleteFile(_path: string): Promise<boolean> { return Promise.resolve(false); } requestFileBlob(_path: string): Promise<Blob|null> { return Promise.resolve(null as Blob | null); } async requestFileContent(_path: string): Promise<TextUtils.ContentProvider.DeferredContent> { return {content: null, error: i18nString(UIStrings.unableToReadFilesWithThis), isEncoded: false}; } setFileContent(_path: string, _content: string, _isBase64: boolean): void { throw new Error('Not implemented'); } renameFile(_path: string, _newName: string, callback: (arg0: boolean, arg1?: string|undefined) => void): void { callback(false); } addExcludedFolder(_path: string): void { } removeExcludedFolder(_path: string): void { } fileSystemRemoved(): void { } isFileExcluded(_folderPath: string): boolean { return false; } excludedFolders(): Set<string> { return new Set(); } searchInPath(_query: string, _progress: Common.Progress.Progress): Promise<string[]> { return Promise.resolve([]); } indexContent(progress: Common.Progress.Progress): void { queueMicrotask(() => { progress.done(); }); } mimeFromPath(_path: string): string { throw new Error('Not implemented'); } canExcludeFolder(_path: string): boolean { return false; } contentType(_path: string): Common.ResourceType.ResourceType { throw new Error('Not implemented'); } tooltipForURL(_url: string): string { throw new Error('Not implemented'); } supportsAutomapping(): boolean { throw new Error('Not implemented'); } }