@nymphjs/server 1.0.0-beta.8 → 1.0.0-beta.80
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/CHANGELOG.md +311 -0
- package/README.md +74 -2
- package/dist/HttpError.d.ts +5 -0
- package/dist/HttpError.js +15 -0
- package/dist/HttpError.js.map +1 -0
- package/dist/cache.test.js +2 -1
- package/dist/cache.test.js.map +1 -1
- package/dist/createServer.d.ts +17 -0
- package/dist/createServer.js +907 -0
- package/dist/createServer.js.map +1 -0
- package/dist/index.d.ts +5 -5
- package/dist/index.js +18 -712
- package/dist/index.js.map +1 -1
- package/dist/index.test.js +123 -5
- package/dist/index.test.js.map +1 -1
- package/dist/statusDescriptions.d.ts +6 -0
- package/dist/statusDescriptions.js +72 -0
- package/dist/statusDescriptions.js.map +1 -0
- package/dist/testArtifacts.d.ts +59 -7
- package/dist/testArtifacts.js +170 -58
- package/dist/testArtifacts.js.map +1 -1
- package/package.json +16 -16
- package/src/HttpError.ts +12 -0
- package/src/cache.test.ts +2 -2
- package/src/createServer.ts +974 -0
- package/src/index.test.ts +161 -25
- package/src/index.ts +5 -793
- package/src/statusDescriptions.ts +68 -0
- package/src/testArtifacts.ts +186 -39
- package/tsconfig.json +3 -3
- package/typedoc.json +4 -0
package/dist/testArtifacts.js
CHANGED
|
@@ -1,55 +1,63 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Employee = exports.BadFunctionCallError = exports.EmployeeModel = void 0;
|
|
3
|
+
exports.PubSubDisabled = exports.PubSubDisabledModel = exports.Restricted = exports.RestrictedModel = exports.Employee = exports.BadFunctionCallError = exports.EmployeeModel = void 0;
|
|
4
4
|
const nymph_1 = require("@nymphjs/nymph");
|
|
5
5
|
const client_1 = require("@nymphjs/client");
|
|
6
|
+
const HttpError_1 = require("./HttpError");
|
|
6
7
|
const IS_MANAGER = true;
|
|
8
|
+
/**
|
|
9
|
+
* This class is a test class that extends the Entity class.
|
|
10
|
+
*/
|
|
7
11
|
class EmployeeModel extends nymph_1.Entity {
|
|
8
|
-
static
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
12
|
+
static ETYPE = 'employee';
|
|
13
|
+
static class = 'Employee';
|
|
14
|
+
$clientEnabledMethods = [
|
|
15
|
+
'$testMethodStateless',
|
|
16
|
+
'$testMethod',
|
|
17
|
+
'$throwError',
|
|
18
|
+
'$throwHttpError',
|
|
19
|
+
'$throwHttpErrorWithDescription',
|
|
20
|
+
];
|
|
21
|
+
static clientEnabledStaticMethods = [
|
|
22
|
+
'testStatic',
|
|
23
|
+
'testStaticIterable',
|
|
24
|
+
'testStaticIterableAbort',
|
|
25
|
+
'throwErrorStatic',
|
|
26
|
+
'throwErrorStaticIterable',
|
|
27
|
+
];
|
|
28
|
+
$protectedTags = ['employee'];
|
|
29
|
+
$allowlistTags = ['boss', 'bigcheese'];
|
|
30
|
+
$allowlistData = [
|
|
31
|
+
'name',
|
|
32
|
+
'id',
|
|
33
|
+
'title',
|
|
34
|
+
'department',
|
|
35
|
+
'subordinates',
|
|
36
|
+
'salary',
|
|
37
|
+
'current',
|
|
38
|
+
'startDate',
|
|
39
|
+
'endDate',
|
|
40
|
+
'phone',
|
|
41
|
+
'manager',
|
|
42
|
+
'building',
|
|
43
|
+
];
|
|
44
|
+
constructor() {
|
|
45
|
+
super();
|
|
46
|
+
this.$addTag('employee');
|
|
47
|
+
this.$data.current = true;
|
|
48
|
+
this.$data.startDate = Date.now();
|
|
49
|
+
this.$data.subordinates = [];
|
|
50
|
+
if (!IS_MANAGER) {
|
|
51
|
+
this.$privateData.push('salary');
|
|
45
52
|
}
|
|
46
53
|
}
|
|
47
54
|
async $save() {
|
|
55
|
+
// Validate employee data.
|
|
48
56
|
const error = new nymph_1.EntityInvalidDataError('Invalid entity data.');
|
|
49
|
-
if (this.$data.name == null || this.$data.name
|
|
57
|
+
if (this.$data.name == null || this.$data.name === '') {
|
|
50
58
|
error.addField('name');
|
|
51
59
|
}
|
|
52
|
-
if (this.$data.title == null || this.$data.title
|
|
60
|
+
if (this.$data.title == null || this.$data.title === '') {
|
|
53
61
|
error.addField('title');
|
|
54
62
|
}
|
|
55
63
|
if (this.$data.startDate == null) {
|
|
@@ -58,6 +66,7 @@ class EmployeeModel extends nymph_1.Entity {
|
|
|
58
66
|
if (error.getFields().length) {
|
|
59
67
|
throw error;
|
|
60
68
|
}
|
|
69
|
+
// Generate employee ID.
|
|
61
70
|
if (this.$data.id == null) {
|
|
62
71
|
this.$data.id = (await this.$nymph.newUID('employee')) ?? undefined;
|
|
63
72
|
}
|
|
@@ -74,20 +83,38 @@ class EmployeeModel extends nymph_1.Entity {
|
|
|
74
83
|
static testStatic(value) {
|
|
75
84
|
return value * 2;
|
|
76
85
|
}
|
|
86
|
+
static *testStaticIterable(value) {
|
|
87
|
+
yield value + 1;
|
|
88
|
+
yield value + 2;
|
|
89
|
+
yield value + 3;
|
|
90
|
+
}
|
|
91
|
+
static *testStaticIterableAbort() {
|
|
92
|
+
let aborted = yield 1;
|
|
93
|
+
if (!aborted) {
|
|
94
|
+
throw new Error("testStaticIterableAbort wasn't aborted after the first iteration.");
|
|
95
|
+
}
|
|
96
|
+
}
|
|
77
97
|
static throwErrorStatic() {
|
|
78
98
|
throw new BadFunctionCallError('This function only throws errors.');
|
|
79
99
|
}
|
|
100
|
+
static *throwErrorStaticIterable() {
|
|
101
|
+
yield 1;
|
|
102
|
+
throw new BadFunctionCallError('This function throws errors after the first iteration.');
|
|
103
|
+
}
|
|
80
104
|
$throwError() {
|
|
81
105
|
throw new BadFunctionCallError('This function only throws errors.');
|
|
82
106
|
}
|
|
107
|
+
$throwHttpError() {
|
|
108
|
+
throw new HttpError_1.HttpError('A 501 HTTP error.', 501);
|
|
109
|
+
}
|
|
110
|
+
$throwHttpErrorWithDescription() {
|
|
111
|
+
throw new HttpError_1.HttpError('A 512 HTTP error.', 512, 'Some Error');
|
|
112
|
+
}
|
|
83
113
|
static inaccessibleMethod() {
|
|
84
114
|
return true;
|
|
85
115
|
}
|
|
86
116
|
}
|
|
87
117
|
exports.EmployeeModel = EmployeeModel;
|
|
88
|
-
EmployeeModel.ETYPE = 'employee';
|
|
89
|
-
EmployeeModel.class = 'Employee';
|
|
90
|
-
EmployeeModel.clientEnabledStaticMethods = ['testStatic', 'throwErrorStatic'];
|
|
91
118
|
class BadFunctionCallError extends Error {
|
|
92
119
|
constructor(message) {
|
|
93
120
|
super(message);
|
|
@@ -96,19 +123,13 @@ class BadFunctionCallError extends Error {
|
|
|
96
123
|
}
|
|
97
124
|
exports.BadFunctionCallError = BadFunctionCallError;
|
|
98
125
|
class Employee extends client_1.Entity {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
}
|
|
107
|
-
static async factory(guid) {
|
|
108
|
-
return (await super.factory(guid));
|
|
109
|
-
}
|
|
110
|
-
static factorySync(guid) {
|
|
111
|
-
return super.factorySync(guid);
|
|
126
|
+
// The name of the server class
|
|
127
|
+
static class = 'Employee';
|
|
128
|
+
constructor() {
|
|
129
|
+
super();
|
|
130
|
+
this.$addTag('employee');
|
|
131
|
+
this.$data.current = true;
|
|
132
|
+
this.$data.subordinates = [];
|
|
112
133
|
}
|
|
113
134
|
$testMethod(value) {
|
|
114
135
|
return this.$serverCall('$testMethod', [value]);
|
|
@@ -119,17 +140,108 @@ class Employee extends client_1.Entity {
|
|
|
119
140
|
$throwError() {
|
|
120
141
|
return this.$serverCall('$throwError', []);
|
|
121
142
|
}
|
|
143
|
+
$throwHttpError() {
|
|
144
|
+
return this.$serverCall('$throwHttpError', []);
|
|
145
|
+
}
|
|
146
|
+
$throwHttpErrorWithDescription() {
|
|
147
|
+
return this.$serverCall('$throwHttpErrorWithDescription', []);
|
|
148
|
+
}
|
|
122
149
|
static testStatic(value) {
|
|
123
150
|
return this.serverCallStatic('testStatic', [value]);
|
|
124
151
|
}
|
|
152
|
+
static testStaticIterable(value) {
|
|
153
|
+
return this.serverCallStaticIterator('testStaticIterable', [value]);
|
|
154
|
+
}
|
|
155
|
+
static testStaticIterableAbort() {
|
|
156
|
+
return this.serverCallStaticIterator('testStaticIterableAbort', []);
|
|
157
|
+
}
|
|
125
158
|
static throwErrorStatic() {
|
|
126
159
|
return this.serverCallStatic('throwErrorStatic', []);
|
|
127
160
|
}
|
|
161
|
+
static throwErrorStaticIterable() {
|
|
162
|
+
return this.serverCallStaticIterator('throwErrorStaticIterable', []);
|
|
163
|
+
}
|
|
128
164
|
static inaccessibleMethod() {
|
|
129
165
|
return this.serverCallStatic('inaccessibleMethod', []);
|
|
130
166
|
}
|
|
131
167
|
}
|
|
132
168
|
exports.Employee = Employee;
|
|
133
|
-
|
|
134
|
-
|
|
169
|
+
/**
|
|
170
|
+
* This class is a test class that extends the Entity class.
|
|
171
|
+
*/
|
|
172
|
+
class RestrictedModel extends nymph_1.Entity {
|
|
173
|
+
static ETYPE = 'restricted';
|
|
174
|
+
static class = 'Restricted';
|
|
175
|
+
static restEnabled = false;
|
|
176
|
+
constructor() {
|
|
177
|
+
super();
|
|
178
|
+
this.$data.name = '';
|
|
179
|
+
}
|
|
180
|
+
async $save() {
|
|
181
|
+
// Validate entity data.
|
|
182
|
+
const error = new nymph_1.EntityInvalidDataError('Invalid entity data.');
|
|
183
|
+
if (this.$data.name == null || this.$data.name === '') {
|
|
184
|
+
error.addField('name');
|
|
185
|
+
}
|
|
186
|
+
if (error.getFields().length) {
|
|
187
|
+
throw error;
|
|
188
|
+
}
|
|
189
|
+
return await super.$save();
|
|
190
|
+
}
|
|
191
|
+
$testMethod(value) {
|
|
192
|
+
return value;
|
|
193
|
+
}
|
|
194
|
+
static testStatic(value) {
|
|
195
|
+
return value;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
exports.RestrictedModel = RestrictedModel;
|
|
199
|
+
class Restricted extends client_1.Entity {
|
|
200
|
+
// The name of the server class
|
|
201
|
+
static class = 'Restricted';
|
|
202
|
+
constructor() {
|
|
203
|
+
super();
|
|
204
|
+
this.$data.name = '';
|
|
205
|
+
}
|
|
206
|
+
$testMethod(value) {
|
|
207
|
+
return this.$serverCall('$testMethod', [value]);
|
|
208
|
+
}
|
|
209
|
+
static testStatic(value) {
|
|
210
|
+
return this.serverCallStatic('testStatic', [value]);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
exports.Restricted = Restricted;
|
|
214
|
+
/**
|
|
215
|
+
* This class is a test class that extends the Entity class.
|
|
216
|
+
*/
|
|
217
|
+
class PubSubDisabledModel extends nymph_1.Entity {
|
|
218
|
+
static ETYPE = 'pubsub_disabled';
|
|
219
|
+
static class = 'PubSubDisabled';
|
|
220
|
+
static pubSubEnabled = false;
|
|
221
|
+
constructor() {
|
|
222
|
+
super();
|
|
223
|
+
this.$data.name = '';
|
|
224
|
+
}
|
|
225
|
+
async $save() {
|
|
226
|
+
// Validate entity data.
|
|
227
|
+
const error = new nymph_1.EntityInvalidDataError('Invalid entity data.');
|
|
228
|
+
if (this.$data.name == null || this.$data.name === '') {
|
|
229
|
+
error.addField('name');
|
|
230
|
+
}
|
|
231
|
+
if (error.getFields().length) {
|
|
232
|
+
throw error;
|
|
233
|
+
}
|
|
234
|
+
return await super.$save();
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
exports.PubSubDisabledModel = PubSubDisabledModel;
|
|
238
|
+
class PubSubDisabled extends client_1.Entity {
|
|
239
|
+
// The name of the server class
|
|
240
|
+
static class = 'PubSubDisabled';
|
|
241
|
+
constructor() {
|
|
242
|
+
super();
|
|
243
|
+
this.$data.name = '';
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
exports.PubSubDisabled = PubSubDisabled;
|
|
135
247
|
//# sourceMappingURL=testArtifacts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testArtifacts.js","sourceRoot":"","sources":["../src/testArtifacts.ts"],"names":[],"mappings":";;;AAAA,0CAAgF;AAChF,4CAAyC;
|
|
1
|
+
{"version":3,"file":"testArtifacts.js","sourceRoot":"","sources":["../src/testArtifacts.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nymphjs/server",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "1.0.0-beta.80",
|
|
4
|
+
"description": "Nymph.js - REST Server",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"clean": "test -d dist && rm -r dist || true",
|
|
15
15
|
"build": "tsc",
|
|
16
16
|
"watch": "tsc --watch",
|
|
17
|
-
"
|
|
17
|
+
"prepublish": "npm run clean && npm run build",
|
|
18
18
|
"test": "jest",
|
|
19
19
|
"test:watch": "jest --watch"
|
|
20
20
|
},
|
|
@@ -31,21 +31,21 @@
|
|
|
31
31
|
},
|
|
32
32
|
"license": "Apache-2.0",
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@nymphjs/nymph": "^1.0.0-beta.
|
|
34
|
+
"@nymphjs/nymph": "^1.0.0-beta.80",
|
|
35
35
|
"cookie-parser": "^1.4.6",
|
|
36
|
-
"express": "^4.18.
|
|
36
|
+
"express": "^4.18.3"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@nymphjs/client": "^1.0.0-beta.
|
|
40
|
-
"@nymphjs/client-node": "^1.0.0-beta.
|
|
41
|
-
"@nymphjs/driver-sqlite3": "^1.0.0-beta.
|
|
42
|
-
"@tsconfig/recommended": "^1.0.
|
|
43
|
-
"@types/cookie-parser": "^1.4.
|
|
44
|
-
"@types/express": "^4.17.
|
|
45
|
-
"@types/jest": "^29.
|
|
46
|
-
"jest": "^29.
|
|
47
|
-
"ts-jest": "^29.
|
|
48
|
-
"typescript": "^
|
|
39
|
+
"@nymphjs/client": "^1.0.0-beta.80",
|
|
40
|
+
"@nymphjs/client-node": "^1.0.0-beta.80",
|
|
41
|
+
"@nymphjs/driver-sqlite3": "^1.0.0-beta.80",
|
|
42
|
+
"@tsconfig/recommended": "^1.0.3",
|
|
43
|
+
"@types/cookie-parser": "^1.4.7",
|
|
44
|
+
"@types/express": "^4.17.21",
|
|
45
|
+
"@types/jest": "^29.5.12",
|
|
46
|
+
"jest": "^29.7.0",
|
|
47
|
+
"ts-jest": "^29.1.2",
|
|
48
|
+
"typescript": "^5.3.3"
|
|
49
49
|
},
|
|
50
|
-
"gitHead": "
|
|
50
|
+
"gitHead": "685cfbb55dbc7826d97af1f05c7cc32f06852a6f"
|
|
51
51
|
}
|
package/src/HttpError.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export class HttpError extends Error {
|
|
2
|
+
status?: number;
|
|
3
|
+
statusText?: string;
|
|
4
|
+
|
|
5
|
+
constructor(message: string, status?: number, statusText?: string) {
|
|
6
|
+
super(message);
|
|
7
|
+
|
|
8
|
+
this.name = 'HttpError';
|
|
9
|
+
this.status = status;
|
|
10
|
+
this.statusText = statusText;
|
|
11
|
+
}
|
|
12
|
+
}
|
package/src/cache.test.ts
CHANGED
|
@@ -48,7 +48,7 @@ describe('Nymph REST Server and Client with Client Weak Ref Cache', () => {
|
|
|
48
48
|
// @ts-ignore TS doesn't know about WeakRef.
|
|
49
49
|
if (typeof WeakRef === 'undefined') {
|
|
50
50
|
throw new Error(
|
|
51
|
-
'You must run this test in an environment that includes WeakRef.'
|
|
51
|
+
'You must run this test in an environment that includes WeakRef.',
|
|
52
52
|
);
|
|
53
53
|
}
|
|
54
54
|
|
|
@@ -61,7 +61,7 @@ describe('Nymph REST Server and Client with Client Weak Ref Cache', () => {
|
|
|
61
61
|
const checkA = await Employee.factory(employee.guid);
|
|
62
62
|
const checkB = await nymph.getEntity(
|
|
63
63
|
{ class: Employee },
|
|
64
|
-
{ type: '&', guid: employee.guid }
|
|
64
|
+
{ type: '&', guid: employee.guid },
|
|
65
65
|
);
|
|
66
66
|
|
|
67
67
|
if (!checkB) {
|