apexify.js 1.2.1
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 +1117 -0
- package/index.js +111 -0
- package/lib/ai/apexAI.js +312 -0
- package/lib/ai/functions/chunkString.js +8 -0
- package/lib/ai/functions/draw.js +347 -0
- package/lib/ai/functions/generateVoiceResponse.js +239 -0
- package/lib/ai/functions/processImageAttachments.js +93 -0
- package/lib/ai/functions/processMessageContent.js +48 -0
- package/lib/ai/functions/readFiles.js +95 -0
- package/lib/ai/functions/shouldDrawImage.js +12 -0
- package/lib/ai/utils.js +18 -0
- package/lib/canvas/ApexPainter.js +1194 -0
- package/lib/canvas/themes/level ara.ttf +0 -0
- package/lib/canvas/themes/levelFont.ttf +0 -0
- package/lib/canvas/themes/levels-card.js +872 -0
- package/lib/canvas/themes/music-card.js +342 -0
- package/lib/canvas/themes/numbers.ttf +0 -0
- package/lib/canvas/themes/tajawal.ttf +0 -0
- package/lib/database/MongoDB.js +126 -0
- package/lib/database/NanoDB.js +1318 -0
- package/lib/database/mongoDb/aggregate.js +120 -0
- package/lib/database/mongoDb/countDocs.js +115 -0
- package/lib/database/mongoDb/createCollection.js +125 -0
- package/lib/database/mongoDb/dataSize.js +89 -0
- package/lib/database/mongoDb/distinct.js +110 -0
- package/lib/database/mongoDb/drop.js +76 -0
- package/lib/database/mongoDb/find.js +122 -0
- package/lib/database/mongoDb/geoNear.js +91 -0
- package/lib/database/mongoDb/index.js +71 -0
- package/lib/database/mongoDb/listCollections.js +81 -0
- package/lib/database/mongoDb/migrateAndPrune.js +89 -0
- package/lib/database/mongoDb/migrateData.js +79 -0
- package/lib/database/mongoDb/remove.js +73 -0
- package/lib/database/mongoDb/removeMany.js +73 -0
- package/lib/database/mongoDb/removeManyExcept.js +91 -0
- package/lib/database/mongoDb/removeSpecific.js +93 -0
- package/lib/database/mongoDb/save.js +94 -0
- package/lib/database/mongoDb/searchMany.js +109 -0
- package/lib/database/mongoDb/textSearch.js +88 -0
- package/lib/database/mongoDb/updateAll.js +80 -0
- package/lib/database/mongoDb/updateAllExcept.js +108 -0
- package/lib/database/mongoDb/updateData.js +106 -0
- package/lib/database/nanoDb/fetchData.js +39 -0
- package/lib/database/nanoDb/removeField.js +46 -0
- package/lib/database/nanoDb/saveData.js +68 -0
- package/lib/database/nanoDb/updateFilter.js +24 -0
- package/lib/database/ready-schemas.js +245 -0
- package/lib/database/utils.js +58 -0
- package/lib/discord/discord-build/commands-(prefix)/music/functions/buttons.js +361 -0
- package/lib/discord/discord-build/commands-(prefix)/music/functions/end.js +58 -0
- package/lib/discord/discord-build/commands-(prefix)/music/functions/start.js +115 -0
- package/lib/discord/discord-build/commands-(prefix)/music/play.js +152 -0
- package/lib/discord/discord-build/commands-(prefix)/music/previous.js +82 -0
- package/lib/discord/discord-build/commands-(prefix)/music/resume.js +93 -0
- package/lib/discord/discord-build/commands-(prefix)/music/skip.js +82 -0
- package/lib/discord/discord-build/commands-(prefix)/music/stop.js +79 -0
- package/lib/discord/discord-build/components/buttons.js +75 -0
- package/lib/discord/discord-build/components/menus.js +81 -0
- package/lib/discord/discord-build/components/paginator.js +156 -0
- package/lib/discord/discord-build/components/permsChecker.js +81 -0
- package/lib/discord/discord-build/utils.js +21 -0
- package/lib/discord/events/eventer.js +100 -0
- package/lib/discord/events/handler/drawMenu.js +351 -0
- package/lib/discord/events/handler/tools.js +652 -0
- package/lib/discord/events/prefixRegister.js +136 -0
- package/lib/discord/events/prefixResponder.js +163 -0
- package/lib/discord/events/slashRegister.js +199 -0
- package/lib/discord/events/slashResponder.js +108 -0
- package/lib/discord/events/starter.js +335 -0
- package/lib/discord/functions/perms.js +19 -0
- package/lib/discord/utils.js +6 -0
- package/lib/general-functions/discord/type-writer.js +77 -0
- package/lib/general-functions/utils.js +0 -0
- package/lib/utils.js +90 -0
- package/package.json +118 -0
|
@@ -0,0 +1,73 @@
|
|
|
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
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.removeMany = void 0;
|
|
40
|
+
var { getDb } = require("../MongoDB");
|
|
41
|
+
function removeMany(collectionName, filter) {
|
|
42
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
43
|
+
var db, result, error_1;
|
|
44
|
+
return __generator(this, function (_a) {
|
|
45
|
+
switch (_a.label) {
|
|
46
|
+
case 0:
|
|
47
|
+
_a.trys.push([0, 3, , 4]);
|
|
48
|
+
return [4 /*yield*/, (0, getDb)()];
|
|
49
|
+
case 1:
|
|
50
|
+
db = _a.sent();
|
|
51
|
+
if (!db)
|
|
52
|
+
return [2 /*return*/, null];
|
|
53
|
+
if (typeof collectionName !== 'string') {
|
|
54
|
+
throw new Error('Invalid input. Collection name must be a string.');
|
|
55
|
+
}
|
|
56
|
+
if (filter && typeof filter !== 'object') {
|
|
57
|
+
throw new Error('Invalid input. Filter must be an object.');
|
|
58
|
+
}
|
|
59
|
+
return [4 /*yield*/, db.collection(collectionName).deleteMany(filter)];
|
|
60
|
+
case 2:
|
|
61
|
+
result = _a.sent();
|
|
62
|
+
return [2 /*return*/, result || null];
|
|
63
|
+
case 3:
|
|
64
|
+
error_1 = _a.sent();
|
|
65
|
+
console.error('Error deleting documents:', error_1);
|
|
66
|
+
throw new Error('Failed to delete documents in MongoDB');
|
|
67
|
+
case 4: return [2 /*return*/];
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
exports.removeMany = removeMany;
|
|
@@ -0,0 +1,91 @@
|
|
|
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
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.removeManyExcept = void 0;
|
|
40
|
+
var { getDb } = require("../MongoDB");
|
|
41
|
+
function removeManyExcept(collectionName, filter, keysToDelete, keyToKeep) {
|
|
42
|
+
if (filter === void 0) { filter = {}; }
|
|
43
|
+
if (keysToDelete === void 0) { keysToDelete = { _id: true }; }
|
|
44
|
+
if (keyToKeep === void 0) { keyToKeep = { _id: true }; }
|
|
45
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
46
|
+
var db, deleteFilter_1, addConditions, result, error_1;
|
|
47
|
+
return __generator(this, function (_a) {
|
|
48
|
+
switch (_a.label) {
|
|
49
|
+
case 0:
|
|
50
|
+
_a.trys.push([0, 3, , 4]);
|
|
51
|
+
return [4 /*yield*/, (0, getDb)()];
|
|
52
|
+
case 1:
|
|
53
|
+
db = _a.sent();
|
|
54
|
+
if (!db)
|
|
55
|
+
return [2 /*return*/, null];
|
|
56
|
+
deleteFilter_1 = {
|
|
57
|
+
$and: [filter],
|
|
58
|
+
};
|
|
59
|
+
addConditions = function (conditionObject, exclude) {
|
|
60
|
+
if (exclude === void 0) { exclude = false; }
|
|
61
|
+
var conditions = Object.keys(conditionObject).map(function (key) {
|
|
62
|
+
var _a, _b;
|
|
63
|
+
if (conditionObject[key] !== undefined) {
|
|
64
|
+
return _a = {}, _a[key] = exclude ? { $ne: conditionObject[key] } : conditionObject[key], _a;
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
return _b = {}, _b[key] = exclude ? { $ne: null } : { $ne: undefined }, _b;
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
deleteFilter_1.$and.push({ $or: conditions });
|
|
71
|
+
};
|
|
72
|
+
if (Object.keys(keyToKeep).length === 0) {
|
|
73
|
+
throw new Error('Error: Please provide at least one key to keep in the documents otherwise use removeMany.');
|
|
74
|
+
}
|
|
75
|
+
addConditions(keysToDelete);
|
|
76
|
+
addConditions(keyToKeep, true);
|
|
77
|
+
return [4 /*yield*/, db.collection(collectionName).deleteMany(deleteFilter_1)];
|
|
78
|
+
case 2:
|
|
79
|
+
result = _a.sent();
|
|
80
|
+
return [2 /*return*/, result || null];
|
|
81
|
+
case 3:
|
|
82
|
+
error_1 = _a.sent();
|
|
83
|
+
console.error('Error removing documents:', error_1);
|
|
84
|
+
throw new Error('Failed to remove documents in MongoDB');
|
|
85
|
+
case 4: return [2 /*return*/];
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
exports.removeManyExcept = removeManyExcept;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
|
+
exports.removeSpecific = void 0;
|
|
51
|
+
var { getDb } = require("../MongoDB");
|
|
52
|
+
function removeSpecific(collectionName, filter, keyToRemove) {
|
|
53
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54
|
+
var db, removeFilter_1, result, error_1;
|
|
55
|
+
return __generator(this, function (_a) {
|
|
56
|
+
switch (_a.label) {
|
|
57
|
+
case 0:
|
|
58
|
+
_a.trys.push([0, 3, , 4]);
|
|
59
|
+
return [4 /*yield*/, (0, getDb)()];
|
|
60
|
+
case 1:
|
|
61
|
+
db = _a.sent();
|
|
62
|
+
if (!db)
|
|
63
|
+
return [2 /*return*/, null];
|
|
64
|
+
if (typeof collectionName !== 'string' || !collectionName.trim()) {
|
|
65
|
+
throw new Error('Invalid input. Collection name must be provided as a non-empty string.');
|
|
66
|
+
}
|
|
67
|
+
if (!filter || typeof filter !== 'object' || Object.keys(filter).length === 0) {
|
|
68
|
+
throw new Error('Invalid input. Filter must be provided as a non-empty object.');
|
|
69
|
+
}
|
|
70
|
+
removeFilter_1 = __assign({}, filter);
|
|
71
|
+
if (keyToRemove && typeof keyToRemove === 'object') {
|
|
72
|
+
if (Object.keys(keyToRemove).length === 0) {
|
|
73
|
+
throw new Error('Invalid input. keyToRemove must be a non-empty object if provided.');
|
|
74
|
+
}
|
|
75
|
+
Object.keys(keyToRemove).forEach(function (key) {
|
|
76
|
+
delete removeFilter_1[key];
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
return [4 /*yield*/, db.collection(collectionName).deleteOne(removeFilter_1)];
|
|
80
|
+
case 2:
|
|
81
|
+
result = _a.sent();
|
|
82
|
+
return [2 /*return*/, { success: true, message: 'Document removed successfully.', result: result } || null];
|
|
83
|
+
case 3:
|
|
84
|
+
error_1 = _a.sent();
|
|
85
|
+
console.error("Error removing document with filter: ".concat(JSON.stringify(filter), ", keyToRemove: ").concat(JSON.stringify(keyToRemove), ":"), error_1);
|
|
86
|
+
throw new Error('Failed to remove document in MongoDB');
|
|
87
|
+
case 4: return [2 /*return*/];
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
exports.removeSpecific = removeSpecific;
|
|
@@ -0,0 +1,94 @@
|
|
|
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
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.save = void 0;
|
|
40
|
+
var { getDb } = require("../MongoDB");
|
|
41
|
+
function save(collectionName, document, options) {
|
|
42
|
+
if (options === void 0) { options = {}; }
|
|
43
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
44
|
+
var db, _i, _a, field, existingDocument, result, error_1;
|
|
45
|
+
var _b;
|
|
46
|
+
return __generator(this, function (_c) {
|
|
47
|
+
switch (_c.label) {
|
|
48
|
+
case 0:
|
|
49
|
+
_c.trys.push([0, 7, , 8]);
|
|
50
|
+
return [4 /*yield*/, (0, getDb)()];
|
|
51
|
+
case 1:
|
|
52
|
+
db = _c.sent();
|
|
53
|
+
if (!db)
|
|
54
|
+
return [2 /*return*/];
|
|
55
|
+
if (typeof collectionName !== 'string' || !collectionName.trim()) {
|
|
56
|
+
throw new Error('Invalid input. Collection name must be provided as a non-empty string.');
|
|
57
|
+
}
|
|
58
|
+
if (!document || typeof document !== 'object' || Object.keys(document).length === 0) {
|
|
59
|
+
throw new Error('Invalid input. Document must be provided as a non-empty object.');
|
|
60
|
+
}
|
|
61
|
+
if (!options.uniqueFields) return [3 /*break*/, 5];
|
|
62
|
+
_i = 0, _a = options.uniqueFields;
|
|
63
|
+
_c.label = 2;
|
|
64
|
+
case 2:
|
|
65
|
+
if (!(_i < _a.length)) return [3 /*break*/, 5];
|
|
66
|
+
field = _a[_i];
|
|
67
|
+
return [4 /*yield*/, db.collection(collectionName).findOne((_b = {}, _b[field] = document[field], _b))];
|
|
68
|
+
case 3:
|
|
69
|
+
existingDocument = _c.sent();
|
|
70
|
+
if (existingDocument) {
|
|
71
|
+
throw new Error("Document with the specified ".concat(field, " already exists. Please provide a unique value."));
|
|
72
|
+
}
|
|
73
|
+
_c.label = 4;
|
|
74
|
+
case 4:
|
|
75
|
+
_i++;
|
|
76
|
+
return [3 /*break*/, 2];
|
|
77
|
+
case 5: return [4 /*yield*/, db.collection(collectionName).insertOne(document)];
|
|
78
|
+
case 6:
|
|
79
|
+
result = _c.sent();
|
|
80
|
+
if (!result || !result.ops || result.ops.length === 0) {
|
|
81
|
+
throw new Error('Failed to save document to MongoDB');
|
|
82
|
+
}
|
|
83
|
+
return [2 /*return*/, result.ops[0]];
|
|
84
|
+
case 7:
|
|
85
|
+
error_1 = _c.sent();
|
|
86
|
+
console.error('Error saving document:', error_1);
|
|
87
|
+
throw new Error('Failed to save document to MongoDB');
|
|
88
|
+
case 8: return [2 /*return*/];
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
exports.save = save;
|
|
@@ -0,0 +1,109 @@
|
|
|
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
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.searchMany = void 0;
|
|
40
|
+
var { getDb } = require("../MongoDB");
|
|
41
|
+
function searchMany(collectionFilters) {
|
|
42
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
43
|
+
var db_2, results, resultObject_1, error_1;
|
|
44
|
+
var _this = this;
|
|
45
|
+
return __generator(this, function (_a) {
|
|
46
|
+
switch (_a.label) {
|
|
47
|
+
case 0:
|
|
48
|
+
_a.trys.push([0, 3, , 4]);
|
|
49
|
+
// Validate collectionFilters
|
|
50
|
+
if (!Array.isArray(collectionFilters) || collectionFilters.length === 0) {
|
|
51
|
+
throw new Error("Invalid collectionFilters. It must be a non-empty array.");
|
|
52
|
+
}
|
|
53
|
+
collectionFilters.forEach(function (_a) {
|
|
54
|
+
var collectionName = _a.collectionName, displayment = _a.displayment, filter = _a.filter;
|
|
55
|
+
if (typeof collectionName !== 'string' ||
|
|
56
|
+
(displayment !== null && (!Number.isInteger(displayment) || displayment <= 0)) ||
|
|
57
|
+
typeof filter !== 'object') {
|
|
58
|
+
throw new Error("Invalid collectionFilter element. Each element must have collectionName (string), displayment (null or a positive integer), and filter (object).");
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
return [4 /*yield*/, (0, getDb)()];
|
|
62
|
+
case 1:
|
|
63
|
+
db_2 = _a.sent();
|
|
64
|
+
if (!db_2)
|
|
65
|
+
return [2 /*return*/, null];
|
|
66
|
+
return [4 /*yield*/, Promise.all(collectionFilters.map(function (_a) {
|
|
67
|
+
var collectionName = _a.collectionName, displayment = _a.displayment, filter = _a.filter;
|
|
68
|
+
return __awaiter(_this, void 0, void 0, function () {
|
|
69
|
+
var query, result, innerError_1;
|
|
70
|
+
return __generator(this, function (_b) {
|
|
71
|
+
switch (_b.label) {
|
|
72
|
+
case 0:
|
|
73
|
+
_b.trys.push([0, 2, , 3]);
|
|
74
|
+
query = db_2.collection(collectionName).find(filter);
|
|
75
|
+
if (displayment !== null) {
|
|
76
|
+
query.limit(displayment);
|
|
77
|
+
}
|
|
78
|
+
return [4 /*yield*/, query.toArray()];
|
|
79
|
+
case 1:
|
|
80
|
+
result = _b.sent();
|
|
81
|
+
return [2 /*return*/, { collectionName: collectionName, result: result }];
|
|
82
|
+
case 2:
|
|
83
|
+
innerError_1 = _b.sent();
|
|
84
|
+
console.error("Error finding documents in ".concat(collectionName, ":"), innerError_1);
|
|
85
|
+
throw innerError_1;
|
|
86
|
+
case 3: return [2 /*return*/];
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
}))];
|
|
91
|
+
case 2:
|
|
92
|
+
results = _a.sent();
|
|
93
|
+
resultObject_1 = {};
|
|
94
|
+
results.forEach(function (_a) {
|
|
95
|
+
var collectionName = _a.collectionName, result = _a.result;
|
|
96
|
+
resultObject_1[collectionName] = result;
|
|
97
|
+
});
|
|
98
|
+
return [2 /*return*/, resultObject_1 || 'Empty'];
|
|
99
|
+
case 3:
|
|
100
|
+
error_1 = _a.sent();
|
|
101
|
+
console.error("Error finding documents:", error_1);
|
|
102
|
+
throw new Error("Failed to find documents in MongoDB");
|
|
103
|
+
case 4: return [2 /*return*/];
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
exports.searchMany = searchMany;
|
|
@@ -0,0 +1,88 @@
|
|
|
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
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.textSearch = void 0;
|
|
40
|
+
var { getDb } = require("../MongoDB");
|
|
41
|
+
function textSearch(collectionName, searchText, fields) {
|
|
42
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
43
|
+
var db, collections, textIndex, result, error_1;
|
|
44
|
+
return __generator(this, function (_a) {
|
|
45
|
+
switch (_a.label) {
|
|
46
|
+
case 0:
|
|
47
|
+
_a.trys.push([0, 5, , 6]);
|
|
48
|
+
return [4 /*yield*/, (0, getDb)()];
|
|
49
|
+
case 1:
|
|
50
|
+
db = _a.sent();
|
|
51
|
+
if (!db)
|
|
52
|
+
return [2 /*return*/, null];
|
|
53
|
+
if (typeof collectionName !== 'string') {
|
|
54
|
+
throw new Error('Invalid input. Collection name must be a string.');
|
|
55
|
+
}
|
|
56
|
+
if (typeof searchText !== 'string') {
|
|
57
|
+
throw new Error('Invalid input. Search text must be a string.');
|
|
58
|
+
}
|
|
59
|
+
if (!fields || !Array.isArray(fields) || fields.length === 0) {
|
|
60
|
+
throw new Error('Invalid fields provided for text search. Please specify an array of fields.');
|
|
61
|
+
}
|
|
62
|
+
return [4 /*yield*/, db.listCollections({ name: collectionName }).toArray()];
|
|
63
|
+
case 2:
|
|
64
|
+
collections = _a.sent();
|
|
65
|
+
if (collections.length === 0) {
|
|
66
|
+
throw new Error("Collection ".concat(collectionName, " not found."));
|
|
67
|
+
}
|
|
68
|
+
return [4 /*yield*/, db.collection(collectionName).indexExists('text')];
|
|
69
|
+
case 3:
|
|
70
|
+
textIndex = _a.sent();
|
|
71
|
+
if (!textIndex) {
|
|
72
|
+
throw new Error("Text index not found on collection ".concat(collectionName, ". Please create a text index on the specified fields."));
|
|
73
|
+
}
|
|
74
|
+
return [4 /*yield*/, db.collection(collectionName).find({ $text: { $search: searchText } }).toArray()];
|
|
75
|
+
case 4:
|
|
76
|
+
result = _a.sent();
|
|
77
|
+
return [2 /*return*/, { success: true, message: 'Text search performed successfully.', result: result } || null];
|
|
78
|
+
case 5:
|
|
79
|
+
error_1 = _a.sent();
|
|
80
|
+
console.error('Error performing text search:', error_1.message);
|
|
81
|
+
throw new Error('Failed to perform text search in MongoDB');
|
|
82
|
+
case 6: return [2 /*return*/];
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
exports.textSearch = textSearch;
|
|
@@ -0,0 +1,80 @@
|
|
|
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
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.updateAll = void 0;
|
|
40
|
+
var { getDb } = require("../MongoDB");
|
|
41
|
+
function updateAll(collectionName, filter, update, options) {
|
|
42
|
+
if (options === void 0) { options = {}; }
|
|
43
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
44
|
+
var db, result, error_1;
|
|
45
|
+
return __generator(this, function (_a) {
|
|
46
|
+
switch (_a.label) {
|
|
47
|
+
case 0:
|
|
48
|
+
_a.trys.push([0, 3, , 4]);
|
|
49
|
+
return [4 /*yield*/, (0, getDb)()];
|
|
50
|
+
case 1:
|
|
51
|
+
db = _a.sent();
|
|
52
|
+
if (!db)
|
|
53
|
+
return [2 /*return*/, null];
|
|
54
|
+
if (typeof collectionName !== 'string') {
|
|
55
|
+
throw new Error('Invalid input. Collection name must be a string.');
|
|
56
|
+
}
|
|
57
|
+
if (!filter || typeof filter !== 'object') {
|
|
58
|
+
throw new Error('Invalid input. Filter must be an object.');
|
|
59
|
+
}
|
|
60
|
+
if (!update || typeof update !== 'object') {
|
|
61
|
+
throw new Error('Invalid input. Update must be an object.');
|
|
62
|
+
}
|
|
63
|
+
return [4 /*yield*/, db.collection(collectionName).updateMany(filter, update, options)];
|
|
64
|
+
case 2:
|
|
65
|
+
result = _a.sent();
|
|
66
|
+
return [2 /*return*/, {
|
|
67
|
+
success: true,
|
|
68
|
+
message: "".concat(result.modifiedCount, " documents updated successfully."),
|
|
69
|
+
result: result || null,
|
|
70
|
+
}];
|
|
71
|
+
case 3:
|
|
72
|
+
error_1 = _a.sent();
|
|
73
|
+
throw new Error("Failed to update documents in MongoDB. ".concat(error_1.message));
|
|
74
|
+
case 4: return [2 /*return*/];
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
exports.updateAll = updateAll;
|