claire-framework
Version:
- được viết bằng TypeScript - hỗ trợ websocket và HTTP request - hỗ trợ CLI để generate base project (claire-cli)
33 lines • 2.36 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const __1 = require("..");
const core_1 = require("./core");
const errors_1 = require("../system/errors");
const initPrototype = (prototype) => {
if (!prototype[core_1.METADATA]) {
prototype[core_1.METADATA] = {};
}
return prototype[core_1.METADATA];
};
exports.Env = () => {
return (constructor) => {
initPrototype(constructor.prototype);
return constructor;
};
};
exports.Var = () => {
return (prototype, propertyKey) => {
let envVarPrototype = initPrototype(prototype);
let t = Reflect.getMetadata("design:type", prototype, propertyKey);
switch (t.name) {
case "Boolean":
case "Number":
case "String":
envVarPrototype[propertyKey] = t.name;
break;
default:
throw new __1.ClaireError(errors_1.ENV_VAR_TYPE_NOT_SUPPORTED, propertyKey + ":" + t.name);
}
};
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvZGVjb3JhdG9yL2Vudmlyb25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMEJBQStCO0FBQy9CLGlDQUFnQztBQUNoQyw2Q0FBNEQ7QUFFNUQsTUFBTSxhQUFhLEdBQUcsQ0FBQyxTQUFjLEVBQUUsRUFBRTtJQUNyQyxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQVEsQ0FBQyxFQUFFO1FBQ3RCLFNBQVMsQ0FBQyxlQUFRLENBQUMsR0FBRyxFQUFFLENBQUM7S0FDNUI7SUFDRCxPQUFPLFNBQVMsQ0FBQyxlQUFRLENBQUMsQ0FBQztBQUMvQixDQUFDLENBQUM7QUFFVyxRQUFBLEdBQUcsR0FBRyxHQUFHLEVBQUU7SUFDcEIsT0FBTyxDQUF3QyxXQUFjLEVBQUUsRUFBRTtRQUM3RCxhQUFhLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3JDLE9BQU8sV0FBVyxDQUFDO0lBQ3ZCLENBQUMsQ0FBQztBQUNOLENBQUMsQ0FBQztBQUVXLFFBQUEsR0FBRyxHQUFHLEdBQUcsRUFBRTtJQUNwQixPQUFPLENBQUMsU0FBYyxFQUFFLFdBQW1CLEVBQUUsRUFBRTtRQUMzQyxJQUFJLGVBQWUsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ25FLFFBQVEsQ0FBQyxDQUFDLElBQUksRUFBRTtZQUNaLEtBQUssU0FBUyxDQUFDO1lBQ2YsS0FBSyxRQUFRLENBQUM7WUFDZCxLQUFLLFFBQVE7Z0JBQ1QsZUFBZSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQ3RDLE1BQU07WUFDVjtnQkFDSSxNQUFNLElBQUksZUFBVyxDQUFDLG1DQUEwQixFQUFFLFdBQVcsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3JGO0lBQ0wsQ0FBQyxDQUFDO0FBQ04sQ0FBQyxDQUFDIn0=