@jupyterlite

***`

@jupyterlite / @jupyterlite/services / BrowserStorageDrive

Class: BrowserStorageDrive#

Defined in: packages/services/src/contents/drive.ts:136

A custom drive to store files in the browser storage.

Implements#

  • IDrive

Constructors#

Constructor#

**new BrowserStorageDrive**(options): BrowserStorageDrive

Defined in: packages/services/src/contents/drive.ts:140

Construct a new localForage-powered contents provider

Parameters#

options#

IOptions

Returns#

BrowserStorageDrive

Properties#

contentProviderRegistry#

readonly **contentProviderRegistry**: ContentProviderRegistry

Defined in: packages/services/src/contents/drive.ts:160

**Experimental**

Content provider registry.

Implementation of#

Contents.IDrive.contentProviderRegistry

Accessors#

checkpoints#

Get Signature#

**get** protected **checkpoints**(): Promise<LocalForage>

Defined in: packages/services/src/contents/drive.ts:280

A lazy reference to the underlying checkpoints.

Returns#

Promise<LocalForage>

`***

counters#

Get Signature#

get protected counters(): Promise<LocalForage>

Defined in: packages/services/src/contents/drive.ts:273

A lazy reference to the underlying counters.

Returns#

Promise<LocalForage>

***`

defaultStorageOptions#

Get Signature#

**get** protected **defaultStorageOptions**(): LocalForageOptions

Defined in: packages/services/src/contents/drive.ts:287

Get default options for localForage instances

Returns#

LocalForageOptions

`***

fileChanged#

Get Signature#

get fileChanged(): ISignal<IDrive, IChangedArgs>

Defined in: packages/services/src/contents/drive.ts:197

Signal emitted when a file operation takes place.

Returns#

ISignal<IDrive, IChangedArgs>

Implementation of#

Contents.IDrive.fileChanged

***`

isDisposed#

Get Signature#

**get** **isDisposed**(): boolean

Defined in: packages/services/src/contents/drive.ts:176

Whether the drive is disposed.

Returns#

boolean

Implementation of#

Contents.IDrive.isDisposed

`***

name#

Get Signature#

get name(): string

Defined in: packages/services/src/contents/drive.ts:183

The name of the drive.

Returns#

string

Implementation of#

Contents.IDrive.name

***`

ready#

Get Signature#

**get** **ready**(): Promise<void>

Defined in: packages/services/src/contents/drive.ts:259

A promise that resolves once all storage is fully initialized.

Returns#

Promise<void>

`***

serverSettings#

Get Signature#

get serverSettings(): ISettings

Defined in: packages/services/src/contents/drive.ts:190

The server settings of the drive.

Returns#

ISettings

Implementation of#

Contents.IDrive.serverSettings

***`

storage#

Get Signature#

**get** protected **storage**(): Promise<LocalForage>

Defined in: packages/services/src/contents/drive.ts:266

A lazy reference to the underlying storage.

Returns#

Promise<LocalForage>

Methods#

clearStorage()#

**clearStorage**(): Promise<void>

Defined in: packages/services/src/contents/drive.ts:335

Clear all storage (files, counters, and checkpoints).

Returns#

Promise<void>

A promise which resolves when all storage is cleared.

`***

copy()#

copy(path, toDir): Promise<IModel>

Defined in: packages/services/src/contents/drive.ts:454

Copy a file into a given directory.

Parameters#

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#

Contents.IDrive.copy

***`

createCheckpoint()#

**createCheckpoint**(path): Promise<ICheckpointModel>

Defined in: packages/services/src/contents/drive.ts:841

Create a checkpoint for a file.

Parameters#

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#

Contents.IDrive.createCheckpoint

`***

createDefaultCheckpoints()#

protected createDefaultCheckpoints(): LocalForage

Defined in: packages/services/src/contents/drive.ts:322

Create the default checkpoint storage.

Returns#

LocalForage

***`

createDefaultCounters()#

protected **createDefaultCounters**(): LocalForage

Defined in: packages/services/src/contents/drive.ts:311

Initialize the default storage for counting file suffixes.

Returns#

LocalForage

`***

createDefaultStorage()#

protected createDefaultStorage(): LocalForage

Defined in: packages/services/src/contents/drive.ts:300

Initialize the default storage for contents.

Returns#

LocalForage

***`

delete()#

**delete**(path): Promise<void>

Defined in: packages/services/src/contents/drive.ts:807

Delete a file from browser storage.

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

Parameters#

path#

string

The path to the file.

Returns#

Promise<void>

Implementation of#

Contents.IDrive.delete

`***

deleteCheckpoint()#

deleteCheckpoint(path, checkpointID): Promise<void>

Defined in: packages/services/src/contents/drive.ts:902

Delete a checkpoint for a file.

Parameters#

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#

Contents.IDrive.deleteCheckpoint

***`

dispose()#

**dispose**(): void

Defined in: packages/services/src/contents/drive.ts:165

Dispose the drive.

Returns#

void

Implementation of#

Contents.IDrive.dispose

`***

forgetPath()#

protected forgetPath(path): Promise<void>

Defined in: packages/services/src/contents/drive.ts:826

Remove the localForage and checkpoints for a path.

Parameters#

path#

string

The path to the file

Returns#

Promise<void>

***`

get()#

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

Defined in: packages/services/src/contents/drive.ts:496

Get a file or directory.

Parameters#

path#

string

options?#

IFetchOptions

Returns#

Promise<IModel>

A promise which resolves with the file content.

Implementation of#

Contents.IDrive.get

`***

getDownloadUrl()#

getDownloadUrl(path): Promise<string>

Defined in: packages/services/src/contents/drive.ts:204

Get the download URL

Parameters#

path#

string

Returns#

Promise<string>

Implementation of#

Contents.IDrive.getDownloadUrl

***`

initialize()#

**initialize**(): Promise<void>

Defined in: packages/services/src/contents/drive.ts:242

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

TODO: keep private?

Returns#

Promise<void>

`***

initStorage()#

protected initStorage(): Promise<void>

Defined in: packages/services/src/contents/drive.ts:250

Initialize all storage instances

Returns#

Promise<void>

***`

listCheckpoints()#

**listCheckpoints**(path): Promise<ICheckpointModel[]>

Defined in: packages/services/src/contents/drive.ts:869

List available checkpoints for a file.

Parameters#

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#

Contents.IDrive.listCheckpoints

`***

newUntitled()#

newUntitled(options?): Promise<IModel>

Defined in: packages/services/src/contents/drive.ts:350

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

Parameters#

options?#

ICreateOptions

Returns#

Promise<IModel>

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

Implementation of#

Contents.IDrive.newUntitled

***`

normalizeCheckpoint()#

protected **normalizeCheckpoint**(model, id): ICheckpointModel

Defined in: packages/services/src/contents/drive.ts:874

Parameters#

model#

IModel

id#

number

Returns#

ICheckpointModel

`***

reduceBytesToString()#

protected reduceBytesToString(data, byte): string

Defined in: packages/services/src/contents/drive.ts:1074

A reducer for turning arbitrary binary into a string

Parameters#

data#

string

byte#

number

Returns#

string

***`

rename()#

**rename**(oldLocalPath, newLocalPath): Promise<IModel>

Defined in: packages/services/src/contents/drive.ts:600

Rename a file or directory.

Parameters#

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#

Contents.IDrive.rename

`***

restoreCheckpoint()#

restoreCheckpoint(path, checkpointID): Promise<void>

Defined in: packages/services/src/contents/drive.ts:886

Restore a file to a known checkpoint state.

Parameters#

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#

Contents.IDrive.restoreCheckpoint

***`

save()#

**save**(path, options): Promise\<IModel`>

Defined in: packages/services/src/contents/drive.ts:648

Save a file.

Parameters#

path#

string

The desired file path.

options#

Partial<IModel> & IContentProvisionOptions = {}

Optional overrides to the model.

Returns#

Promise<IModel>

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

Implementation of#

Contents.IDrive.save