pwi-plata-type 0.4.65 → 0.4.66
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__/bin/runtime/promises.js +4 -0
- package/__BUILD__/bin/runtime/promises.js.map +1 -1
- package/__BUILD__/libs/cluster.js +1 -1
- package/__BUILD__/libs/cluster.js.map +1 -1
- package/__BUILD__/libs/sql.js +10 -3
- package/__BUILD__/libs/sql.js.map +1 -1
- package/package.json +1 -1
- package/src/@types/router.d.ts +29 -12
- package/src/@types/sql.d.ts +1 -1
- package/src/bin/runtime/promises.ts +4 -0
- package/src/libs/cluster.ts +4 -2
- package/src/libs/sql.ts +10 -3
- package/src/tests/model.test.ts +28 -32
|
@@ -11,5 +11,9 @@ var PlataRuntimeE;
|
|
|
11
11
|
return e;
|
|
12
12
|
}
|
|
13
13
|
PlataRuntimeE.BuildPlataError = BuildPlataError;
|
|
14
|
+
function BuildObject(o) {
|
|
15
|
+
return o;
|
|
16
|
+
}
|
|
17
|
+
PlataRuntimeE.BuildObject = BuildObject;
|
|
14
18
|
})(PlataRuntimeE = exports.PlataRuntimeE || (exports.PlataRuntimeE = {}));
|
|
15
19
|
//# sourceMappingURL=promises.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promises.js","sourceRoot":"","sources":["../../../src/bin/runtime/promises.ts"],"names":[],"mappings":";;;AAMA,IAAiB,aAAa,
|
|
1
|
+
{"version":3,"file":"promises.js","sourceRoot":"","sources":["../../../src/bin/runtime/promises.ts"],"names":[],"mappings":";;;AAMA,IAAiB,aAAa,CAY7B;AAZD,WAAiB,aAAa;IAC1B,SAAgB,WAAW,CAAI,CAAmB;QAC9C,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACpC,CAAC;IAFe,yBAAW,cAE1B,CAAA;IAED,SAAgB,eAAe,CAAC,CAAa;QACzC,OAAO,CAAC,CAAA;IACZ,CAAC;IAFe,6BAAe,kBAE9B,CAAA;IAED,SAAgB,WAAW,CAAI,CAAI;QAC/B,OAAO,CAAC,CAAA;IACZ,CAAC;IAFe,yBAAW,cAE1B,CAAA;AACL,CAAC,EAZgB,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAY7B"}
|
|
@@ -15,7 +15,7 @@ class PlataClusterManager {
|
|
|
15
15
|
clusters: []
|
|
16
16
|
};
|
|
17
17
|
if (this.NodeCluster.eventNames().indexOf('exit') === -1) {
|
|
18
|
-
this.NodeCluster.on('exit',
|
|
18
|
+
this.NodeCluster.on('exit', (t => t.onWorkerKilled(t))(this));
|
|
19
19
|
}
|
|
20
20
|
if (this.NodeCluster.eventNames().indexOf('message') === -1) {
|
|
21
21
|
this.NodeCluster.on('message', ((t) => t.onMessage(t))(this));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cluster.js","sourceRoot":"","sources":["../../src/libs/cluster.ts"],"names":[],"mappings":";;;;;;AAAA,gEAAmC;AACnC,qCAA+B;AAE/B,MAAa,mBAAmB;IACX,WAAW,GAAG,sBAAO,CAAA;IAEtC;QACI,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE;YAC5B,KAAK,CAAC,OAAO,GAAG;gBACZ,SAAS,EAAE,IAAI;gBACf,QAAQ,EAAE,EAAE;aACf,CAAA;YAED,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE;gBACtD,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"cluster.js","sourceRoot":"","sources":["../../src/libs/cluster.ts"],"names":[],"mappings":"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"}
|
package/__BUILD__/libs/sql.js
CHANGED
|
@@ -73,14 +73,16 @@ class Query {
|
|
|
73
73
|
let shoudContinue = true;
|
|
74
74
|
const stream = this.query.stream();
|
|
75
75
|
stream.on('close', async () => {
|
|
76
|
-
|
|
77
|
-
return resolve(handler.close());
|
|
78
|
-
}
|
|
76
|
+
return resolve(handler.close());
|
|
79
77
|
});
|
|
80
78
|
stream.on('data', async (row) => {
|
|
81
79
|
if (shoudContinue) {
|
|
82
80
|
shoudContinue = await handler.row(row);
|
|
83
81
|
}
|
|
82
|
+
else {
|
|
83
|
+
stream.pause();
|
|
84
|
+
stream.end();
|
|
85
|
+
}
|
|
84
86
|
});
|
|
85
87
|
stream.on('error', async (err) => {
|
|
86
88
|
shoudContinue = false;
|
|
@@ -130,6 +132,11 @@ class Query {
|
|
|
130
132
|
promises.push(Plata.FastPromise(() => this.model.validate(row))
|
|
131
133
|
.then(lineResult => {
|
|
132
134
|
c(lineResult).then(r => {
|
|
135
|
+
if (r.errorID !== undefined) {
|
|
136
|
+
shoudContinue = false;
|
|
137
|
+
error = r;
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
133
140
|
shoudContinue = shoudContinue ? r : shoudContinue;
|
|
134
141
|
});
|
|
135
142
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql.js","sourceRoot":"","sources":["../../src/libs/sql.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"sql.js","sourceRoot":"","sources":["../../src/libs/sql.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/@types/router.d.ts
CHANGED
|
@@ -4,20 +4,41 @@ import express from 'express'
|
|
|
4
4
|
|
|
5
5
|
declare global {
|
|
6
6
|
namespace Router {
|
|
7
|
-
|
|
7
|
+
type ListRouteParams<TRoute extends string> =
|
|
8
|
+
TRoute extends `/${infer TPart}/${infer TNextRoute}` ?
|
|
9
|
+
TPart extends `:${infer TParam}?` ? `${TParam}_O` | ListRouteParams<`/${TNextRoute}`>
|
|
10
|
+
: TPart extends `:${infer TParam}` ? `${TParam}_R` | ListRouteParams<`/${TNextRoute}`>
|
|
11
|
+
: undefined | ListRouteParams<`/${TNextRoute}`>
|
|
12
|
+
: TRoute extends `/${infer TPart}` ?
|
|
13
|
+
TPart extends `:${infer TParam}?` ? `${TParam}_O`
|
|
14
|
+
: TPart extends `:${infer TParam}` ? `${TParam}_R`
|
|
15
|
+
: undefined
|
|
16
|
+
: undefined
|
|
17
|
+
;
|
|
18
|
+
|
|
19
|
+
type GetRouteParams<TRoute extends string> = Exclude<ListRouteParams<TRoute>, undefined>
|
|
20
|
+
|
|
21
|
+
type GetUrlParams<TRoute extends string, TParams extends string = GetRouteParams<TRoute>> = {
|
|
22
|
+
[K in LooseAutocomplete<TParams> as K extends `${infer N}_${string}` ? N : string]: K extends `${string}_O` ? string | undefined : string
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
type expressRequest = Omit<express.Request, 'params'>
|
|
26
|
+
|
|
27
|
+
interface Request<T extends string = string> extends expressRequest {
|
|
8
28
|
user: any
|
|
9
29
|
extras: any
|
|
10
30
|
_onResponseEvent: PlataOnResponseEvent[]
|
|
31
|
+
params: GetUrlParams<T>
|
|
11
32
|
}
|
|
12
|
-
|
|
33
|
+
|
|
13
34
|
interface Response extends express.Response {
|
|
14
35
|
oldJson(body?: any): this
|
|
15
36
|
error(error: PlataError | PlataError[]): this
|
|
16
37
|
addOnResponseEvent<T = any>(callback: PlataOnResponseEvent<T>): void
|
|
17
38
|
}
|
|
18
|
-
|
|
19
|
-
type RequestHandler = (req: Request
|
|
20
|
-
|
|
39
|
+
|
|
40
|
+
type RequestHandler<T extends string = string> = (req: Request<T>, res: Response, next: express.NextFunction) => Promise<any>
|
|
41
|
+
|
|
21
42
|
type HttpMethods =
|
|
22
43
|
"all"
|
|
23
44
|
| "get"
|
|
@@ -47,11 +68,7 @@ declare global {
|
|
|
47
68
|
| "unsubscribe"
|
|
48
69
|
| "use"
|
|
49
70
|
;
|
|
50
|
-
|
|
51
|
-
type RouterFunction = (
|
|
52
|
-
(path: string | RequestHandler, ...handlers: RequestHandler[]) => void | Promise<void>
|
|
53
|
-
)
|
|
54
|
-
|
|
71
|
+
|
|
55
72
|
interface Route {
|
|
56
73
|
path?: string
|
|
57
74
|
method: string
|
|
@@ -64,8 +81,8 @@ declare global {
|
|
|
64
81
|
routes: Route[]
|
|
65
82
|
}
|
|
66
83
|
|
|
67
|
-
type Router
|
|
68
|
-
[method in HttpMethods]:
|
|
84
|
+
type Router = RouterConfig & {
|
|
85
|
+
[method in HttpMethods]: <T extends string>(path: T | RequestHandler, ...handlers: RequestHandler<T>[]) => void | Promise<void>
|
|
69
86
|
}
|
|
70
87
|
|
|
71
88
|
type RouterBuilder = (r: Router) => Promise<Router>
|
package/src/@types/sql.d.ts
CHANGED
package/src/libs/cluster.ts
CHANGED
|
@@ -12,7 +12,9 @@ export class PlataClusterManager {
|
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
if (this.NodeCluster.eventNames().indexOf('exit') === -1) {
|
|
15
|
-
this.NodeCluster.on('exit',
|
|
15
|
+
this.NodeCluster.on('exit', (
|
|
16
|
+
t => t.onWorkerKilled(t)
|
|
17
|
+
)(this))
|
|
16
18
|
}
|
|
17
19
|
|
|
18
20
|
if (this.NodeCluster.eventNames().indexOf('message') === -1) {
|
|
@@ -115,7 +117,7 @@ export class PlataClusterManager {
|
|
|
115
117
|
console.log(`Iniciando um novo worker no cluster ${c.config.name}`)
|
|
116
118
|
|
|
117
119
|
cluster.emit(
|
|
118
|
-
t.getClusterEvents(c.config.name).worker.exit,
|
|
120
|
+
t.getClusterEvents(c.config.name).worker.exit,
|
|
119
121
|
worker,
|
|
120
122
|
code,
|
|
121
123
|
signal,
|
package/src/libs/sql.ts
CHANGED
|
@@ -101,14 +101,15 @@ export class Query<T extends Model.Template, C extends Model.Converters<T>> {
|
|
|
101
101
|
const stream = this.query.stream()
|
|
102
102
|
|
|
103
103
|
stream.on('close', async () => {
|
|
104
|
-
|
|
105
|
-
return resolve(handler.close<Y>())
|
|
106
|
-
}
|
|
104
|
+
return resolve(handler.close<Y>())
|
|
107
105
|
})
|
|
108
106
|
|
|
109
107
|
stream.on('data', async row => {
|
|
110
108
|
if (shoudContinue) {
|
|
111
109
|
shoudContinue = await handler.row(row)
|
|
110
|
+
} else {
|
|
111
|
+
stream.pause()
|
|
112
|
+
stream.end()
|
|
112
113
|
}
|
|
113
114
|
})
|
|
114
115
|
|
|
@@ -174,6 +175,12 @@ export class Query<T extends Model.Template, C extends Model.Converters<T>> {
|
|
|
174
175
|
.then(
|
|
175
176
|
lineResult => {
|
|
176
177
|
c(lineResult).then(r => {
|
|
178
|
+
if (r.errorID !== undefined) {
|
|
179
|
+
shoudContinue = false
|
|
180
|
+
error = r
|
|
181
|
+
return
|
|
182
|
+
}
|
|
183
|
+
|
|
177
184
|
shoudContinue = shoudContinue ? r : shoudContinue
|
|
178
185
|
})
|
|
179
186
|
}
|
package/src/tests/model.test.ts
CHANGED
|
@@ -20,38 +20,34 @@ describe('PlataModels', () => {
|
|
|
20
20
|
param: [ PlataModels.Optional(), PlataModels.Decimal(10,2) ]
|
|
21
21
|
}]
|
|
22
22
|
} as const, {
|
|
23
|
-
toValidationsOkay: (x): typeof modelValidations.type => {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
varCharMin: '',
|
|
52
|
-
varChar: '11',
|
|
53
|
-
} as any // Forced just for test
|
|
54
|
-
}
|
|
23
|
+
toValidationsOkay: (x): typeof modelValidations.type => Plata.BuildObject({
|
|
24
|
+
enum: 0,
|
|
25
|
+
stringDateTime: '2022-12-04T02:06:22',
|
|
26
|
+
dateTime: new Date(),
|
|
27
|
+
decimal: 99.99,
|
|
28
|
+
intMin: 5,
|
|
29
|
+
intMax: 5,
|
|
30
|
+
intRequired: 1,
|
|
31
|
+
smallDateTime: '2022-12-04',
|
|
32
|
+
telefone: '99-999999999',
|
|
33
|
+
telefoneDDI: '+055 99-999999999',
|
|
34
|
+
varCharMin: '1',
|
|
35
|
+
varChar: '1',
|
|
36
|
+
}),
|
|
37
|
+
toValidationsError: (x): typeof modelValidations.type => Plata.BuildObject({
|
|
38
|
+
enum: 2,
|
|
39
|
+
stringDateTime: '',
|
|
40
|
+
dateTime: '',
|
|
41
|
+
decimal: 5.666666666666,
|
|
42
|
+
intMin: 1,
|
|
43
|
+
intMax: 6,
|
|
44
|
+
intRequired: null,
|
|
45
|
+
smallDateTime: '',
|
|
46
|
+
telefone: '',
|
|
47
|
+
telefoneDDI: '',
|
|
48
|
+
varCharMin: '',
|
|
49
|
+
varChar: '11',
|
|
50
|
+
}) as any // Forced just for test
|
|
55
51
|
})
|
|
56
52
|
|
|
57
53
|
const modelValidations = new PlataModels.ModelTemplate({
|