@vnodes/autowire 0.0.15 → 0.0.25
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/README.md +3 -3
- package/bin/version.mjs +12 -0
- package/dist/index.d.ts +13 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -8
- package/dist/index.js.map +1 -0
- package/dist/lib/controller/autowire-method-name.d.ts +10 -0
- package/dist/lib/controller/autowire-method-name.d.ts.map +1 -0
- package/dist/lib/controller/autowire-method-name.js +3 -0
- package/dist/lib/controller/autowire-method-name.js.map +1 -0
- package/dist/lib/controller/autowire.d.ts +11 -0
- package/dist/lib/controller/autowire.d.ts.map +1 -0
- package/dist/lib/controller/autowire.js +61 -0
- package/dist/lib/controller/autowire.js.map +1 -0
- package/dist/lib/controller/method/common-method.d.ts +2 -0
- package/dist/lib/controller/method/common-method.d.ts.map +1 -0
- package/dist/lib/controller/method/common-method.js +24 -0
- package/dist/lib/controller/method/common-method.js.map +1 -0
- package/dist/lib/controller/method/create-one.d.ts +3 -0
- package/dist/lib/controller/method/create-one.d.ts.map +1 -0
- package/dist/lib/controller/method/create-one.js +20 -0
- package/dist/lib/controller/method/create-one.js.map +1 -0
- package/dist/lib/controller/method/delete-one-by-id.d.ts +3 -0
- package/dist/lib/controller/method/delete-one-by-id.d.ts.map +1 -0
- package/dist/lib/controller/method/delete-one-by-id.js +23 -0
- package/dist/lib/controller/method/delete-one-by-id.js.map +1 -0
- package/dist/lib/controller/method/find-many.d.ts +3 -0
- package/dist/lib/controller/method/find-many.d.ts.map +1 -0
- package/dist/lib/controller/method/find-many.js +25 -0
- package/dist/lib/controller/method/find-many.js.map +1 -0
- package/dist/lib/controller/method/find-one-by-id.d.ts +3 -0
- package/dist/lib/controller/method/find-one-by-id.d.ts.map +1 -0
- package/dist/lib/controller/method/find-one-by-id.js +23 -0
- package/dist/lib/controller/method/find-one-by-id.js.map +1 -0
- package/dist/lib/controller/method/update-one-by-id.d.ts +3 -0
- package/dist/lib/controller/method/update-one-by-id.d.ts.map +1 -0
- package/dist/lib/controller/method/update-one-by-id.js +23 -0
- package/dist/lib/controller/method/update-one-by-id.js.map +1 -0
- package/dist/lib/controller/params/body.d.ts +2 -0
- package/dist/lib/controller/params/body.d.ts.map +1 -0
- package/dist/lib/controller/params/body.js +8 -0
- package/dist/lib/controller/params/body.js.map +1 -0
- package/dist/lib/controller/params/param-id.d.ts +2 -0
- package/dist/lib/controller/params/param-id.d.ts.map +1 -0
- package/dist/lib/controller/params/param-id.js +8 -0
- package/dist/lib/controller/params/param-id.js.map +1 -0
- package/dist/lib/controller/params/param-uuid.d.ts +2 -0
- package/dist/lib/controller/params/param-uuid.d.ts.map +1 -0
- package/dist/lib/controller/params/param-uuid.js +8 -0
- package/dist/lib/controller/params/param-uuid.js.map +1 -0
- package/dist/lib/controller/params/query.d.ts +2 -0
- package/dist/lib/controller/params/query.d.ts.map +1 -0
- package/dist/lib/controller/params/query.js +8 -0
- package/dist/lib/controller/params/query.js.map +1 -0
- package/dist/lib/controller/params/user-id.d.ts +2 -0
- package/dist/lib/controller/params/user-id.d.ts.map +1 -0
- package/dist/lib/controller/params/user-id.js +7 -0
- package/dist/lib/controller/params/user-id.js.map +1 -0
- package/package.json +35 -25
- package/assets/favicon.png +0 -0
- package/dist/auto-controller-options.d.ts +0 -9
- package/dist/auto-controller-options.d.ts.map +0 -1
- package/dist/auto-controller-options.js +0 -1
- package/dist/auto-controller.d.ts +0 -3
- package/dist/auto-controller.d.ts.map +0 -1
- package/dist/auto-controller.js +0 -46
- package/dist/auto-delete.d.ts +0 -9
- package/dist/auto-delete.d.ts.map +0 -1
- package/dist/auto-delete.js +0 -41
- package/dist/auto-get.d.ts +0 -11
- package/dist/auto-get.d.ts.map +0 -1
- package/dist/auto-get.js +0 -54
- package/dist/auto-post.d.ts +0 -7
- package/dist/auto-post.d.ts.map +0 -1
- package/dist/auto-post.js +0 -28
- package/dist/auto-put.d.ts +0 -9
- package/dist/auto-put.d.ts.map +0 -1
- package/dist/auto-put.js +0 -40
- package/dist/helpers.d.ts +0 -5
- package/dist/helpers.d.ts.map +0 -1
- package/dist/helpers.js +0 -41
package/README.md
CHANGED
|
@@ -5,12 +5,12 @@
|
|
|
5
5
|

|
|
6
6
|
|
|
7
7
|
<p align="center">
|
|
8
|
-
<img
|
|
8
|
+
<img srcset="./assets/favicon.png, https://vnodes.github.io/vnodes/libs/autowire/assets/favicon.png" alt="Logo" width="200" height="200" style="border-radius: 100%"/>
|
|
9
9
|
</p>
|
|
10
10
|
|
|
11
11
|
## @vnodes/autowire
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
Smart nestjs decorators.
|
|
14
14
|
|
|
15
15
|
## Installation
|
|
16
16
|
|
|
@@ -32,4 +32,4 @@ If you find my open-source contributions or the **@vnodes/autowire** project hel
|
|
|
32
32
|
<a href="mailto:robert.brightline+vnodes-autowire@gmail.com">
|
|
33
33
|
<img src="https://img.shields.io/badge/Email-D14836?style=for-the-badge&logo=gmail&logoColor=white" />
|
|
34
34
|
</a>
|
|
35
|
-
</p>
|
|
35
|
+
</p>
|
package/bin/version.mjs
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import { readFileSync } from 'node:fs';
|
|
4
|
+
import { dirname, join } from 'node:path';
|
|
5
|
+
import { fileURLToPath } from 'node:url';
|
|
6
|
+
|
|
7
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
8
|
+
const __dirname = dirname(__filename);
|
|
9
|
+
const packageJsonPath = join(__dirname, '..', 'package.json');
|
|
10
|
+
const packageJson = readFileSync(packageJsonPath, { encoding: 'utf-8' });
|
|
11
|
+
const version = JSON.parse(packageJson).version;
|
|
12
|
+
console.log(version);
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
export * from './
|
|
2
|
-
export * from './
|
|
3
|
-
export * from './
|
|
4
|
-
export * from './
|
|
5
|
-
export * from './
|
|
6
|
-
export * from './
|
|
7
|
-
export * from './
|
|
1
|
+
export * from './lib/controller/autowire.js';
|
|
2
|
+
export * from './lib/controller/autowire-method-name.js';
|
|
3
|
+
export * from './lib/controller/method/common-method.js';
|
|
4
|
+
export * from './lib/controller/method/create-one.js';
|
|
5
|
+
export * from './lib/controller/method/delete-one-by-id.js';
|
|
6
|
+
export * from './lib/controller/method/find-many.js';
|
|
7
|
+
export * from './lib/controller/method/find-one-by-id.js';
|
|
8
|
+
export * from './lib/controller/method/update-one-by-id.js';
|
|
9
|
+
export * from './lib/controller/params/body.js';
|
|
10
|
+
export * from './lib/controller/params/param-id.js';
|
|
11
|
+
export * from './lib/controller/params/param-uuid.js';
|
|
12
|
+
export * from './lib/controller/params/query.js';
|
|
13
|
+
export * from './lib/controller/params/user-id.js';
|
|
8
14
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0CAA0C,CAAC;AACzD,cAAc,0CAA0C,CAAC;AACzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,sCAAsC,CAAC;AACrD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uCAAuC,CAAC;AACtD,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,16 @@
|
|
|
1
|
-
// @index(['./**/*.ts', '!./**/*.spec
|
|
2
|
-
export * from './
|
|
3
|
-
export * from './
|
|
4
|
-
export * from './
|
|
5
|
-
export * from './
|
|
6
|
-
export * from './
|
|
7
|
-
export * from './
|
|
8
|
-
export * from './
|
|
1
|
+
// @index(['./**/*.ts', '!./**/*.{spec,test}.ts'], f => `export * from '${f.path}.js'`)
|
|
2
|
+
export * from './lib/controller/autowire.js';
|
|
3
|
+
export * from './lib/controller/autowire-method-name.js';
|
|
4
|
+
export * from './lib/controller/method/common-method.js';
|
|
5
|
+
export * from './lib/controller/method/create-one.js';
|
|
6
|
+
export * from './lib/controller/method/delete-one-by-id.js';
|
|
7
|
+
export * from './lib/controller/method/find-many.js';
|
|
8
|
+
export * from './lib/controller/method/find-one-by-id.js';
|
|
9
|
+
export * from './lib/controller/method/update-one-by-id.js';
|
|
10
|
+
export * from './lib/controller/params/body.js';
|
|
11
|
+
export * from './lib/controller/params/param-id.js';
|
|
12
|
+
export * from './lib/controller/params/param-uuid.js';
|
|
13
|
+
export * from './lib/controller/params/query.js';
|
|
14
|
+
export * from './lib/controller/params/user-id.js';
|
|
15
|
+
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["// @index(['./**/*.ts', '!./**/*.{spec,test}.ts'], f => `export * from '${f.path}.js'`)\n\nexport * from './lib/controller/autowire.js';\nexport * from './lib/controller/autowire-method-name.js';\nexport * from './lib/controller/method/common-method.js';\nexport * from './lib/controller/method/create-one.js';\nexport * from './lib/controller/method/delete-one-by-id.js';\nexport * from './lib/controller/method/find-many.js';\nexport * from './lib/controller/method/find-one-by-id.js';\nexport * from './lib/controller/method/update-one-by-id.js';\nexport * from './lib/controller/params/body.js';\nexport * from './lib/controller/params/param-id.js';\nexport * from './lib/controller/params/param-uuid.js';\nexport * from './lib/controller/params/query.js';\nexport * from './lib/controller/params/user-id.js';\n"],"names":[],"mappings":"AAAA,uFAAuF;AAEvF,cAAc,+BAA+B;AAC7C,cAAc,2CAA2C;AACzD,cAAc,2CAA2C;AACzD,cAAc,wCAAwC;AACtD,cAAc,8CAA8C;AAC5D,cAAc,uCAAuC;AACrD,cAAc,4CAA4C;AAC1D,cAAc,8CAA8C;AAC5D,cAAc,kCAAkC;AAChD,cAAc,sCAAsC;AACpD,cAAc,wCAAwC;AACtD,cAAc,mCAAmC;AACjD,cAAc,qCAAqC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Any } from '@vnodes/types';
|
|
2
|
+
export type AutowireMethodName = 'findMany' | 'findOneById' | 'createOne' | 'updateOneById' | 'deleteOneById';
|
|
3
|
+
export interface ResourceController<ID extends number | string = number> {
|
|
4
|
+
findMany(query: Any): Promise<Any>;
|
|
5
|
+
createOne(data: Any): Promise<Any>;
|
|
6
|
+
deleteOneById(id: ID): Promise<Any>;
|
|
7
|
+
findOneById(id: ID): Promise<Any>;
|
|
8
|
+
updateOneById(id: ID, data: Any): Promise<Any>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=autowire-method-name.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autowire-method-name.d.ts","sourceRoot":"","sources":["../../../src/lib/controller/autowire-method-name.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,aAAa,GAAG,WAAW,GAAG,eAAe,GAAG,eAAe,CAAC;AAE9G,MAAM,WAAW,kBAAkB,CAAC,EAAE,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM;IACnE,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,SAAS,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,aAAa,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACpC,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAClC,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CAClD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/controller/autowire-method-name.ts"],"sourcesContent":["import type { Any } from '@vnodes/types';\n\nexport type AutowireMethodName = 'findMany' | 'findOneById' | 'createOne' | 'updateOneById' | 'deleteOneById';\n\nexport interface ResourceController<ID extends number | string = number> {\n findMany(query: Any): Promise<Any>;\n createOne(data: Any): Promise<Any>;\n deleteOneById(id: ID): Promise<Any>;\n findOneById(id: ID): Promise<Any>;\n updateOneById(id: ID, data: Any): Promise<Any>;\n}\n"],"names":[],"mappings":"AAIA,WAMC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type Type } from '@vnodes/nestjs/common';
|
|
2
|
+
export type AutowireOptions = {
|
|
3
|
+
readDto: Type;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* Autowire rest controller and its methods {@link AutowireMethodName}
|
|
7
|
+
* @param options
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
export declare function Autowire(options: AutowireOptions): ClassDecorator;
|
|
11
|
+
//# sourceMappingURL=autowire.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autowire.d.ts","sourceRoot":"","sources":["../../../src/lib/controller/autowire.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,KAAK,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAS9D,MAAM,MAAM,eAAe,GAAG;IAC1B,OAAO,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,cAAc,CAuCjE"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { names, pluralize } from '@vnodes/names';
|
|
2
|
+
import { Controller } from '@vnodes/nestjs/common';
|
|
3
|
+
import { definedOrThrow, extractResourceName, getInheritedPropertyDescriptor, getMethodNames } from '@vnodes/utils';
|
|
4
|
+
import { CreateOne } from './method/create-one.js';
|
|
5
|
+
import { DeleteOneById } from './method/delete-one-by-id.js';
|
|
6
|
+
import { FindMany } from './method/find-many.js';
|
|
7
|
+
import { FindOneById } from './method/find-one-by-id.js';
|
|
8
|
+
import { UpdateOneById } from './method/update-one-by-id.js';
|
|
9
|
+
/**
|
|
10
|
+
* Autowire rest controller and its methods {@link AutowireMethodName}
|
|
11
|
+
* @param options
|
|
12
|
+
* @returns
|
|
13
|
+
*/ export function Autowire(options) {
|
|
14
|
+
return (...args)=>{
|
|
15
|
+
const target = args[0];
|
|
16
|
+
const prototype = target.prototype;
|
|
17
|
+
const className = args[0].name;
|
|
18
|
+
const resourceName = extractResourceName(className);
|
|
19
|
+
const { kebab } = names(resourceName);
|
|
20
|
+
const PATH = pluralize(kebab);
|
|
21
|
+
Controller(PATH)(...args);
|
|
22
|
+
const methodNames = getMethodNames(target);
|
|
23
|
+
for (const methodName of methodNames){
|
|
24
|
+
const descriptor = definedOrThrow(getInheritedPropertyDescriptor(target, methodName));
|
|
25
|
+
const methodArgs = [
|
|
26
|
+
prototype,
|
|
27
|
+
methodName,
|
|
28
|
+
descriptor
|
|
29
|
+
];
|
|
30
|
+
switch(methodName){
|
|
31
|
+
case 'findMany':
|
|
32
|
+
{
|
|
33
|
+
FindMany(resourceName, options.readDto)(...methodArgs);
|
|
34
|
+
break;
|
|
35
|
+
}
|
|
36
|
+
case 'findOneById':
|
|
37
|
+
{
|
|
38
|
+
FindOneById(resourceName, options.readDto)(...methodArgs);
|
|
39
|
+
break;
|
|
40
|
+
}
|
|
41
|
+
case 'createOne':
|
|
42
|
+
{
|
|
43
|
+
CreateOne(resourceName, options.readDto)(...methodArgs);
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
case 'updateOneById':
|
|
47
|
+
{
|
|
48
|
+
UpdateOneById(resourceName, options.readDto)(...methodArgs);
|
|
49
|
+
break;
|
|
50
|
+
}
|
|
51
|
+
case 'deleteOneById':
|
|
52
|
+
{
|
|
53
|
+
DeleteOneById(resourceName, options.readDto)(...methodArgs);
|
|
54
|
+
break;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
//# sourceMappingURL=autowire.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/controller/autowire.ts"],"sourcesContent":["import { names, pluralize } from '@vnodes/names';\nimport { Controller, type Type } from '@vnodes/nestjs/common';\nimport { definedOrThrow, extractResourceName, getInheritedPropertyDescriptor, getMethodNames } from '@vnodes/utils';\nimport type { AutowireMethodName } from './autowire-method-name.js';\nimport { CreateOne } from './method/create-one.js';\nimport { DeleteOneById } from './method/delete-one-by-id.js';\nimport { FindMany } from './method/find-many.js';\nimport { FindOneById } from './method/find-one-by-id.js';\nimport { UpdateOneById } from './method/update-one-by-id.js';\n\nexport type AutowireOptions = {\n readDto: Type;\n};\n\n/**\n * Autowire rest controller and its methods {@link AutowireMethodName}\n * @param options\n * @returns\n */\nexport function Autowire(options: AutowireOptions): ClassDecorator {\n return (...args) => {\n const target = args[0];\n const prototype = target.prototype;\n const className = args[0].name;\n const resourceName = extractResourceName(className);\n const { kebab } = names(resourceName);\n const PATH = pluralize(kebab);\n Controller(PATH)(...args);\n\n const methodNames = getMethodNames(target);\n\n for (const methodName of methodNames) {\n const descriptor = definedOrThrow(getInheritedPropertyDescriptor(target, methodName));\n const methodArgs = [prototype, methodName, descriptor] as Parameters<MethodDecorator>;\n switch (methodName as AutowireMethodName) {\n case 'findMany': {\n FindMany(resourceName, options.readDto)(...methodArgs);\n break;\n }\n case 'findOneById': {\n FindOneById(resourceName, options.readDto)(...methodArgs);\n break;\n }\n case 'createOne': {\n CreateOne(resourceName, options.readDto)(...methodArgs);\n break;\n }\n case 'updateOneById': {\n UpdateOneById(resourceName, options.readDto)(...methodArgs);\n break;\n }\n case 'deleteOneById': {\n DeleteOneById(resourceName, options.readDto)(...methodArgs);\n break;\n }\n }\n }\n };\n}\n"],"names":["names","pluralize","Controller","definedOrThrow","extractResourceName","getInheritedPropertyDescriptor","getMethodNames","CreateOne","DeleteOneById","FindMany","FindOneById","UpdateOneById","Autowire","options","args","target","prototype","className","name","resourceName","kebab","PATH","methodNames","methodName","descriptor","methodArgs","readDto"],"mappings":"AAAA,SAASA,KAAK,EAAEC,SAAS,QAAQ,gBAAgB;AACjD,SAASC,UAAU,QAAmB,wBAAwB;AAC9D,SAASC,cAAc,EAAEC,mBAAmB,EAAEC,8BAA8B,EAAEC,cAAc,QAAQ,gBAAgB;AAEpH,SAASC,SAAS,QAAQ,yBAAyB;AACnD,SAASC,aAAa,QAAQ,+BAA+B;AAC7D,SAASC,QAAQ,QAAQ,wBAAwB;AACjD,SAASC,WAAW,QAAQ,6BAA6B;AACzD,SAASC,aAAa,QAAQ,+BAA+B;AAM7D;;;;CAIC,GACD,OAAO,SAASC,SAASC,OAAwB;IAC7C,OAAO,CAAC,GAAGC;QACP,MAAMC,SAASD,IAAI,CAAC,EAAE;QACtB,MAAME,YAAYD,OAAOC,SAAS;QAClC,MAAMC,YAAYH,IAAI,CAAC,EAAE,CAACI,IAAI;QAC9B,MAAMC,eAAef,oBAAoBa;QACzC,MAAM,EAAEG,KAAK,EAAE,GAAGpB,MAAMmB;QACxB,MAAME,OAAOpB,UAAUmB;QACvBlB,WAAWmB,SAASP;QAEpB,MAAMQ,cAAchB,eAAeS;QAEnC,KAAK,MAAMQ,cAAcD,YAAa;YAClC,MAAME,aAAarB,eAAeE,+BAA+BU,QAAQQ;YACzE,MAAME,aAAa;gBAACT;gBAAWO;gBAAYC;aAAW;YACtD,OAAQD;gBACJ,KAAK;oBAAY;wBACbd,SAASU,cAAcN,QAAQa,OAAO,KAAKD;wBAC3C;oBACJ;gBACA,KAAK;oBAAe;wBAChBf,YAAYS,cAAcN,QAAQa,OAAO,KAAKD;wBAC9C;oBACJ;gBACA,KAAK;oBAAa;wBACdlB,UAAUY,cAAcN,QAAQa,OAAO,KAAKD;wBAC5C;oBACJ;gBACA,KAAK;oBAAiB;wBAClBd,cAAcQ,cAAcN,QAAQa,OAAO,KAAKD;wBAChD;oBACJ;gBACA,KAAK;oBAAiB;wBAClBjB,cAAcW,cAAcN,QAAQa,OAAO,KAAKD;wBAChD;oBACJ;YACJ;QACJ;IACJ;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common-method.d.ts","sourceRoot":"","sources":["../../../../src/lib/controller/method/common-method.ts"],"names":[],"mappings":"AAQA,wBAAgB,YAAY,IAAI,eAAe,CAc9C"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ApiForbiddenResponse, ApiInternalServerErrorResponse, ApiRequestTimeoutResponse, ApiUnauthorizedResponse, ApiUnprocessableEntityResponse } from '@vnodes/nestjs/swagger';
|
|
2
|
+
export function CommonMethod() {
|
|
3
|
+
return (...args)=>{
|
|
4
|
+
[
|
|
5
|
+
ApiInternalServerErrorResponse({
|
|
6
|
+
description: 'Something unkown went wrong'
|
|
7
|
+
}),
|
|
8
|
+
ApiUnprocessableEntityResponse({
|
|
9
|
+
description: 'Your input or query is invalid'
|
|
10
|
+
}),
|
|
11
|
+
ApiRequestTimeoutResponse({
|
|
12
|
+
description: 'Request exceed the defined timeout limit'
|
|
13
|
+
}),
|
|
14
|
+
ApiUnauthorizedResponse({
|
|
15
|
+
description: 'You are not autorized'
|
|
16
|
+
}),
|
|
17
|
+
ApiForbiddenResponse({
|
|
18
|
+
description: 'You do not have sufficient priviledges to access this resource'
|
|
19
|
+
})
|
|
20
|
+
].map((d)=>d(...args));
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=common-method.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/controller/method/common-method.ts"],"sourcesContent":["import {\n ApiForbiddenResponse,\n ApiInternalServerErrorResponse,\n ApiRequestTimeoutResponse,\n ApiUnauthorizedResponse,\n ApiUnprocessableEntityResponse,\n} from '@vnodes/nestjs/swagger';\n\nexport function CommonMethod(): MethodDecorator {\n return (...args) => {\n [\n ApiInternalServerErrorResponse({ description: 'Something unkown went wrong' }),\n ApiUnprocessableEntityResponse({ description: 'Your input or query is invalid' }),\n ApiRequestTimeoutResponse({ description: 'Request exceed the defined timeout limit' }),\n ApiUnauthorizedResponse({\n description: 'You are not autorized',\n }),\n ApiForbiddenResponse({\n description: 'You do not have sufficient priviledges to access this resource',\n }),\n ].map((d) => d(...args));\n };\n}\n"],"names":["ApiForbiddenResponse","ApiInternalServerErrorResponse","ApiRequestTimeoutResponse","ApiUnauthorizedResponse","ApiUnprocessableEntityResponse","CommonMethod","args","description","map","d"],"mappings":"AAAA,SACIA,oBAAoB,EACpBC,8BAA8B,EAC9BC,yBAAyB,EACzBC,uBAAuB,EACvBC,8BAA8B,QAC3B,yBAAyB;AAEhC,OAAO,SAASC;IACZ,OAAO,CAAC,GAAGC;QACP;YACIL,+BAA+B;gBAAEM,aAAa;YAA8B;YAC5EH,+BAA+B;gBAAEG,aAAa;YAAiC;YAC/EL,0BAA0B;gBAAEK,aAAa;YAA2C;YACpFJ,wBAAwB;gBACpBI,aAAa;YACjB;YACAP,qBAAqB;gBACjBO,aAAa;YACjB;SACH,CAACC,GAAG,CAAC,CAACC,IAAMA,KAAKH;IACtB;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-one.d.ts","sourceRoot":"","sources":["../../../../src/lib/controller/method/create-one.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAIxD,wBAAgB,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,eAAe,CAS1E"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Post } from '@vnodes/nestjs/common';
|
|
2
|
+
import { ApiCreatedResponse, ApiOperation } from '@vnodes/nestjs/swagger';
|
|
3
|
+
import { CommonMethod } from './common-method.js';
|
|
4
|
+
export function CreateOne(resourceName, dto) {
|
|
5
|
+
return (...args)=>{
|
|
6
|
+
[
|
|
7
|
+
Post(),
|
|
8
|
+
ApiOperation({
|
|
9
|
+
summary: `Create one ${resourceName}`
|
|
10
|
+
}),
|
|
11
|
+
ApiCreatedResponse({
|
|
12
|
+
type: dto,
|
|
13
|
+
description: 'Found item'
|
|
14
|
+
}),
|
|
15
|
+
CommonMethod()
|
|
16
|
+
].map((d)=>d(...args));
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=create-one.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/controller/method/create-one.ts"],"sourcesContent":["import { Post, type Type } from '@vnodes/nestjs/common';\nimport { ApiCreatedResponse, ApiOperation } from '@vnodes/nestjs/swagger';\nimport { CommonMethod } from './common-method.js';\n\nexport function CreateOne(resourceName: string, dto: Type): MethodDecorator {\n return (...args) => {\n [\n Post(),\n ApiOperation({ summary: `Create one ${resourceName}` }),\n ApiCreatedResponse({ type: dto, description: 'Found item' }),\n CommonMethod(),\n ].map((d) => d(...args));\n };\n}\n"],"names":["Post","ApiCreatedResponse","ApiOperation","CommonMethod","CreateOne","resourceName","dto","args","summary","type","description","map","d"],"mappings":"AAAA,SAASA,IAAI,QAAmB,wBAAwB;AACxD,SAASC,kBAAkB,EAAEC,YAAY,QAAQ,yBAAyB;AAC1E,SAASC,YAAY,QAAQ,qBAAqB;AAElD,OAAO,SAASC,UAAUC,YAAoB,EAAEC,GAAS;IACrD,OAAO,CAAC,GAAGC;QACP;YACIP;YACAE,aAAa;gBAAEM,SAAS,CAAC,WAAW,EAAEH,cAAc;YAAC;YACrDJ,mBAAmB;gBAAEQ,MAAMH;gBAAKI,aAAa;YAAa;YAC1DP;SACH,CAACQ,GAAG,CAAC,CAACC,IAAMA,KAAKL;IACtB;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delete-one-by-id.d.ts","sourceRoot":"","sources":["../../../../src/lib/controller/method/delete-one-by-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAI1D,wBAAgB,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,eAAe,CAU9E"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Delete } from '@vnodes/nestjs/common';
|
|
2
|
+
import { ApiNotFoundResponse, ApiOkResponse, ApiOperation } from '@vnodes/nestjs/swagger';
|
|
3
|
+
import { CommonMethod } from './common-method.js';
|
|
4
|
+
export function DeleteOneById(resourceName, dto) {
|
|
5
|
+
return (...args)=>{
|
|
6
|
+
[
|
|
7
|
+
Delete(':id'),
|
|
8
|
+
ApiOperation({
|
|
9
|
+
summary: `Delete one ${resourceName} by primary id`
|
|
10
|
+
}),
|
|
11
|
+
ApiOkResponse({
|
|
12
|
+
type: dto,
|
|
13
|
+
description: 'Deleted item'
|
|
14
|
+
}),
|
|
15
|
+
ApiNotFoundResponse({
|
|
16
|
+
description: 'Not found'
|
|
17
|
+
}),
|
|
18
|
+
CommonMethod()
|
|
19
|
+
].map((d)=>d(...args));
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=delete-one-by-id.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/controller/method/delete-one-by-id.ts"],"sourcesContent":["import { Delete, type Type } from '@vnodes/nestjs/common';\nimport { ApiNotFoundResponse, ApiOkResponse, ApiOperation } from '@vnodes/nestjs/swagger';\nimport { CommonMethod } from './common-method.js';\n\nexport function DeleteOneById(resourceName: string, dto: Type): MethodDecorator {\n return (...args) => {\n [\n Delete(':id'),\n ApiOperation({ summary: `Delete one ${resourceName} by primary id` }),\n ApiOkResponse({ type: dto, description: 'Deleted item' }),\n ApiNotFoundResponse({ description: 'Not found' }),\n CommonMethod(),\n ].map((d) => d(...args));\n };\n}\n"],"names":["Delete","ApiNotFoundResponse","ApiOkResponse","ApiOperation","CommonMethod","DeleteOneById","resourceName","dto","args","summary","type","description","map","d"],"mappings":"AAAA,SAASA,MAAM,QAAmB,wBAAwB;AAC1D,SAASC,mBAAmB,EAAEC,aAAa,EAAEC,YAAY,QAAQ,yBAAyB;AAC1F,SAASC,YAAY,QAAQ,qBAAqB;AAElD,OAAO,SAASC,cAAcC,YAAoB,EAAEC,GAAS;IACzD,OAAO,CAAC,GAAGC;QACP;YACIR,OAAO;YACPG,aAAa;gBAAEM,SAAS,CAAC,WAAW,EAAEH,aAAa,cAAc,CAAC;YAAC;YACnEJ,cAAc;gBAAEQ,MAAMH;gBAAKI,aAAa;YAAe;YACvDV,oBAAoB;gBAAEU,aAAa;YAAY;YAC/CP;SACH,CAACQ,GAAG,CAAC,CAACC,IAAMA,KAAKL;IACtB;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"find-many.d.ts","sourceRoot":"","sources":["../../../../src/lib/controller/method/find-many.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAIvD,wBAAgB,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,eAAe,CAUzE"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Get } from '@vnodes/nestjs/common';
|
|
2
|
+
import { ApiNotFoundResponse, ApiOkResponse, ApiOperation } from '@vnodes/nestjs/swagger';
|
|
3
|
+
import { CommonMethod } from './common-method.js';
|
|
4
|
+
export function FindMany(resourceName, dto) {
|
|
5
|
+
return (...args)=>{
|
|
6
|
+
[
|
|
7
|
+
Get(),
|
|
8
|
+
ApiOperation({
|
|
9
|
+
summary: `Find many ${resourceName} by advance query and pagination`
|
|
10
|
+
}),
|
|
11
|
+
ApiOkResponse({
|
|
12
|
+
type: [
|
|
13
|
+
dto
|
|
14
|
+
],
|
|
15
|
+
description: 'Found items'
|
|
16
|
+
}),
|
|
17
|
+
ApiNotFoundResponse({
|
|
18
|
+
description: 'No matching items'
|
|
19
|
+
}),
|
|
20
|
+
CommonMethod()
|
|
21
|
+
].map((d)=>d(...args));
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
//# sourceMappingURL=find-many.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/controller/method/find-many.ts"],"sourcesContent":["import { Get, type Type } from '@vnodes/nestjs/common';\nimport { ApiNotFoundResponse, ApiOkResponse, ApiOperation } from '@vnodes/nestjs/swagger';\nimport { CommonMethod } from './common-method.js';\n\nexport function FindMany(resourceName: string, dto: Type): MethodDecorator {\n return (...args) => {\n [\n Get(),\n ApiOperation({ summary: `Find many ${resourceName} by advance query and pagination` }),\n ApiOkResponse({ type: [dto], description: 'Found items' }),\n ApiNotFoundResponse({ description: 'No matching items' }),\n CommonMethod(),\n ].map((d) => d(...args));\n };\n}\n"],"names":["Get","ApiNotFoundResponse","ApiOkResponse","ApiOperation","CommonMethod","FindMany","resourceName","dto","args","summary","type","description","map","d"],"mappings":"AAAA,SAASA,GAAG,QAAmB,wBAAwB;AACvD,SAASC,mBAAmB,EAAEC,aAAa,EAAEC,YAAY,QAAQ,yBAAyB;AAC1F,SAASC,YAAY,QAAQ,qBAAqB;AAElD,OAAO,SAASC,SAASC,YAAoB,EAAEC,GAAS;IACpD,OAAO,CAAC,GAAGC;QACP;YACIR;YACAG,aAAa;gBAAEM,SAAS,CAAC,UAAU,EAAEH,aAAa,gCAAgC,CAAC;YAAC;YACpFJ,cAAc;gBAAEQ,MAAM;oBAACH;iBAAI;gBAAEI,aAAa;YAAc;YACxDV,oBAAoB;gBAAEU,aAAa;YAAoB;YACvDP;SACH,CAACQ,GAAG,CAAC,CAACC,IAAMA,KAAKL;IACtB;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"find-one-by-id.d.ts","sourceRoot":"","sources":["../../../../src/lib/controller/method/find-one-by-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAIvD,wBAAgB,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,eAAe,CAU5E"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Get } from '@vnodes/nestjs/common';
|
|
2
|
+
import { ApiNotFoundResponse, ApiOkResponse, ApiOperation } from '@vnodes/nestjs/swagger';
|
|
3
|
+
import { CommonMethod } from './common-method.js';
|
|
4
|
+
export function FindOneById(resourceName, dto) {
|
|
5
|
+
return (...args)=>{
|
|
6
|
+
[
|
|
7
|
+
Get(':id'),
|
|
8
|
+
ApiOperation({
|
|
9
|
+
summary: `Find one ${resourceName} by primary id`
|
|
10
|
+
}),
|
|
11
|
+
ApiOkResponse({
|
|
12
|
+
type: dto,
|
|
13
|
+
description: 'Found item'
|
|
14
|
+
}),
|
|
15
|
+
ApiNotFoundResponse({
|
|
16
|
+
description: 'Not found'
|
|
17
|
+
}),
|
|
18
|
+
CommonMethod()
|
|
19
|
+
].map((d)=>d(...args));
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=find-one-by-id.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/controller/method/find-one-by-id.ts"],"sourcesContent":["import { Get, type Type } from '@vnodes/nestjs/common';\nimport { ApiNotFoundResponse, ApiOkResponse, ApiOperation } from '@vnodes/nestjs/swagger';\nimport { CommonMethod } from './common-method.js';\n\nexport function FindOneById(resourceName: string, dto: Type): MethodDecorator {\n return (...args) => {\n [\n Get(':id'),\n ApiOperation({ summary: `Find one ${resourceName} by primary id` }),\n ApiOkResponse({ type: dto, description: 'Found item' }),\n ApiNotFoundResponse({ description: 'Not found' }),\n CommonMethod(),\n ].map((d) => d(...args));\n };\n}\n"],"names":["Get","ApiNotFoundResponse","ApiOkResponse","ApiOperation","CommonMethod","FindOneById","resourceName","dto","args","summary","type","description","map","d"],"mappings":"AAAA,SAASA,GAAG,QAAmB,wBAAwB;AACvD,SAASC,mBAAmB,EAAEC,aAAa,EAAEC,YAAY,QAAQ,yBAAyB;AAC1F,SAASC,YAAY,QAAQ,qBAAqB;AAElD,OAAO,SAASC,YAAYC,YAAoB,EAAEC,GAAS;IACvD,OAAO,CAAC,GAAGC;QACP;YACIR,IAAI;YACJG,aAAa;gBAAEM,SAAS,CAAC,SAAS,EAAEH,aAAa,cAAc,CAAC;YAAC;YACjEJ,cAAc;gBAAEQ,MAAMH;gBAAKI,aAAa;YAAa;YACrDV,oBAAoB;gBAAEU,aAAa;YAAY;YAC/CP;SACH,CAACQ,GAAG,CAAC,CAACC,IAAMA,KAAKL;IACtB;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-one-by-id.d.ts","sourceRoot":"","sources":["../../../../src/lib/controller/method/update-one-by-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAIvD,wBAAgB,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,eAAe,CAU9E"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Put } from '@vnodes/nestjs/common';
|
|
2
|
+
import { ApiNotFoundResponse, ApiOkResponse, ApiOperation } from '@vnodes/nestjs/swagger';
|
|
3
|
+
import { CommonMethod } from './common-method.js';
|
|
4
|
+
export function UpdateOneById(resourceName, dto) {
|
|
5
|
+
return (...args)=>{
|
|
6
|
+
[
|
|
7
|
+
Put(':id'),
|
|
8
|
+
ApiOperation({
|
|
9
|
+
summary: `Update one ${resourceName} by primary id`
|
|
10
|
+
}),
|
|
11
|
+
ApiOkResponse({
|
|
12
|
+
type: dto,
|
|
13
|
+
description: 'Updated item'
|
|
14
|
+
}),
|
|
15
|
+
ApiNotFoundResponse({
|
|
16
|
+
description: 'Not found'
|
|
17
|
+
}),
|
|
18
|
+
CommonMethod()
|
|
19
|
+
].map((d)=>d(...args));
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=update-one-by-id.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/controller/method/update-one-by-id.ts"],"sourcesContent":["import { Put, type Type } from '@vnodes/nestjs/common';\nimport { ApiNotFoundResponse, ApiOkResponse, ApiOperation } from '@vnodes/nestjs/swagger';\nimport { CommonMethod } from './common-method.js';\n\nexport function UpdateOneById(resourceName: string, dto: Type): MethodDecorator {\n return (...args) => {\n [\n Put(':id'),\n ApiOperation({ summary: `Update one ${resourceName} by primary id` }),\n ApiOkResponse({ type: dto, description: 'Updated item' }),\n ApiNotFoundResponse({ description: 'Not found' }),\n CommonMethod(),\n ].map((d) => d(...args));\n };\n}\n"],"names":["Put","ApiNotFoundResponse","ApiOkResponse","ApiOperation","CommonMethod","UpdateOneById","resourceName","dto","args","summary","type","description","map","d"],"mappings":"AAAA,SAASA,GAAG,QAAmB,wBAAwB;AACvD,SAASC,mBAAmB,EAAEC,aAAa,EAAEC,YAAY,QAAQ,yBAAyB;AAC1F,SAASC,YAAY,QAAQ,qBAAqB;AAElD,OAAO,SAASC,cAAcC,YAAoB,EAAEC,GAAS;IACzD,OAAO,CAAC,GAAGC;QACP;YACIR,IAAI;YACJG,aAAa;gBAAEM,SAAS,CAAC,WAAW,EAAEH,aAAa,cAAc,CAAC;YAAC;YACnEJ,cAAc;gBAAEQ,MAAMH;gBAAKI,aAAa;YAAe;YACvDV,oBAAoB;gBAAEU,aAAa;YAAY;YAC/CP;SACH,CAACQ,GAAG,CAAC,CAACC,IAAMA,KAAKL;IACtB;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"body.d.ts","sourceRoot":"","sources":["../../../../src/lib/controller/params/body.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,IAAI,kBAAkB,CAIzC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/controller/params/body.ts"],"sourcesContent":["import { Body as NestBody } from '@vnodes/nestjs/common';\n\nexport function Body(): ParameterDecorator {\n return (...args) => {\n NestBody()(...args);\n };\n}\n"],"names":["Body","NestBody","args"],"mappings":"AAAA,SAASA,QAAQC,QAAQ,QAAQ,wBAAwB;AAEzD,OAAO,SAASD;IACZ,OAAO,CAAC,GAAGE;QACPD,cAAcC;IAClB;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"param-id.d.ts","sourceRoot":"","sources":["../../../../src/lib/controller/params/param-id.ts"],"names":[],"mappings":"AAEA,wBAAgB,OAAO,IAAI,kBAAkB,CAI5C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/controller/params/param-id.ts"],"sourcesContent":["import { Param, ParseIntPipe } from '@vnodes/nestjs/common';\n\nexport function ParamID(): ParameterDecorator {\n return (...args) => {\n Param('id', ParseIntPipe)(...args);\n };\n}\n"],"names":["Param","ParseIntPipe","ParamID","args"],"mappings":"AAAA,SAASA,KAAK,EAAEC,YAAY,QAAQ,wBAAwB;AAE5D,OAAO,SAASC;IACZ,OAAO,CAAC,GAAGC;QACPH,MAAM,MAAMC,iBAAiBE;IACjC;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"param-uuid.d.ts","sourceRoot":"","sources":["../../../../src/lib/controller/params/param-uuid.ts"],"names":[],"mappings":"AAEA,wBAAgB,SAAS,IAAI,kBAAkB,CAI9C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/controller/params/param-uuid.ts"],"sourcesContent":["import { Param, ParseUUIDPipe } from '@vnodes/nestjs/common';\n\nexport function ParamUuid(): ParameterDecorator {\n return (...args) => {\n Param('id', ParseUUIDPipe)(...args);\n };\n}\n"],"names":["Param","ParseUUIDPipe","ParamUuid","args"],"mappings":"AAAA,SAASA,KAAK,EAAEC,aAAa,QAAQ,wBAAwB;AAE7D,OAAO,SAASC;IACZ,OAAO,CAAC,GAAGC;QACPH,MAAM,MAAMC,kBAAkBE;IAClC;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../../src/lib/controller/params/query.ts"],"names":[],"mappings":"AAEA,wBAAgB,KAAK,IAAI,kBAAkB,CAI1C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/controller/params/query.ts"],"sourcesContent":["import { Query as NestQuery } from '@vnodes/nestjs/common';\n\nexport function Query(): ParameterDecorator {\n return (...args) => {\n NestQuery()(...args);\n };\n}\n"],"names":["Query","NestQuery","args"],"mappings":"AAAA,SAASA,SAASC,SAAS,QAAQ,wBAAwB;AAE3D,OAAO,SAASD;IACZ,OAAO,CAAC,GAAGE;QACPD,eAAeC;IACnB;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-id.d.ts","sourceRoot":"","sources":["../../../../src/lib/controller/params/user-id.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM,+CAEjB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { createParamDecorator } from '@vnodes/nestjs/common';
|
|
2
|
+
import { definedOrThrow } from '@vnodes/utils';
|
|
3
|
+
export const UserId = createParamDecorator((_, context)=>{
|
|
4
|
+
return definedOrThrow(context.switchToHttp().getRequest().user.id);
|
|
5
|
+
});
|
|
6
|
+
|
|
7
|
+
//# sourceMappingURL=user-id.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/controller/params/user-id.ts"],"sourcesContent":["import { createParamDecorator } from '@vnodes/nestjs/common';\nimport { definedOrThrow } from '@vnodes/utils';\n\nexport const UserId = createParamDecorator((_, context) => {\n return definedOrThrow(context.switchToHttp().getRequest().user.id);\n});\n"],"names":["createParamDecorator","definedOrThrow","UserId","_","context","switchToHttp","getRequest","user","id"],"mappings":"AAAA,SAASA,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,cAAc,QAAQ,gBAAgB;AAE/C,OAAO,MAAMC,SAASF,qBAAqB,CAACG,GAAGC;IAC3C,OAAOH,eAAeG,QAAQC,YAAY,GAAGC,UAAU,GAAGC,IAAI,CAACC,EAAE;AACrE,GAAG"}
|
package/package.json
CHANGED
|
@@ -1,25 +1,23 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vnodes/autowire",
|
|
3
|
-
"
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
|
|
8
|
-
},
|
|
3
|
+
"version": "0.0.25",
|
|
4
|
+
"description": "@vnodes/autowire",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"autowire"
|
|
7
|
+
],
|
|
9
8
|
"author": {
|
|
10
|
-
"email": "robert.brightline+vnodes-autowire@gmail.com",
|
|
11
9
|
"name": "Robert Brightline",
|
|
12
|
-
"
|
|
10
|
+
"email": "robert.brightline+vnodes-autowire@gmail.com",
|
|
11
|
+
"url": "https://vnodes.github.io/vnodes"
|
|
13
12
|
},
|
|
14
|
-
"
|
|
13
|
+
"homepage": "https://vnodes.github.io/vnodes/libs/autowire",
|
|
15
14
|
"icon": "https://vnodes.github.io/vnodes/libs/autowire/assets/favicon.png",
|
|
16
15
|
"funding": [
|
|
17
|
-
|
|
18
|
-
"type": "cashapp",
|
|
19
|
-
"url": "https://cash.app/$puqlib"
|
|
20
|
-
}
|
|
16
|
+
"https://cash.app/$puqlib"
|
|
21
17
|
],
|
|
22
|
-
"
|
|
18
|
+
"bin": {
|
|
19
|
+
"version": "./bin/version.mjs"
|
|
20
|
+
},
|
|
23
21
|
"type": "module",
|
|
24
22
|
"main": "./dist/index.js",
|
|
25
23
|
"module": "./dist/index.js",
|
|
@@ -34,30 +32,42 @@
|
|
|
34
32
|
}
|
|
35
33
|
},
|
|
36
34
|
"files": [
|
|
37
|
-
"assets",
|
|
38
35
|
"dist",
|
|
36
|
+
"bin",
|
|
39
37
|
"!**/*.tsbuildinfo"
|
|
40
38
|
],
|
|
41
39
|
"nx": {
|
|
42
40
|
"sourceRoot": "libs/autowire/src",
|
|
41
|
+
"tags": [
|
|
42
|
+
"lib"
|
|
43
|
+
],
|
|
43
44
|
"targets": {
|
|
44
45
|
"build": {},
|
|
45
|
-
"
|
|
46
|
-
"
|
|
47
|
-
"doc": {}
|
|
46
|
+
"doc": {},
|
|
47
|
+
"lint": {}
|
|
48
48
|
}
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
|
-
"@swc/helpers": "~0.5.
|
|
51
|
+
"@swc/helpers": "~0.5.18"
|
|
52
52
|
},
|
|
53
53
|
"devDependencies": {
|
|
54
|
-
"@
|
|
54
|
+
"@vnodes/errors": "0.0.25",
|
|
55
|
+
"@vnodes/metadata": "0.0.25",
|
|
56
|
+
"@vnodes/names": "0.0.25",
|
|
57
|
+
"@vnodes/nestjs": "0.0.25",
|
|
58
|
+
"@vnodes/types": "0.0.25",
|
|
59
|
+
"@vnodes/utils": "0.0.25"
|
|
55
60
|
},
|
|
56
61
|
"peerDependencies": {
|
|
57
|
-
"@
|
|
58
|
-
"@
|
|
59
|
-
"@nestjs
|
|
60
|
-
"@vnodes/metadata": "0.0.
|
|
61
|
-
"@vnodes/
|
|
62
|
+
"@vnodes/names": "0.0.25",
|
|
63
|
+
"@vnodes/errors": "0.0.25",
|
|
64
|
+
"@vnodes/nestjs": "0.0.25",
|
|
65
|
+
"@vnodes/metadata": "0.0.25",
|
|
66
|
+
"@vnodes/types": "0.0.25",
|
|
67
|
+
"@vnodes/utils": "0.0.25"
|
|
68
|
+
},
|
|
69
|
+
"publishConfig": {
|
|
70
|
+
"access": "public",
|
|
71
|
+
"tag": "latest"
|
|
62
72
|
}
|
|
63
73
|
}
|
package/assets/favicon.png
DELETED
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auto-controller-options.d.ts","sourceRoot":"","sources":["../src/auto-controller-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,MAAM,MAAM,qBAAqB,GAAG;IAChC,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,QAAQ,EAAE,IAAI,CAAC;IACf,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auto-controller.d.ts","sourceRoot":"","sources":["../src/auto-controller.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAOrE,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc,CAkC7E"}
|
package/dist/auto-controller.js
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { Controller } from '@nestjs/common';
|
|
2
|
-
import { ApiBearerAuth } from '@nestjs/swagger';
|
|
3
|
-
import { OperationName, operationRegistry, ResourceName } from '@vnodes/metadata';
|
|
4
|
-
import { names, pluralize } from '@vnodes/names';
|
|
5
|
-
import { AutoDelete } from './auto-delete.js';
|
|
6
|
-
import { AutoGet } from './auto-get.js';
|
|
7
|
-
import { AutoPost } from './auto-post.js';
|
|
8
|
-
import { AutoPut } from './auto-put.js';
|
|
9
|
-
import { getAllMethodNames, getInheritedPropertyDescriptor } from './helpers.js';
|
|
10
|
-
export function AutoController(options) {
|
|
11
|
-
return (target) => {
|
|
12
|
-
const className = target.name;
|
|
13
|
-
const { pascalCase: resourceName, kebabCase } = names(className.replace('Controller', ''));
|
|
14
|
-
const pluralPath = pluralize(kebabCase);
|
|
15
|
-
Controller(pluralPath)(target);
|
|
16
|
-
ResourceName(resourceName)(target);
|
|
17
|
-
ApiBearerAuth()(target);
|
|
18
|
-
const methodNames = getAllMethodNames(target).filter((e) => e !== 'constructor');
|
|
19
|
-
for (const operationName of methodNames) {
|
|
20
|
-
const descriptor = getInheritedPropertyDescriptor(target, operationName);
|
|
21
|
-
if (!descriptor)
|
|
22
|
-
throw new Error(`Descriptor not found for ${target.name}.${operationName}`);
|
|
23
|
-
const args = [target.prototype, operationName, descriptor];
|
|
24
|
-
OperationName(operationName)(...args);
|
|
25
|
-
operationRegistry.add({
|
|
26
|
-
resourceName,
|
|
27
|
-
operationName,
|
|
28
|
-
});
|
|
29
|
-
if (operationName.startsWith('find')) {
|
|
30
|
-
AutoGet(options)(...args);
|
|
31
|
-
}
|
|
32
|
-
else if (operationName.startsWith('create')) {
|
|
33
|
-
AutoPost(options)(...args);
|
|
34
|
-
}
|
|
35
|
-
else if (operationName.startsWith('update')) {
|
|
36
|
-
AutoPut(options)(...args);
|
|
37
|
-
}
|
|
38
|
-
else if (operationName.startsWith('delete')) {
|
|
39
|
-
AutoDelete(options)(...args);
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
throw new Error('Method is not supported');
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
};
|
|
46
|
-
}
|
package/dist/auto-delete.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { AutoControllerOptions } from './auto-controller-options.js';
|
|
2
|
-
export declare enum DeleteMethodName {
|
|
3
|
-
deleteOneById = "deleteOneById",
|
|
4
|
-
deleteOneByUuid = "deleteOneByUuid"
|
|
5
|
-
}
|
|
6
|
-
export declare function __DeleteOneByIdMethod(): MethodDecorator;
|
|
7
|
-
export declare function __DeleteOneByUuid(): MethodDecorator;
|
|
8
|
-
export declare function AutoDelete(options: AutoControllerOptions): MethodDecorator;
|
|
9
|
-
//# sourceMappingURL=auto-delete.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auto-delete.d.ts","sourceRoot":"","sources":["../src/auto-delete.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,oBAAY,gBAAgB;IACxB,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;CACtC;AAED,wBAAgB,qBAAqB,IAAI,eAAe,CAIvD;AAED,wBAAgB,iBAAiB,IAAI,eAAe,CAInD;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,qBAAqB,GAAG,eAAe,CAyB1E"}
|
package/dist/auto-delete.js
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { Delete, Param, ParseIntPipe } from '@nestjs/common';
|
|
2
|
-
import { ApiOkResponse } from '@nestjs/swagger';
|
|
3
|
-
export var DeleteMethodName;
|
|
4
|
-
(function (DeleteMethodName) {
|
|
5
|
-
DeleteMethodName["deleteOneById"] = "deleteOneById";
|
|
6
|
-
DeleteMethodName["deleteOneByUuid"] = "deleteOneByUuid";
|
|
7
|
-
})(DeleteMethodName || (DeleteMethodName = {}));
|
|
8
|
-
export function __DeleteOneByIdMethod() {
|
|
9
|
-
return (...args) => {
|
|
10
|
-
Delete(':id')(...args);
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
export function __DeleteOneByUuid() {
|
|
14
|
-
return (...args) => {
|
|
15
|
-
Delete(':uuid')(...args);
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
export function AutoDelete(options) {
|
|
19
|
-
return (...args) => {
|
|
20
|
-
const methodName = args[1].toString();
|
|
21
|
-
switch (methodName.toString()) {
|
|
22
|
-
case DeleteMethodName.deleteOneById: {
|
|
23
|
-
__DeleteOneByIdMethod()(...args);
|
|
24
|
-
ApiOkResponse({ type: options.readDto })(...args);
|
|
25
|
-
Param('id', ParseIntPipe)(args[0], args[1], 0);
|
|
26
|
-
Reflect.defineMetadata('design:paramtypes', [Number], args[0], args[1]);
|
|
27
|
-
break;
|
|
28
|
-
}
|
|
29
|
-
case DeleteMethodName.deleteOneByUuid: {
|
|
30
|
-
__DeleteOneByUuid()(...args);
|
|
31
|
-
ApiOkResponse({ type: options.readDto })(...args);
|
|
32
|
-
Param('uuid')(args[0], args[1], 0);
|
|
33
|
-
Reflect.defineMetadata('design:paramtypes', [String], args[0], args[1]);
|
|
34
|
-
break;
|
|
35
|
-
}
|
|
36
|
-
default: {
|
|
37
|
-
throw new Error(`${methodName.toString()} is not supported`);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
}
|
package/dist/auto-get.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { AutoControllerOptions } from './auto-controller-options.js';
|
|
2
|
-
export declare enum FindMethodName {
|
|
3
|
-
findMany = "findMany",
|
|
4
|
-
findOneById = "findOneById",
|
|
5
|
-
findOneByUuid = "findOneByUuid"
|
|
6
|
-
}
|
|
7
|
-
export declare function __FindMethod(): MethodDecorator;
|
|
8
|
-
export declare function __FindOneByIdMethod(): MethodDecorator;
|
|
9
|
-
export declare function __FindOneByUuid(): MethodDecorator;
|
|
10
|
-
export declare function AutoGet(options: AutoControllerOptions): MethodDecorator;
|
|
11
|
-
//# sourceMappingURL=auto-get.d.ts.map
|
package/dist/auto-get.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auto-get.d.ts","sourceRoot":"","sources":["../src/auto-get.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,oBAAY,cAAc;IACtB,QAAQ,aAAa;IACrB,WAAW,gBAAgB;IAC3B,aAAa,kBAAkB;CAClC;AAED,wBAAgB,YAAY,IAAI,eAAe,CAI9C;AACD,wBAAgB,mBAAmB,IAAI,eAAe,CAIrD;AAED,wBAAgB,eAAe,IAAI,eAAe,CAIjD;AAED,wBAAgB,OAAO,CAAC,OAAO,EAAE,qBAAqB,GAAG,eAAe,CA8BvE"}
|
package/dist/auto-get.js
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { Get, Param, ParseIntPipe, Query } from '@nestjs/common';
|
|
2
|
-
import { ApiOkResponse } from '@nestjs/swagger';
|
|
3
|
-
export var FindMethodName;
|
|
4
|
-
(function (FindMethodName) {
|
|
5
|
-
FindMethodName["findMany"] = "findMany";
|
|
6
|
-
FindMethodName["findOneById"] = "findOneById";
|
|
7
|
-
FindMethodName["findOneByUuid"] = "findOneByUuid";
|
|
8
|
-
})(FindMethodName || (FindMethodName = {}));
|
|
9
|
-
export function __FindMethod() {
|
|
10
|
-
return (...args) => {
|
|
11
|
-
Get()(...args);
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
export function __FindOneByIdMethod() {
|
|
15
|
-
return (...args) => {
|
|
16
|
-
Get(':id')(...args);
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
export function __FindOneByUuid() {
|
|
20
|
-
return (...args) => {
|
|
21
|
-
Get(':uuid')(...args);
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
export function AutoGet(options) {
|
|
25
|
-
return (...args) => {
|
|
26
|
-
const methodName = args[1].toString();
|
|
27
|
-
switch (methodName.toString()) {
|
|
28
|
-
case FindMethodName.findMany: {
|
|
29
|
-
__FindMethod()(...args);
|
|
30
|
-
ApiOkResponse({ type: [options.readDto] })(...args);
|
|
31
|
-
Query()(args[0], args[1], 0);
|
|
32
|
-
Reflect.defineMetadata('design:paramtypes', [options.queryDto], args[0], args[1]);
|
|
33
|
-
break;
|
|
34
|
-
}
|
|
35
|
-
case FindMethodName.findOneById: {
|
|
36
|
-
__FindOneByIdMethod()(...args);
|
|
37
|
-
ApiOkResponse({ type: options.readDto })(...args);
|
|
38
|
-
Param('id', ParseIntPipe)(args[0], args[1], 0);
|
|
39
|
-
Reflect.defineMetadata('design:paramtypes', [Number], args[0], args[1]);
|
|
40
|
-
break;
|
|
41
|
-
}
|
|
42
|
-
case FindMethodName.findOneByUuid: {
|
|
43
|
-
__FindOneByUuid()(...args);
|
|
44
|
-
ApiOkResponse({ type: options.readDto })(...args);
|
|
45
|
-
Param('uuid')(args[0], args[1], 0);
|
|
46
|
-
Reflect.defineMetadata('design:paramtypes', [String], args[0], args[1]);
|
|
47
|
-
break;
|
|
48
|
-
}
|
|
49
|
-
default: {
|
|
50
|
-
throw new Error(`${methodName.toString()} is not supported`);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
}
|
package/dist/auto-post.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { AutoControllerOptions } from './auto-controller-options.js';
|
|
2
|
-
export declare enum CreateMethodName {
|
|
3
|
-
createOne = "createOne"
|
|
4
|
-
}
|
|
5
|
-
export declare function __CreateOneMethod(): MethodDecorator;
|
|
6
|
-
export declare function AutoPost(options: AutoControllerOptions): MethodDecorator;
|
|
7
|
-
//# sourceMappingURL=auto-post.d.ts.map
|
package/dist/auto-post.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auto-post.d.ts","sourceRoot":"","sources":["../src/auto-post.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,oBAAY,gBAAgB;IACxB,SAAS,cAAc;CAC1B;AAED,wBAAgB,iBAAiB,IAAI,eAAe,CAInD;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,qBAAqB,GAAG,eAAe,CAgBxE"}
|
package/dist/auto-post.js
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { Body, Post } from '@nestjs/common';
|
|
2
|
-
import { ApiCreatedResponse } from '@nestjs/swagger';
|
|
3
|
-
export var CreateMethodName;
|
|
4
|
-
(function (CreateMethodName) {
|
|
5
|
-
CreateMethodName["createOne"] = "createOne";
|
|
6
|
-
})(CreateMethodName || (CreateMethodName = {}));
|
|
7
|
-
export function __CreateOneMethod() {
|
|
8
|
-
return (...args) => {
|
|
9
|
-
Post()(...args);
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
export function AutoPost(options) {
|
|
13
|
-
return (...args) => {
|
|
14
|
-
const methodName = args[1].toString();
|
|
15
|
-
switch (methodName.toString()) {
|
|
16
|
-
case CreateMethodName.createOne: {
|
|
17
|
-
__CreateOneMethod()(...args);
|
|
18
|
-
ApiCreatedResponse({ type: options.readDto })(...args);
|
|
19
|
-
Body()(args[0], args[1], 0);
|
|
20
|
-
Reflect.defineMetadata('design:paramtypes', [options.createDto], args[0], args[1]);
|
|
21
|
-
break;
|
|
22
|
-
}
|
|
23
|
-
default: {
|
|
24
|
-
throw new Error(`${methodName.toString()} is not supported`);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
}
|
package/dist/auto-put.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { AutoControllerOptions } from './auto-controller-options.js';
|
|
2
|
-
export declare enum UpdateMethodName {
|
|
3
|
-
updateOneById = "updateOneById",
|
|
4
|
-
updateOneByUuid = "updateOneByUuid"
|
|
5
|
-
}
|
|
6
|
-
export declare function __UpdateOneByIdMethod(): MethodDecorator;
|
|
7
|
-
export declare function __UpdateOneByUuid(): MethodDecorator;
|
|
8
|
-
export declare function AutoPut(options: AutoControllerOptions): MethodDecorator;
|
|
9
|
-
//# sourceMappingURL=auto-put.d.ts.map
|
package/dist/auto-put.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auto-put.d.ts","sourceRoot":"","sources":["../src/auto-put.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,oBAAY,gBAAgB;IACxB,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;CACtC;AAED,wBAAgB,qBAAqB,IAAI,eAAe,CAIvD;AAED,wBAAgB,iBAAiB,IAAI,eAAe,CAInD;AAED,wBAAgB,OAAO,CAAC,OAAO,EAAE,qBAAqB,GAAG,eAAe,CAwBvE"}
|
package/dist/auto-put.js
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { Body, Param, ParseIntPipe, Put } from '@nestjs/common';
|
|
2
|
-
export var UpdateMethodName;
|
|
3
|
-
(function (UpdateMethodName) {
|
|
4
|
-
UpdateMethodName["updateOneById"] = "updateOneById";
|
|
5
|
-
UpdateMethodName["updateOneByUuid"] = "updateOneByUuid";
|
|
6
|
-
})(UpdateMethodName || (UpdateMethodName = {}));
|
|
7
|
-
export function __UpdateOneByIdMethod() {
|
|
8
|
-
return (...args) => {
|
|
9
|
-
Put(':id')(...args);
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
export function __UpdateOneByUuid() {
|
|
13
|
-
return (...args) => {
|
|
14
|
-
Put(':uuid')(...args);
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
export function AutoPut(options) {
|
|
18
|
-
return (...args) => {
|
|
19
|
-
const methodName = args[1].toString();
|
|
20
|
-
switch (methodName.toString()) {
|
|
21
|
-
case UpdateMethodName.updateOneById: {
|
|
22
|
-
__UpdateOneByIdMethod()(...args);
|
|
23
|
-
Param('id', ParseIntPipe)(args[0], args[1], 0);
|
|
24
|
-
Body()(args[0], args[1], 1);
|
|
25
|
-
Reflect.defineMetadata('design:paramtypes', [Number, options.updateDto], args[0], args[1]);
|
|
26
|
-
break;
|
|
27
|
-
}
|
|
28
|
-
case UpdateMethodName.updateOneByUuid: {
|
|
29
|
-
__UpdateOneByUuid()(...args);
|
|
30
|
-
Param('uuid')(args[0], args[1], 0);
|
|
31
|
-
Body()(args[0], args[1], 1);
|
|
32
|
-
Reflect.defineMetadata('design:paramtypes', [String, options.updateDto], args[0], args[1]);
|
|
33
|
-
break;
|
|
34
|
-
}
|
|
35
|
-
default: {
|
|
36
|
-
throw new Error(`${methodName.toString()} is not supported`);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
}
|
package/dist/helpers.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/** biome-ignore-all lint/suspicious/noExplicitAny: Method decorato params */
|
|
2
|
-
export declare function methodParamNames(params: any[]): string[];
|
|
3
|
-
export declare function getAllMethodNames(target: any): string[];
|
|
4
|
-
export declare function getInheritedPropertyDescriptor(target: any, methodName: string): PropertyDescriptor | undefined;
|
|
5
|
-
//# sourceMappingURL=helpers.d.ts.map
|
package/dist/helpers.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAE7E,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,YAY7C;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,EAAE,CAiBvD;AACD,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAiB9G"}
|
package/dist/helpers.js
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
/** biome-ignore-all lint/suspicious/noExplicitAny: Method decorato params */
|
|
2
|
-
export function methodParamNames(params) {
|
|
3
|
-
const [target, methodName] = params;
|
|
4
|
-
const functionDeclerations = target?.[methodName]?.toString();
|
|
5
|
-
if (!functionDeclerations) {
|
|
6
|
-
throw new Error('Could not get the function decleration string');
|
|
7
|
-
}
|
|
8
|
-
return functionDeclerations
|
|
9
|
-
.slice(functionDeclerations.indexOf('(') + 1, functionDeclerations.indexOf(')'))
|
|
10
|
-
.split(',');
|
|
11
|
-
}
|
|
12
|
-
export function getAllMethodNames(target) {
|
|
13
|
-
const methods = new Set();
|
|
14
|
-
let currentProto = target?.prototype;
|
|
15
|
-
// Stop when we hit the base Object prototype
|
|
16
|
-
while (currentProto && currentProto !== Object.prototype) {
|
|
17
|
-
Object.getOwnPropertyNames(currentProto).forEach((name) => {
|
|
18
|
-
// Filter for functions and exclude the constructor
|
|
19
|
-
if (name !== 'constructor' && typeof currentProto[name] === 'function') {
|
|
20
|
-
methods.add(name);
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
// Move up to the parent class
|
|
24
|
-
currentProto = Object.getPrototypeOf(currentProto);
|
|
25
|
-
}
|
|
26
|
-
return Array.from(methods);
|
|
27
|
-
}
|
|
28
|
-
export function getInheritedPropertyDescriptor(target, methodName) {
|
|
29
|
-
// 1. Get the initial prototype if target is a constructor,
|
|
30
|
-
// or use target directly if we are already traversing the chain.
|
|
31
|
-
let current = typeof target === 'function' ? target.prototype : target;
|
|
32
|
-
while (current && current !== Object.prototype) {
|
|
33
|
-
const descriptor = Object.getOwnPropertyDescriptor(current, methodName);
|
|
34
|
-
if (descriptor) {
|
|
35
|
-
return descriptor;
|
|
36
|
-
}
|
|
37
|
-
// Move up to the next link in the prototype chain
|
|
38
|
-
current = Object.getPrototypeOf(current);
|
|
39
|
-
}
|
|
40
|
-
return undefined;
|
|
41
|
-
}
|