Package Exports
- @sheetbase/storage
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@sheetbase/storage) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@sheetbase/storage
Sheetbase file management with Drive.
Installation
Install:
npm install --save @sheetbase/storageUsage:
// 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?)
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
DELETE /storageDISABLED delete a file
Request body
| Name | Type | Description |
|---|---|---|
| id | string |
Middleware data
| Name | Type | Description |
|---|---|---|
| auth | AuthData |
Response
void
GET /storage
GET /storageGet file information
Request query
| Name | Type | Description |
|---|---|---|
| id | string |
Middleware data
| Name | Type | Description |
|---|---|---|
| auth? | AuthData |
Response
FileInfo
POST /storage
POST /storageDISABLED update a file
Request body
| Name | Type | Description |
|---|---|---|
| id | string |
|
| update | FileUpdateData |
Middleware data
| Name | Type | Description |
|---|---|---|
| auth | AuthData |
Response
void
PUT /storage
PUT /storageDISABLED 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[]
License
@sheetbase/storage is released under the MIT license.