@multiplayer-app/ai-agent-mongo 0.1.0-beta.6 → 0.1.0-beta.7
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/dist/cjs/mongo/index.cjs +2 -72
- package/dist/cjs/mongo/index.cjs.map +1 -1
- package/dist/cjs/mongo/index.d.ts +1 -5
- package/dist/cjs/mongo/index.d.ts.map +1 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/esm/mongo/index.d.ts +1 -5
- package/dist/esm/mongo/index.d.ts.map +1 -1
- package/dist/esm/mongo/index.js +1 -71
- package/dist/esm/mongo/index.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +2 -3
- package/dist/cjs/mongo/encryption.cjs +0 -149
- package/dist/cjs/mongo/encryption.cjs.map +0 -1
- package/dist/cjs/mongo/encryption.d.ts +0 -66
- package/dist/cjs/mongo/encryption.d.ts.map +0 -1
- package/dist/esm/mongo/encryption.d.ts +0 -66
- package/dist/esm/mongo/encryption.d.ts.map +0 -1
- package/dist/esm/mongo/encryption.js +0 -140
- package/dist/esm/mongo/encryption.js.map +0 -1
package/dist/cjs/mongo/index.cjs
CHANGED
|
@@ -36,13 +36,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
36
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.connected = exports.Config = exports.Model = exports.Schema = exports.ObjectId = exports.mongoose =
|
|
39
|
+
exports.connected = exports.Config = exports.Model = exports.Schema = exports.ObjectId = exports.mongoose = void 0;
|
|
40
40
|
const mongoose_1 = __importDefault(require("mongoose"));
|
|
41
41
|
const logger_1 = require("./logger.cjs");
|
|
42
42
|
const _Config = __importStar(require("./config.cjs"));
|
|
43
|
-
const _encryption = __importStar(require("./encryption.cjs"));
|
|
44
43
|
const logger = (0, logger_1.getLogger)();
|
|
45
|
-
exports.encryption = _encryption;
|
|
46
44
|
const MONGODB_URI_MASKED = _Config.MONGODB_URI?.replace(/:\/\/(.*):(.*)@/, '://***:***@');
|
|
47
45
|
exports.mongoose = mongoose_1.default;
|
|
48
46
|
exports.ObjectId = mongoose_1.default.Types.ObjectId;
|
|
@@ -69,79 +67,14 @@ mongoose_1.default.connection.on('reconnectFailed', () => {
|
|
|
69
67
|
logger.error(`[MONGO] Reconnect Failed ${MONGODB_URI_MASKED}`);
|
|
70
68
|
});
|
|
71
69
|
const connect = async () => {
|
|
72
|
-
await exports.encryption.connect();
|
|
73
|
-
const encryptionKeyId = await exports.encryption.getKeyId();
|
|
74
70
|
const options = {
|
|
75
71
|
autoIndex: true,
|
|
76
72
|
connectTimeoutMS: 10000,
|
|
77
73
|
socketTimeoutMS: 25000,
|
|
78
74
|
minPoolSize: 3,
|
|
79
|
-
autoEncryption: {
|
|
80
|
-
bypassAutoEncryption: true,
|
|
81
|
-
keyVaultNamespace: exports.encryption.keyVaultNamespace,
|
|
82
|
-
kmsProviders: exports.encryption.kmsProviders,
|
|
83
|
-
schemaMap: exports.encryption.getEncryptionSchemaMap(encryptionKeyId),
|
|
84
|
-
extraOptions: {
|
|
85
|
-
mongocryptdURI: exports.Config.MONGODB_URI,
|
|
86
|
-
},
|
|
87
|
-
},
|
|
88
75
|
};
|
|
89
76
|
await mongoose_1.default.connect(_Config.MONGODB_URI, options);
|
|
90
77
|
};
|
|
91
|
-
/**
|
|
92
|
-
* Ensure all model indexes are created on the given connection
|
|
93
|
-
* This is called when using an existing connection to ensure indexes exist
|
|
94
|
-
* even if autoIndex was disabled on that connection
|
|
95
|
-
*/
|
|
96
|
-
const ensureIndexes = async (connection) => {
|
|
97
|
-
try {
|
|
98
|
-
// Get all models registered on this connection
|
|
99
|
-
const modelNames = connection.modelNames();
|
|
100
|
-
// Also check for library models that might be on the default connection
|
|
101
|
-
// (if connection is from the same Mongoose instance)
|
|
102
|
-
const libraryModelNames = ['AgentChat', 'AgentMessage'];
|
|
103
|
-
const allModelNames = [...new Set([...modelNames, ...libraryModelNames])];
|
|
104
|
-
logger.info(`[MONGO] Ensuring indexes for models on existing connection`);
|
|
105
|
-
// Sync indexes for all models
|
|
106
|
-
// This will create indexes defined in schemas even if autoIndex is disabled
|
|
107
|
-
await Promise.all(allModelNames.map(async (modelName) => {
|
|
108
|
-
try {
|
|
109
|
-
// Check if model exists on this connection
|
|
110
|
-
// connection.models is a map of all registered models
|
|
111
|
-
const model = connection.models[modelName];
|
|
112
|
-
if (!model) {
|
|
113
|
-
logger.debug?.(`[MONGO] Model ${modelName} not found on connection, skipping`);
|
|
114
|
-
return Promise.resolve();
|
|
115
|
-
}
|
|
116
|
-
// Sync indexes for the model
|
|
117
|
-
// This will create indexes defined in schemas even if autoIndex is disabled
|
|
118
|
-
return model.syncIndexes().catch((err) => {
|
|
119
|
-
// Model might not exist on this connection, which is fine
|
|
120
|
-
const errMessage = err?.message || String(err);
|
|
121
|
-
if (errMessage.includes('Cannot overwrite') || errMessage.includes('model')) {
|
|
122
|
-
logger.debug?.(`[MONGO] Model ${modelName} not available on this connection, skipping`);
|
|
123
|
-
}
|
|
124
|
-
else {
|
|
125
|
-
logger.error(err, `[MONGO] Failed to sync indexes for model ${modelName}: ${errMessage}`);
|
|
126
|
-
}
|
|
127
|
-
});
|
|
128
|
-
}
|
|
129
|
-
catch (err) {
|
|
130
|
-
// Model doesn't exist on this connection - this is expected if using a different Mongoose instance
|
|
131
|
-
const errMessage = err?.message || String(err);
|
|
132
|
-
if (errMessage.includes('model') || errMessage.includes('not found')) {
|
|
133
|
-
logger.debug?.(`[MONGO] Model ${modelName} not found on connection, skipping`);
|
|
134
|
-
}
|
|
135
|
-
return Promise.resolve();
|
|
136
|
-
}
|
|
137
|
-
}));
|
|
138
|
-
logger.info('[MONGO] Indexes ensured for available models');
|
|
139
|
-
}
|
|
140
|
-
catch (error) {
|
|
141
|
-
logger.error(error, '[MONGO] Error ensuring indexes on existing connection');
|
|
142
|
-
// Don't throw - allow connection to proceed even if index creation fails
|
|
143
|
-
}
|
|
144
|
-
};
|
|
145
78
|
const connected = () => mongoose_1.default.connection.readyState === 1;
|
|
146
79
|
exports.connected = connected;
|
|
147
80
|
const disconnect = async () => {
|
|
@@ -149,18 +82,15 @@ const disconnect = async () => {
|
|
|
149
82
|
return;
|
|
150
83
|
await Promise.allSettled([
|
|
151
84
|
mongoose_1.default.connection.close(),
|
|
152
|
-
exports.encryption.disconnect(),
|
|
153
85
|
]);
|
|
154
86
|
};
|
|
155
87
|
exports.default = {
|
|
156
|
-
encryption: exports.encryption,
|
|
157
88
|
connect,
|
|
158
89
|
disconnect,
|
|
159
90
|
connected: exports.connected,
|
|
160
91
|
mongoose: exports.mongoose,
|
|
161
92
|
ObjectId: mongoose_1.default.Types.ObjectId,
|
|
162
93
|
Schema: mongoose_1.default.Schema,
|
|
163
|
-
Model: mongoose_1.default.Model
|
|
164
|
-
ensureIndexes,
|
|
94
|
+
Model: mongoose_1.default.Model
|
|
165
95
|
};
|
|
166
96
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mongo/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mongo/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAAmD;AACnD,qCAAoC;AACpC,kDAAmC;AAEnC,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAA;AAE1B,MAAM,kBAAkB,GAAG,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAA;AAE5E,QAAA,QAAQ,GAAG,kBAAQ,CAAA;AAEnB,QAAA,QAAQ,GAAG,kBAAQ,CAAC,KAAK,CAAC,QAAQ,CAAA;AAQlC,QAAA,MAAM,GAAG,kBAAQ,CAAC,MAAM,CAAA;AAExB,QAAA,KAAK,GAAG,kBAAQ,CAAC,KAAK,CAAA;AAEtB,QAAA,MAAM,GAAG,OAAO,CAAA;AAE7B,kBAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;AAE1C,kBAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;IACvC,MAAM,CAAC,IAAI,CAAC,wBAAwB,kBAAkB,EAAE,CAAC,CAAA;AAC3D,CAAC,CAAC,CAAA;AAEF,kBAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;IACtC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,yCAAyC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;AAC/E,CAAC,CAAC,CAAA;AAEF,kBAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE;IACzC,MAAM,CAAC,IAAI,CAAC,0BAA0B,kBAAkB,EAAE,CAAC,CAAA;AAC7D,CAAC,CAAC,CAAA;AAEF,kBAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE;IAC1C,MAAM,CAAC,IAAI,CAAC,6BAA6B,kBAAkB,EAAE,CAAC,CAAA;AAChE,CAAC,CAAC,CAAA;AAEF,kBAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;IACnC,MAAM,CAAC,IAAI,CAAC,6BAA6B,kBAAkB,EAAE,CAAC,CAAA;AAChE,CAAC,CAAC,CAAA;AAEF,kBAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC7C,MAAM,CAAC,KAAK,CAAC,4BAA4B,kBAAkB,EAAE,CAAC,CAAA;AAChE,CAAC,CAAC,CAAA;AAEF,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;IACzB,MAAM,OAAO,GAAmB;QAC9B,SAAS,EAAE,IAAI;QACf,gBAAgB,EAAE,KAAK;QACvB,eAAe,EAAE,KAAK;QACtB,WAAW,EAAE,CAAC;KACf,CAAA;IACD,MAAM,kBAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;AACtD,CAAC,CAAA;AAEM,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,kBAAQ,CAAC,UAAU,CAAC,UAAU,KAAK,CAAC,CAAA;AAAtD,QAAA,SAAS,aAA6C;AAEnE,MAAM,UAAU,GAAG,KAAK,IAAI,EAAE;IAC5B,IAAI,CAAC,IAAA,iBAAS,GAAE;QAAE,OAAM;IACxB,MAAM,OAAO,CAAC,UAAU,CAAC;QACvB,kBAAQ,CAAC,UAAU,CAAC,KAAK,EAAE;KAC5B,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,kBAAe;IACb,OAAO;IACP,UAAU;IACV,SAAS,EAAT,iBAAS;IACT,QAAQ,EAAR,gBAAQ;IACR,QAAQ,EAAE,kBAAQ,CAAC,KAAK,CAAC,QAAQ;IACjC,MAAM,EAAE,kBAAQ,CAAC,MAAM;IACvB,KAAK,EAAE,kBAAQ,CAAC,KAAK;CACtB,CAAA"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
import Mongoose
|
|
1
|
+
import Mongoose from 'mongoose';
|
|
2
2
|
import * as _Config from './config';
|
|
3
|
-
import * as _encryption from './encryption';
|
|
4
|
-
export declare const encryption: typeof _encryption;
|
|
5
3
|
export declare const mongoose: typeof Mongoose;
|
|
6
4
|
export declare const ObjectId: typeof Mongoose.Types.ObjectId;
|
|
7
5
|
export type ObjectId = Mongoose.Types.ObjectId;
|
|
@@ -12,7 +10,6 @@ export declare const Model: Mongoose.Model<any, {}, {}, {}, any, any>;
|
|
|
12
10
|
export declare const Config: typeof _Config;
|
|
13
11
|
export declare const connected: () => boolean;
|
|
14
12
|
declare const _default: {
|
|
15
|
-
encryption: typeof _encryption;
|
|
16
13
|
connect: () => Promise<void>;
|
|
17
14
|
disconnect: () => Promise<void>;
|
|
18
15
|
connected: () => boolean;
|
|
@@ -20,7 +17,6 @@ declare const _default: {
|
|
|
20
17
|
ObjectId: typeof Mongoose.Types.ObjectId;
|
|
21
18
|
Schema: typeof Mongoose.Schema;
|
|
22
19
|
Model: Mongoose.Model<any, {}, {}, {}, any, any>;
|
|
23
|
-
ensureIndexes: (connection: Connection) => Promise<void>;
|
|
24
20
|
};
|
|
25
21
|
export default _default;
|
|
26
22
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mongo/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mongo/index.ts"],"names":[],"mappings":"AAAA,OAAO,QAA4B,MAAM,UAAU,CAAA;AAEnD,OAAO,KAAK,OAAO,MAAM,UAAU,CAAA;AAMnC,eAAO,MAAM,QAAQ,iBAAW,CAAA;AAEhC,eAAO,MAAM,QAAQ,gCAA0B,CAAA;AAE/C,MAAM,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAA;AAE9C,YAAY,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAExC,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAA;AAElC,eAAO,MAAM,MAAM,wBAAkB,CAAA;AAErC,eAAO,MAAM,KAAK,2CAAiB,CAAA;AAEnC,eAAO,MAAM,MAAM,gBAAU,CAAA;AAsC7B,eAAO,MAAM,SAAS,eAA6C,CAAA;;;;;;;;;;AASnE,wBAQC"}
|