@spinajs/orm-api 2.0.180 → 2.0.182
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/PlainJsonCollectionTransformer.d.ts +8 -8
- package/lib/cjs/PlainJsonCollectionTransformer.js +29 -29
- package/lib/cjs/PlainJsonCollectionTransformer.js.map +1 -1
- package/lib/cjs/config/orm-api.d.ts +16 -16
- package/lib/cjs/config/orm-api.js +24 -24
- package/lib/cjs/controllers/JsonApi.js +244 -244
- package/lib/cjs/controllers/crud/Create.d.ts +15 -15
- package/lib/cjs/controllers/crud/Create.js +144 -144
- package/lib/cjs/controllers/crud/Create.js.map +1 -1
- package/lib/cjs/controllers/crud/Delete.d.ts +15 -15
- package/lib/cjs/controllers/crud/Delete.js +157 -157
- package/lib/cjs/controllers/crud/Delete.js.map +1 -1
- package/lib/cjs/controllers/crud/Read.d.ts +39 -39
- package/lib/cjs/controllers/crud/Read.js +226 -226
- package/lib/cjs/controllers/crud/Read.js.map +1 -1
- package/lib/cjs/controllers/crud/Update.d.ts +12 -12
- package/lib/cjs/controllers/crud/Update.js +98 -98
- package/lib/cjs/controllers/crud/Update.js.map +1 -1
- package/lib/cjs/dto/QueryArgs.d.ts +8 -8
- package/lib/cjs/dto/QueryArgs.js +27 -27
- package/lib/cjs/dto/QueryArgs.js.map +1 -1
- package/lib/cjs/dto/QueryFilter.d.ts +5 -5
- package/lib/cjs/dto/QueryFilter.js +30 -30
- package/lib/cjs/dto/QueryFilter.js.map +1 -1
- package/lib/cjs/dto/QueryIncludes.d.ts +4 -4
- package/lib/cjs/dto/QueryIncludes.js +30 -30
- package/lib/cjs/dto/QueryIncludes.js.map +1 -1
- package/lib/cjs/hydrators/QueryFilterHydrator.d.ts +4 -4
- package/lib/cjs/hydrators/QueryFilterHydrator.js +14 -14
- package/lib/cjs/hydrators/QueryIncludesHydrator.d.ts +4 -4
- package/lib/cjs/hydrators/QueryIncludesHydrator.js +20 -20
- package/lib/cjs/index.d.ts +28 -28
- package/lib/cjs/index.js +100 -100
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/interfaces.d.ts +41 -41
- package/lib/cjs/interfaces.js +49 -49
- package/lib/cjs/interfaces.js.map +1 -1
- package/lib/cjs/middleware.d.ts +21 -21
- package/lib/cjs/middleware.js +30 -30
- package/lib/cjs/policies/FindModelType.d.ts +7 -7
- package/lib/cjs/policies/FindModelType.js +42 -42
- package/lib/cjs/policies/FindModelType.js.map +1 -1
- package/lib/cjs/route-args/ModelType.d.ts +12 -12
- package/lib/cjs/route-args/ModelType.js +38 -38
- package/lib/cjs/route-args/ModelType.js.map +1 -1
- package/lib/cjs/schemas/QueryArgs.schema.d.ts +19 -19
- package/lib/cjs/schemas/QueryArgs.schema.js +12 -12
- package/lib/cjs/schemas/QueryFilter.schema.d.ts +20 -20
- package/lib/cjs/schemas/QueryFilter.schema.js +15 -15
- package/lib/cjs/schemas/QueryIncludes.schema.d.ts +7 -7
- package/lib/cjs/schemas/QueryIncludes.schema.js +9 -9
- package/lib/mjs/PlainJsonCollectionTransformer.d.ts +8 -8
- package/lib/mjs/PlainJsonCollectionTransformer.js +26 -26
- package/lib/mjs/PlainJsonCollectionTransformer.js.map +1 -1
- package/lib/mjs/config/orm-api.d.ts +16 -16
- package/lib/mjs/config/orm-api.js +22 -22
- package/lib/mjs/controllers/JsonApi.d.ts +1 -1
- package/lib/mjs/controllers/JsonApi.js +245 -245
- package/lib/mjs/controllers/crud/Create.d.ts +15 -15
- package/lib/mjs/controllers/crud/Create.js +138 -138
- package/lib/mjs/controllers/crud/Create.js.map +1 -1
- package/lib/mjs/controllers/crud/Crud.d.ts +1 -1
- package/lib/mjs/controllers/crud/Crud.js +1 -1
- package/lib/mjs/controllers/crud/Delete.d.ts +15 -15
- package/lib/mjs/controllers/crud/Delete.js +154 -154
- package/lib/mjs/controllers/crud/Delete.js.map +1 -1
- package/lib/mjs/controllers/crud/Read.d.ts +39 -39
- package/lib/mjs/controllers/crud/Read.js +223 -223
- package/lib/mjs/controllers/crud/Read.js.map +1 -1
- package/lib/mjs/controllers/crud/Update.d.ts +12 -12
- package/lib/mjs/controllers/crud/Update.js +95 -95
- package/lib/mjs/controllers/crud/Update.js.map +1 -1
- package/lib/mjs/dto/QueryArgs.d.ts +8 -8
- package/lib/mjs/dto/QueryArgs.js +21 -21
- package/lib/mjs/dto/QueryArgs.js.map +1 -1
- package/lib/mjs/dto/QueryFilter.d.ts +5 -5
- package/lib/mjs/dto/QueryFilter.js +24 -24
- package/lib/mjs/dto/QueryFilter.js.map +1 -1
- package/lib/mjs/dto/QueryIncludes.d.ts +4 -4
- package/lib/mjs/dto/QueryIncludes.js +24 -24
- package/lib/mjs/dto/QueryIncludes.js.map +1 -1
- package/lib/mjs/hydrators/QueryFilterHydrator.d.ts +4 -4
- package/lib/mjs/hydrators/QueryFilterHydrator.js +10 -10
- package/lib/mjs/hydrators/QueryIncludesHydrator.d.ts +4 -4
- package/lib/mjs/hydrators/QueryIncludesHydrator.js +13 -13
- package/lib/mjs/index.d.ts +28 -28
- package/lib/mjs/index.js +94 -94
- package/lib/mjs/index.js.map +1 -1
- package/lib/mjs/interfaces.d.ts +41 -41
- package/lib/mjs/interfaces.js +44 -44
- package/lib/mjs/interfaces.js.map +1 -1
- package/lib/mjs/middleware.d.ts +21 -21
- package/lib/mjs/middleware.js +26 -26
- package/lib/mjs/policies/FindModelType.d.ts +7 -7
- package/lib/mjs/policies/FindModelType.js +39 -39
- package/lib/mjs/policies/FindModelType.js.map +1 -1
- package/lib/mjs/route-args/ModelType.d.ts +12 -12
- package/lib/mjs/route-args/ModelType.js +34 -34
- package/lib/mjs/route-args/ModelType.js.map +1 -1
- package/lib/mjs/schemas/QueryArgs.schema.d.ts +19 -19
- package/lib/mjs/schemas/QueryArgs.schema.js +10 -10
- package/lib/mjs/schemas/QueryFilter.schema.d.ts +20 -20
- package/lib/mjs/schemas/QueryFilter.schema.js +13 -13
- package/lib/mjs/schemas/QueryIncludes.schema.d.ts +7 -7
- package/lib/mjs/schemas/QueryIncludes.schema.js +7 -7
- package/lib/tsconfig.cjs.tsbuildinfo +1 -1
- package/lib/tsconfig.mjs.tsbuildinfo +1 -1
- package/package.json +12 -12
package/lib/cjs/index.js
CHANGED
|
@@ -1,101 +1,101 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.OrmHttpBootstrapper = exports.FromModel = exports.AsModel = exports.DbModelHydrator = exports.FromDbModel = exports.AsDbModel = void 0;
|
|
13
|
-
const orm_1 = require("@spinajs/orm");
|
|
14
|
-
const http_1 = require("@spinajs/http");
|
|
15
|
-
const di_1 = require("@spinajs/di");
|
|
16
|
-
let AsDbModel = class AsDbModel extends http_1.RouteArgs {
|
|
17
|
-
get SupportedType() {
|
|
18
|
-
return 'AsDbModel';
|
|
19
|
-
}
|
|
20
|
-
async extract(callData, param, req) {
|
|
21
|
-
const result = new param.RuntimeType();
|
|
22
|
-
result.hydrate(req.body[param.Options.field ?? param.Name]);
|
|
23
|
-
return { CallData: callData, Args: result };
|
|
24
|
-
}
|
|
25
|
-
};
|
|
26
|
-
AsDbModel =
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
let FromDbModel = class FromDbModel extends http_1.RouteArgs {
|
|
31
|
-
async resolve() { }
|
|
32
|
-
get SupportedType() {
|
|
33
|
-
return 'FromDB';
|
|
34
|
-
}
|
|
35
|
-
async extract(callData, param, req) {
|
|
36
|
-
let p = null;
|
|
37
|
-
switch (param.Options.type) {
|
|
38
|
-
case http_1.ParameterType.FromQuery:
|
|
39
|
-
p = req.query[param.Options.field ?? param.Name];
|
|
40
|
-
break;
|
|
41
|
-
case http_1.ParameterType.FromBody:
|
|
42
|
-
p = req.body[param.Options.field ?? param.Name];
|
|
43
|
-
break;
|
|
44
|
-
case http_1.ParameterType.FromHeader:
|
|
45
|
-
p = req.headers[param.Options.field ?? param.Name.toLowerCase()];
|
|
46
|
-
break;
|
|
47
|
-
case http_1.ParameterType.FromParams:
|
|
48
|
-
default:
|
|
49
|
-
p = req.params[param.Options.field ?? param.Name];
|
|
50
|
-
break;
|
|
51
|
-
}
|
|
52
|
-
const result = await param.RuntimeType['getOrFail'](p);
|
|
53
|
-
return { CallData: callData, Args: result };
|
|
54
|
-
}
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
FromDbModel
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
class DbModelHydrator extends http_1.ArgHydrator {
|
|
69
|
-
async hydrate(input, parameter) {
|
|
70
|
-
if (input === null) {
|
|
71
|
-
throw new orm_1.OrmException('primary key cannot be null');
|
|
72
|
-
}
|
|
73
|
-
const model = new parameter.RuntimeType();
|
|
74
|
-
model.hydrate(input);
|
|
75
|
-
return model;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
exports.DbModelHydrator = DbModelHydrator;
|
|
79
|
-
function AsModel(field, type) {
|
|
80
|
-
return (0, http_1.Route)((0, http_1.Parameter)('AsDbModel', null, { field, type }));
|
|
81
|
-
}
|
|
82
|
-
exports.AsModel = AsModel;
|
|
83
|
-
function FromModel(field, type) {
|
|
84
|
-
return (0, http_1.Route)((0, http_1.Parameter)('FromDbModel', null, { field, type }));
|
|
85
|
-
}
|
|
86
|
-
exports.FromModel = FromModel;
|
|
87
|
-
let OrmHttpBootstrapper = class OrmHttpBootstrapper extends di_1.Bootstrapper {
|
|
88
|
-
async bootstrap() {
|
|
89
|
-
di_1.DI.once('di.resolved.Orm', (_, orm) => {
|
|
90
|
-
// set default route parameter hydrator for all loaded models
|
|
91
|
-
orm.Models.forEach((m) => {
|
|
92
|
-
Reflect.defineMetadata('custom:arg_hydrator', { hydrator: DbModelHydrator }, m.type);
|
|
93
|
-
});
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
};
|
|
97
|
-
OrmHttpBootstrapper =
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.OrmHttpBootstrapper = exports.FromModel = exports.AsModel = exports.DbModelHydrator = exports.FromDbModel = exports.AsDbModel = void 0;
|
|
13
|
+
const orm_1 = require("@spinajs/orm");
|
|
14
|
+
const http_1 = require("@spinajs/http");
|
|
15
|
+
const di_1 = require("@spinajs/di");
|
|
16
|
+
let AsDbModel = class AsDbModel extends http_1.RouteArgs {
|
|
17
|
+
get SupportedType() {
|
|
18
|
+
return 'AsDbModel';
|
|
19
|
+
}
|
|
20
|
+
async extract(callData, param, req) {
|
|
21
|
+
const result = new param.RuntimeType();
|
|
22
|
+
result.hydrate(req.body[param.Options.field ?? param.Name]);
|
|
23
|
+
return { CallData: callData, Args: result };
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
exports.AsDbModel = AsDbModel;
|
|
27
|
+
exports.AsDbModel = AsDbModel = __decorate([
|
|
28
|
+
(0, di_1.Injectable)()
|
|
29
|
+
], AsDbModel);
|
|
30
|
+
let FromDbModel = class FromDbModel extends http_1.RouteArgs {
|
|
31
|
+
async resolve() { }
|
|
32
|
+
get SupportedType() {
|
|
33
|
+
return 'FromDB';
|
|
34
|
+
}
|
|
35
|
+
async extract(callData, param, req) {
|
|
36
|
+
let p = null;
|
|
37
|
+
switch (param.Options.type) {
|
|
38
|
+
case http_1.ParameterType.FromQuery:
|
|
39
|
+
p = req.query[param.Options.field ?? param.Name];
|
|
40
|
+
break;
|
|
41
|
+
case http_1.ParameterType.FromBody:
|
|
42
|
+
p = req.body[param.Options.field ?? param.Name];
|
|
43
|
+
break;
|
|
44
|
+
case http_1.ParameterType.FromHeader:
|
|
45
|
+
p = req.headers[param.Options.field ?? param.Name.toLowerCase()];
|
|
46
|
+
break;
|
|
47
|
+
case http_1.ParameterType.FromParams:
|
|
48
|
+
default:
|
|
49
|
+
p = req.params[param.Options.field ?? param.Name];
|
|
50
|
+
break;
|
|
51
|
+
}
|
|
52
|
+
const result = await param.RuntimeType['getOrFail'](p);
|
|
53
|
+
return { CallData: callData, Args: result };
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
exports.FromDbModel = FromDbModel;
|
|
57
|
+
__decorate([
|
|
58
|
+
(0, di_1.Autoinject)(di_1.Container),
|
|
59
|
+
__metadata("design:type", Object)
|
|
60
|
+
], FromDbModel.prototype, "Container", void 0);
|
|
61
|
+
__decorate([
|
|
62
|
+
(0, di_1.Autoinject)(orm_1.Orm),
|
|
63
|
+
__metadata("design:type", orm_1.Orm)
|
|
64
|
+
], FromDbModel.prototype, "Orm", void 0);
|
|
65
|
+
exports.FromDbModel = FromDbModel = __decorate([
|
|
66
|
+
(0, di_1.Injectable)()
|
|
67
|
+
], FromDbModel);
|
|
68
|
+
class DbModelHydrator extends http_1.ArgHydrator {
|
|
69
|
+
async hydrate(input, parameter) {
|
|
70
|
+
if (input === null) {
|
|
71
|
+
throw new orm_1.OrmException('primary key cannot be null');
|
|
72
|
+
}
|
|
73
|
+
const model = new parameter.RuntimeType();
|
|
74
|
+
model.hydrate(input);
|
|
75
|
+
return model;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
exports.DbModelHydrator = DbModelHydrator;
|
|
79
|
+
function AsModel(field, type) {
|
|
80
|
+
return (0, http_1.Route)((0, http_1.Parameter)('AsDbModel', null, { field, type }));
|
|
81
|
+
}
|
|
82
|
+
exports.AsModel = AsModel;
|
|
83
|
+
function FromModel(field, type) {
|
|
84
|
+
return (0, http_1.Route)((0, http_1.Parameter)('FromDbModel', null, { field, type }));
|
|
85
|
+
}
|
|
86
|
+
exports.FromModel = FromModel;
|
|
87
|
+
let OrmHttpBootstrapper = class OrmHttpBootstrapper extends di_1.Bootstrapper {
|
|
88
|
+
async bootstrap() {
|
|
89
|
+
di_1.DI.once('di.resolved.Orm', (_, orm) => {
|
|
90
|
+
// set default route parameter hydrator for all loaded models
|
|
91
|
+
orm.Models.forEach((m) => {
|
|
92
|
+
Reflect.defineMetadata('custom:arg_hydrator', { hydrator: DbModelHydrator }, m.type);
|
|
93
|
+
});
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
exports.OrmHttpBootstrapper = OrmHttpBootstrapper;
|
|
98
|
+
exports.OrmHttpBootstrapper = OrmHttpBootstrapper = __decorate([
|
|
99
|
+
(0, di_1.Injectable)(di_1.Bootstrapper)
|
|
100
|
+
], OrmHttpBootstrapper);
|
|
101
101
|
//# sourceMappingURL=index.js.map
|
package/lib/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sCAA4D;AAC5D,wCAA0I;AAC1I,oCAA8F;AAGvF,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,gBAAS;IACtC,IAAW,aAAa;QACtB,OAAO,WAAW,CAAC;IACrB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,QAAoB,EAAE,KAAsB,EAAE,GAAa;QAC9E,MAAM,MAAM,GAAG,IAAI,KAAK,CAAC,WAAW,EAAe,CAAC;QACpD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC9C,CAAC;CACF,CAAA;AAVY,SAAS;IADrB,IAAA,eAAU,GAAE;GACA,SAAS,CAUrB;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/interfaces.d.ts
CHANGED
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
import { Class } from '@spinajs/di';
|
|
2
|
-
import { ModelBase, SortOrder, IModelStatic, IOrmRelation, SelectQueryBuilder } from '@spinajs/orm';
|
|
3
|
-
import { BaseController } from '@spinajs/http';
|
|
4
|
-
export declare class JsonApiIncomingObject {
|
|
5
|
-
data: {
|
|
6
|
-
type: string;
|
|
7
|
-
id: string;
|
|
8
|
-
attributes: any;
|
|
9
|
-
relationships: any;
|
|
10
|
-
};
|
|
11
|
-
constructor(data: any);
|
|
12
|
-
}
|
|
13
|
-
export interface ITransformOptions {
|
|
14
|
-
totalCount?: number;
|
|
15
|
-
currentPage?: number;
|
|
16
|
-
order?: SortOrder;
|
|
17
|
-
orderBy?: string;
|
|
18
|
-
perPage?: number;
|
|
19
|
-
model: Class<ModelBase<unknown>>;
|
|
20
|
-
}
|
|
21
|
-
export interface IQueryFilterEntry {
|
|
22
|
-
val: string;
|
|
23
|
-
op?: string;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Data collection transformer. Used to transform collection of models to specific api format eg. json api
|
|
27
|
-
* By default transforms to simple json representation
|
|
28
|
-
*/
|
|
29
|
-
export declare abstract class CollectionApiTransformer {
|
|
30
|
-
abstract transform(data: ModelBase<unknown>[] | ModelBase<unknown>, options?: ITransformOptions): unknown;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Base class for crud operations. Provides helper functions
|
|
34
|
-
*/
|
|
35
|
-
export declare abstract class Crud extends BaseController {
|
|
36
|
-
protected prepareQuery(model: IModelStatic, relation: string, id: any, callback: (this: SelectQueryBuilder<SelectQueryBuilder<any>>, relation: IOrmRelation) => void): {
|
|
37
|
-
relation: any;
|
|
38
|
-
relationModel: any;
|
|
39
|
-
query: import("@spinajs/orm").ISelectQueryBuilder<ModelBase<unknown>[]>;
|
|
40
|
-
};
|
|
41
|
-
}
|
|
1
|
+
import { Class } from '@spinajs/di';
|
|
2
|
+
import { ModelBase, SortOrder, IModelStatic, IOrmRelation, SelectQueryBuilder } from '@spinajs/orm';
|
|
3
|
+
import { BaseController } from '@spinajs/http';
|
|
4
|
+
export declare class JsonApiIncomingObject {
|
|
5
|
+
data: {
|
|
6
|
+
type: string;
|
|
7
|
+
id: string;
|
|
8
|
+
attributes: any;
|
|
9
|
+
relationships: any;
|
|
10
|
+
};
|
|
11
|
+
constructor(data: any);
|
|
12
|
+
}
|
|
13
|
+
export interface ITransformOptions {
|
|
14
|
+
totalCount?: number;
|
|
15
|
+
currentPage?: number;
|
|
16
|
+
order?: SortOrder;
|
|
17
|
+
orderBy?: string;
|
|
18
|
+
perPage?: number;
|
|
19
|
+
model: Class<ModelBase<unknown>>;
|
|
20
|
+
}
|
|
21
|
+
export interface IQueryFilterEntry {
|
|
22
|
+
val: string;
|
|
23
|
+
op?: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Data collection transformer. Used to transform collection of models to specific api format eg. json api
|
|
27
|
+
* By default transforms to simple json representation
|
|
28
|
+
*/
|
|
29
|
+
export declare abstract class CollectionApiTransformer {
|
|
30
|
+
abstract transform(data: ModelBase<unknown>[] | ModelBase<unknown>, options?: ITransformOptions): unknown;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Base class for crud operations. Provides helper functions
|
|
34
|
+
*/
|
|
35
|
+
export declare abstract class Crud extends BaseController {
|
|
36
|
+
protected prepareQuery(model: IModelStatic, relation: string, id: any, callback: (this: SelectQueryBuilder<SelectQueryBuilder<any>>, relation: IOrmRelation) => void): {
|
|
37
|
+
relation: any;
|
|
38
|
+
relationModel: any;
|
|
39
|
+
query: import("@spinajs/orm").ISelectQueryBuilder<ModelBase<unknown>[]>;
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
42
|
//# sourceMappingURL=interfaces.d.ts.map
|
package/lib/cjs/interfaces.js
CHANGED
|
@@ -1,50 +1,50 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.Crud = exports.CollectionApiTransformer = exports.JsonApiIncomingObject = void 0;
|
|
13
|
-
const validation_1 = require("@spinajs/validation");
|
|
14
|
-
const http_1 = require("@spinajs/http");
|
|
15
|
-
let JsonApiIncomingObject = class JsonApiIncomingObject {
|
|
16
|
-
constructor(data) {
|
|
17
|
-
this.data = null;
|
|
18
|
-
Object.assign(this, data);
|
|
19
|
-
}
|
|
20
|
-
};
|
|
21
|
-
JsonApiIncomingObject =
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* Data collection transformer. Used to transform collection of models to specific api format eg. json api
|
|
28
|
-
* By default transforms to simple json representation
|
|
29
|
-
*/
|
|
30
|
-
class CollectionApiTransformer {
|
|
31
|
-
}
|
|
32
|
-
exports.CollectionApiTransformer = CollectionApiTransformer;
|
|
33
|
-
/**
|
|
34
|
-
* Base class for crud operations. Provides helper functions
|
|
35
|
-
*/
|
|
36
|
-
class Crud extends http_1.BaseController {
|
|
37
|
-
prepareQuery(model, relation, id, callback) {
|
|
38
|
-
const descriptor = this.getModelDescriptor(model);
|
|
39
|
-
const rDescriptor = this.getRelationDescriptor(model, relation);
|
|
40
|
-
const tDescriptor = this.getModelDescriptor(rDescriptor.TargetModel);
|
|
41
|
-
const sQuery = model.query().where(descriptor.PrimaryKey, id).populate(relation, callback);
|
|
42
|
-
return {
|
|
43
|
-
relation: rDescriptor,
|
|
44
|
-
relationModel: tDescriptor,
|
|
45
|
-
query: sQuery,
|
|
46
|
-
};
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
exports.Crud = Crud;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.Crud = exports.CollectionApiTransformer = exports.JsonApiIncomingObject = void 0;
|
|
13
|
+
const validation_1 = require("@spinajs/validation");
|
|
14
|
+
const http_1 = require("@spinajs/http");
|
|
15
|
+
let JsonApiIncomingObject = class JsonApiIncomingObject {
|
|
16
|
+
constructor(data) {
|
|
17
|
+
this.data = null;
|
|
18
|
+
Object.assign(this, data);
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
exports.JsonApiIncomingObject = JsonApiIncomingObject;
|
|
22
|
+
exports.JsonApiIncomingObject = JsonApiIncomingObject = __decorate([
|
|
23
|
+
(0, validation_1.Schema)('http://json-schema.org/draft-07/schema#'),
|
|
24
|
+
__metadata("design:paramtypes", [Object])
|
|
25
|
+
], JsonApiIncomingObject);
|
|
26
|
+
/**
|
|
27
|
+
* Data collection transformer. Used to transform collection of models to specific api format eg. json api
|
|
28
|
+
* By default transforms to simple json representation
|
|
29
|
+
*/
|
|
30
|
+
class CollectionApiTransformer {
|
|
31
|
+
}
|
|
32
|
+
exports.CollectionApiTransformer = CollectionApiTransformer;
|
|
33
|
+
/**
|
|
34
|
+
* Base class for crud operations. Provides helper functions
|
|
35
|
+
*/
|
|
36
|
+
class Crud extends http_1.BaseController {
|
|
37
|
+
prepareQuery(model, relation, id, callback) {
|
|
38
|
+
const descriptor = this.getModelDescriptor(model);
|
|
39
|
+
const rDescriptor = this.getRelationDescriptor(model, relation);
|
|
40
|
+
const tDescriptor = this.getModelDescriptor(rDescriptor.TargetModel);
|
|
41
|
+
const sQuery = model.query().where(descriptor.PrimaryKey, id).populate(relation, callback);
|
|
42
|
+
return {
|
|
43
|
+
relation: rDescriptor,
|
|
44
|
+
relationModel: tDescriptor,
|
|
45
|
+
query: sQuery,
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
exports.Crud = Crud;
|
|
50
50
|
//# sourceMappingURL=interfaces.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,oDAA6C;AAC7C,wCAA+C;AAKxC,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAQhC,YAAY,IAAS;QAPd,SAAI,GAKP,IAAI,CAAC;QAGP,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5B,CAAC;CACF,CAAA;AAXY,qBAAqB;IADjC,IAAA,mBAAM,EAAC,yCAAyC,CAAC;;GACrC,qBAAqB,CAWjC;
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,oDAA6C;AAC7C,wCAA+C;AAKxC,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAQhC,YAAY,IAAS;QAPd,SAAI,GAKP,IAAI,CAAC;QAGP,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5B,CAAC;CACF,CAAA;AAXY,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,mBAAM,EAAC,yCAAyC,CAAC;;GACrC,qBAAqB,CAWjC;AAgBD;;;GAGG;AACH,MAAsB,wBAAwB;CAE7C;AAFD,4DAEC;AAGD;;GAEG;AACH,MAAsB,IAAK,SAAQ,qBAAc;IACrC,YAAY,CAAC,KAAmB,EAAE,QAAgB,EAAE,EAAO,EAAE,QAA6F;QAClK,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAChE,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAE3F,OAAO;YACL,QAAQ,EAAE,WAAW;YACrB,aAAa,EAAE,WAAW;YAC1B,KAAK,EAAE,MAAM;SACd,CAAC;IACJ,CAAC;CACF;AAbD,oBAaC"}
|
package/lib/cjs/middleware.d.ts
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { AsyncService, Constructor } from '@spinajs/di';
|
|
2
|
-
import { DeleteQueryBuilder, InsertQueryBuilder, ModelBase, SelectQueryBuilder, UpdateQueryBuilder } from '@spinajs/orm';
|
|
3
|
-
import * as express from 'express';
|
|
4
|
-
import { JsonApiIncomingObject } from './interfaces.js';
|
|
5
|
-
export declare abstract class RepositoryMiddleware extends AsyncService {
|
|
6
|
-
onGetMiddlewareStart(_resource: any, _req: express.Request): Promise<void>;
|
|
7
|
-
onGetAllMiddlewareStart(_req: express.Request): Promise<void>;
|
|
8
|
-
onUpdateMiddlewareStart(_resource: any, _data: JsonApiIncomingObject, _req: express.Request): Promise<void>;
|
|
9
|
-
onInsertMiddlewareStart(_data: JsonApiIncomingObject, _req: express.Request): Promise<void>;
|
|
10
|
-
onDeleteMiddlewareStart(_resource: any, _req: express.Request): Promise<void>;
|
|
11
|
-
onGetMiddlewareQuery(_query: SelectQueryBuilder<any>, _model: Constructor<ModelBase>, _req: express.Request): void;
|
|
12
|
-
onGetAllMiddlewareQuery(_query: SelectQueryBuilder<any>, _model: Constructor<ModelBase>, _req: express.Request): void;
|
|
13
|
-
onUpdateMiddlewareQuery(_resource: any, _query: UpdateQueryBuilder<any>, _model: Constructor<ModelBase>, _req: express.Request): void;
|
|
14
|
-
onInsertMiddlewareQuery(_query: InsertQueryBuilder, _model: Constructor<ModelBase>, _req: express.Request): void;
|
|
15
|
-
onDeleteMiddlewareQuery(_query: DeleteQueryBuilder<any>, _model: Constructor<ModelBase>, _req: express.Request): void;
|
|
16
|
-
onGetMiddlewareResult(jsonData: any, _req: express.Request): any;
|
|
17
|
-
onGetAllMiddlewareResult(jsonData: any, _req: express.Request): any;
|
|
18
|
-
onInsertMiddlewareResult(jsonData: any, _req: express.Request): any;
|
|
19
|
-
onUpdateMiddlewareResult(jsonData: any, _req: express.Request): any;
|
|
20
|
-
onDeleteMiddlewareResult(_req: express.Request): void;
|
|
21
|
-
}
|
|
1
|
+
import { AsyncService, Constructor } from '@spinajs/di';
|
|
2
|
+
import { DeleteQueryBuilder, InsertQueryBuilder, ModelBase, SelectQueryBuilder, UpdateQueryBuilder } from '@spinajs/orm';
|
|
3
|
+
import * as express from 'express';
|
|
4
|
+
import { JsonApiIncomingObject } from './interfaces.js';
|
|
5
|
+
export declare abstract class RepositoryMiddleware extends AsyncService {
|
|
6
|
+
onGetMiddlewareStart(_resource: any, _req: express.Request): Promise<void>;
|
|
7
|
+
onGetAllMiddlewareStart(_req: express.Request): Promise<void>;
|
|
8
|
+
onUpdateMiddlewareStart(_resource: any, _data: JsonApiIncomingObject, _req: express.Request): Promise<void>;
|
|
9
|
+
onInsertMiddlewareStart(_data: JsonApiIncomingObject, _req: express.Request): Promise<void>;
|
|
10
|
+
onDeleteMiddlewareStart(_resource: any, _req: express.Request): Promise<void>;
|
|
11
|
+
onGetMiddlewareQuery(_query: SelectQueryBuilder<any>, _model: Constructor<ModelBase>, _req: express.Request): void;
|
|
12
|
+
onGetAllMiddlewareQuery(_query: SelectQueryBuilder<any>, _model: Constructor<ModelBase>, _req: express.Request): void;
|
|
13
|
+
onUpdateMiddlewareQuery(_resource: any, _query: UpdateQueryBuilder<any>, _model: Constructor<ModelBase>, _req: express.Request): void;
|
|
14
|
+
onInsertMiddlewareQuery(_query: InsertQueryBuilder, _model: Constructor<ModelBase>, _req: express.Request): void;
|
|
15
|
+
onDeleteMiddlewareQuery(_query: DeleteQueryBuilder<any>, _model: Constructor<ModelBase>, _req: express.Request): void;
|
|
16
|
+
onGetMiddlewareResult(jsonData: any, _req: express.Request): any;
|
|
17
|
+
onGetAllMiddlewareResult(jsonData: any, _req: express.Request): any;
|
|
18
|
+
onInsertMiddlewareResult(jsonData: any, _req: express.Request): any;
|
|
19
|
+
onUpdateMiddlewareResult(jsonData: any, _req: express.Request): any;
|
|
20
|
+
onDeleteMiddlewareResult(_req: express.Request): void;
|
|
21
|
+
}
|
|
22
22
|
//# sourceMappingURL=middleware.d.ts.map
|
package/lib/cjs/middleware.js
CHANGED
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RepositoryMiddleware = void 0;
|
|
4
|
-
const di_1 = require("@spinajs/di");
|
|
5
|
-
class RepositoryMiddleware extends di_1.AsyncService {
|
|
6
|
-
async onGetMiddlewareStart(_resource, _req) { }
|
|
7
|
-
async onGetAllMiddlewareStart(_req) { }
|
|
8
|
-
async onUpdateMiddlewareStart(_resource, _data, _req) { }
|
|
9
|
-
async onInsertMiddlewareStart(_data, _req) { }
|
|
10
|
-
async onDeleteMiddlewareStart(_resource, _req) { }
|
|
11
|
-
onGetMiddlewareQuery(_query, _model, _req) { }
|
|
12
|
-
onGetAllMiddlewareQuery(_query, _model, _req) { }
|
|
13
|
-
onUpdateMiddlewareQuery(_resource, _query, _model, _req) { }
|
|
14
|
-
onInsertMiddlewareQuery(_query, _model, _req) { }
|
|
15
|
-
onDeleteMiddlewareQuery(_query, _model, _req) { }
|
|
16
|
-
onGetMiddlewareResult(jsonData, _req) {
|
|
17
|
-
return jsonData;
|
|
18
|
-
}
|
|
19
|
-
onGetAllMiddlewareResult(jsonData, _req) {
|
|
20
|
-
return jsonData;
|
|
21
|
-
}
|
|
22
|
-
onInsertMiddlewareResult(jsonData, _req) {
|
|
23
|
-
return jsonData;
|
|
24
|
-
}
|
|
25
|
-
onUpdateMiddlewareResult(jsonData, _req) {
|
|
26
|
-
return jsonData;
|
|
27
|
-
}
|
|
28
|
-
onDeleteMiddlewareResult(_req) { }
|
|
29
|
-
}
|
|
30
|
-
exports.RepositoryMiddleware = RepositoryMiddleware;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RepositoryMiddleware = void 0;
|
|
4
|
+
const di_1 = require("@spinajs/di");
|
|
5
|
+
class RepositoryMiddleware extends di_1.AsyncService {
|
|
6
|
+
async onGetMiddlewareStart(_resource, _req) { }
|
|
7
|
+
async onGetAllMiddlewareStart(_req) { }
|
|
8
|
+
async onUpdateMiddlewareStart(_resource, _data, _req) { }
|
|
9
|
+
async onInsertMiddlewareStart(_data, _req) { }
|
|
10
|
+
async onDeleteMiddlewareStart(_resource, _req) { }
|
|
11
|
+
onGetMiddlewareQuery(_query, _model, _req) { }
|
|
12
|
+
onGetAllMiddlewareQuery(_query, _model, _req) { }
|
|
13
|
+
onUpdateMiddlewareQuery(_resource, _query, _model, _req) { }
|
|
14
|
+
onInsertMiddlewareQuery(_query, _model, _req) { }
|
|
15
|
+
onDeleteMiddlewareQuery(_query, _model, _req) { }
|
|
16
|
+
onGetMiddlewareResult(jsonData, _req) {
|
|
17
|
+
return jsonData;
|
|
18
|
+
}
|
|
19
|
+
onGetAllMiddlewareResult(jsonData, _req) {
|
|
20
|
+
return jsonData;
|
|
21
|
+
}
|
|
22
|
+
onInsertMiddlewareResult(jsonData, _req) {
|
|
23
|
+
return jsonData;
|
|
24
|
+
}
|
|
25
|
+
onUpdateMiddlewareResult(jsonData, _req) {
|
|
26
|
+
return jsonData;
|
|
27
|
+
}
|
|
28
|
+
onDeleteMiddlewareResult(_req) { }
|
|
29
|
+
}
|
|
30
|
+
exports.RepositoryMiddleware = RepositoryMiddleware;
|
|
31
31
|
//# sourceMappingURL=middleware.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Orm } from '@spinajs/orm';
|
|
2
|
-
import { BasePolicy, Request as sRequest } from '@spinajs/http';
|
|
3
|
-
export declare class FindModelType extends BasePolicy {
|
|
4
|
-
protected Orm: Orm;
|
|
5
|
-
isEnabled(): boolean;
|
|
6
|
-
execute(req: sRequest): Promise<void>;
|
|
7
|
-
}
|
|
1
|
+
import { Orm } from '@spinajs/orm';
|
|
2
|
+
import { BasePolicy, Request as sRequest } from '@spinajs/http';
|
|
3
|
+
export declare class FindModelType extends BasePolicy {
|
|
4
|
+
protected Orm: Orm;
|
|
5
|
+
isEnabled(): boolean;
|
|
6
|
+
execute(req: sRequest): Promise<void>;
|
|
7
|
+
}
|
|
8
8
|
//# sourceMappingURL=FindModelType.d.ts.map
|
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.FindModelType = void 0;
|
|
13
|
-
const orm_1 = require("@spinajs/orm");
|
|
14
|
-
const di_1 = require("@spinajs/di");
|
|
15
|
-
const http_1 = require("@spinajs/http");
|
|
16
|
-
const exceptions_1 = require("@spinajs/exceptions");
|
|
17
|
-
let FindModelType = class FindModelType extends http_1.BasePolicy {
|
|
18
|
-
isEnabled() {
|
|
19
|
-
return true;
|
|
20
|
-
}
|
|
21
|
-
execute(req) {
|
|
22
|
-
if (!req.params) {
|
|
23
|
-
throw new exceptions_1.InvalidOperation(`Invalid query parameters`);
|
|
24
|
-
}
|
|
25
|
-
if (!req.params.model) {
|
|
26
|
-
throw new exceptions_1.InvalidOperation(`Invalid query parameters, 'model' is required`);
|
|
27
|
-
}
|
|
28
|
-
const mClass = this.Orm.Models.find((x) => x.name.toLowerCase() === req.params.model.trim().toLowerCase());
|
|
29
|
-
if (!mClass) {
|
|
30
|
-
throw new exceptions_1.InvalidOperation(`Resource type ${req.params.model} was not found`);
|
|
31
|
-
}
|
|
32
|
-
return Promise.resolve();
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
FindModelType
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.FindModelType = void 0;
|
|
13
|
+
const orm_1 = require("@spinajs/orm");
|
|
14
|
+
const di_1 = require("@spinajs/di");
|
|
15
|
+
const http_1 = require("@spinajs/http");
|
|
16
|
+
const exceptions_1 = require("@spinajs/exceptions");
|
|
17
|
+
let FindModelType = class FindModelType extends http_1.BasePolicy {
|
|
18
|
+
isEnabled() {
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
execute(req) {
|
|
22
|
+
if (!req.params) {
|
|
23
|
+
throw new exceptions_1.InvalidOperation(`Invalid query parameters`);
|
|
24
|
+
}
|
|
25
|
+
if (!req.params.model) {
|
|
26
|
+
throw new exceptions_1.InvalidOperation(`Invalid query parameters, 'model' is required`);
|
|
27
|
+
}
|
|
28
|
+
const mClass = this.Orm.Models.find((x) => x.name.toLowerCase() === req.params.model.trim().toLowerCase());
|
|
29
|
+
if (!mClass) {
|
|
30
|
+
throw new exceptions_1.InvalidOperation(`Resource type ${req.params.model} was not found`);
|
|
31
|
+
}
|
|
32
|
+
return Promise.resolve();
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
exports.FindModelType = FindModelType;
|
|
36
|
+
__decorate([
|
|
37
|
+
(0, di_1.Autoinject)(),
|
|
38
|
+
__metadata("design:type", orm_1.Orm)
|
|
39
|
+
], FindModelType.prototype, "Orm", void 0);
|
|
40
|
+
exports.FindModelType = FindModelType = __decorate([
|
|
41
|
+
(0, di_1.Singleton)()
|
|
42
|
+
], FindModelType);
|
|
43
43
|
//# sourceMappingURL=FindModelType.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FindModelType.js","sourceRoot":"","sources":["../../../src/policies/FindModelType.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sCAAmC;AACnC,oCAAoD;AACpD,wCAAgE;AAChE,oDAAuD;AAIhD,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,iBAAU;IAI3C,SAAS;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CAAC,GAAa;QACnB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;YACf,MAAM,IAAI,6BAAgB,CAAC,0BAA0B,CAAC,CAAC;SACxD;QAED,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE;YACrB,MAAM,IAAI,6BAAgB,CAAC,+CAA+C,CAAC,CAAC;SAC7E;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;QAC3G,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,6BAAgB,CAAC,iBAAiB,GAAG,CAAC,MAAM,CAAC,KAAK,gBAAgB,CAAC,CAAC;SAC/E;QAED,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"FindModelType.js","sourceRoot":"","sources":["../../../src/policies/FindModelType.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sCAAmC;AACnC,oCAAoD;AACpD,wCAAgE;AAChE,oDAAuD;AAIhD,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,iBAAU;IAI3C,SAAS;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CAAC,GAAa;QACnB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;YACf,MAAM,IAAI,6BAAgB,CAAC,0BAA0B,CAAC,CAAC;SACxD;QAED,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE;YACrB,MAAM,IAAI,6BAAgB,CAAC,+CAA+C,CAAC,CAAC;SAC7E;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;QAC3G,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,6BAAgB,CAAC,iBAAiB,GAAG,CAAC,MAAM,CAAC,KAAK,gBAAgB,CAAC,CAAC;SAC/E;QAED,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF,CAAA;AAvBY,sCAAa;AAEd;IADT,IAAA,eAAU,GAAE;8BACE,SAAG;0CAAC;wBAFR,aAAa;IADzB,IAAA,cAAS,GAAE;GACC,aAAa,CAuBzB"}
|