@akala/core
Version:
55 lines • 1.89 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const debug_1 = __importDefault(require("debug"));
var log = debug_1.default('akala:metadata');
var clientLog = debug_1.default('akala:metadata:client');
class Api {
constructor() {
this.serverOneWayConfig = {};
this.serverTwoWayConfig = {};
this.clientOneWayConfig = {};
this.clientTwoWayConfig = {};
}
connection() {
return this;
}
clientToServerOneWay() {
return (impl) => {
this.serverOneWayConfig = Object.assign(this.serverOneWayConfig, impl);
return this;
};
}
clientToServer() {
return (impl) => {
this.serverTwoWayConfig = Object.assign(this.serverTwoWayConfig, impl);
return this;
};
}
serverToClientOneWay() {
return (impl) => {
this.clientOneWayConfig = Object.assign(this.clientOneWayConfig, impl);
return this;
};
}
serverToClient() {
return (impl) => {
this.clientTwoWayConfig = Object.assign(this.clientTwoWayConfig, impl);
return this;
};
}
}
exports.Api = Api;
class DualApi extends Api {
constructor(meta1, meta2) {
super();
this.clientOneWayConfig = Object.assign(meta1.clientOneWayConfig, meta2.clientOneWayConfig);
this.clientTwoWayConfig = Object.assign(meta1.clientTwoWayConfig, meta2.clientTwoWayConfig);
this.serverOneWayConfig = Object.assign(meta1.serverOneWayConfig, meta2.serverOneWayConfig);
this.serverTwoWayConfig = Object.assign(meta1.serverTwoWayConfig, meta2.serverTwoWayConfig);
}
}
exports.DualApi = DualApi;
//# sourceMappingURL=base.js.map