@lenne.tech/cli 0.0.85 → 0.0.87
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/build/commands/server/create-secret.js +29 -0
- package/build/extensions/server.js +4 -4
- package/build/templates/monorepro/README.md.ejs +2 -12
- package/build/templates/nest-server-module/template.model.ts.ejs +12 -2
- package/build/templates/nest-server-module/template.resolver.ts.ejs +18 -29
- package/build/templates/nest-server-module/template.service.ts.ejs +3 -2
- package/package.json +1 -1
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const crypto = require("crypto");
|
|
13
|
+
/**
|
|
14
|
+
* Open regex tools in browser
|
|
15
|
+
*/
|
|
16
|
+
const NewCommand = {
|
|
17
|
+
name: 'createSecret',
|
|
18
|
+
alias: ['cs'],
|
|
19
|
+
description: 'Create a new secret string (for JWT config)',
|
|
20
|
+
hidden: false,
|
|
21
|
+
run: (toolbox) => __awaiter(void 0, void 0, void 0, function* () {
|
|
22
|
+
const { print: { success }, } = toolbox;
|
|
23
|
+
success(crypto.randomBytes(512).toString('base64'));
|
|
24
|
+
// For tests
|
|
25
|
+
return `secret created`;
|
|
26
|
+
}),
|
|
27
|
+
};
|
|
28
|
+
exports.default = NewCommand;
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXNlY3JldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9zZXJ2ZXIvY3JlYXRlLXNlY3JldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLGlDQUFpQztBQUlqQzs7R0FFRztBQUNILE1BQU0sVUFBVSxHQUFtQjtJQUNqQyxJQUFJLEVBQUUsY0FBYztJQUNwQixLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUM7SUFDYixXQUFXLEVBQUUsNkNBQTZDO0lBQzFELE1BQU0sRUFBRSxLQUFLO0lBQ2IsR0FBRyxFQUFFLENBQU8sT0FBK0IsRUFBRSxFQUFFO1FBQzdDLE1BQU0sRUFDSixLQUFLLEVBQUUsRUFBRSxPQUFPLEVBQUUsR0FDbkIsR0FBRyxPQUFPLENBQUM7UUFDWixPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUVwRCxZQUFZO1FBQ1osT0FBTyxnQkFBZ0IsQ0FBQztJQUMxQixDQUFDLENBQUE7Q0FDRixDQUFDO0FBRUYsa0JBQWUsVUFBVSxDQUFDIn0=
|
|
@@ -158,9 +158,9 @@ class Server {
|
|
|
158
158
|
: enumRef
|
|
159
159
|
? (isArray ? '[' : '') + `{ type: String, enum: ${enumRef} }` + (isArray ? ']' : '')
|
|
160
160
|
: ''})
|
|
161
|
-
${propName}: ${(enumRef || modelClassType) +
|
|
162
|
-
|
|
163
|
-
|
|
161
|
+
${propName}: ${(reference ? reference : enumRef || modelClassType) + (isArray ? '[]' : '')
|
|
162
|
+
// (reference ? ' | ' + reference + (isArray ? '[]' : '') : '')
|
|
163
|
+
} = undefined;
|
|
164
164
|
`;
|
|
165
165
|
}
|
|
166
166
|
// Process imports
|
|
@@ -272,4 +272,4 @@ exports.Server = Server;
|
|
|
272
272
|
exports.default = (toolbox) => {
|
|
273
273
|
toolbox.server = new Server(toolbox);
|
|
274
274
|
};
|
|
275
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4dGVuc2lvbnMvc2VydmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBOztHQUVHO0FBQ0gsTUFBYSxNQUFNO0lBK0VqQjs7T0FFRztJQUNILFlBQXNCLE9BQStCO1FBQS9CLFlBQU8sR0FBUCxPQUFPLENBQXdCO1FBNUVyRCx1Q0FBdUM7UUFDdkMsWUFBTyxHQUEyQjtZQUNoQyxZQUFZLEVBQUUseURBQXlEO1lBQ3ZFLGFBQWEsRUFBRSxtRUFBbUU7WUFDbEYsVUFBVSxFQUFFLHFFQUFxRTtTQUNsRixDQUFDO1FBRUYsZ0RBQWdEO1FBQ2hELG9CQUFlLEdBQTJCO1lBQ3hDLE9BQU8sRUFBRSxTQUFTO1lBQ2xCLElBQUksRUFBRSxRQUFRO1lBQ2QsSUFBSSxFQUFFLGVBQWU7WUFDckIsUUFBUSxFQUFFLGVBQWU7WUFDekIsRUFBRSxFQUFFLFFBQVE7WUFDWixFQUFFLEVBQUUsUUFBUTtZQUNaLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLE1BQU0sRUFBRSxlQUFlO1NBQ3hCLENBQUM7UUFFRixpREFBaUQ7UUFDakQsb0JBQWUsR0FBMkI7WUFDeEMsT0FBTyxFQUFFLFNBQVM7WUFDbEIsSUFBSSxFQUFFLE1BQU07WUFDWixJQUFJLEVBQUUsWUFBWTtZQUNsQixRQUFRLEVBQUUsWUFBWTtZQUN0QixFQUFFLEVBQUUsUUFBUTtZQUNaLEVBQUUsRUFBRSxRQUFRO1lBQ1osTUFBTSxFQUFFLFFBQVE7WUFDaEIsUUFBUSxFQUFFLFFBQVE7WUFDbEIsTUFBTSxFQUFFLFFBQVE7WUFDaEIsTUFBTSxFQUFFLFlBQVk7U0FDckIsQ0FBQztRQUVGLGdEQUFnRDtRQUNoRCxvQkFBZSxHQUEyQjtZQUN4QyxPQUFPLEVBQUUsU0FBUztZQUNsQixJQUFJLEVBQUUsUUFBUTtZQUNkLElBQUksRUFBRSxjQUFj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
|
|
275
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4dGVuc2lvbnMvc2VydmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBOztHQUVHO0FBQ0gsTUFBYSxNQUFNO0lBK0VqQjs7T0FFRztJQUNILFlBQXNCLE9BQStCO1FBQS9CLFlBQU8sR0FBUCxPQUFPLENBQXdCO1FBNUVyRCx1Q0FBdUM7UUFDdkMsWUFBTyxHQUEyQjtZQUNoQyxZQUFZLEVBQUUseURBQXlEO1lBQ3ZFLGFBQWEsRUFBRSxtRUFBbUU7WUFDbEYsVUFBVSxFQUFFLHFFQUFxRTtTQUNsRixDQUFDO1FBRUYsZ0RBQWdEO1FBQ2hELG9CQUFlLEdBQTJCO1lBQ3hDLE9BQU8sRUFBRSxTQUFTO1lBQ2xCLElBQUksRUFBRSxRQUFRO1lBQ2QsSUFBSSxFQUFFLGVBQWU7WUFDckIsUUFBUSxFQUFFLGVBQWU7WUFDekIsRUFBRSxFQUFFLFFBQVE7WUFDWixFQUFFLEVBQUUsUUFBUTtZQUNaLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLE1BQU0sRUFBRSxlQUFlO1NBQ3hCLENBQUM7UUFFRixpREFBaUQ7UUFDakQsb0JBQWUsR0FBMkI7WUFDeEMsT0FBTyxFQUFFLFNBQVM7WUFDbEIsSUFBSSxFQUFFLE1BQU07WUFDWixJQUFJLEVBQUUsWUFBWTtZQUNsQixRQUFRLEVBQUUsWUFBWTtZQUN0QixFQUFFLEVBQUUsUUFBUTtZQUNaLEVBQUUsRUFBRSxRQUFRO1lBQ1osTUFBTSxFQUFFLFFBQVE7WUFDaEIsUUFBUSxFQUFFLFFBQVE7WUFDbEIsTUFBTSxFQUFFLFFBQVE7WUFDaEIsTUFBTSxFQUFFLFlBQVk7U0FDckIsQ0FBQztRQUVGLGdEQUFnRDtRQUNoRCxvQkFBZSxHQUEyQjtZQUN4QyxPQUFPLEVBQUUsU0FBUztZQUNsQixJQUFJLEVBQUUsUUFBUTtZQUNkLElBQUksRUFBRSxjQUFj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
|
|
@@ -37,16 +37,6 @@ To check if all requirements are met, we can display the versions of the respect
|
|
|
37
37
|
```
|
|
38
38
|
mongod --version
|
|
39
39
|
db version v6.0.1
|
|
40
|
-
Build Info: {
|
|
41
|
-
"version": "6.0.1",
|
|
42
|
-
"gitVersion": "32f0f9c88dc44a2c8073a5bd47cf779d4bfdee6b",
|
|
43
|
-
"modules": [],
|
|
44
|
-
"allocator": "system",
|
|
45
|
-
"environment": {
|
|
46
|
-
"distarch": "aarch64",
|
|
47
|
-
"target_arch": "aarch64"
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
40
|
|
|
51
41
|
node -v
|
|
52
42
|
v16.17.0
|
|
@@ -61,7 +51,7 @@ Clone this repository and install packages:
|
|
|
61
51
|
```
|
|
62
52
|
git clone <%= props.repository %>
|
|
63
53
|
cd <%= props.nameKebab %>
|
|
64
|
-
npm
|
|
54
|
+
npm run init
|
|
65
55
|
```
|
|
66
56
|
|
|
67
57
|
## Testing
|
|
@@ -97,4 +87,4 @@ The architecture of the projects is based on the following structures:
|
|
|
97
87
|
- To organize the monorepro [lerna](https://lerna.js.org/) is used
|
|
98
88
|
|
|
99
89
|
## History
|
|
100
|
-
- Initialized via `lt create
|
|
90
|
+
- Initialized via `lt angular create`
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { mapClasses, Restricted, RoleEnum } from '@lenne.tech/nest-server';
|
|
1
|
+
import { equalIds, mapClasses, Restricted, RoleEnum } from '@lenne.tech/nest-server';
|
|
2
2
|
import { Field, ObjectType } from '@nestjs/graphql';
|
|
3
3
|
import { Prop, Schema as MongooseSchema, SchemaFactory } from '@nestjs/mongoose';
|
|
4
4
|
import { Document, Schema } from 'mongoose';
|
|
@@ -45,12 +45,22 @@ export class <%= props.namePascal %> extends PersistenceModel {
|
|
|
45
45
|
|
|
46
46
|
/**
|
|
47
47
|
* Verification of the user's rights to access the properties of this object
|
|
48
|
+
*
|
|
49
|
+
* Check roles, prepare or remove properties
|
|
50
|
+
* Return undefined if the whole object should not be returned or throw an exception to stop the whole request
|
|
48
51
|
*/
|
|
49
52
|
override securityCheck(user: User, force?: boolean) {
|
|
53
|
+
// In force mode or for admins everything is allowed
|
|
50
54
|
if (force || user?.hasRole(RoleEnum.ADMIN)) {
|
|
51
55
|
return this;
|
|
52
56
|
}
|
|
53
|
-
|
|
57
|
+
|
|
58
|
+
// Usually only the creator has access to the object
|
|
59
|
+
if (!equalIds(user, this.createdBy)) {
|
|
60
|
+
return undefined;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
// Check permissions for properties of this object and return the object afterwards
|
|
54
64
|
return this;
|
|
55
65
|
}
|
|
56
66
|
}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { FilterArgs,
|
|
1
|
+
import { FilterArgs, GraphQLServiceOptions, RoleEnum, Roles, ServiceOptions } from '@lenne.tech/nest-server';
|
|
2
2
|
import { Inject } from '@nestjs/common';
|
|
3
|
-
import { Args,
|
|
4
|
-
import { GraphQLResolveInfo } from 'graphql';
|
|
3
|
+
import { Args, Mutation, Query, Resolver, Subscription } from '@nestjs/graphql';
|
|
5
4
|
import { PubSub } from 'graphql-subscriptions';
|
|
6
|
-
import { User } from '../user/user.model';
|
|
7
5
|
import { <%= props.namePascal %>CreateInput } from './inputs/<%= props.nameKebab %>-create.input';
|
|
8
6
|
import { <%= props.namePascal %>Input } from './inputs/<%= props.nameKebab %>.input';
|
|
9
7
|
import { FindAndCount<%= props.namePascal %>sResult } from './outputs/find-and-count-<%= props.nameKebab %>s-result.output';
|
|
@@ -32,11 +30,14 @@ export class <%= props.namePascal %>Resolver {
|
|
|
32
30
|
/**
|
|
33
31
|
* Get and total count <%= props.namePascal %>s (via filter)
|
|
34
32
|
*/
|
|
35
|
-
@Roles(RoleEnum.
|
|
33
|
+
@Roles(RoleEnum.S_USER)
|
|
36
34
|
@Query(() => FindAndCount<%= props.namePascal %>sResult, { description: 'Find <%= props.namePascal %>s (via filter)' })
|
|
37
|
-
async findAndCount<%= props.namePascal %>s(
|
|
35
|
+
async findAndCount<%= props.namePascal %>s(
|
|
36
|
+
@GraphQLServiceOptions() serviceOptions: ServiceOptions,
|
|
37
|
+
@Args() args?: FilterArgs
|
|
38
|
+
) {
|
|
38
39
|
return await this.<%= props.nameCamel %>Service.findAndCount(args, {
|
|
39
|
-
|
|
40
|
+
...serviceOptions,
|
|
40
41
|
inputType: FilterArgs,
|
|
41
42
|
});
|
|
42
43
|
}
|
|
@@ -47,13 +48,11 @@ export class <%= props.namePascal %>Resolver {
|
|
|
47
48
|
@Roles(RoleEnum.S_USER)
|
|
48
49
|
@Query(() => [<%= props.namePascal %>], { description: 'Find <%= props.namePascal %>s (via filter)' })
|
|
49
50
|
async find<%= props.namePascal %>s(
|
|
50
|
-
@
|
|
51
|
-
@GraphQLUser() user: User,
|
|
51
|
+
@GraphQLServiceOptions() serviceOptions: ServiceOptions,
|
|
52
52
|
@Args() args?: FilterArgs
|
|
53
53
|
) {
|
|
54
54
|
return await this.<%= props.nameCamel %>Service.find(args, {
|
|
55
|
-
|
|
56
|
-
fieldSelection: { info, select: 'find<%= props.namePascal %>s' },
|
|
55
|
+
...serviceOptions,
|
|
57
56
|
inputType: FilterArgs
|
|
58
57
|
});
|
|
59
58
|
}
|
|
@@ -64,14 +63,10 @@ export class <%= props.namePascal %>Resolver {
|
|
|
64
63
|
@Roles(RoleEnum.S_USER)
|
|
65
64
|
@Query(() => <%= props.namePascal %>, { description: 'Get <%= props.namePascal %> with specified ID' })
|
|
66
65
|
async get<%= props.namePascal %>(
|
|
67
|
-
@
|
|
68
|
-
@GraphQLUser() user: User,
|
|
66
|
+
@GraphQLServiceOptions() serviceOptions: ServiceOptions,
|
|
69
67
|
@Args('id') id: string,
|
|
70
68
|
): Promise<<%= props.namePascal %>> {
|
|
71
|
-
return await this.<%= props.nameCamel %>Service.get(id,
|
|
72
|
-
currentUser: user,
|
|
73
|
-
fieldSelection: { info, select: 'get<%= props.namePascal %>' },
|
|
74
|
-
});
|
|
69
|
+
return await this.<%= props.nameCamel %>Service.get(id, serviceOptions);
|
|
75
70
|
}
|
|
76
71
|
|
|
77
72
|
// ===========================================================================
|
|
@@ -84,13 +79,11 @@ export class <%= props.namePascal %>Resolver {
|
|
|
84
79
|
@Roles(RoleEnum.S_USER)
|
|
85
80
|
@Mutation(() => <%= props.namePascal %>, { description: 'Create a new <%= props.namePascal %>' })
|
|
86
81
|
async create<%= props.namePascal %>(
|
|
87
|
-
@
|
|
88
|
-
@GraphQLUser() user: User,
|
|
82
|
+
@GraphQLServiceOptions() serviceOptions: ServiceOptions,
|
|
89
83
|
@Args('input') input: <%= props.namePascal %>CreateInput
|
|
90
84
|
): Promise<<%= props.namePascal %>> {
|
|
91
85
|
return await this.<%= props.nameCamel %>Service.create(input, {
|
|
92
|
-
|
|
93
|
-
fieldSelection: { info, select: 'create<%= props.namePascal %>' },
|
|
86
|
+
...serviceOptions,
|
|
94
87
|
inputType: <%= props.namePascal %>CreateInput
|
|
95
88
|
});
|
|
96
89
|
}
|
|
@@ -101,13 +94,11 @@ export class <%= props.namePascal %>Resolver {
|
|
|
101
94
|
@Roles(RoleEnum.S_USER)
|
|
102
95
|
@Mutation(() => <%= props.namePascal %>, { description: 'Delete existing <%= props.namePascal %>' })
|
|
103
96
|
async delete<%= props.namePascal %>(
|
|
104
|
-
@
|
|
105
|
-
@GraphQLUser() user: User,
|
|
97
|
+
@GraphQLServiceOptions() serviceOptions: ServiceOptions,
|
|
106
98
|
@Args('id') id: string
|
|
107
99
|
): Promise<<%= props.namePascal %>> {
|
|
108
100
|
return await this.<%= props.nameCamel %>Service.delete(id, {
|
|
109
|
-
|
|
110
|
-
fieldSelection: { info, select: 'delete<%= props.namePascal %>' },
|
|
101
|
+
...serviceOptions,
|
|
111
102
|
roles: [RoleEnum.ADMIN, RoleEnum.S_CREATOR]
|
|
112
103
|
});
|
|
113
104
|
}
|
|
@@ -118,14 +109,12 @@ export class <%= props.namePascal %>Resolver {
|
|
|
118
109
|
@Roles(RoleEnum.S_USER)
|
|
119
110
|
@Mutation(() => <%= props.namePascal %>, { description: 'Update existing <%= props.namePascal %>' })
|
|
120
111
|
async update<%= props.namePascal %>(
|
|
121
|
-
@
|
|
122
|
-
@GraphQLUser() user: User,
|
|
112
|
+
@GraphQLServiceOptions() serviceOptions: ServiceOptions,
|
|
123
113
|
@Args('id') id: string,
|
|
124
114
|
@Args('input') input: <%= props.namePascal %>Input
|
|
125
115
|
): Promise<<%= props.namePascal %>> {
|
|
126
116
|
return await this.<%= props.nameCamel %>Service.update(id, input, {
|
|
127
|
-
|
|
128
|
-
fieldSelection: { info, select: 'update<%= props.namePascal %>' },
|
|
117
|
+
serviceOptions,
|
|
129
118
|
inputType: <%= props.namePascal %>Input,
|
|
130
119
|
roles: [RoleEnum.ADMIN, RoleEnum.S_CREATOR]
|
|
131
120
|
});
|
|
@@ -3,14 +3,15 @@ import { Inject, Injectable, NotFoundException } from '@nestjs/common';
|
|
|
3
3
|
import { InjectModel } from '@nestjs/mongoose';
|
|
4
4
|
import { PubSub } from 'graphql-subscriptions';
|
|
5
5
|
import { Model } from 'mongoose';
|
|
6
|
-
import { <%= props.namePascal %>CreateInput } from './inputs/<%= props.nameKebab %>-create.input';
|
|
7
6
|
import { <%= props.namePascal %>, <%= props.namePascal %>Document } from './<%= props.nameKebab %>.model';
|
|
7
|
+
import { <%= props.namePascal %>CreateInput } from './inputs/<%= props.nameKebab %>-create.input';
|
|
8
|
+
import { <%= props.namePascal %>Input } from './inputs/<%= props.nameKebab %>.input';
|
|
8
9
|
|
|
9
10
|
/**
|
|
10
11
|
* <%= props.namePascal %> service
|
|
11
12
|
*/
|
|
12
13
|
@Injectable()
|
|
13
|
-
export class <%= props.namePascal %>Service extends CrudService<<%= props.namePascal
|
|
14
|
+
export class <%= props.namePascal %>Service extends CrudService<<%= props.namePascal %>, <%= props.namePascal %>CreateInput, <%= props.namePascal %>Input> {
|
|
14
15
|
|
|
15
16
|
// ===================================================================================================================
|
|
16
17
|
// Properties
|