New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

kamboja

Package Overview
Dependencies
Maintainers
1
Versions
120
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

kamboja - npm Package Compare versions

Comparing version 0.0.1-5 to 0.0.1-6

3

lib/dts/core.d.ts

@@ -95,4 +95,5 @@ import { ParentMetaData, MethodMetaData, ClassMetaData } from "kecubung";

identifierResolver?: IdentifierResolver;
validators?: ValidatorCommand[];
validators?: Array<ValidatorCommand | string>;
errorHandler?: (err: HttpError) => void;
getStorage?: () => MetaDataStorage;
}

@@ -99,0 +100,0 @@ export interface MetaDataStorage {

import * as Core from "./core";
export declare class Kamboja {
private engine;
private static facade;
static getFacade(): Core.Facade;
private options;
private log;
private storage;
constructor(engine: Core.Engine, options?: Core.KambojaOption);

@@ -9,0 +8,0 @@ private loadModels();

import * as Core from "../core";
import { JsonActionResult } from "../controller";
import { Validator } from "../validator";
export declare class ApiControllerExecutor implements Core.ExecutorCommand {
private facade;
private validator;
private resolver;
private routeInfo;
private request;
private binder;
constructor(facade: Core.Facade, routeInfo: Core.RouteInfo, request: Core.HttpRequest);
constructor(validator: Validator, resolver: Core.DependencyResolver, routeInfo: Core.RouteInfo, request: Core.HttpRequest);
execute(): Promise<JsonActionResult>;
}
import * as Core from "../core";
import { Validator } from "../validator";
export declare class ControllerExecutor implements Core.ExecutorCommand {
private facade;
private validator;
private resolver;
private routeInfo;
private request;
private binder;
constructor(facade: Core.Facade, routeInfo: Core.RouteInfo, request: Core.HttpRequest);
constructor(validator: Validator, resolver: Core.DependencyResolver, routeInfo: Core.RouteInfo, request: Core.HttpRequest);
execute(): Promise<Core.ActionResult>;
}
import * as Core from "../core";
export declare class RequestHandler {
private facade;
private metaDataStorage;
private resolver;
private validators;
private routeInfo;

@@ -8,4 +10,4 @@ private response;

private controllerCommand;
constructor(facade: Core.Facade, routeInfo: Core.RouteInfo, request: Core.HttpRequest, response: Core.HttpResponse);
constructor(metaDataStorage: Core.MetaDataStorage, resolver: Core.DependencyResolver, validators: Array<Core.ValidatorCommand | string>, routeInfo: Core.RouteInfo, request: Core.HttpRequest, response: Core.HttpResponse);
execute(): Promise<void>;
}

@@ -5,9 +5,10 @@ /// <reference types="node" />

private paths;
private facade;
private idResolver;
private metadataStorage;
private fileReader;
private pathResolver;
private routes;
constructor(paths: string[], facade: Core.Facade, fileReader: (path: string) => Buffer);
constructor(paths: string[], idResolver: Core.IdentifierResolver, metadataStorage: Core.MetaDataStorage, fileReader: (path: string) => Buffer);
private getFiles();
getRoutes(): Core.RouteInfo[];
}
import * as Kecubung from "kecubung";
import * as Core from "../core";
export declare class Validator implements Core.Validator {
private metaDataStorage;
private parameters;
private meta;
private metaDataStorage;
private errors;
private validators;
private errors;
constructor(parameters: any[], meta: Kecubung.MethodMetaData, metaDataStorage: Core.MetaDataStorage, validators: Core.ValidatorCommand[]);
constructor(metaDataStorage: Core.MetaDataStorage, validators: Core.ValidatorCommand[]);
setValue(parameters: any[], meta: Kecubung.MethodMetaData): void;
isValid(): boolean;
getValidationErrors(): Core.ValidationError[];
}

@@ -5,3 +5,2 @@ "use strict";

var resolver_1 = require("./resolver");
var validator_1 = require("./validator");
var route_generator_1 = require("./route-generator");

@@ -15,2 +14,3 @@ var Fs = require("fs");

function Kamboja(engine, options) {
var _this = this;
this.engine = engine;

@@ -28,22 +28,10 @@ this.options = Lodash.assign({

}, options);
var defaultValidators = [
new validator_1.RangeValidator(),
new validator_1.RequiredValidator(),
new validator_1.EmailValidator()
];
if (this.options.validators && this.options.validators.length > 0) {
defaultValidators = defaultValidators.concat(this.options.validators);
}
Kamboja.facade = {
idResolver: this.options.identifierResolver,
metadataStorage: new metadata_storage_1.MetaDataStorage(this.options.identifierResolver),
resolver: this.options.dependencyResolver,
validators: defaultValidators,
this.storage = new metadata_storage_1.MetaDataStorage(this.options.identifierResolver);
this.options.getStorage = function () {
return _this.storage;
};
this.log = new logger_1.Logger(this.options.showConsoleLog ? "Info" : "Error");
}
Kamboja.getFacade = function () {
return Kamboja.facade;
};
Kamboja.prototype.loadModels = function () {
var _this = this;
var pathResolver = new resolver_1.PathResolver();

@@ -60,3 +48,3 @@ var path = pathResolver.resolve(this.options.modelPath);

var meta = Kecubung.transform("ASTree", ast, pathResolver.relative(x));
Kamboja.facade.metadataStorage.save(meta);
_this.options.getStorage().save(meta);
});

@@ -85,3 +73,3 @@ return true;

Kamboja.prototype.generateRoutes = function () {
var route = new route_generator_1.RouteGenerator(this.options.controllerPaths, Kamboja.facade, Fs.readFileSync);
var route = new route_generator_1.RouteGenerator(this.options.controllerPaths, this.options.identifierResolver, this.options.getStorage(), Fs.readFileSync);
var infos = route.getRoutes();

@@ -88,0 +76,0 @@ if (infos.length == 0) {

@@ -5,6 +5,6 @@ "use strict";

var controller_1 = require("../controller");
var validator_1 = require("../validator");
var ApiControllerExecutor = (function () {
function ApiControllerExecutor(facade, routeInfo, request) {
this.facade = facade;
function ApiControllerExecutor(validator, resolver, routeInfo, request) {
this.validator = validator;
this.resolver = resolver;
this.routeInfo = routeInfo;

@@ -20,5 +20,6 @@ this.request = request;

case 0:
controller = this.facade.resolver.resolve(this.routeInfo.classId);
controller = this.resolver.resolve(this.routeInfo.classId);
parameters = this.binder.getParameters();
controller.validator = new validator_1.Validator(parameters, this.routeInfo.methodMetaData, this.facade.metadataStorage, this.facade.validators);
this.validator.setValue(parameters, this.routeInfo.methodMetaData);
controller.validator = this.validator;
method = controller[this.routeInfo.methodMetaData.name];

@@ -25,0 +26,0 @@ methodResult = method.apply(controller, parameters);

"use strict";
var tslib_1 = require("tslib");
var parameter_binder_1 = require("../parameter-binder");
var validator_1 = require("../validator");
var ControllerExecutor = (function () {
function ControllerExecutor(facade, routeInfo, request) {
this.facade = facade;
function ControllerExecutor(validator, resolver, routeInfo, request) {
this.validator = validator;
this.resolver = resolver;
this.routeInfo = routeInfo;

@@ -16,5 +16,6 @@ this.request = request;

return tslib_1.__generator(this, function (_a) {
controller = this.facade.resolver.resolve(this.routeInfo.classId);
controller = this.resolver.resolve(this.routeInfo.classId);
parameters = this.binder.getParameters();
controller.validator = new validator_1.Validator(parameters, this.routeInfo.methodMetaData, this.facade.metadataStorage, this.facade.validators);
this.validator.setValue(parameters, this.routeInfo.methodMetaData);
controller.validator = this.validator;
method = controller[this.routeInfo.methodMetaData.name];

@@ -21,0 +22,0 @@ result = method.apply(controller, parameters);

@@ -6,9 +6,22 @@ "use strict";

var controller_executor_1 = require("./controller-executor");
var validator_1 = require("../validator/validator");
var RequestHandler = (function () {
function RequestHandler(facade, routeInfo, request, response) {
this.facade = facade;
function RequestHandler(metaDataStorage, resolver, validators, routeInfo, request, response) {
this.metaDataStorage = metaDataStorage;
this.resolver = resolver;
this.validators = validators;
this.routeInfo = routeInfo;
this.response = response;
this.apiCommand = new api_controller_executor_1.ApiControllerExecutor(facade, routeInfo, request);
this.controllerCommand = new controller_executor_1.ControllerExecutor(facade, routeInfo, request);
var commands = [];
validators.forEach(function (x) {
if (typeof x == "string") {
var validator_2 = resolver.resolve(x);
commands.push(validator_2);
}
else
commands.push(x);
});
var validator = new validator_1.Validator(metaDataStorage, commands);
this.apiCommand = new api_controller_executor_1.ApiControllerExecutor(validator, resolver, routeInfo, request);
this.controllerCommand = new controller_executor_1.ControllerExecutor(validator, resolver, routeInfo, request);
}

@@ -15,0 +28,0 @@ RequestHandler.prototype.execute = function () {

@@ -9,5 +9,6 @@ "use strict";

var RouteGenerator = (function () {
function RouteGenerator(paths, facade, fileReader) {
function RouteGenerator(paths, idResolver, metadataStorage, fileReader) {
this.paths = paths;
this.facade = facade;
this.idResolver = idResolver;
this.metadataStorage = metadataStorage;
this.fileReader = fileReader;

@@ -46,5 +47,5 @@ this.pathResolver = new path_resolver_1.PathResolver();

var route = infos_1[_a];
route.classId = this.facade.idResolver.getClassId(route.qualifiedClassName);
route.classId = this.idResolver.getClassId(route.qualifiedClassName);
}
this.facade.metadataStorage.save(meta);
this.metadataStorage.save(meta);
routeInfos.push.apply(routeInfos, infos);

@@ -51,0 +52,0 @@ }

"use strict";
var parameter_validator_1 = require("./parameter-validator");
var required_validator_1 = require("./required-validator");
var email_validator_1 = require("./email-validator");
var range_validator_1 = require("./range-validator");
var Validator = (function () {
function Validator(parameters, meta, metaDataStorage, validators) {
this.parameters = parameters;
this.meta = meta;
function Validator(metaDataStorage, validators) {
this.metaDataStorage = metaDataStorage;
this.errors = [];
this.validators = validators;
this.errors = [];
this.validators.push(new email_validator_1.EmailValidator());
this.validators.push(new range_validator_1.RangeValidator());
this.validators.push(new required_validator_1.RequiredValidator());
}
Validator.prototype.setValue = function (parameters, meta) {
this.parameters = parameters;
this.meta = meta;
};
Validator.prototype.isValid = function () {

@@ -12,0 +20,0 @@ var parameterValidator = new parameter_validator_1.ParameterValidator(this.metaDataStorage, this.validators);

{
"name": "kamboja",
"version": "0.0.1-5",
"version": "0.0.1-6",
"description": "MVC Framework powered by TypeScript",

@@ -5,0 +5,0 @@ "main": "lib/source/index.js",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc