@jupyterlite / @jupyterlite/services / BrowserStorageDrive
Class: BrowserStorageDrive#
Defined in: packages/services/src/contents/drive.ts:42
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:46
Construct a new localForage-powered contents provider
Parameters#
options#
Returns#
BrowserStorageDrive
Properties#
contentProviderRegistry#
readonlycontentProviderRegistry:ContentProviderRegistry
Defined in: packages/services/src/contents/drive.ts:66
Experimental
Content provider registry.
Implementation of#
Contents.IDrive.contentProviderRegistry
Accessors#
checkpoints#
Get Signature#
get
protectedcheckpoints():Promise<LocalForage>
Defined in: packages/services/src/contents/drive.ts:186
A lazy reference to the underlying checkpoints.
Returns#
Promise<LocalForage>
counters#
Get Signature#
get
protectedcounters():Promise<LocalForage>
Defined in: packages/services/src/contents/drive.ts:179
A lazy reference to the underlying counters.
Returns#
Promise<LocalForage>
defaultStorageOptions#
Get Signature#
get
protecteddefaultStorageOptions():LocalForageOptions
Defined in: packages/services/src/contents/drive.ts:193
Get default options for localForage instances
Returns#
LocalForageOptions
fileChanged#
Get Signature#
get fileChanged():
ISignal<IDrive,IChangedArgs>
Defined in: packages/services/src/contents/drive.ts:103
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:82
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:89
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:165
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:96
The server settings of the drive.
Returns#
ISettings
Implementation of#
Contents.IDrive.serverSettings
storage#
Get Signature#
get
protectedstorage():Promise<LocalForage>
Defined in: packages/services/src/contents/drive.ts:172
A lazy reference to the underlying storage.
Returns#
Promise<LocalForage>
Methods#
clearStorage()#
clearStorage():
Promise<void>
Defined in: packages/services/src/contents/drive.ts:241
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:375
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:735
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()#
protectedcreateDefaultCheckpoints():LocalForage
Defined in: packages/services/src/contents/drive.ts:228
Create the default checkpoint storage.
Returns#
LocalForage
createDefaultCounters()#
protectedcreateDefaultCounters():LocalForage
Defined in: packages/services/src/contents/drive.ts:217
Initialize the default storage for counting file suffixes.
Returns#
LocalForage
createDefaultStorage()#
protectedcreateDefaultStorage():LocalForage
Defined in: packages/services/src/contents/drive.ts:206
Initialize the default storage for contents.
Returns#
LocalForage
delete()#
delete(
path):Promise<void>
Defined in: packages/services/src/contents/drive.ts:701
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:796
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:71
Dispose the drive.
Returns#
void
Implementation of#
Contents.IDrive.dispose
forgetPath()#
protectedforgetPath(path):Promise<void>
Defined in: packages/services/src/contents/drive.ts:720
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:417
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:110
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:148
Finish any initialization after server has started and all extensions are applied.
TODO: keep private?
Returns#
Promise<void>
initStorage()#
protectedinitStorage():Promise<void>
Defined in: packages/services/src/contents/drive.ts:156
Initialize all storage instances
Returns#
Promise<void>
listCheckpoints()#
listCheckpoints(
path):Promise<ICheckpointModel[]>
Defined in: packages/services/src/contents/drive.ts:763
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:256
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()#
protectednormalizeCheckpoint(model,id):ICheckpointModel
Defined in: packages/services/src/contents/drive.ts:768
Parameters#
model#
IModel
id#
number
Returns#
ICheckpointModel
reduceBytesToString()#
protectedreduceBytesToString(data,byte):string
Defined in: packages/services/src/contents/drive.ts:968
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:502
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:780
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:550
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