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.
Files changed (50) hide show
  1. package/README.md +38 -30
  2. package/dist/config/index.js +57 -73
  3. package/dist/config/index.js.map +1 -0
  4. package/dist/delay/delayMiddleware.js +16 -0
  5. package/dist/delay/delayMiddleware.js.map +1 -0
  6. package/dist/delay/middleware.js +14 -14
  7. package/dist/delay/middleware.js.map +1 -0
  8. package/dist/errors/errors.js +34 -0
  9. package/dist/errors/errors.js.map +1 -0
  10. package/dist/errors/index.js +10 -18
  11. package/dist/errors/index.js.map +1 -0
  12. package/dist/errors/middleware.js +9 -12
  13. package/dist/errors/middleware.js.map +1 -0
  14. package/dist/errors/types.js +13 -0
  15. package/dist/errors/types.js.map +1 -0
  16. package/dist/logging/index.js +37 -36
  17. package/dist/logging/index.js.map +1 -0
  18. package/dist/queries/in-memory.js +48 -79
  19. package/dist/queries/in-memory.js.map +1 -0
  20. package/dist/queries/index.js +15 -19
  21. package/dist/queries/index.js.map +1 -0
  22. package/dist/queries/mongo.js +73 -277
  23. package/dist/queries/mongo.js.map +1 -0
  24. package/dist/queries/queries.js +17 -0
  25. package/dist/queries/queries.js.map +1 -0
  26. package/dist/routes/delete.js +37 -80
  27. package/dist/routes/delete.js.map +1 -0
  28. package/dist/routes/get.js +42 -81
  29. package/dist/routes/get.js.map +1 -0
  30. package/dist/routes/index.js +51 -90
  31. package/dist/routes/index.js.map +1 -0
  32. package/dist/routes/post.js +43 -61
  33. package/dist/routes/post.js.map +1 -0
  34. package/dist/routes/put.js +41 -88
  35. package/dist/routes/put.js.map +1 -0
  36. package/dist/routes/routes.js +56 -0
  37. package/dist/routes/routes.js.map +1 -0
  38. package/dist/routes/types.js +3 -0
  39. package/dist/routes/types.js.map +1 -0
  40. package/dist/routes/validator.js +20 -19
  41. package/dist/routes/validator.js.map +1 -0
  42. package/dist/server.js +72 -75
  43. package/dist/server.js.map +1 -0
  44. package/dist/urls/middleware.js +26 -38
  45. package/dist/urls/middleware.js.map +1 -0
  46. package/dist/urls/urlMiddleware.js +31 -0
  47. package/dist/urls/urlMiddleware.js.map +1 -0
  48. package/dist/urls/urlParser.js +11 -20
  49. package/dist/urls/urlParser.js.map +1 -0
  50. package/package.json +22 -13
@@ -1,96 +1,65 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = void 0;
9
-
10
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
15
-
16
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
17
-
18
- var data = {};
19
-
20
- function connectToDatabase() {// do nothing
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const data = {};
4
+ function connectToDatabase() {
5
+ // do nothing
21
6
  }
22
-
23
7
  function getAll(resourceName) {
24
- createResourceArrayIfNecessary(resourceName);
25
- return new Promise(function (resolve) {
26
- resolve(data[resourceName]);
27
- });
8
+ createResourceArrayIfNecessary(resourceName);
9
+ return new Promise((resolve) => {
10
+ resolve(data[resourceName]);
11
+ });
28
12
  }
29
-
30
13
  function getById(resourceName, id) {
31
- createResourceArrayIfNecessary(resourceName);
32
- return new Promise(function (resolve) {
33
- resolve(data[resourceName].find(function (item) {
34
- return item.id === id;
35
- }));
36
- });
14
+ createResourceArrayIfNecessary(resourceName);
15
+ return new Promise((resolve) => {
16
+ resolve(data[resourceName].find((item) => item.id === id));
17
+ });
37
18
  }
38
-
39
19
  function create(resourceName, item) {
40
- createResourceArrayIfNecessary(resourceName);
41
-
42
- var newItem = _objectSpread(_objectSpread({}, item), {}, {
43
- id: String(new Date().getTime())
44
- });
45
-
46
- data[resourceName] = [].concat((0, _toConsumableArray2["default"])(data[resourceName]), [newItem]);
47
- return new Promise(function (resolve) {
48
- resolve(newItem);
49
- });
20
+ createResourceArrayIfNecessary(resourceName);
21
+ const newItem = Object.assign(Object.assign({}, item), { id: String(new Date().getTime()) });
22
+ data[resourceName] = [...data[resourceName], newItem];
23
+ return new Promise((resolve) => {
24
+ resolve(newItem);
25
+ });
50
26
  }
51
-
52
27
  function update(resourceName, item) {
53
- createResourceArrayIfNecessary(resourceName);
54
-
55
- var updatedItem = _objectSpread({}, item);
56
-
57
- data[resourceName] = [].concat((0, _toConsumableArray2["default"])(data[resourceName].filter(function (r) {
58
- return r.id !== item.id;
59
- })), [updatedItem]);
60
- return new Promise(function (resolve) {
61
- resolve(updatedItem);
62
- });
28
+ createResourceArrayIfNecessary(resourceName);
29
+ const updatedItem = Object.assign({}, item);
30
+ data[resourceName] = [
31
+ ...data[resourceName].filter((r) => r.id !== item.id),
32
+ updatedItem,
33
+ ];
34
+ return new Promise((resolve) => {
35
+ resolve(updatedItem);
36
+ });
63
37
  }
64
-
65
38
  function deleteById(resourceName, id) {
66
- createResourceArrayIfNecessary(resourceName);
67
- data[resourceName] = data[resourceName].filter(function (item) {
68
- return item.id !== id;
69
- });
70
- return new Promise(function (resolve) {
71
- resolve();
72
- });
39
+ createResourceArrayIfNecessary(resourceName);
40
+ data[resourceName] = data[resourceName].filter((item) => item.id !== id);
41
+ return new Promise((resolve) => {
42
+ resolve();
43
+ });
73
44
  }
74
-
75
45
  function deleteAll(resourceName) {
76
- createResourceArrayIfNecessary(resourceName);
77
- data[resourceName] = [];
78
- return new Promise(function (resolve) {
79
- resolve([]);
80
- });
46
+ createResourceArrayIfNecessary(resourceName);
47
+ data[resourceName] = [];
48
+ return new Promise((resolve) => {
49
+ resolve([]);
50
+ });
81
51
  }
82
-
83
52
  function createResourceArrayIfNecessary(resourceName) {
84
- if (!data.hasOwnProperty(resourceName)) data[resourceName] = [];
53
+ if (!data.hasOwnProperty(resourceName))
54
+ data[resourceName] = [];
85
55
  }
86
-
87
- var _default = {
88
- connectToDatabase: connectToDatabase,
89
- getAll: getAll,
90
- getById: getById,
91
- create: create,
92
- update: update,
93
- deleteById: deleteById,
94
- deleteAll: deleteAll
56
+ exports.default = {
57
+ connectToDatabase,
58
+ getAll,
59
+ getById,
60
+ create,
61
+ update,
62
+ deleteById,
63
+ deleteAll,
95
64
  };
96
- exports["default"] = _default;
65
+ //# sourceMappingURL=in-memory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory.js","sourceRoot":"","sources":["../../src/queries/in-memory.ts"],"names":[],"mappings":";;AAAA,MAAM,IAAI,GAAG,EAAE,CAAA;AAEf,SAAS,iBAAiB;IACxB,aAAa;AACf,CAAC;AAED,SAAS,MAAM,CAAC,YAAY;IAC1B,8BAA8B,CAAC,YAAY,CAAC,CAAA;IAE5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAA;IAC7B,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,YAAY,EAAE,EAAE;IAC/B,8BAA8B,CAAC,YAAY,CAAC,CAAA;IAE5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,MAAM,CAAC,YAAY,EAAE,IAAI;IAChC,8BAA8B,CAAC,YAAY,CAAC,CAAA;IAE5C,MAAM,OAAO,mCAAQ,IAAI,KAAE,EAAE,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,GAAE,CAAA;IAE7D,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,CAAA;IAErD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,OAAO,CAAC,OAAO,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,MAAM,CAAC,YAAY,EAAE,IAAI;IAChC,8BAA8B,CAAC,YAAY,CAAC,CAAA;IAE5C,MAAM,WAAW,qBAAQ,IAAI,CAAE,CAAA;IAC/B,IAAI,CAAC,YAAY,CAAC,GAAG;QACnB,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,WAAW;KACZ,CAAA;IACD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,OAAO,CAAC,WAAW,CAAC,CAAA;IACtB,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,YAAY,EAAE,EAAE;IAClC,8BAA8B,CAAC,YAAY,CAAC,CAAA;IAE5C,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IACxE,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QACnC,OAAO,EAAE,CAAA;IACX,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,YAAY;IAC7B,8BAA8B,CAAC,YAAY,CAAC,CAAA;IAE5C,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAA;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,OAAO,CAAC,EAAE,CAAC,CAAA;IACb,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,8BAA8B,CAAC,YAAY;IAClD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC;QAAE,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAA;AACjE,CAAC;AAED,kBAAe;IACb,iBAAiB;IACjB,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,UAAU;IACV,SAAS;CACV,CAAA"}
@@ -1,21 +1,17 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.createQueries = createQueries;
9
-
10
- var _inMemory = _interopRequireDefault(require("./in-memory"));
11
-
12
- var _mongo = _interopRequireDefault(require("./mongo"));
13
-
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createQueries = void 0;
7
+ const in_memory_1 = __importDefault(require("./in-memory"));
8
+ const mongo_1 = __importDefault(require("./mongo"));
14
9
  function createQueries(connectionString) {
15
- if (!connectionString) {
16
- return _inMemory["default"];
17
- }
18
-
19
- var mongoQueries = (0, _mongo["default"])(connectionString);
20
- return mongoQueries;
21
- }
10
+ if (!connectionString) {
11
+ return in_memory_1.default;
12
+ }
13
+ const mongoQueries = (0, mongo_1.default)(connectionString);
14
+ return mongoQueries;
15
+ }
16
+ exports.createQueries = createQueries;
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/queries/index.ts"],"names":[],"mappings":";;;;;;AAAA,4DAAyC;AACzC,oDAAwC;AAExC,SAAS,aAAa,CAAC,gBAAgB;IACrC,IAAI,CAAC,gBAAgB,EAAE;QACrB,OAAO,mBAAe,CAAA;KACvB;IAED,MAAM,YAAY,GAAG,IAAA,eAAkB,EAAC,gBAAgB,CAAC,CAAA;IACzD,OAAO,YAAY,CAAA;AACrB,CAAC;AAEQ,sCAAa"}
@@ -1,291 +1,87 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = createMongoQueries;
9
-
10
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
-
16
- var _mongo = require("@rakered/mongo");
17
-
18
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
19
-
20
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
21
-
22
- var uri;
23
- var db;
24
-
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 mongo_1 = require("@rakered/mongo");
13
+ let uri;
14
+ let db;
25
15
  function createMongoQueries(connectionString) {
26
- uri = connectionString;
27
- return {
28
- connectToDatabase: connectToDatabase,
29
- getAll: getAll,
30
- getById: getById,
31
- create: create,
32
- update: update,
33
- deleteById: deleteById,
34
- deleteAll: deleteAll
35
- };
16
+ uri = connectionString;
17
+ return {
18
+ connectToDatabase,
19
+ getAll,
20
+ getById,
21
+ create,
22
+ update,
23
+ deleteById,
24
+ deleteAll,
25
+ };
36
26
  }
37
-
27
+ exports.default = createMongoQueries;
38
28
  function connectToDatabase() {
39
- return _connectToDatabase.apply(this, arguments);
40
- }
41
-
42
- function _connectToDatabase() {
43
- _connectToDatabase = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
44
- return _regenerator["default"].wrap(function _callee$(_context) {
45
- while (1) {
46
- switch (_context.prev = _context.next) {
47
- case 0:
48
- if (db) {
49
- _context.next = 5;
50
- break;
51
- }
52
-
29
+ return __awaiter(this, void 0, void 0, function* () {
30
+ if (!db) {
53
31
  console.log('Connecting...');
54
- _context.next = 4;
55
- return (0, _mongo.connect)(uri);
56
-
57
- case 4:
58
- db = _context.sent;
59
-
60
- case 5:
61
- case "end":
62
- return _context.stop();
63
- }
64
- }
65
- }, _callee);
66
- }));
67
- return _connectToDatabase.apply(this, arguments);
68
- }
69
-
70
- function getAll(_x) {
71
- return _getAll.apply(this, arguments);
72
- }
73
-
74
- function _getAll() {
75
- _getAll = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(resourceName) {
76
- var items;
77
- return _regenerator["default"].wrap(function _callee2$(_context2) {
78
- while (1) {
79
- switch (_context2.prev = _context2.next) {
80
- case 0:
81
- _context2.next = 2;
82
- return connectToDatabase();
83
-
84
- case 2:
85
- _context2.next = 4;
86
- return db[resourceName].find({});
87
-
88
- case 4:
89
- items = _context2.sent;
90
-
91
- if (items) {
92
- _context2.next = 7;
93
- break;
94
- }
95
-
96
- return _context2.abrupt("return", []);
97
-
98
- case 7:
99
- return _context2.abrupt("return", items.map(function (item) {
100
- return removeUnderscoreFromId(item);
101
- }));
102
-
103
- case 8:
104
- case "end":
105
- return _context2.stop();
106
- }
107
- }
108
- }, _callee2);
109
- }));
110
- return _getAll.apply(this, arguments);
111
- }
112
-
113
- function getById(_x2, _x3) {
114
- return _getById.apply(this, arguments);
115
- }
116
-
117
- function _getById() {
118
- _getById = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(resourceName, id) {
119
- var item;
120
- return _regenerator["default"].wrap(function _callee3$(_context3) {
121
- while (1) {
122
- switch (_context3.prev = _context3.next) {
123
- case 0:
124
- _context3.next = 2;
125
- return connectToDatabase();
126
-
127
- case 2:
128
- _context3.next = 4;
129
- return db[resourceName].findOne({
130
- _id: id
131
- });
132
-
133
- case 4:
134
- item = _context3.sent;
135
-
136
- if (item) {
137
- _context3.next = 7;
138
- break;
139
- }
140
-
141
- return _context3.abrupt("return", null);
142
-
143
- case 7:
144
- return _context3.abrupt("return", removeUnderscoreFromId(item));
145
-
146
- case 8:
147
- case "end":
148
- return _context3.stop();
32
+ db = yield (0, mongo_1.connect)(uri);
149
33
  }
150
- }
151
- }, _callee3);
152
- }));
153
- return _getById.apply(this, arguments);
34
+ });
154
35
  }
155
-
156
- function create(_x4, _x5) {
157
- return _create.apply(this, arguments);
36
+ function getAll(resourceName) {
37
+ return __awaiter(this, void 0, void 0, function* () {
38
+ yield connectToDatabase();
39
+ const items = yield db[resourceName].find({});
40
+ if (!items)
41
+ return [];
42
+ return items.map((item) => removeUnderscoreFromId(item));
43
+ });
158
44
  }
159
-
160
- function _create() {
161
- _create = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(resourceName, item) {
162
- var createdItem;
163
- return _regenerator["default"].wrap(function _callee4$(_context4) {
164
- while (1) {
165
- switch (_context4.prev = _context4.next) {
166
- case 0:
167
- _context4.next = 2;
168
- return connectToDatabase();
169
-
170
- case 2:
171
- _context4.next = 4;
172
- return db[resourceName].insertOne(item);
173
-
174
- case 4:
175
- createdItem = _context4.sent;
176
- return _context4.abrupt("return", removeUnderscoreFromId(createdItem.ops[0]));
177
-
178
- case 6:
179
- case "end":
180
- return _context4.stop();
181
- }
182
- }
183
- }, _callee4);
184
- }));
185
- return _create.apply(this, arguments);
186
- }
187
-
188
- function update(_x6, _x7) {
189
- return _update.apply(this, arguments);
45
+ function getById(resourceName, id) {
46
+ return __awaiter(this, void 0, void 0, function* () {
47
+ yield connectToDatabase();
48
+ const item = yield db[resourceName].findOne({ _id: id });
49
+ if (!item)
50
+ return null;
51
+ return removeUnderscoreFromId(item);
52
+ });
190
53
  }
191
-
192
- function _update() {
193
- _update = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(resourceName, item) {
194
- var id, updatedItem;
195
- return _regenerator["default"].wrap(function _callee5$(_context5) {
196
- while (1) {
197
- switch (_context5.prev = _context5.next) {
198
- case 0:
199
- _context5.next = 2;
200
- return connectToDatabase();
201
-
202
- case 2:
203
- id = item.id;
204
- delete item.id;
205
- _context5.next = 6;
206
- return db[resourceName].findOneAndUpdate({
207
- _id: id
208
- }, {
209
- $set: item
210
- }, {
211
- returnOriginal: false
212
- });
213
-
214
- case 6:
215
- updatedItem = _context5.sent;
216
- return _context5.abrupt("return", removeUnderscoreFromId(updatedItem.value));
217
-
218
- case 8:
219
- case "end":
220
- return _context5.stop();
221
- }
222
- }
223
- }, _callee5);
224
- }));
225
- return _update.apply(this, arguments);
54
+ function create(resourceName, item) {
55
+ return __awaiter(this, void 0, void 0, function* () {
56
+ yield connectToDatabase();
57
+ const createdItem = yield db[resourceName].insertOne(item);
58
+ return removeUnderscoreFromId(createdItem.ops[0]);
59
+ });
226
60
  }
227
-
228
- function deleteById(_x8, _x9) {
229
- return _deleteById.apply(this, arguments);
61
+ function update(resourceName, item) {
62
+ return __awaiter(this, void 0, void 0, function* () {
63
+ yield connectToDatabase();
64
+ const id = item.id;
65
+ delete item.id;
66
+ const updatedItem = yield db[resourceName].findOneAndUpdate({ _id: id }, { $set: item }, { returnOriginal: false });
67
+ return removeUnderscoreFromId(updatedItem.value);
68
+ });
230
69
  }
231
-
232
- function _deleteById() {
233
- _deleteById = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6(resourceName, id) {
234
- return _regenerator["default"].wrap(function _callee6$(_context6) {
235
- while (1) {
236
- switch (_context6.prev = _context6.next) {
237
- case 0:
238
- _context6.next = 2;
239
- return connectToDatabase();
240
-
241
- case 2:
242
- _context6.next = 4;
243
- return db[resourceName].deleteOne({
244
- _id: id
245
- });
246
-
247
- case 4:
248
- case "end":
249
- return _context6.stop();
250
- }
251
- }
252
- }, _callee6);
253
- }));
254
- return _deleteById.apply(this, arguments);
70
+ function deleteById(resourceName, id) {
71
+ return __awaiter(this, void 0, void 0, function* () {
72
+ yield connectToDatabase();
73
+ yield db[resourceName].deleteOne({ _id: id });
74
+ });
255
75
  }
256
-
257
- function deleteAll(_x10) {
258
- return _deleteAll.apply(this, arguments);
76
+ function deleteAll(resourceName) {
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ yield connectToDatabase();
79
+ yield db[resourceName].deleteMany({});
80
+ });
259
81
  }
260
-
261
- function _deleteAll() {
262
- _deleteAll = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7(resourceName) {
263
- return _regenerator["default"].wrap(function _callee7$(_context7) {
264
- while (1) {
265
- switch (_context7.prev = _context7.next) {
266
- case 0:
267
- _context7.next = 2;
268
- return connectToDatabase();
269
-
270
- case 2:
271
- _context7.next = 4;
272
- return db[resourceName].deleteMany({});
273
-
274
- case 4:
275
- case "end":
276
- return _context7.stop();
277
- }
278
- }
279
- }, _callee7);
280
- }));
281
- return _deleteAll.apply(this, arguments);
282
- }
283
-
284
82
  function removeUnderscoreFromId(item) {
285
- var updatedItem = _objectSpread(_objectSpread({}, item), {}, {
286
- id: item._id
287
- });
288
-
289
- delete updatedItem._id;
290
- return updatedItem;
291
- }
83
+ const updatedItem = Object.assign(Object.assign({}, item), { id: item._id });
84
+ delete updatedItem._id;
85
+ return updatedItem;
86
+ }
87
+ //# sourceMappingURL=mongo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mongo.js","sourceRoot":"","sources":["../../src/queries/mongo.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,0CAAwC;AAExC,IAAI,GAAG,CAAA;AACP,IAAI,EAAE,CAAA;AAEN,SAAwB,kBAAkB,CAAC,gBAAgB;IACzD,GAAG,GAAG,gBAAgB,CAAA;IAEtB,OAAO;QACL,iBAAiB;QACjB,MAAM;QACN,OAAO;QACP,MAAM;QACN,MAAM;QACN,UAAU;QACV,SAAS;KACV,CAAA;AACH,CAAC;AAZD,qCAYC;AAED,SAAe,iBAAiB;;QAC9B,IAAI,CAAC,EAAE,EAAE;YACP,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;YAC5B,EAAE,GAAG,MAAM,IAAA,eAAO,EAAC,GAAG,CAAC,CAAA;SACxB;IACH,CAAC;CAAA;AAED,SAAe,MAAM,CAAC,YAAY;;QAChC,MAAM,iBAAiB,EAAE,CAAA;QAEzB,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAE7C,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAA;QAErB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAA;IAC1D,CAAC;CAAA;AAED,SAAe,OAAO,CAAC,YAAY,EAAE,EAAE;;QACrC,MAAM,iBAAiB,EAAE,CAAA;QAEzB,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAA;QAExD,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAA;QAEtB,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;CAAA;AAED,SAAe,MAAM,CAAC,YAAY,EAAE,IAAI;;QACtC,MAAM,iBAAiB,EAAE,CAAA;QAEzB,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAE1D,OAAO,sBAAsB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IACnD,CAAC;CAAA;AAED,SAAe,MAAM,CAAC,YAAY,EAAE,IAAI;;QACtC,MAAM,iBAAiB,EAAE,CAAA;QAEzB,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAA;QAClB,OAAO,IAAI,CAAC,EAAE,CAAA;QAEd,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,YAAY,CAAC,CAAC,gBAAgB,CACzD,EAAE,GAAG,EAAE,EAAE,EAAE,EACX,EAAE,IAAI,EAAE,IAAI,EAAE,EACd,EAAE,cAAc,EAAE,KAAK,EAAE,CAC1B,CAAA;QAED,OAAO,sBAAsB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IAClD,CAAC;CAAA;AAED,SAAe,UAAU,CAAC,YAAY,EAAE,EAAE;;QACxC,MAAM,iBAAiB,EAAE,CAAA;QAEzB,MAAM,EAAE,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAA;IAC/C,CAAC;CAAA;AAED,SAAe,SAAS,CAAC,YAAY;;QACnC,MAAM,iBAAiB,EAAE,CAAA;QAEzB,MAAM,EAAE,CAAC,YAAY,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IACvC,CAAC;CAAA;AAED,SAAS,sBAAsB,CAAC,IAAI;IAClC,MAAM,WAAW,mCAAQ,IAAI,KAAE,EAAE,EAAE,IAAI,CAAC,GAAG,GAAE,CAAA;IAC7C,OAAO,WAAW,CAAC,GAAG,CAAA;IACtB,OAAO,WAAW,CAAA;AACpB,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createQueries = void 0;
7
+ const in_memory_1 = __importDefault(require("./in-memory"));
8
+ const mongo_1 = __importDefault(require("./mongo"));
9
+ function createQueries(connectionString) {
10
+ if (!connectionString) {
11
+ return in_memory_1.default;
12
+ }
13
+ const mongoQueries = (0, mongo_1.default)(connectionString);
14
+ return mongoQueries;
15
+ }
16
+ exports.createQueries = createQueries;
17
+ //# sourceMappingURL=queries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../src/queries/queries.ts"],"names":[],"mappings":";;;;;;AAAA,4DAAyC;AACzC,oDAAwC;AAExC,SAAS,aAAa,CAAC,gBAAgB;IACrC,IAAI,CAAC,gBAAgB,EAAE;QACrB,OAAO,mBAAe,CAAA;KACvB;IAED,MAAM,YAAY,GAAG,IAAA,eAAkB,EAAC,gBAAgB,CAAC,CAAA;IACzD,OAAO,YAAY,CAAA;AACrB,CAAC;AAEQ,sCAAa"}