@eggjs/controller-decorator
Version:
tegg controller decorator
45 lines • 4.08 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.WebSocketData = WebSocketData;
exports.WebSocketClose = WebSocketClose;
exports.WebSocketError = WebSocketError;
exports.WebSocketCloseCode = WebSocketCloseCode;
exports.WebSocketCloseReason = WebSocketCloseReason;
const node_assert_1 = __importDefault(require("node:assert"));
const tegg_types_1 = require("@eggjs/tegg-types");
const WebSocketInfoUtil_1 = __importDefault(require("../../util/WebSocketInfoUtil"));
function setWebSocketFetchParamType(target, propertyKey, parameterIndex, paramType) {
(0, node_assert_1.default)(typeof propertyKey === 'string', `[controller/${target.name}] expect method name be typeof string, but now is ${String(propertyKey)}`);
const methodName = propertyKey;
const controllerClazz = target.constructor;
WebSocketInfoUtil_1.default.setWebSocketMethodParamType(paramType, parameterIndex, controllerClazz, methodName);
}
function WebSocketData() {
return function (target, propertyKey, parameterIndex) {
setWebSocketFetchParamType(target, propertyKey, parameterIndex, tegg_types_1.WebSocketParamType.DATA);
};
}
function WebSocketClose() {
return function (target, propertyKey, parameterIndex) {
setWebSocketFetchParamType(target, propertyKey, parameterIndex, tegg_types_1.WebSocketParamType.CLOSE);
};
}
function WebSocketError() {
return function (target, propertyKey, parameterIndex) {
setWebSocketFetchParamType(target, propertyKey, parameterIndex, tegg_types_1.WebSocketParamType.ERROR);
};
}
function WebSocketCloseCode() {
return function (target, propertyKey, parameterIndex) {
setWebSocketFetchParamType(target, propertyKey, parameterIndex, tegg_types_1.WebSocketParamType.CLOSE_CODE);
};
}
function WebSocketCloseReason() {
return function (target, propertyKey, parameterIndex) {
setWebSocketFetchParamType(target, propertyKey, parameterIndex, tegg_types_1.WebSocketParamType.CLOSE_REASON);
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2ViU29ja2V0RmV0Y2hQYXJhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kZWNvcmF0b3Ivd2Vic29ja2V0LWZldGNoL1dlYlNvY2tldEZldGNoUGFyYW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFrQkEsc0NBSUM7QUFFRCx3Q0FJQztBQUVELHdDQUlDO0FBRUQsZ0RBSUM7QUFFRCxvREFJQztBQTlDRCw4REFBaUM7QUFDakMsa0RBQXVEO0FBRXZELHFGQUE2RDtBQUU3RCxTQUFTLDBCQUEwQixDQUNqQyxNQUFXLEVBQ1gsV0FBd0IsRUFDeEIsY0FBc0IsRUFDdEIsU0FBNkI7SUFFN0IsSUFBQSxxQkFBTSxFQUFDLE9BQU8sV0FBVyxLQUFLLFFBQVEsRUFDcEMsZUFBZSxNQUFNLENBQUMsSUFBSSxxREFBcUQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN4RyxNQUFNLFVBQVUsR0FBRyxXQUFxQixDQUFDO0lBQ3pDLE1BQU0sZUFBZSxHQUFHLE1BQU0sQ0FBQyxXQUFnQyxDQUFDO0lBQ2hFLDJCQUFpQixDQUFDLDJCQUEyQixDQUFDLFNBQVMsRUFBRSxjQUFjLEVBQUUsZUFBZSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQ3hHLENBQUM7QUFFRCxTQUFnQixhQUFhO0lBQzNCLE9BQU8sVUFBUyxNQUFXLEVBQUUsV0FBd0IsRUFBRSxjQUFzQjtRQUMzRSwwQkFBMEIsQ0FBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSwrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzRixDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBZ0IsY0FBYztJQUM1QixPQUFPLFVBQVMsTUFBVyxFQUFFLFdBQXdCLEVBQUUsY0FBc0I7UUFDM0UsMEJBQTBCLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsK0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUYsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQWdCLGNBQWM7SUFDNUIsT0FBTyxVQUFTLE1BQVcsRUFBRSxXQUF3QixFQUFFLGNBQXNCO1FBQzNFLDBCQUEwQixDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLCtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVGLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFnQixrQkFBa0I7SUFDaEMsT0FBTyxVQUFTLE1BQVcsRUFBRSxXQUF3QixFQUFFLGNBQXNCO1FBQzNFLDBCQUEwQixDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLCtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2pHLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFnQixvQkFBb0I7SUFDbEMsT0FBTyxVQUFTLE1BQVcsRUFBRSxXQUF3QixFQUFFLGNBQXNCO1FBQzNFLDBCQUEwQixDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLCtCQUFrQixDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ25HLENBQUMsQ0FBQztBQUNKLENBQUMifQ==