UNPKG

@neo-one/server-plugin-project

Version:

NEO•ONE server plugin for project functionality.

71 lines (69 loc) 8.62 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const server_plugin_1 = require("@neo-one/server-plugin"); const ProjectResource_1 = require("./ProjectResource"); class ProjectResourceAdapter { static create({ resourceType, name, dataPath }, { rootDir, sourceMaps }) { return new server_plugin_1.TaskList({ tasks: [ { title: 'Create project resource', task: async (ctx) => { if (rootDir === undefined) { throw new Error('Root directory of the project must be defined.'); } if (sourceMaps === undefined) { throw new Error('Source maps of the project must be defined.'); } const projectResource = await ProjectResource_1.ProjectResource.createNew({ resourceType, name, dataPath, rootDir, sourceMaps, }); ctx.resourceAdapter = new this({ projectResource }); await projectResource.create(); }, }, ], }); } static async init({ resourceType, name, dataPath, }) { const projectResource = await ProjectResource_1.ProjectResource.createExisting({ resourceType, name, dataPath, }); return new this({ projectResource }); } constructor({ projectResource }) { this.projectResource = projectResource; this.resource$ = projectResource.resource$; } async destroy() { } delete(_options) { return new server_plugin_1.TaskList({ tasks: [ { title: 'Clean up local files', task: async () => { await this.projectResource.delete(); }, }, ], }); } start(_options) { throw new Error('Cannot be started'); } stop(_options) { throw new Error('Cannot be stopped'); } getDebug() { return this.projectResource.getDebug(); } } exports.ProjectResourceAdapter = ProjectResourceAdapter; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByb2plY3RSZXNvdXJjZUFkYXB0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSwwREFBaUU7QUFFakUsdURBQW9EO0FBZXBELE1BQWEsc0JBQXNCO0lBQzFCLE1BQU0sQ0FBQyxNQUFNLENBQ2xCLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQXFDLEVBQ25FLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBMEI7UUFFL0MsT0FBTyxJQUFJLHdCQUFRLENBQUM7WUFDbEIsS0FBSyxFQUFFO2dCQUNMO29CQUNFLEtBQUssRUFBRSx5QkFBeUI7b0JBQ2hDLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUU7d0JBQ2xCLElBQUksT0FBTyxLQUFLLFNBQVMsRUFBRTs0QkFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDO3lCQUNuRTt3QkFDRCxJQUFJLFVBQVUsS0FBSyxTQUFTLEVBQUU7NEJBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMsNkNBQTZDLENBQUMsQ0FBQzt5QkFDaEU7d0JBQ0QsTUFBTSxlQUFlLEdBQUcsTUFBTSxpQ0FBZSxDQUFDLFNBQVMsQ0FBQzs0QkFDdEQsWUFBWTs0QkFDWixJQUFJOzRCQUNKLFFBQVE7NEJBQ1IsT0FBTzs0QkFDUCxVQUFVO3lCQUNYLENBQUMsQ0FBQzt3QkFFSCxHQUFHLENBQUMsZUFBZSxHQUFHLElBQUksSUFBSSxDQUFDLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQzt3QkFDcEQsTUFBTSxlQUFlLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ2pDLENBQUM7aUJBQ0Y7YUFDRjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUN2QixZQUFZLEVBQ1osSUFBSSxFQUNKLFFBQVEsR0FDMEI7UUFDbEMsTUFBTSxlQUFlLEdBQUcsTUFBTSxpQ0FBZSxDQUFDLGNBQWMsQ0FBQztZQUMzRCxZQUFZO1lBQ1osSUFBSTtZQUNKLFFBQVE7U0FDVCxDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksSUFBSSxDQUFDLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBS0QsWUFBbUIsRUFBRSxlQUFlLEVBQWlDO1FBQ25FLElBQUksQ0FBQyxlQUFlLEdBQUcsZUFBZSxDQUFDO1FBRXZDLElBQUksQ0FBQyxTQUFTLEdBQUcsZUFBZSxDQUFDLFNBQVMsQ0FBQztJQUM3QyxDQUFDO0lBRU0sS0FBSyxDQUFDLE9BQU87SUFFcEIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxRQUFnQztRQUM1QyxPQUFPLElBQUksd0JBQVEsQ0FBQztZQUNsQixLQUFLLEVBQUU7Z0JBQ0w7b0JBQ0UsS0FBSyxFQUFFLHNCQUFzQjtvQkFDN0IsSUFBSSxFQUFFLEtBQUssSUFBSSxFQUFFO3dCQUNmLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDdEMsQ0FBQztpQkFDRjthQUNGO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFnQztRQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVNLElBQUksQ0FBQyxRQUFnQztRQUMxQyxNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDekMsQ0FBQztDQUNGO0FBbkZELHdEQW1GQyIsImZpbGUiOiJuZW8tb25lLXNlcnZlci1wbHVnaW4tcHJvamVjdC9zcmMvUHJvamVjdFJlc291cmNlQWRhcHRlci5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlc2NyaWJlVGFibGUsIFRhc2tMaXN0IH0gZnJvbSAnQG5lby1vbmUvc2VydmVyLXBsdWdpbic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQcm9qZWN0UmVzb3VyY2UgfSBmcm9tICcuL1Byb2plY3RSZXNvdXJjZSc7XG5pbXBvcnQgeyBQcm9qZWN0LCBQcm9qZWN0UmVzb3VyY2VPcHRpb25zLCBQcm9qZWN0UmVzb3VyY2VUeXBlIH0gZnJvbSAnLi9Qcm9qZWN0UmVzb3VyY2VUeXBlJztcblxuZXhwb3J0IGludGVyZmFjZSBQcm9qZWN0UmVzb3VyY2VBZGFwdGVySW5pdE9wdGlvbnMge1xuICByZWFkb25seSByZXNvdXJjZVR5cGU6IFByb2plY3RSZXNvdXJjZVR5cGU7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgZGF0YVBhdGg6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcm9qZWN0UmVzb3VyY2VBZGFwdGVyU3RhdGljT3B0aW9ucyBleHRlbmRzIFByb2plY3RSZXNvdXJjZUFkYXB0ZXJJbml0T3B0aW9ucyB7fVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2plY3RSZXNvdXJjZUFkYXB0ZXJPcHRpb25zIHtcbiAgcmVhZG9ubHkgcHJvamVjdFJlc291cmNlOiBQcm9qZWN0UmVzb3VyY2U7XG59XG5cbmV4cG9ydCBjbGFzcyBQcm9qZWN0UmVzb3VyY2VBZGFwdGVyIHtcbiAgcHVibGljIHN0YXRpYyBjcmVhdGUoXG4gICAgeyByZXNvdXJjZVR5cGUsIG5hbWUsIGRhdGFQYXRoIH06IFByb2plY3RSZXNvdXJjZUFkYXB0ZXJJbml0T3B0aW9ucyxcbiAgICB7IHJvb3REaXIsIHNvdXJjZU1hcHMgfTogUHJvamVjdFJlc291cmNlT3B0aW9ucyxcbiAgKTogVGFza0xpc3Qge1xuICAgIHJldHVybiBuZXcgVGFza0xpc3Qoe1xuICAgICAgdGFza3M6IFtcbiAgICAgICAge1xuICAgICAgICAgIHRpdGxlOiAnQ3JlYXRlIHByb2plY3QgcmVzb3VyY2UnLFxuICAgICAgICAgIHRhc2s6IGFzeW5jIChjdHgpID0+IHtcbiAgICAgICAgICAgIGlmIChyb290RGlyID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdSb290IGRpcmVjdG9yeSBvZiB0aGUgcHJvamVjdCBtdXN0IGJlIGRlZmluZWQuJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc291cmNlTWFwcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignU291cmNlIG1hcHMgb2YgdGhlIHByb2plY3QgbXVzdCBiZSBkZWZpbmVkLicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgcHJvamVjdFJlc291cmNlID0gYXdhaXQgUHJvamVjdFJlc291cmNlLmNyZWF0ZU5ldyh7XG4gICAgICAgICAgICAgIHJlc291cmNlVHlwZSxcbiAgICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgICAgZGF0YVBhdGgsXG4gICAgICAgICAgICAgIHJvb3REaXIsXG4gICAgICAgICAgICAgIHNvdXJjZU1hcHMsXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgY3R4LnJlc291cmNlQWRhcHRlciA9IG5ldyB0aGlzKHsgcHJvamVjdFJlc291cmNlIH0pO1xuICAgICAgICAgICAgYXdhaXQgcHJvamVjdFJlc291cmNlLmNyZWF0ZSgpO1xuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBhc3luYyBpbml0KHtcbiAgICByZXNvdXJjZVR5cGUsXG4gICAgbmFtZSxcbiAgICBkYXRhUGF0aCxcbiAgfTogUHJvamVjdFJlc291cmNlQWRhcHRlckluaXRPcHRpb25zKTogUHJvbWlzZTxQcm9qZWN0UmVzb3VyY2VBZGFwdGVyPiB7XG4gICAgY29uc3QgcHJvamVjdFJlc291cmNlID0gYXdhaXQgUHJvamVjdFJlc291cmNlLmNyZWF0ZUV4aXN0aW5nKHtcbiAgICAgIHJlc291cmNlVHlwZSxcbiAgICAgIG5hbWUsXG4gICAgICBkYXRhUGF0aCxcbiAgICB9KTtcblxuICAgIHJldHVybiBuZXcgdGhpcyh7IHByb2plY3RSZXNvdXJjZSB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZWFkb25seSBwcm9qZWN0UmVzb3VyY2U6IFByb2plY3RSZXNvdXJjZTtcbiAgcHVibGljIHJlYWRvbmx5IHJlc291cmNlJDogT2JzZXJ2YWJsZTxQcm9qZWN0PjtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoeyBwcm9qZWN0UmVzb3VyY2UgfTogUHJvamVjdFJlc291cmNlQWRhcHRlck9wdGlvbnMpIHtcbiAgICB0aGlzLnByb2plY3RSZXNvdXJjZSA9IHByb2plY3RSZXNvdXJjZTtcblxuICAgIHRoaXMucmVzb3VyY2UkID0gcHJvamVjdFJlc291cmNlLnJlc291cmNlJDtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBkZXN0cm95KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIGRvIG5vdGhpbmdcbiAgfVxuXG4gIHB1YmxpYyBkZWxldGUoX29wdGlvbnM6IFByb2plY3RSZXNvdXJjZU9wdGlvbnMpOiBUYXNrTGlzdCB7XG4gICAgcmV0dXJuIG5ldyBUYXNrTGlzdCh7XG4gICAgICB0YXNrczogW1xuICAgICAgICB7XG4gICAgICAgICAgdGl0bGU6ICdDbGVhbiB1cCBsb2NhbCBmaWxlcycsXG4gICAgICAgICAgdGFzazogYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5wcm9qZWN0UmVzb3VyY2UuZGVsZXRlKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc3RhcnQoX29wdGlvbnM6IFByb2plY3RSZXNvdXJjZU9wdGlvbnMpOiBUYXNrTGlzdCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgYmUgc3RhcnRlZCcpO1xuICB9XG5cbiAgcHVibGljIHN0b3AoX29wdGlvbnM6IFByb2plY3RSZXNvdXJjZU9wdGlvbnMpOiBUYXNrTGlzdCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgYmUgc3RvcHBlZCcpO1xuICB9XG5cbiAgcHVibGljIGdldERlYnVnKCk6IERlc2NyaWJlVGFibGUge1xuICAgIHJldHVybiB0aGlzLnByb2plY3RSZXNvdXJjZS5nZXREZWJ1ZygpO1xuICB9XG59XG4iXX0=