1.0.12 • Published 5 years ago

react-native-gdrive-api-wrapper v1.0.12

Weekly downloads
2
License
MIT
Repository
github
Last release
5 years ago

This wrapper facilitates the use of the google drive api.

It doesn't provide any authorization mechanism, so another package has to be used. I use react-native-google-signin (thanks for the great work guys!).

  1. Installation
  2. Usage
  3. Version history

Installation

npm i --save react-native-google-drive-api-wrapper

react-native link react-native-fs

react-native-fs is a package my code depends on and it needs linking.

Usage

  1. [GDrive](#gdriveapiwGDrive)
  2. [Files](#gdriveapiwFiles)
  3. [Permissions](#gdriveapiwPermissions)

[GDrive](#cgdriveapiwGDrive)

This is the "entry point" of the wrapper. It contains only static methods and fields.

import GDrive from "react-native-google-drive-api-wrapper";
  • setAccessToken() Sets the access token for use in subsequent calls to the api. Get the token from a package you choose to use.
     GDrive.setAccessToken(accessToken);
  • init() Initializes the wrapper.
     GDrive.init();
    or
    	    const params = {
    	        files: {
    		        boundary: String // The boundary string for multipart file uploads. Default: "foo_bar_baz".
    	        }
    	    };
     
     GDrive.init(params);
  • isInitialized() Returns true if an access token has been supplied, false otherwise.
     GDrive.isInitialized() ? <some code> : <some other code>;

[Files](#cgdriveapiwFiles)

  • createFileMultipart() Creates a file using multipart upload. Returns the result of fetch(). If contents is a base64 string, set isBase64 to true.
     const contents = "My text file contents";
     // or
     const contents = [10, 20, 30];
     
     GDrive.files.createFileMultipart(
         contents,
         "corresponding mime type", {
    	            parents: ["root"],
    	            name: "My file"
         },
         isBase64);
         
  • delete()

    Deletes the specified file returning the result of fetch().

    	    GDrive.files.delete(fileId);
  • get()

    Gets a file's metadata or a text-file's content by ID. By default the metadata is returned. Use download() for binary files. For queryParams see "Optional query parameters" here. If you want the content of a text-file and not its metadata add alt: "media" to queryParams.

    		const queryParams = { ... };
    		GDrive.files.get(fileId, queryParams);
    	
  • download()

    	Downloads the specified text or binary file.
    
    	For `downloadFileOptions` see the description of`downloadFile()` [here](https://www.npmjs.com/package/react-native-fs). Please, bear in mind that `fromUrl` is set automatically and any user supplied value will be overwritten.
    
    	The meaning of `queryParams` is the same as in `get()`.
    
    	The function returns the result of `RNFS.downloadFile(downloadFileOptions)`.
    	
    		GDrive.files.download(fileId, downloadFileOptions, queryParams);
  • export()

    	[Exports](#https://developers.google.com/drive/v3/reference/files/export) a google document, returning the result of `fetch()`.
    
    	    GDrive.files.export(fileId, mimeType);
  • getId()

    	Gets the id of the first file with the specified metadata. The function returns a `Promise`. It's rejected on failure and resolved to the file id or `undefined` (if nothing is found) on success.
    
     GDrive.files.getId(
         name: String, // The name.
         parents: [String], // The parents.
         mimeType: String, // The mime type.
         trashed: Boolean // Whether the file is trashed. Default: false
     );
    	
  • list()
    	[Lists or searches files](https://developers.google.com/drive/v3/reference/files/list) returning the result of `fetch()`.
    
    		GDrive.files.list({q: "'root' in parents"});
  • safeCreateFolder()
    	Gets the id of the first folder with the specified `name` and `parents`, creating the folder if it doesn't exist. The function returns a `Promise` that is rejected on failure and resolved to the folder id on success.
    
     GDrive.files.safeCreateFolder({
         name: "My folder",
         parents: ["root"]
     });

[Permissions](#cgdriveapiwPermissions)

  • create()
    	[Creates](https://developers.google.com/drive/v3/reference/permissions/create) a permission for the specified file returning the result of fetch().
    
     GDrive.permissions.create(
         fileId, {
             role: "reader",
             type: "anyone"
         });

Version history

Version numberChanges
v1.2.0GDrive.files.createFileMultipart() isBase64. Merge pull request #10 from duyluonglc/master. Thanks, duyluonglc!
v1.1.1GDrive.files.export() added.
v1.0.11. A critical bug with invalid imports fixed.2. client-side-common-utils deprecated; switched to simple-common-utils.
v1.0.0Initial release.

Written with StackEdit.

1.0.12

5 years ago

1.0.11

5 years ago

1.0.10

5 years ago

1.0.9

5 years ago

1.0.8

5 years ago

1.0.7

5 years ago

1.0.6

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago