@neo-one/server-plugin-project
Version:
NEO•ONE server plugin for project functionality.
36 lines (34 loc) • 5.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const server_plugin_1 = require("@neo-one/server-plugin");
const lodash_1 = tslib_1.__importDefault(require("lodash"));
const MasterProjectResourceAdapter_1 = require("./MasterProjectResourceAdapter");
class ProjectResourceType extends server_plugin_1.ResourceType {
constructor({ plugin }) {
super({
plugin,
name: 'project',
names: {
capital: 'Project',
capitalPlural: 'Projects',
lower: 'project',
lowerPlural: 'projects',
},
});
}
async createMasterResourceAdapter(_options) {
return new MasterProjectResourceAdapter_1.MasterProjectResourceAdapter({ resourceType: this });
}
getCRUD() {
return new server_plugin_1.CRUD({ resourceType: this });
}
getListTable(resources) {
return [['ID', 'Root Directory', 'Address', 'Unlocked', 'NEO', 'GAS']].concat(lodash_1.default.sortBy(resources, (resource) => resource.name).map((resource) => [resource.name, resource.rootDir]));
}
getDescribeTable(resource) {
return [['ID', resource.baseName], ['Root Directory', resource.rootDir]];
}
}
exports.ProjectResourceType = ProjectResourceType;
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByb2plY3RSZXNvdXJjZVR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsMERBUWdDO0FBQ2hDLDREQUF1QjtBQUN2QixpRkFBOEU7QUF3QjlFLE1BQWEsbUJBQW9CLFNBQVEsNEJBQTZDO0lBQ3BGLFlBQW1CLEVBQUUsTUFBTSxFQUFzQztRQUMvRCxLQUFLLENBQUM7WUFDSixNQUFNO1lBQ04sSUFBSSxFQUFFLFNBQVM7WUFDZixLQUFLLEVBQUU7Z0JBQ0wsT0FBTyxFQUFFLFNBQVM7Z0JBQ2xCLGFBQWEsRUFBRSxVQUFVO2dCQUN6QixLQUFLLEVBQUUsU0FBUztnQkFDaEIsV0FBVyxFQUFFLFVBQVU7YUFDeEI7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sS0FBSyxDQUFDLDJCQUEyQixDQUN0QyxRQUFzQztRQUV0QyxPQUFPLElBQUksMkRBQTRCLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRU0sT0FBTztRQUNaLE9BQU8sSUFBSSxvQkFBSSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVNLFlBQVksQ0FBQyxTQUE2QjtRQUMvQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQzNFLGdCQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUN0RyxDQUFDO0lBQ0osQ0FBQztJQUVNLGdCQUFnQixDQUFDLFFBQWlCO1FBQ3ZDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFVLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFVLENBQUMsQ0FBQztJQUM3RixDQUFDO0NBQ0Y7QUFqQ0Qsa0RBaUNDIiwiZmlsZSI6Im5lby1vbmUtc2VydmVyLXBsdWdpbi1wcm9qZWN0L3NyYy9Qcm9qZWN0UmVzb3VyY2VUeXBlLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU291cmNlTWFwcyB9IGZyb20gJ0BuZW8tb25lL2NsaWVudC1jb21tb24nO1xuaW1wb3J0IHtcbiAgQ1JVRCxcbiAgRGVzY3JpYmVUYWJsZSxcbiAgTGlzdFRhYmxlLFxuICBNYXN0ZXJSZXNvdXJjZUFkYXB0ZXIsXG4gIE1hc3RlclJlc291cmNlQWRhcHRlck9wdGlvbnMsXG4gIFJlc291cmNlU3RhdGUsXG4gIFJlc291cmNlVHlwZSxcbn0gZnJvbSAnQG5lby1vbmUvc2VydmVyLXBsdWdpbic7XG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgTWFzdGVyUHJvamVjdFJlc291cmNlQWRhcHRlciB9IGZyb20gJy4vTWFzdGVyUHJvamVjdFJlc291cmNlQWRhcHRlcic7XG5pbXBvcnQgeyBQcm9qZWN0UGx1Z2luIH0gZnJvbSAnLi9Qcm9qZWN0UGx1Z2luJztcblxuZXhwb3J0IGludGVyZmFjZSBDb2luIHtcbiAgcmVhZG9ubHkgYXNzZXROYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGFzc2V0OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGFtb3VudDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2plY3Qge1xuICByZWFkb25seSBwbHVnaW46IHN0cmluZztcbiAgcmVhZG9ubHkgcmVzb3VyY2VUeXBlOiBzdHJpbmc7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgYmFzZU5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgc3RhdGU6IFJlc291cmNlU3RhdGU7XG4gIHJlYWRvbmx5IHJvb3REaXI6IHN0cmluZztcbiAgcmVhZG9ubHkgc291cmNlTWFwczogU291cmNlTWFwcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcm9qZWN0UmVzb3VyY2VPcHRpb25zIHtcbiAgcmVhZG9ubHkgcm9vdERpcj86IHN0cmluZztcbiAgcmVhZG9ubHkgc291cmNlTWFwcz86IFNvdXJjZU1hcHM7XG59XG5cbmV4cG9ydCBjbGFzcyBQcm9qZWN0UmVzb3VyY2VUeXBlIGV4dGVuZHMgUmVzb3VyY2VUeXBlPFByb2plY3QsIFByb2plY3RSZXNvdXJjZU9wdGlvbnM+IHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKHsgcGx1Z2luIH06IHsgcmVhZG9ubHkgcGx1Z2luOiBQcm9qZWN0UGx1Z2luIH0pIHtcbiAgICBzdXBlcih7XG4gICAgICBwbHVnaW4sXG4gICAgICBuYW1lOiAncHJvamVjdCcsXG4gICAgICBuYW1lczoge1xuICAgICAgICBjYXBpdGFsOiAnUHJvamVjdCcsXG4gICAgICAgIGNhcGl0YWxQbHVyYWw6ICdQcm9qZWN0cycsXG4gICAgICAgIGxvd2VyOiAncHJvamVjdCcsXG4gICAgICAgIGxvd2VyUGx1cmFsOiAncHJvamVjdHMnLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBjcmVhdGVNYXN0ZXJSZXNvdXJjZUFkYXB0ZXIoXG4gICAgX29wdGlvbnM6IE1hc3RlclJlc291cmNlQWRhcHRlck9wdGlvbnMsXG4gICk6IFByb21pc2U8TWFzdGVyUmVzb3VyY2VBZGFwdGVyPFByb2plY3QsIFByb2plY3RSZXNvdXJjZU9wdGlvbnM+PiB7XG4gICAgcmV0dXJuIG5ldyBNYXN0ZXJQcm9qZWN0UmVzb3VyY2VBZGFwdGVyKHsgcmVzb3VyY2VUeXBlOiB0aGlzIH0pO1xuICB9XG5cbiAgcHVibGljIGdldENSVUQoKTogQ1JVRDxQcm9qZWN0LCBQcm9qZWN0UmVzb3VyY2VPcHRpb25zPiB7XG4gICAgcmV0dXJuIG5ldyBDUlVEKHsgcmVzb3VyY2VUeXBlOiB0aGlzIH0pO1xuICB9XG5cbiAgcHVibGljIGdldExpc3RUYWJsZShyZXNvdXJjZXM6IHJlYWRvbmx5IFByb2plY3RbXSk6IExpc3RUYWJsZSB7XG4gICAgcmV0dXJuIFtbJ0lEJywgJ1Jvb3QgRGlyZWN0b3J5JywgJ0FkZHJlc3MnLCAnVW5sb2NrZWQnLCAnTkVPJywgJ0dBUyddXS5jb25jYXQoXG4gICAgICBfLnNvcnRCeShyZXNvdXJjZXMsIChyZXNvdXJjZSkgPT4gcmVzb3VyY2UubmFtZSkubWFwKChyZXNvdXJjZSkgPT4gW3Jlc291cmNlLm5hbWUsIHJlc291cmNlLnJvb3REaXJdKSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGdldERlc2NyaWJlVGFibGUocmVzb3VyY2U6IFByb2plY3QpOiBEZXNjcmliZVRhYmxlIHtcbiAgICByZXR1cm4gW1snSUQnLCByZXNvdXJjZS5iYXNlTmFtZV0gYXMgY29uc3QsIFsnUm9vdCBEaXJlY3RvcnknLCByZXNvdXJjZS5yb290RGlyXSBhcyBjb25zdF07XG4gIH1cbn1cbiJdfQ==