***`
@jupyterlite / @jupyterlite/contents / BrowserStorageDrive
Class: BrowserStorageDrive
#
Defined in: packages/contents/src/drive.ts:40
A custom drive to store files in the browser storage.
Implements#
IDrive
Constructors#
Constructor
#
**new BrowserStorageDrive**
(options
):BrowserStorageDrive
Defined in: packages/contents/src/drive.ts:44
Construct a new localForage-powered contents provider
Parameters#
options#
Returns#
BrowserStorageDrive
Accessors#
checkpoints
#
Get Signature#
**get**
protected
**checkpoints**
():Promise
<LocalForage
>
Defined in: packages/contents/src/drive.ts:171
A lazy reference to the underlying checkpoints.
Returns#
Promise
<LocalForage
>
`***
counters
#
Get Signature#
get
protected
counters
():Promise
<LocalForage
>
Defined in: packages/contents/src/drive.ts:164
A lazy reference to the underlying counters.
Returns#
Promise
<LocalForage
>
***`
defaultStorageOptions
#
Get Signature#
**get**
protected
**defaultStorageOptions**
():LocalForageOptions
Defined in: packages/contents/src/drive.ts:178
Get default options for localForage instances
Returns#
LocalForageOptions
`***
fileChanged
#
Get Signature#
get
fileChanged
():ISignal
<IDrive
,IChangedArgs
>
Defined in: packages/contents/src/drive.ts:88
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/contents/src/drive.ts:67
Whether the drive is disposed.
Returns#
boolean
Implementation of#
Contents.IDrive.isDisposed
`***
name
#
Get Signature#
get
name
():string
Defined in: packages/contents/src/drive.ts:74
The name of the drive.
Returns#
string
Implementation of#
Contents.IDrive.name
***`
ready
#
Get Signature#
**get**
**ready**
():Promise
<void
>
Defined in: packages/contents/src/drive.ts:150
A promise that resolves once all storage is fully initialized.
Returns#
Promise
<void
>
`***
serverSettings
#
Get Signature#
get
serverSettings
():ISettings
Defined in: packages/contents/src/drive.ts:81
The server settings of the drive.
Returns#
ISettings
Implementation of#
Contents.IDrive.serverSettings
***`
storage
#
Get Signature#
**get**
protected
**storage**
():Promise
<LocalForage
>
Defined in: packages/contents/src/drive.ts:157
A lazy reference to the underlying storage.
Returns#
Promise
<LocalForage
>
Methods#
clearStorage()
#
**clearStorage**
():Promise
<void
>
Defined in: packages/contents/src/drive.ts:226
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/contents/src/drive.ts:360
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/contents/src/drive.ts:689
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/contents/src/drive.ts:213
Create the default checkpoint storage.
Returns#
LocalForage
***`
createDefaultCounters()
#
protected
**createDefaultCounters**
():LocalForage
Defined in: packages/contents/src/drive.ts:202
Initialize the default storage for counting file suffixes.
Returns#
LocalForage
`***
createDefaultStorage()
#
protected
createDefaultStorage
():LocalForage
Defined in: packages/contents/src/drive.ts:191
Initialize the default storage for contents.
Returns#
LocalForage
***`
delete()
#
**delete**
(path
):Promise
<void
>
Defined in: packages/contents/src/drive.ts:655
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/contents/src/drive.ts:750
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/contents/src/drive.ts:56
Dispose the drive.
Returns#
void
Implementation of#
Contents.IDrive.dispose
`***
forgetPath()
#
protected
forgetPath
(path
):Promise
<void
>
Defined in: packages/contents/src/drive.ts:674
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/contents/src/drive.ts:402
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/contents/src/drive.ts:95
Get the download URL
Parameters#
path#
string
Returns#
Promise
<string
>
Implementation of#
Contents.IDrive.getDownloadUrl
***`
initialize()
#
**initialize**
():Promise
<void
>
Defined in: packages/contents/src/drive.ts:133
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/contents/src/drive.ts:141
Initialize all storage instances
Returns#
Promise
<void
>
***`
listCheckpoints()
#
**listCheckpoints**
(path
):Promise
<ICheckpointModel
[]>
Defined in: packages/contents/src/drive.ts:717
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/contents/src/drive.ts:241
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/contents/src/drive.ts:722
Parameters#
model#
IModel
id#
number
Returns#
ICheckpointModel
`***
reduceBytesToString()
#
protected
reduceBytesToString
(data
,byte
):string
Defined in: packages/contents/src/drive.ts:922
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/contents/src/drive.ts:477
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/contents/src/drive.ts:734
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/contents/src/drive.ts:525
Save a file.
Parameters#
path#
string
The desired file path.
options#
Partial
<IModel
> = {}
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