UNPKG

@neo-one/server-plugin

Version:

NEO•ONE Server plugin API.

40 lines (38 loc) 5.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const CRUDResource_1 = require("./CRUDResource"); function nameToUpper(name) { return `${name.charAt(0).toUpperCase()}${name.slice(1)}`; } function nameToHelp(name, resourceName) { return `${nameToUpper(name)}s a ${resourceName} called <name>`; } class CreateCRUD extends CRUDResource_1.CRUDResource { constructor({ resourceType, name = 'create', help = nameToHelp(name, resourceType.names.lower), aliases, extraArgs, options, autocomplete, startOnCreate = false, hidden, }) { super({ name, resourceType, help, aliases, extraArgs, options, autocomplete, hidden, }); this.startOnCreate = startOnCreate; } async getAutocomplete(_options) { return Promise.resolve(this.autocomplete); } request$({ name, cancel$, options, client, }) { return client.createResource$({ plugin: this.resourceType.plugin.name, resourceType: this.resourceType.name, name, options, cancel$, }); } } exports.CreateCRUD = CreateCRUD; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNyZWF0ZUNSVUQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFFQSxpREFBK0Q7QUFpQi9ELFNBQVMsV0FBVyxDQUFDLElBQVk7SUFDL0IsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0FBQzNELENBQUM7QUFFRCxTQUFTLFVBQVUsQ0FBQyxJQUFZLEVBQUUsWUFBb0I7SUFDcEQsT0FBTyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxZQUFZLGdCQUFnQixDQUFDO0FBQ2pFLENBQUM7QUFFRCxNQUFhLFVBR1gsU0FBUSwyQkFBdUM7SUFHL0MsWUFBbUIsRUFDakIsWUFBWSxFQUNaLElBQUksR0FBRyxRQUFRLEVBQ2YsSUFBSSxHQUFHLFVBQVUsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFDakQsT0FBTyxFQUNQLFNBQVMsRUFDVCxPQUFPLEVBQ1AsWUFBWSxFQUNaLGFBQWEsR0FBRyxLQUFLLEVBQ3JCLE1BQU0sR0FDdUM7UUFDN0MsS0FBSyxDQUFDO1lBQ0osSUFBSTtZQUNKLFlBQVk7WUFDWixJQUFJO1lBQ0osT0FBTztZQUNQLFNBQVM7WUFDVCxPQUFPO1lBQ1AsWUFBWTtZQUNaLE1BQU07U0FDUCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztJQUNyQyxDQUFDO0lBRU0sS0FBSyxDQUFDLGVBQWUsQ0FBQyxRQUFtQztRQUM5RCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTSxRQUFRLENBQUMsRUFDZCxJQUFJLEVBQ0osT0FBTyxFQUNQLE9BQU8sRUFDUCxNQUFNLEdBQzJCO1FBQ2pDLE9BQU8sTUFBTSxDQUFDLGVBQWUsQ0FBQztZQUM1QixNQUFNLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSTtZQUNyQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJO1lBQ3BDLElBQUk7WUFDSixPQUFPO1lBQ1AsT0FBTztTQUNSLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQWpERCxnQ0FpREMiLCJmaWxlIjoibmVvLW9uZS1zZXJ2ZXItcGx1Z2luL3NyYy9DcmVhdGVDUlVELmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ0xJT3B0aW9uIH0gZnJvbSAnLi9DUlVEQmFzZSc7XG5pbXBvcnQgeyBDUlVEUmVzb3VyY2UsIFJlcXVlc3QkT3B0aW9ucyB9IGZyb20gJy4vQ1JVRFJlc291cmNlJztcbmltcG9ydCB7IEdldENMSUF1dG9jb21wbGV0ZU9wdGlvbnMgfSBmcm9tICcuL0NSVURSZXNvdXJjZUJhc2UnO1xuaW1wb3J0IHsgUmVzb3VyY2VUeXBlIH0gZnJvbSAnLi9SZXNvdXJjZVR5cGUnO1xuaW1wb3J0IHsgQmFzZVJlc291cmNlLCBCYXNlUmVzb3VyY2VPcHRpb25zLCBFeGVjdXRlVGFza0xpc3RSZXNwb25zZSB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUNSVURPcHRpb25zPFJlc291cmNlIGV4dGVuZHMgQmFzZVJlc291cmNlLCBSZXNvdXJjZU9wdGlvbnMgZXh0ZW5kcyBCYXNlUmVzb3VyY2VPcHRpb25zPiB7XG4gIHJlYWRvbmx5IHJlc291cmNlVHlwZTogUmVzb3VyY2VUeXBlPFJlc291cmNlLCBSZXNvdXJjZU9wdGlvbnM+O1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuICByZWFkb25seSBoZWxwPzogc3RyaW5nO1xuICByZWFkb25seSBhbGlhc2VzPzogcmVhZG9ubHkgc3RyaW5nW107XG4gIHJlYWRvbmx5IGV4dHJhQXJncz86IHJlYWRvbmx5IHN0cmluZ1tdO1xuICByZWFkb25seSBvcHRpb25zPzogcmVhZG9ubHkgQ0xJT3B0aW9uW107XG4gIHJlYWRvbmx5IGF1dG9jb21wbGV0ZT86IHJlYWRvbmx5IHN0cmluZ1tdO1xuICByZWFkb25seSBzdGFydE9uQ3JlYXRlPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgaGlkZGVuPzogYm9vbGVhbjtcbn1cblxuZnVuY3Rpb24gbmFtZVRvVXBwZXIobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGAke25hbWUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCl9JHtuYW1lLnNsaWNlKDEpfWA7XG59XG5cbmZ1bmN0aW9uIG5hbWVUb0hlbHAobmFtZTogc3RyaW5nLCByZXNvdXJjZU5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBgJHtuYW1lVG9VcHBlcihuYW1lKX1zIGEgJHtyZXNvdXJjZU5hbWV9IGNhbGxlZCA8bmFtZT5gO1xufVxuXG5leHBvcnQgY2xhc3MgQ3JlYXRlQ1JVRDxcbiAgUmVzb3VyY2UgZXh0ZW5kcyBCYXNlUmVzb3VyY2UsXG4gIFJlc291cmNlT3B0aW9ucyBleHRlbmRzIEJhc2VSZXNvdXJjZU9wdGlvbnNcbj4gZXh0ZW5kcyBDUlVEUmVzb3VyY2U8UmVzb3VyY2UsIFJlc291cmNlT3B0aW9ucz4ge1xuICBwdWJsaWMgcmVhZG9ubHkgc3RhcnRPbkNyZWF0ZTogYm9vbGVhbjtcblxuICBwdWJsaWMgY29uc3RydWN0b3Ioe1xuICAgIHJlc291cmNlVHlwZSxcbiAgICBuYW1lID0gJ2NyZWF0ZScsXG4gICAgaGVscCA9IG5hbWVUb0hlbHAobmFtZSwgcmVzb3VyY2VUeXBlLm5hbWVzLmxvd2VyKSxcbiAgICBhbGlhc2VzLFxuICAgIGV4dHJhQXJncyxcbiAgICBvcHRpb25zLFxuICAgIGF1dG9jb21wbGV0ZSxcbiAgICBzdGFydE9uQ3JlYXRlID0gZmFsc2UsXG4gICAgaGlkZGVuLFxuICB9OiBDcmVhdGVDUlVET3B0aW9uczxSZXNvdXJjZSwgUmVzb3VyY2VPcHRpb25zPikge1xuICAgIHN1cGVyKHtcbiAgICAgIG5hbWUsXG4gICAgICByZXNvdXJjZVR5cGUsXG4gICAgICBoZWxwLFxuICAgICAgYWxpYXNlcyxcbiAgICAgIGV4dHJhQXJncyxcbiAgICAgIG9wdGlvbnMsXG4gICAgICBhdXRvY29tcGxldGUsXG4gICAgICBoaWRkZW4sXG4gICAgfSk7XG5cbiAgICB0aGlzLnN0YXJ0T25DcmVhdGUgPSBzdGFydE9uQ3JlYXRlO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldEF1dG9jb21wbGV0ZShfb3B0aW9uczogR2V0Q0xJQXV0b2NvbXBsZXRlT3B0aW9ucyk6IFByb21pc2U8cmVhZG9ubHkgc3RyaW5nW10+IHtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuYXV0b2NvbXBsZXRlKTtcbiAgfVxuXG4gIHB1YmxpYyByZXF1ZXN0JCh7XG4gICAgbmFtZSxcbiAgICBjYW5jZWwkLFxuICAgIG9wdGlvbnMsXG4gICAgY2xpZW50LFxuICB9OiBSZXF1ZXN0JE9wdGlvbnM8UmVzb3VyY2VPcHRpb25zPik6IE9ic2VydmFibGU8RXhlY3V0ZVRhc2tMaXN0UmVzcG9uc2U+IHtcbiAgICByZXR1cm4gY2xpZW50LmNyZWF0ZVJlc291cmNlJCh7XG4gICAgICBwbHVnaW46IHRoaXMucmVzb3VyY2VUeXBlLnBsdWdpbi5uYW1lLFxuICAgICAgcmVzb3VyY2VUeXBlOiB0aGlzLnJlc291cmNlVHlwZS5uYW1lLFxuICAgICAgbmFtZSxcbiAgICAgIG9wdGlvbnMsXG4gICAgICBjYW5jZWwkLFxuICAgIH0pO1xuICB9XG59XG4iXX0=