temba 0.8.0 → 0.10.0
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 +38 -30
- package/dist/config/index.js +57 -73
- package/dist/config/index.js.map +1 -0
- package/dist/delay/delayMiddleware.js +16 -0
- package/dist/delay/delayMiddleware.js.map +1 -0
- package/dist/delay/middleware.js +14 -14
- package/dist/delay/middleware.js.map +1 -0
- package/dist/errors/errors.js +34 -0
- package/dist/errors/errors.js.map +1 -0
- package/dist/errors/index.js +10 -18
- package/dist/errors/index.js.map +1 -0
- package/dist/errors/middleware.js +9 -12
- package/dist/errors/middleware.js.map +1 -0
- package/dist/errors/types.js +13 -0
- package/dist/errors/types.js.map +1 -0
- package/dist/logging/index.js +37 -36
- package/dist/logging/index.js.map +1 -0
- package/dist/queries/in-memory.js +48 -79
- package/dist/queries/in-memory.js.map +1 -0
- package/dist/queries/index.js +15 -19
- package/dist/queries/index.js.map +1 -0
- package/dist/queries/mongo.js +73 -277
- package/dist/queries/mongo.js.map +1 -0
- package/dist/queries/queries.js +17 -0
- package/dist/queries/queries.js.map +1 -0
- package/dist/routes/delete.js +37 -80
- package/dist/routes/delete.js.map +1 -0
- package/dist/routes/get.js +42 -81
- package/dist/routes/get.js.map +1 -0
- package/dist/routes/index.js +51 -90
- package/dist/routes/index.js.map +1 -0
- package/dist/routes/post.js +43 -61
- package/dist/routes/post.js.map +1 -0
- package/dist/routes/put.js +41 -88
- package/dist/routes/put.js.map +1 -0
- package/dist/routes/routes.js +56 -0
- package/dist/routes/routes.js.map +1 -0
- package/dist/routes/types.js +3 -0
- package/dist/routes/types.js.map +1 -0
- package/dist/routes/validator.js +20 -19
- package/dist/routes/validator.js.map +1 -0
- package/dist/server.js +72 -75
- package/dist/server.js.map +1 -0
- package/dist/urls/middleware.js +26 -38
- package/dist/urls/middleware.js.map +1 -0
- package/dist/urls/urlMiddleware.js +31 -0
- package/dist/urls/urlMiddleware.js.map +1 -0
- package/dist/urls/urlParser.js +11 -20
- package/dist/urls/urlParser.js.map +1 -0
- package/package.json +22 -13
package/dist/routes/delete.js
CHANGED
|
@@ -1,82 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
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
|
+
exports.createDeleteRoutes = void 0;
|
|
14
13
|
function createDeleteRoutes(queries) {
|
|
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
|
-
if (!item) {
|
|
42
|
-
_context.next = 9;
|
|
43
|
-
break;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
_context.next = 9;
|
|
47
|
-
return queries.deleteById(resourceName, id);
|
|
48
|
-
|
|
49
|
-
case 9:
|
|
50
|
-
_context.next = 13;
|
|
51
|
-
break;
|
|
52
|
-
|
|
53
|
-
case 11:
|
|
54
|
-
_context.next = 13;
|
|
55
|
-
return queries.deleteAll(resourceName);
|
|
56
|
-
|
|
57
|
-
case 13:
|
|
58
|
-
_context.next = 18;
|
|
59
|
-
break;
|
|
60
|
-
|
|
61
|
-
case 15:
|
|
62
|
-
_context.prev = 15;
|
|
63
|
-
_context.t0 = _context["catch"](0);
|
|
64
|
-
return _context.abrupt("return", next(_context.t0));
|
|
65
|
-
|
|
66
|
-
case 18:
|
|
67
|
-
return _context.abrupt("return", res.status(204).send());
|
|
68
|
-
|
|
69
|
-
case 19:
|
|
70
|
-
case "end":
|
|
71
|
-
return _context.stop();
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
}, _callee, null, [[0, 15]]);
|
|
75
|
-
}));
|
|
76
|
-
return _handleDelete.apply(this, arguments);
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
return {
|
|
80
|
-
handleDelete: handleDelete
|
|
81
|
-
};
|
|
82
|
-
}
|
|
14
|
+
function handleDelete(req, res, next) {
|
|
15
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
try {
|
|
17
|
+
const { resourceName, id } = req.requestInfo;
|
|
18
|
+
if (id) {
|
|
19
|
+
const item = yield queries.getById(resourceName, id);
|
|
20
|
+
if (item) {
|
|
21
|
+
yield queries.deleteById(resourceName, id);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
yield queries.deleteAll(resourceName);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
catch (error) {
|
|
29
|
+
return next(error);
|
|
30
|
+
}
|
|
31
|
+
return res.status(204).send();
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
handleDelete,
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
exports.createDeleteRoutes = createDeleteRoutes;
|
|
39
|
+
//# sourceMappingURL=delete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../src/routes/delete.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,SAAS,kBAAkB,CAAC,OAAO;IACjC,SAAe,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI;;YACxC,IAAI;gBACF,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC,WAAW,CAAA;gBAE5C,IAAI,EAAE,EAAE;oBACN,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;oBACpD,IAAI,IAAI,EAAE;wBACR,MAAM,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;qBAC3C;iBACF;qBAAM;oBACL,MAAM,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;iBACtC;aACF;YAAC,OAAO,KAAc,EAAE;gBACvB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;aACnB;YAED,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;QAC/B,CAAC;KAAA;IAED,OAAO;QACL,YAAY;KACb,CAAA;AACH,CAAC;AAEQ,gDAAkB"}
|
package/dist/routes/get.js
CHANGED
|
@@ -1,83 +1,44 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
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
|
+
exports.createGetRoutes = void 0;
|
|
14
13
|
function createGetRoutes(queries, cacheControl) {
|
|
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
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
res.status(404);
|
|
48
|
-
return _context.abrupt("return", res.send());
|
|
49
|
-
|
|
50
|
-
case 10:
|
|
51
|
-
res.status(200);
|
|
52
|
-
res.json(item);
|
|
53
|
-
return _context.abrupt("return", res.send());
|
|
54
|
-
|
|
55
|
-
case 13:
|
|
56
|
-
_context.next = 15;
|
|
57
|
-
return queries.getAll(resourceName);
|
|
58
|
-
|
|
59
|
-
case 15:
|
|
60
|
-
items = _context.sent;
|
|
61
|
-
res.status(200);
|
|
62
|
-
res.json(items);
|
|
63
|
-
return _context.abrupt("return", res.send());
|
|
64
|
-
|
|
65
|
-
case 21:
|
|
66
|
-
_context.prev = 21;
|
|
67
|
-
_context.t0 = _context["catch"](0);
|
|
68
|
-
return _context.abrupt("return", next(_context.t0));
|
|
69
|
-
|
|
70
|
-
case 24:
|
|
71
|
-
case "end":
|
|
72
|
-
return _context.stop();
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}, _callee, null, [[0, 21]]);
|
|
76
|
-
}));
|
|
77
|
-
return _handleGetResource.apply(this, arguments);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
return {
|
|
81
|
-
handleGetResource: handleGetResource
|
|
82
|
-
};
|
|
83
|
-
}
|
|
14
|
+
function handleGetResource(req, res, next) {
|
|
15
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
try {
|
|
17
|
+
const { resourceName, id } = req.requestInfo;
|
|
18
|
+
res.set('Cache-control', cacheControl);
|
|
19
|
+
if (id) {
|
|
20
|
+
const item = yield queries.getById(resourceName, id);
|
|
21
|
+
if (!item) {
|
|
22
|
+
res.status(404);
|
|
23
|
+
return res.send();
|
|
24
|
+
}
|
|
25
|
+
res.status(200);
|
|
26
|
+
res.json(item);
|
|
27
|
+
return res.send();
|
|
28
|
+
}
|
|
29
|
+
const items = yield queries.getAll(resourceName);
|
|
30
|
+
res.status(200);
|
|
31
|
+
res.json(items);
|
|
32
|
+
return res.send();
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
return next(error);
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
return {
|
|
40
|
+
handleGetResource,
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
exports.createGetRoutes = createGetRoutes;
|
|
44
|
+
//# sourceMappingURL=get.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../src/routes/get.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,SAAS,eAAe,CAAC,OAAO,EAAE,YAAY;IAC5C,SAAe,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI;;YAC7C,IAAI;gBACF,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC,WAAW,CAAA;gBAE5C,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAA;gBAEtC,IAAI,EAAE,EAAE;oBACN,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;oBAEpD,IAAI,CAAC,IAAI,EAAE;wBACT,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;wBACf,OAAO,GAAG,CAAC,IAAI,EAAE,CAAA;qBAClB;oBAED,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;oBACf,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBACd,OAAO,GAAG,CAAC,IAAI,EAAE,CAAA;iBAClB;gBAED,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;gBAChD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBACf,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACf,OAAO,GAAG,CAAC,IAAI,EAAE,CAAA;aAClB;YAAC,OAAO,KAAc,EAAE;gBACvB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;aACnB;QACH,CAAC;KAAA;IAED,OAAO;QACL,iBAAiB;KAClB,CAAA;AACH,CAAC;AAEQ,0CAAe"}
|
package/dist/routes/index.js
CHANGED
|
@@ -1,95 +1,56 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
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
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.handleNotFound = exports.handleMethodNotAllowed = exports.rootRouter = exports.createResourceRouter = void 0;
|
|
16
|
+
const get_1 = require("./get");
|
|
17
|
+
const post_1 = require("./post");
|
|
18
|
+
const put_1 = require("./put");
|
|
19
|
+
const delete_1 = require("./delete");
|
|
20
|
+
const middleware_1 = require("../urls/middleware");
|
|
21
|
+
const express_1 = __importDefault(require("express"));
|
|
22
|
+
function createResourceRouter(queries, { validateResources, resourceNames, apiPrefix, cacheControl, requestBodyValidator, }) {
|
|
23
|
+
const { handleGetResource } = (0, get_1.createGetRoutes)(queries, cacheControl);
|
|
24
|
+
const { handlePost } = (0, post_1.createPostRoutes)(queries, requestBodyValidator);
|
|
25
|
+
const { handlePut } = (0, put_1.createPutRoutes)(queries, requestBodyValidator);
|
|
26
|
+
const { handleDelete } = (0, delete_1.createDeleteRoutes)(queries);
|
|
27
|
+
const validateResource = (0, middleware_1.createValidateResourceMiddleware)(validateResources, resourceNames);
|
|
28
|
+
const getResourceAndId = (0, middleware_1.createResourceAndIdParser)(apiPrefix);
|
|
29
|
+
var resourceRouter = express_1.default.Router();
|
|
30
|
+
resourceRouter
|
|
31
|
+
.get('*', getResourceAndId, validateResource, handleGetResource)
|
|
32
|
+
.post('*', getResourceAndId, validateResource, handlePost)
|
|
33
|
+
.put('*', getResourceAndId, validateResource, handlePut)
|
|
34
|
+
.delete('*', getResourceAndId, validateResource, handleDelete);
|
|
35
|
+
return resourceRouter;
|
|
36
|
+
}
|
|
8
37
|
exports.createResourceRouter = createResourceRouter;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
exports.rootRouter = void 0;
|
|
12
|
-
|
|
13
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
14
|
-
|
|
15
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
16
|
-
|
|
17
|
-
var _get = require("./get");
|
|
18
|
-
|
|
19
|
-
var _post = require("./post");
|
|
20
|
-
|
|
21
|
-
var _put = require("./put");
|
|
22
|
-
|
|
23
|
-
var _delete = require("./delete");
|
|
24
|
-
|
|
25
|
-
var _middleware = require("../urls/middleware");
|
|
26
|
-
|
|
27
|
-
var _express = _interopRequireDefault(require("express"));
|
|
28
|
-
|
|
29
|
-
function createResourceRouter(queries, _ref) {
|
|
30
|
-
var validateResources = _ref.validateResources,
|
|
31
|
-
resourceNames = _ref.resourceNames,
|
|
32
|
-
apiPrefix = _ref.apiPrefix,
|
|
33
|
-
cacheControl = _ref.cacheControl,
|
|
34
|
-
requestBodyValidator = _ref.requestBodyValidator;
|
|
35
|
-
|
|
36
|
-
var _createGetRoutes = (0, _get.createGetRoutes)(queries, cacheControl),
|
|
37
|
-
handleGetResource = _createGetRoutes.handleGetResource;
|
|
38
|
-
|
|
39
|
-
var _createPostRoutes = (0, _post.createPostRoutes)(queries, requestBodyValidator),
|
|
40
|
-
handlePost = _createPostRoutes.handlePost;
|
|
41
|
-
|
|
42
|
-
var _createPutRoutes = (0, _put.createPutRoutes)(queries, requestBodyValidator),
|
|
43
|
-
handlePut = _createPutRoutes.handlePut;
|
|
44
|
-
|
|
45
|
-
var _createDeleteRoutes = (0, _delete.createDeleteRoutes)(queries),
|
|
46
|
-
handleDelete = _createDeleteRoutes.handleDelete;
|
|
47
|
-
|
|
48
|
-
var validateResource = (0, _middleware.createValidateResourceMiddleware)(validateResources, resourceNames);
|
|
49
|
-
var getResourceAndId = (0, _middleware.createResourceAndIdParser)(apiPrefix);
|
|
50
|
-
|
|
51
|
-
var resourceRouter = _express["default"].Router();
|
|
52
|
-
|
|
53
|
-
resourceRouter.get('*', getResourceAndId, validateResource, handleGetResource).post('*', getResourceAndId, validateResource, handlePost).put('*', getResourceAndId, validateResource, handlePut)["delete"]('*', getResourceAndId, validateResource, handleDelete);
|
|
54
|
-
return resourceRouter;
|
|
55
|
-
} // A GET to the root URL shows a default message.
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
var rootRouter = _express["default"].Router();
|
|
59
|
-
|
|
38
|
+
// A GET to the root URL shows a default message.
|
|
39
|
+
const rootRouter = express_1.default.Router();
|
|
60
40
|
exports.rootRouter = rootRouter;
|
|
61
|
-
rootRouter.get('/',
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
return _context.abrupt("return", res.send('It works! ツ'));
|
|
68
|
-
|
|
69
|
-
case 1:
|
|
70
|
-
case "end":
|
|
71
|
-
return _context.stop();
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
}, _callee);
|
|
75
|
-
}));
|
|
76
|
-
|
|
77
|
-
return function (_x, _x2) {
|
|
78
|
-
return _ref2.apply(this, arguments);
|
|
79
|
-
};
|
|
80
|
-
}()); // All other requests to the root URL are not allowed.
|
|
81
|
-
|
|
82
|
-
rootRouter.all('/', handleMethodNotAllowed); // Route for handling not allowed methods.
|
|
83
|
-
|
|
41
|
+
rootRouter.get('/', (_, res) => __awaiter(void 0, void 0, void 0, function* () {
|
|
42
|
+
return res.send('It works! ツ');
|
|
43
|
+
}));
|
|
44
|
+
// All other requests to the root URL are not allowed.
|
|
45
|
+
rootRouter.all('/', handleMethodNotAllowed);
|
|
46
|
+
// Route for handling not allowed methods.
|
|
84
47
|
function handleMethodNotAllowed(_, res) {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
48
|
+
res.status(405).json({ message: 'Method Not Allowed' });
|
|
49
|
+
}
|
|
50
|
+
exports.handleMethodNotAllowed = handleMethodNotAllowed;
|
|
51
|
+
// Route for handling not found.
|
|
91
52
|
function handleNotFound(_, res) {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
53
|
+
res.status(404).json({ message: 'Not Found' });
|
|
54
|
+
}
|
|
55
|
+
exports.handleNotFound = handleNotFound;
|
|
56
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/routes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+BAAuC;AACvC,iCAAyC;AACzC,+BAAuC;AACvC,qCAA6C;AAC7C,mDAG2B;AAE3B,sDAA6B;AAE7B,SAAS,oBAAoB,CAC3B,OAAO,EACP,EACE,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,YAAY,EACZ,oBAAoB,GACrB;IAED,MAAM,EAAE,iBAAiB,EAAE,GAAG,IAAA,qBAAe,EAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IACpE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAA,uBAAgB,EAAC,OAAO,EAAE,oBAAoB,CAAC,CAAA;IACtE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAA,qBAAe,EAAC,OAAO,EAAE,oBAAoB,CAAC,CAAA;IACpE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAA,2BAAkB,EAAC,OAAO,CAAC,CAAA;IAEpD,MAAM,gBAAgB,GAAG,IAAA,6CAAgC,EACvD,iBAAiB,EACjB,aAAa,CACd,CAAA;IACD,MAAM,gBAAgB,GAAG,IAAA,sCAAyB,EAAC,SAAS,CAAC,CAAA;IAE7D,IAAI,cAAc,GAAG,iBAAO,CAAC,MAAM,EAAE,CAAA;IAErC,cAAc;SACX,GAAG,CAAC,GAAG,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,CAAC;SAC/D,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,UAAU,CAAC;SACzD,GAAG,CAAC,GAAG,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,SAAS,CAAC;SACvD,MAAM,CAAC,GAAG,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAA;IAEhE,OAAO,cAAc,CAAA;AACvB,CAAC;AAsBC,oDAAoB;AApBtB,iDAAiD;AACjD,MAAM,UAAU,GAAG,iBAAO,CAAC,MAAM,EAAE,CAAA;AAoBjC,gCAAU;AAnBZ,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,CAAO,CAAC,EAAE,GAAG,EAAE,EAAE;IACnC,OAAO,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;AAChC,CAAC,CAAA,CAAC,CAAA;AAEF,sDAAsD;AACtD,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAA;AAE3C,0CAA0C;AAC1C,SAAS,sBAAsB,CAAC,CAAC,EAAE,GAAG;IACpC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAA;AACzD,CAAC;AAUC,wDAAsB;AARxB,gCAAgC;AAChC,SAAS,cAAc,CAAC,CAAC,EAAE,GAAG;IAC5B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAA;AAChD,CAAC;AAMC,wCAAc"}
|
package/dist/routes/post.js
CHANGED
|
@@ -1,64 +1,46 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
var _validator = require("./validator");
|
|
17
|
-
|
|
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
|
+
exports.createPostRoutes = void 0;
|
|
13
|
+
const url_1 = require("url");
|
|
14
|
+
const validator_1 = require("./validator");
|
|
18
15
|
function createPostRoutes(queries, requestBodyValidator) {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
return queries.create(resourceName, requestBody);
|
|
35
|
-
|
|
36
|
-
case 5:
|
|
37
|
-
newItem = _context.sent;
|
|
38
|
-
return _context.abrupt("return", res.set({
|
|
39
|
-
Location: (0, _url.format)({
|
|
40
|
-
protocol: req.protocol,
|
|
41
|
-
host: req.get('host'),
|
|
42
|
-
pathname: "".concat(resourceName, "/").concat(newItem.id)
|
|
16
|
+
function handlePost(req, res, next) {
|
|
17
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
18
|
+
try {
|
|
19
|
+
const { resourceName } = req.requestInfo;
|
|
20
|
+
const requestBody = (0, validator_1.validateRequestBody)(requestBodyValidator.post, req);
|
|
21
|
+
if (typeof requestBody === 'string')
|
|
22
|
+
return res.status(400).json({ message: requestBody }).send();
|
|
23
|
+
const newItem = yield queries.create(resourceName, requestBody);
|
|
24
|
+
return res
|
|
25
|
+
.set({
|
|
26
|
+
Location: (0, url_1.format)({
|
|
27
|
+
protocol: req.protocol,
|
|
28
|
+
host: req.get('host'),
|
|
29
|
+
pathname: `${resourceName}/${newItem.id}`,
|
|
30
|
+
}),
|
|
43
31
|
})
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
return {
|
|
62
|
-
handlePost: handlePost
|
|
63
|
-
};
|
|
64
|
-
}
|
|
32
|
+
.status(201)
|
|
33
|
+
.json(newItem)
|
|
34
|
+
.send();
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
return next(error);
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
return {
|
|
42
|
+
handlePost,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
exports.createPostRoutes = createPostRoutes;
|
|
46
|
+
//# sourceMappingURL=post.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"post.js","sourceRoot":"","sources":["../../src/routes/post.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6BAA4B;AAC5B,2CAAiD;AAEjD,SAAS,gBAAgB,CAAC,OAAO,EAAE,oBAAoB;IACrD,SAAe,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI;;YACtC,IAAI;gBACF,MAAM,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC,WAAW,CAAA;gBAExC,MAAM,WAAW,GAAG,IAAA,+BAAmB,EAAC,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;gBAEvE,IAAI,OAAO,WAAW,KAAK,QAAQ;oBACjC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;gBAE9D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,CAAA;gBAE/D,OAAO,GAAG;qBACP,GAAG,CAAC;oBACH,QAAQ,EAAE,IAAA,YAAM,EAAC;wBACf,QAAQ,EAAE,GAAG,CAAC,QAAQ;wBACtB,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;wBACrB,QAAQ,EAAE,GAAG,YAAY,IAAI,OAAO,CAAC,EAAE,EAAE;qBAC1C,CAAC;iBACH,CAAC;qBACD,MAAM,CAAC,GAAG,CAAC;qBACX,IAAI,CAAC,OAAO,CAAC;qBACb,IAAI,EAAE,CAAA;aACV;YAAC,OAAO,KAAc,EAAE;gBACvB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;aACnB;QACH,CAAC;KAAA;IAED,OAAO;QACL,UAAU;KACX,CAAA;AACH,CAAC;AAEQ,4CAAgB"}
|