UNPKG

@deep-foundation/deeplinks

Version:

[![npm](https://img.shields.io/npm/v/@deep-foundation/deeplinks.svg)](https://www.npmjs.com/package/@deep-foundation/deeplinks) [![Gitpod](https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/deep-fo

69 lines 2.23 kB
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; export const permissions = (api, table, actions = { role: 'link', select: {}, insert: {}, update: {}, delete: {}, columns: '*', computed_fields: [], }) => __awaiter(void 0, void 0, void 0, function* () { const columns = actions.columns || '*'; const computed_fields = actions.computed_fields || []; yield api.metadata({ type: 'pg_create_select_permission', args: { table: table, role: actions.role, permission: { columns: columns, computed_fields, filter: actions.select, limit: 999, allow_aggregations: true } } }); yield api.query({ type: 'create_insert_permission', args: { table: table, role: actions.role, permission: { check: actions.insert, columns: '*', } } }); yield api.query({ type: 'create_update_permission', args: { table: table, role: actions.role, permission: { columns: '*', filter: actions.update, check: {}, } } }); yield api.query({ type: 'create_delete_permission', args: { table: table, role: actions.role, permission: { filter: actions.delete, } } }); }); //# sourceMappingURL=permission.js.map