3.0.2 • Published 4 years ago

@sheetbase/storage v3.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
4 years ago

@sheetbase/storage

Sheetbase file management with Drive.

  • 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 */);
  }
}
NameTypeDescription
allowTypes?string[]
maxSize?undefined | number
nested?undefined | false | true
uploadFolderstring
urlBuilder?string[] | function

The Lib class.

NameTypeDescription
helperServiceHelperService
optionServiceOptionService
storageRouteStorageRoute
storageServiceStorageService
FunctionReturns typeDescription
registerRoutes(routeEnabling?, middlewares?)RouterService<>Expose the module routes

Expose the module routes

Parameters

ParamTypeDescription
routeEnablingtrue | DisabledRoutes
middlewaresMiddlewares | RouteMiddlewares

Returns

RouterService<>


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?);

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).
RouteMethodDisabledDescription
/storageDELETEtruedelete a file
/storageGETGet file information
/storagePOSTtrueupdate a file
/storagePUTtrueupload a file / multiple files

DISABLED delete a file

Request body

NameTypeDescription
idstring

Middleware data

NameTypeDescription
authAuthData

Response

void


Get file information

Request query

NameTypeDescription
idstring

Middleware data

NameTypeDescription
auth?AuthData

Response

FileInfo


DISABLED update a file

Request body

NameTypeDescription
idstring
updateFileUpdateData

Middleware data

NameTypeDescription
authAuthData

Response

void


DISABLED upload a file / multiple files

Request body

NameTypeDescription
file?UploadFile
folder?string
rename?RenamePolicy
share?FileSharing
files?UploadResource[]

Middleware data

NameTypeDescription
auth?AuthData

Response

FileInfo | FileInfo[]


License

@sheetbase/storage is released under the MIT license.