🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Sign inDemoInstall
Socket

node-appwrite

Package Overview
Dependencies
Maintainers
1
Versions
79
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

node-appwrite - npm Package Compare versions

Comparing version

to
2.2.0

docs/examples/account/create-recovery.md

2

docs/examples/database/create-document.md

@@ -14,3 +14,3 @@ const sdk = require('node-appwrite');

let promise = database.createDocument('[COLLECTION_ID]', {}, [], []);
let promise = database.createDocument('[COLLECTION_ID]', {});

@@ -17,0 +17,0 @@ promise.then(function (response) {

@@ -14,3 +14,3 @@ const sdk = require('node-appwrite');

let promise = database.updateCollection('[COLLECTION_ID]', '[NAME]', [], []);
let promise = database.updateCollection('[COLLECTION_ID]', '[NAME]');

@@ -17,0 +17,0 @@ promise.then(function (response) {

@@ -14,3 +14,3 @@ const sdk = require('node-appwrite');

let promise = database.updateDocument('[COLLECTION_ID]', '[DOCUMENT_ID]', {}, [], []);
let promise = database.updateDocument('[COLLECTION_ID]', '[DOCUMENT_ID]', {});

@@ -17,0 +17,0 @@ promise.then(function (response) {

@@ -14,3 +14,3 @@ const sdk = require('node-appwrite');

let promise = functions.create('[NAME]', [], 'node-14.5');
let promise = functions.create('[NAME]', [], 'dotnet-3.1');

@@ -17,0 +17,0 @@ promise.then(function (response) {

@@ -15,3 +15,3 @@ const sdk = require('node-appwrite');

let promise = storage.createFile(fs.createReadStream(__dirname + '/file.png')), [], []);
let promise = storage.createFile(fs.createReadStream(__dirname + '/file.png')));

@@ -18,0 +18,0 @@ promise.then(function (response) {

@@ -14,3 +14,3 @@ const sdk = require('node-appwrite');

let promise = teams.deleteMembership('[TEAM_ID]', '[INVITE_ID]');
let promise = teams.deleteMembership('[TEAM_ID]', '[MEMBERSHIP_ID]');

@@ -17,0 +17,0 @@ promise.then(function (response) {

@@ -14,3 +14,3 @@ const sdk = require('node-appwrite');

let promise = users.updateStatus('[USER_ID]', '1');
let promise = users.updateStatus('[USER_ID]', 1);

@@ -17,0 +17,0 @@ promise.then(function (response) {

const Client = require('./lib/client.js');
const AppwriteException = require('./lib/exception.js');
const Account = require('./lib/services/account.js');
const Avatars = require('./lib/services/avatars.js');

@@ -15,2 +16,3 @@ const Database = require('./lib/services/database.js');

AppwriteException,
Account,
Avatars,

@@ -17,0 +19,0 @@ Database,

@@ -12,3 +12,4 @@ const URL = require('url').URL;

'content-type': '',
'x-sdk-version': 'appwrite:nodejs:2.1.0',
'x-sdk-version': 'appwrite:nodejs:2.2.0',
'X-Appwrite-Response-Format' : '0.8.0',
};

@@ -49,2 +50,17 @@ this.selfSigned = false;

/**
* Set JWT
*
* Your secret JSON Web Token
*
* @param string value
*
* @return self
*/
setJWT(value) {
this.addHeader('X-Appwrite-JWT', value);
return this;
}
/**
* Set Locale

@@ -135,4 +151,8 @@ *

if('response' in error) {
if('data' in error.response) {
throw new AppwriteException(error.response.data.message, error.response.status, error.response.data);
if(error.response && 'data' in error.response) {
if (typeof(error.response.data) === 'string') {
throw new AppwriteException(error.response.data, error.response.status, error.response.data);
} else {
throw new AppwriteException(error.response.data.message, error.response.status, error.response.data);
}
}else{

@@ -139,0 +159,0 @@ throw new AppwriteException(error.response.statusText, error.response.status, error.response.data);

@@ -93,3 +93,3 @@ const Service = require('../service.js');

*/
async updateCollection(collectionId, name, read, write, rules = []) {
async updateCollection(collectionId, name, read = [], write = [], rules = []) {
let path = '/database/collections/{collectionId}'.replace(new RegExp('{collectionId}', 'g'), collectionId);

@@ -182,3 +182,3 @@

*/
async createDocument(collectionId, data, read, write, parentDocument = '', parentProperty = '', parentPropertyType = 'assign') {
async createDocument(collectionId, data, read = [], write = [], parentDocument = '', parentProperty = '', parentPropertyType = 'assign') {
let path = '/database/collections/{collectionId}/documents'.replace(new RegExp('{collectionId}', 'g'), collectionId);

@@ -234,3 +234,3 @@

*/
async updateDocument(collectionId, documentId, data, read, write) {
async updateDocument(collectionId, documentId, data, read = [], write = []) {
let path = '/database/collections/{collectionId}/documents/{documentId}'.replace(new RegExp('{collectionId}', 'g'), collectionId).replace(new RegExp('{documentId}', 'g'), documentId);

@@ -237,0 +237,0 @@

@@ -140,4 +140,4 @@ const Service = require('../service.js');

* query params to filter your results. On admin mode, this endpoint will
* return a list of all of the project's teams. [Learn more about different
* API modes](/docs/admin).
* return a list of all of the project's executions. [Learn more about
* different API modes](/docs/admin).
*

@@ -175,6 +175,7 @@ * @param string functionId

* @param string functionId
* @param string data
* @throws Exception
* @return {}
*/
async createExecution(functionId) {
async createExecution(functionId, data = '') {
let path = '/functions/{functionId}/executions'.replace(new RegExp('{functionId}', 'g'), functionId);

@@ -186,2 +187,3 @@

{
'data': data
});

@@ -188,0 +190,0 @@ }

@@ -46,3 +46,3 @@ const Service = require('../service.js');

*/
async createFile(file, read, write) {
async createFile(file, read = [], write = []) {
let path = '/storage/files';

@@ -157,2 +157,7 @@

* @param number quality
* @param number borderWidth
* @param string borderColor
* @param number borderRadius
* @param number opacity
* @param number rotation
* @param string background

@@ -163,3 +168,3 @@ * @param string output

*/
async getFilePreview(fileId, width = 0, height = 0, quality = 100, background = '', output = '') {
async getFilePreview(fileId, width = 0, height = 0, quality = 100, borderWidth = 0, borderColor = '', borderRadius = 0, opacity = 1, rotation = 0, background = '', output = '') {
let path = '/storage/files/{fileId}/preview'.replace(new RegExp('{fileId}', 'g'), fileId);

@@ -174,2 +179,7 @@

'quality': quality,
'borderWidth': borderWidth,
'borderColor': borderColor,
'borderRadius': borderRadius,
'opacity': opacity,
'rotation': rotation,
'background': background,

@@ -176,0 +186,0 @@ 'output': output

@@ -189,2 +189,22 @@ const Service = require('../service.js');

/**
* Update Membership Roles
*
* @param string teamId
* @param string membershipId
* @param string[] roles
* @throws Exception
* @return {}
*/
async updateMembershipRoles(teamId, membershipId, roles) {
let path = '/teams/{teamId}/memberships/{membershipId}'.replace(new RegExp('{teamId}', 'g'), teamId).replace(new RegExp('{membershipId}', 'g'), membershipId);
return await this.client.call('patch', path, {
'content-type': 'application/json',
},
{
'roles': roles
});
}
/**
* Delete Team Membership

@@ -197,8 +217,8 @@ *

* @param string teamId
* @param string inviteId
* @param string membershipId
* @throws Exception
* @return {}
*/
async deleteMembership(teamId, inviteId) {
let path = '/teams/{teamId}/memberships/{inviteId}'.replace(new RegExp('{teamId}', 'g'), teamId).replace(new RegExp('{inviteId}', 'g'), inviteId);
async deleteMembership(teamId, membershipId) {
let path = '/teams/{teamId}/memberships/{membershipId}'.replace(new RegExp('{teamId}', 'g'), teamId).replace(new RegExp('{membershipId}', 'g'), membershipId);

@@ -211,4 +231,30 @@ return await this.client.call('delete', path, {

}
/**
* Update Team Membership Status
*
* Use this endpoint to allow a user to accept an invitation to join a team
* after being redirected back to your app from the invitation email recieved
* by the user.
*
* @param string teamId
* @param string membershipId
* @param string userId
* @param string secret
* @throws Exception
* @return {}
*/
async updateMembershipStatus(teamId, membershipId, userId, secret) {
let path = '/teams/{teamId}/memberships/{membershipId}/status'.replace(new RegExp('{teamId}', 'g'), teamId).replace(new RegExp('{membershipId}', 'g'), membershipId);
return await this.client.call('patch', path, {
'content-type': 'application/json',
},
{
'userId': userId,
'secret': secret
});
}
}
module.exports = Teams;

@@ -84,3 +84,3 @@ const Service = require('../service.js');

*/
async deleteUser(userId) {
async delete(userId) {
let path = '/users/{userId}'.replace(new RegExp('{userId}', 'g'), userId);

@@ -219,3 +219,3 @@

* @param string userId
* @param string status
* @param number status
* @throws Exception

@@ -222,0 +222,0 @@ * @return {}

@@ -5,3 +5,3 @@ {

"description": "Appwrite is an open-source self-hosted backend server that abstract and simplify complex and repetitive development tasks behind a very simple REST API",
"version": "2.1.0",
"version": "2.2.0",
"license": "BSD-3-Clause",

@@ -16,4 +16,4 @@ "main": "index.js",

"axios": "^0.21.1",
"form-data": "^3.0.0"
"form-data": "^4.0.0"
}
}
# Appwrite Node.js SDK
![License](https://img.shields.io/github/license/appwrite/sdk-for-node.svg?style=flat-square)
![Version](https://img.shields.io/badge/api%20version-0.7.0-blue.svg?style=flat-square)
![Version](https://img.shields.io/badge/api%20version-0.8.0-blue.svg?style=flat-square)
[![Twitter Account](https://img.shields.io/twitter/follow/appwrite_io?color=00acee&label=twitter&style=flat-square)](https://twitter.com/appwrite_io)
[![Discord](https://img.shields.io/discord/564160730845151244?label=discord&style=flat-square)](https://appwrite.io/discord)
**This SDK is compatible with Appwrite server version 0.7.x. For older versions, please check [previous releases](https://github.com/appwrite/sdk-for-node/releases).**
**This SDK is compatible with Appwrite server version 0.8.x. For older versions, please check [previous releases](https://github.com/appwrite/sdk-for-node/releases).**

@@ -42,2 +42,3 @@ > This is the Node.js SDK for integrating with Appwrite from your Node.js server-side code.

.setKey('919c2d18fb5d4...a2ae413da83346ad2') // Your secret API key
.setSelfSigned() // Use only on dev mode with a self-signed SSL cert
;

@@ -71,2 +72,3 @@ ```

.setKey('919c2d18fb5d4...a2ae413da83346ad2') // Your secret API key
.setSelfSigned() // Use only on dev mode with a self-signed SSL cert
;

@@ -84,2 +86,15 @@

### Error Handling
The Appwrite Node SDK raises `AppwriteException` object with `message`, `code` and `response` properties. You can handle any errors by catching `AppwriteException` and present the `message` to the user or handle it yourself based on the provided error information. Below is an example.
```js
let users = new sdk.Users(client);
try {
let res = await users.create('email@example.com', 'password');
} catch(e) {
console.log(e.message);
}
```
### Learn more

@@ -86,0 +101,0 @@ You can use followng resources to learn more and get help