Class: Contents#

contents.Contents

A class to handle requests to /api/contents

Implements#

Constructors#

constructor#

new Contents(options)

Construct a new localForage-powered contents provider

Parameters#

Name

Type

options

IOptions

Defined in#

packages/contents/lib/contents.d.ts:12

Properties#

_checkpoints#

Private _checkpoints: any

Defined in#

packages/contents/lib/contents.d.ts:195


_counters#

Private _counters: any

Defined in#

packages/contents/lib/contents.d.ts:194


_getFolder#

Private _getFolder: any

retrieve the contents for this path from the union of local storage and api/contents/{path}/all.json.

param The contents path to retrieve

returns A promise which resolves with a Map of contents, keyed by local file name

Defined in#

packages/contents/lib/contents.d.ts:162


_getServerContents#

Private _getServerContents: any

Attempt to recover the model from {:path}/__all__.json file, fall back to deriving the model (including content) off the file in /files/. Otherwise return null.

Defined in#

packages/contents/lib/contents.d.ts:168


_getServerDirectory#

Private _getServerDirectory: any

retrieve the contents for this path from __index__.json in the appropriate folder.

param The new file path.

returns A promise which resolves with a Map of contents, keyed by local file name

Defined in#

packages/contents/lib/contents.d.ts:181


_incrementCounter#

Private _incrementCounter: any

Increment the counter for a given file type. Used to avoid collisions when creating new untitled files.

param The file type to increment the counter for.

Defined in#

packages/contents/lib/contents.d.ts:188


_localforage#

Private _localforage: any

Defined in#

packages/contents/lib/contents.d.ts:196


_ready#

Private _ready: any

Defined in#

packages/contents/lib/contents.d.ts:192


_serverContents#

Private _serverContents: any

Defined in#

packages/contents/lib/contents.d.ts:189


_storage#

Private _storage: any

Defined in#

packages/contents/lib/contents.d.ts:193


_storageDrivers#

Private _storageDrivers: any

Defined in#

packages/contents/lib/contents.d.ts:191


_storageName#

Private _storageName: any

Defined in#

packages/contents/lib/contents.d.ts:190


reduceBytesToString#

Protected reduceBytesToString: (data: string, byte: number) => string

Type declaration#

▸ (data, byte): string

A reducer for turning arbitrary binary into a string

Parameters#

Name

Type

data

string

byte

number

Returns#

string

Defined in#

packages/contents/lib/contents.d.ts:172

Accessors#

checkpoints#

Protected get checkpoints(): Promise<LocalForage>

A lazy reference to the underlying checkpoints.

Returns#

Promise<LocalForage>

Defined in#

packages/contents/lib/contents.d.ts:36


counters#

Protected get counters(): Promise<LocalForage>

A lazy reference to the underlying counters.

Returns#

Promise<LocalForage>

Defined in#

packages/contents/lib/contents.d.ts:32


defaultStorageOptions#

Protected get defaultStorageOptions(): LocalForageOptions

Get default options for localForage instances

Returns#

LocalForageOptions

Defined in#

packages/contents/lib/contents.d.ts:40


ready#

get ready(): Promise<void>

A promise that resolves once all storage is fully initialized.

Returns#

Promise<void>

Implementation of#

IContents.ready

Defined in#

packages/contents/lib/contents.d.ts:24


storage#

Protected get storage(): Promise<LocalForage>

A lazy reference to the underlying storage.

Returns#

Promise<LocalForage>

Defined in#

packages/contents/lib/contents.d.ts:28

Methods#

copy#

copy(path, toDir): Promise<IModel>

Copy a file into a given directory.

Parameters#

Name

Type

Description

path

string

The original file path.

toDir

string

The destination directory path.

Returns#

Promise<IModel>

A promise which resolves with the new contents model when the file is copied.

Notes#

The server will select the name of the copied file.

Implementation of#

IContents.copy

Defined in#

packages/contents/lib/contents.d.ts:73


createCheckpoint#

createCheckpoint(path): Promise<ICheckpointModel>

Create a checkpoint for a file.

Parameters#

Name

Type

Description

path

string

The path of the file.

Returns#

Promise<ICheckpointModel>

A promise which resolves with the new checkpoint model when the checkpoint is created.

Implementation of#

IContents.createCheckpoint

Defined in#

packages/contents/lib/contents.d.ts:125


createDefaultCheckpoints#

Protected createDefaultCheckpoints(): LocalForage

Create the default checkpoint storage.

Returns#

LocalForage

Defined in#

packages/contents/lib/contents.d.ts:52


createDefaultCounters#

Protected createDefaultCounters(): LocalForage

Initialize the default storage for counting file suffixes.

Returns#

LocalForage

Defined in#

packages/contents/lib/contents.d.ts:48


createDefaultStorage#

Protected createDefaultStorage(): LocalForage

Initialize the default storage for contents.

Returns#

LocalForage

Defined in#

packages/contents/lib/contents.d.ts:44


delete#

delete(path): Promise<void>

Delete a file from browser storage.

Has no effect on server-backed files, which will re-appear with their original timestamp.

Parameters#

Name

Type

Description

path

string

The path to the file.

Returns#

Promise<void>

Implementation of#

IContents.delete

Defined in#

packages/contents/lib/contents.d.ts:110


deleteCheckpoint#

deleteCheckpoint(path, checkpointID): Promise<void>

Delete a checkpoint for a file.

Parameters#

Name

Type

Description

path

string

The path of the file.

checkpointID

string

The id of the checkpoint to delete.

Returns#

Promise<void>

A promise which resolves when the checkpoint is deleted.

Implementation of#

IContents.deleteCheckpoint

Defined in#

packages/contents/lib/contents.d.ts:153


forgetPath#

Protected forgetPath(path): Promise<void>

Remove the localForage and checkpoints for a path.

Parameters#

Name

Type

Description

path

string

The path to the file

Returns#

Promise<void>

Defined in#

packages/contents/lib/contents.d.ts:116


get#

get(path, options?): Promise<null | IModel>

Get a file or directory.

Parameters#

Name

Type

path

string

options?

IFetchOptions

Returns#

Promise<null | IModel>

A promise which resolves with the file content.

Implementation of#

IContents.get

Defined in#

packages/contents/lib/contents.d.ts:82


initStorage#

Protected initStorage(): Promise<void>

Initialize all storage instances

Returns#

Promise<void>

Defined in#

packages/contents/lib/contents.d.ts:20


initialize#

initialize(): Promise<void>

Finish any initialization after server has started and all extensions are applied.

Returns#

Promise<void>

Defined in#

packages/contents/lib/contents.d.ts:16


listCheckpoints#

listCheckpoints(path): Promise<ICheckpointModel[]>

List available checkpoints for a file.

Parameters#

Name

Type

Description

path

string

The path of the file.

Returns#

Promise<ICheckpointModel[]>

A promise which resolves with a list of checkpoint models for the file.

Implementation of#

IContents.listCheckpoints

Defined in#

packages/contents/lib/contents.d.ts:134


newUntitled#

newUntitled(options?): Promise<null | IModel>

Create a new untitled file or directory in the specified directory path.

Parameters#

Name

Type

options?

ICreateOptions

Returns#

Promise<null | IModel>

A promise which resolves with the created file content when the file is created.

Implementation of#

IContents.newUntitled

Defined in#

packages/contents/lib/contents.d.ts:60


normalizeCheckpoint#

Protected normalizeCheckpoint(model, id): ICheckpointModel

Parameters#

Name

Type

model

IModel

id

number

Returns#

ICheckpointModel

Defined in#

packages/contents/lib/contents.d.ts:135


rename#

rename(oldLocalPath, newLocalPath): Promise<IModel>

Rename a file or directory.

Parameters#

Name

Type

Description

oldLocalPath

string

The original file path.

newLocalPath

string

The new file path.

Returns#

Promise<IModel>

A promise which resolves with the new file content model when the file is renamed.

Implementation of#

IContents.rename

Defined in#

packages/contents/lib/contents.d.ts:91


restoreCheckpoint#

restoreCheckpoint(path, checkpointID): Promise<void>

Restore a file to a known checkpoint state.

Parameters#

Name

Type

Description

path

string

The path of the file.

checkpointID

string

The id of the checkpoint to restore.

Returns#

Promise<void>

A promise which resolves when the checkpoint is restored.

Implementation of#

IContents.restoreCheckpoint

Defined in#

packages/contents/lib/contents.d.ts:144


save#

save(path, options?): Promise<null | IModel>

Save a file.

Parameters#

Name

Type

Description

path

string

The desired file path.

options?

Partial<IModel>

Optional overrides to the model.

Returns#

Promise<null | IModel>

A promise which resolves with the file content model when the file is saved.

Implementation of#

IContents.save

Defined in#

packages/contents/lib/contents.d.ts:100


unescapeContent#

unescapeContent(content): string

Parameters#

Name

Type

content

string

Returns#

string

Defined in#

packages/contents/lib/contents.d.ts:101