Sheetbase file management with Drive.
Installation
Install: npm install --save @sheetbase/storage
Usage:
// 1. import module
import { StorageModule } from "@sheetbase/storage";
// 2. create an instance
export class App {
// the object
storageModule: StorageModule;
// initiate the instance
constructor() {
this.storageModule = new StorageModule(/* options */);
}
}
Options
Name | Type | Description |
---|---|---|
allowTypes? | string[] |
|
maxSize? | undefined | number |
|
nested? | undefined | false | true |
|
uploadFolder | string |
|
urlBuilder? | string[] | function |
Lib
The Lib
class.
Lib properties
Name | Type | Description |
---|---|---|
helperService | HelperService |
|
optionService | OptionService |
|
storageRoute | StorageRoute |
|
storageService | StorageService |
Lib methods
Function | Returns type | Description |
---|---|---|
registerRoutes(routeEnabling?, middlewares?) | RouterService<> |
Expose the module routes |
registerRoutes(routeEnabling?, middlewares?)
Expose the module routes
Parameters
Param | Type | Description |
---|---|---|
routeEnabling | true | DisabledRoutes |
|
middlewares | Middlewares | RouteMiddlewares |
Returns
RouterService<>
Routing
StorageModule provides REST API endpoints allowing clients to access server resources. Theses enpoints are not exposed by default, to expose the endpoints:
StorageModule.registerRoutes(routeEnabling?);
Errors
StorageModule returns these routing errors, you may use the error code to customize the message:
storage/invalid-size
: The file is too big.storage/invalid-type
: The file format is not supported.storage/invalid-upload
: Invalid upload resource.storage/no-edit
: No EDIT permission.storage/no-file
: File not found (no VIEW permission or trashed).Routes
Routes overview
Route | Method | Disabled | Description |
---|---|---|---|
/storage | DELETE |
true |
delete a file |
/storage | GET |
Get file information | |
/storage | POST |
true |
update a file |
/storage | PUT |
true |
upload a file / multiple files |
Routes detail
DELETE
/storage
DISABLED
delete a file
Request body
Name | Type | Description |
---|---|---|
id | string |
Middleware data
Name | Type | Description |
---|---|---|
auth | AuthData |
Response
void
GET
/storage
Get file information
Request query
Name | Type | Description |
---|---|---|
id | string |
Middleware data
Name | Type | Description |
---|---|---|
auth? | AuthData |
Response
FileInfo
POST
/storage
DISABLED
update a file
Request body
Name | Type | Description |
---|---|---|
id | string |
|
update | FileUpdateData |
Middleware data
Name | Type | Description |
---|---|---|
auth | AuthData |
Response
void
PUT
/storage
DISABLED
upload a file / multiple files
Request body
Name | Type | Description |
---|---|---|
file? | UploadFile |
|
folder? | string |
|
rename? | RenamePolicy |
|
share? | FileSharing |
|
files? | UploadResource[ ] |
Middleware data
Name | Type | Description |
---|---|---|
auth? | AuthData |
Response
FileInfo | FileInfo[]
@sheetbase/storage is released under the MIT license.
Generated using TypeDoc