UNPKG

@sprucelabs/spruce-cli

Version:

Command line interface for building Spruce skills.

175 lines • 6.79 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.globalContract = void 0; const mercury_event_emitter_1 = require("@sprucelabs/mercury-event-emitter"); const mercury_types_1 = require("@sprucelabs/mercury-types"); const schema_1 = require("@sprucelabs/schema"); const actionResponse_schema_1 = __importDefault(require("./.spruce/schemas/spruceCli/v2020_07_22/actionResponse.schema")); const watcherDidDetectChangesEmitPayload_schema_1 = __importDefault(require("./.spruce/schemas/spruceCli/v2020_07_22/watcherDidDetectChangesEmitPayload.schema")); exports.globalContract = (0, mercury_types_1.buildEventContract)({ eventSignatures: { 'watcher.did-detect-change': { emitPayloadSchema: watcherDidDetectChangesEmitPayload_schema_1.default, }, 'schema.did-fetch-schemas': { emitPayloadSchema: (0, schema_1.buildSchema)({ id: 'didFetchSchemasEmitPayload', fields: { schemas: { type: 'raw', isArray: true, options: { valueType: 'Schema', }, }, }, }), responsePayloadSchema: (0, schema_1.buildSchema)({ id: 'didFetchSchemasResponsePayload', fields: { schemas: { type: 'raw', isArray: true, options: { valueType: 'Schema', }, }, }, }), }, 'skill.register-dashboard-widgets': {}, 'test.register-abstract-test-classes': { responsePayloadSchema: (0, schema_1.buildSchema)({ id: 'registerAbstractTestClassResponsePayload', fields: { abstractClasses: { type: 'schema', isRequired: true, isArray: true, options: { schema: (0, schema_1.buildSchema)({ id: 'abstractClassRegistration', fields: { name: { type: 'text', isRequired: true, }, label: { type: 'text', isRequired: true, }, import: { type: 'text', isRequired: true, }, featureCode: { type: 'text', }, }, }), }, }, }, }), }, 'feature.will-execute': { emitPayloadSchema: (0, schema_1.buildSchema)({ id: 'willExecuteEmitPayload', importsWhenLocal: [ 'import { FeatureActionResponse } from #spruce/../features/features/features.types', ], fields: { featureCode: { type: 'text', isRequired: true, }, actionCode: { type: 'text', isRequired: true, }, options: { type: 'raw', options: { valueType: 'Record<string, any>', }, }, }, }), responsePayloadSchema: actionResponse_schema_1.default, }, 'feature.did-execute': { emitPayloadSchema: (0, schema_1.buildSchema)({ id: 'didExecuteEmitPayload', importsWhenLocal: [ 'import { FeatureActionResponse } from #spruce/../features/features/features.types', ], fields: { featureCode: { type: 'text', isRequired: true, }, actionCode: { type: 'text', isRequired: true, }, results: { type: 'raw', isRequired: true, options: { valueType: 'FeatureActionResponse', }, }, options: { type: 'raw', options: { valueType: 'Record<string, any>', }, }, }, }), responsePayloadSchema: (0, schema_1.buildSchema)({ id: 'didExecuteResponsePayload', fields: { ...actionResponse_schema_1.default.fields, }, }), }, 'test.reporter-did-boot': { emitPayloadSchema: (0, schema_1.buildSchema)({ id: 'testReporterDidBootEmitPayload', fields: { reporter: { type: 'raw', isRequired: true, options: { valueType: 'TestAction', }, }, }, }), }, 'skill.will-write-directory-template': { responsePayloadSchema: (0, schema_1.buildSchema)({ id: 'wilLWriteDirectoryTemplateResponsePayload', fields: { filesToSkip: { type: 'text', isArray: true, }, }, }), }, }, }); class CliGlobalEmitter extends mercury_event_emitter_1.AbstractEventEmitter { static Emitter() { return new CliGlobalEmitter(exports.globalContract, { shouldEmitSequentally: true, }); } } exports.default = CliGlobalEmitter; //# sourceMappingURL=GlobalEmitter.js.map