appwrite
Version:
Appwrite is an open-source self-hosted backend server that abstracts and simplifies complex and repetitive development tasks behind a very simple REST API
58 lines (53 loc) • 1.38 kB
text/typescript
/**
* Helper class to generate permission strings for resources.
*/
export class Permission {
/**
* Generate read permission string for the provided role.
*
* @param {string} role
* @returns {string}
*/
static read = (role: string): string => {
return `read("${role}")`;
}
/**
* Generate write permission string for the provided role.
*
* This is an alias of update, delete, and possibly create.
* Don't use write in combination with update, delete, or create.
*
* @param {string} role
* @returns {string}
*/
static write = (role: string): string => {
return `write("${role}")`;
}
/**
* Generate create permission string for the provided role.
*
* @param {string} role
* @returns {string}
*/
static create = (role: string): string => {
return `create("${role}")`;
}
/**
* Generate update permission string for the provided role.
*
* @param {string} role
* @returns {string}
*/
static update = (role: string): string => {
return `update("${role}")`;
}
/**
* Generate delete permission string for the provided role.
*
* @param {string} role
* @returns {string}
*/
static delete = (role: string): string => {
return `delete("${role}")`;
}
}