@talkpilot/core-db 1.1.0 → 1.1.2
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/connection.d.ts +6 -0
- package/dist/connection.d.ts.map +1 -0
- package/dist/connection.js +41 -0
- package/dist/connection.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/talkpilot/clientsConfig/clientsConfig.types.d.ts +2 -2
- package/dist/talkpilot/clientsConfig/clientsConfig.types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/connection.ts +40 -0
- package/src/index.ts +1 -0
- package/src/talkpilot/clientsConfig/clientsConfig.types.ts +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAsB,iBAAiB,kBA8BtC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ensureDbConnected = ensureDbConnected;
|
|
4
|
+
const talkpilot_1 = require("./talkpilot");
|
|
5
|
+
const municipal_1 = require("./municipal");
|
|
6
|
+
let isConnected = false;
|
|
7
|
+
/**
|
|
8
|
+
* Ensures the database clients are initialized.
|
|
9
|
+
* This function reads from TALKPILOT_MONGO_URI and MUNICIPAL_MONGO_URI.
|
|
10
|
+
*/
|
|
11
|
+
async function ensureDbConnected() {
|
|
12
|
+
if (isConnected) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
try {
|
|
16
|
+
const talkpilotUri = process.env.TALKPILOT_MONGO_URI;
|
|
17
|
+
const municipalUri = process.env.MUNICIPAL_MONGO_URI;
|
|
18
|
+
if (!talkpilotUri) {
|
|
19
|
+
console.warn('[core-db] TALKPILOT_MONGO_URI is not set');
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
const dbName = talkpilotUri.split('/').pop()?.split('?')[0];
|
|
23
|
+
await talkpilot_1.mongodbClient.connect(talkpilotUri, dbName);
|
|
24
|
+
console.info(`[core-db] Connected to TalkPilot MongoDB: ${dbName}`);
|
|
25
|
+
}
|
|
26
|
+
if (!municipalUri) {
|
|
27
|
+
console.warn('[core-db] MUNICIPAL_MONGO_URI is not set');
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
const dbName = municipalUri.split('/').pop()?.split('?')[0];
|
|
31
|
+
await municipal_1.municipalDataMongodbClient.connect(municipalUri, dbName);
|
|
32
|
+
console.info(`[core-db] Connected to Municipal Data MongoDB: ${dbName}`);
|
|
33
|
+
}
|
|
34
|
+
isConnected = true;
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
console.error('[core-db] Failed to connect to MongoDB', error);
|
|
38
|
+
throw error;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=connection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":";;AASA,8CA8BC;AAvCD,2CAA4C;AAC5C,2CAAyD;AAEzD,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB;;;GAGG;AACI,KAAK,UAAU,iBAAiB;IACrC,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACrD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QAErD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,yBAAa,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YAClD,OAAO,CAAC,IAAI,CAAC,6CAA6C,MAAM,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,sCAA0B,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YAC/D,OAAO,CAAC,IAAI,CAAC,kDAAkD,MAAM,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,WAAW,GAAG,IAAI,CAAC;IACrB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;QAC/D,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from './talkpilot';
|
|
2
|
+
export * from './connection';
|
|
2
3
|
export { municipalDataMongodbClient, getDb as getMunicipalDataDb, setDb as setMunicipalDataDb, ObjectId as MunicipalDataObjectId, } from './municipal';
|
|
3
4
|
export * from './municipal/cities';
|
|
4
5
|
export * from './municipal/streets';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAE7B,OAAO,EACL,0BAA0B,EAC1B,KAAK,IAAI,kBAAkB,EAC3B,KAAK,IAAI,kBAAkB,EAC3B,QAAQ,IAAI,qBAAqB,GAClC,MAAM,aAAa,CAAC;AACrB,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,yBAAyB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
exports.MunicipalDataObjectId = exports.setMunicipalDataDb = exports.getMunicipalDataDb = exports.municipalDataMongodbClient = void 0;
|
|
18
18
|
// TalkPilot DB exports
|
|
19
19
|
__exportStar(require("./talkpilot"), exports);
|
|
20
|
+
__exportStar(require("./connection"), exports);
|
|
20
21
|
var municipal_1 = require("./municipal");
|
|
21
22
|
Object.defineProperty(exports, "municipalDataMongodbClient", { enumerable: true, get: function () { return municipal_1.municipalDataMongodbClient; } });
|
|
22
23
|
Object.defineProperty(exports, "getMunicipalDataDb", { enumerable: true, get: function () { return municipal_1.getDb; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,uBAAuB;AACvB,8CAA4B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,uBAAuB;AACvB,8CAA4B;AAC5B,+CAA6B;AAE7B,yCAKqB;AAJnB,uHAAA,0BAA0B,OAAA;AAC1B,+GAAA,KAAK,OAAsB;AAC3B,+GAAA,KAAK,OAAsB;AAC3B,kHAAA,QAAQ,OAAyB;AAEnC,qDAAmC;AACnC,sDAAoC;AACpC,kEAAgD;AAChD,sDAAoC;AACpC,iEAA8C;AAC9C,0DAAuC"}
|
|
@@ -39,8 +39,8 @@ export type SmsConfig = {};
|
|
|
39
39
|
export type WhatsappConfig = {};
|
|
40
40
|
export type CommunicationsConfig = {
|
|
41
41
|
sendGrid?: SendGridConfig;
|
|
42
|
-
sms
|
|
43
|
-
whatsapp
|
|
42
|
+
sms?: SmsConfig;
|
|
43
|
+
whatsapp?: WhatsappConfig;
|
|
44
44
|
};
|
|
45
45
|
export type ClientConfig<P extends Products = Products> = {
|
|
46
46
|
clientId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientsConfig.types.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/clientsConfig/clientsConfig.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACnD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,2BAA2B,CAAC,EAAE,6BAA6B,CAAC;IAC5D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B,QAAQ,GACR,SAAS,GACT,SAAS,GACT,QAAQ,GACR,SAAS,GACT,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAElB,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,EAAE,CAAC;AAE3B,MAAM,MAAM,cAAc,GAAG,EAAE,CAAC;AAEhC,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,GAAG,EAAE,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"clientsConfig.types.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/clientsConfig/clientsConfig.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACnD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,2BAA2B,CAAC,EAAE,6BAA6B,CAAC;IAC5D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B,QAAQ,GACR,SAAS,GACT,SAAS,GACT,QAAQ,GACR,SAAS,GACT,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAElB,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,EAAE,CAAC;AAE3B,MAAM,MAAM,cAAc,GAAG,EAAE,CAAC;AAEhC,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,IAAI;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,QAAQ,EAAE,CAAC,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,oBAAoB,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { mongodbClient } from './talkpilot';
|
|
2
|
+
import { municipalDataMongodbClient } from './municipal';
|
|
3
|
+
|
|
4
|
+
let isConnected = false;
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Ensures the database clients are initialized.
|
|
8
|
+
* This function reads from TALKPILOT_MONGO_URI and MUNICIPAL_MONGO_URI.
|
|
9
|
+
*/
|
|
10
|
+
export async function ensureDbConnected() {
|
|
11
|
+
if (isConnected) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
try {
|
|
16
|
+
const talkpilotUri = process.env.TALKPILOT_MONGO_URI;
|
|
17
|
+
const municipalUri = process.env.MUNICIPAL_MONGO_URI;
|
|
18
|
+
|
|
19
|
+
if (!talkpilotUri) {
|
|
20
|
+
console.warn('[core-db] TALKPILOT_MONGO_URI is not set');
|
|
21
|
+
} else {
|
|
22
|
+
const dbName = talkpilotUri.split('/').pop()?.split('?')[0];
|
|
23
|
+
await mongodbClient.connect(talkpilotUri, dbName);
|
|
24
|
+
console.info(`[core-db] Connected to TalkPilot MongoDB: ${dbName}`);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
if (!municipalUri) {
|
|
28
|
+
console.warn('[core-db] MUNICIPAL_MONGO_URI is not set');
|
|
29
|
+
} else {
|
|
30
|
+
const dbName = municipalUri.split('/').pop()?.split('?')[0];
|
|
31
|
+
await municipalDataMongodbClient.connect(municipalUri, dbName);
|
|
32
|
+
console.info(`[core-db] Connected to Municipal Data MongoDB: ${dbName}`);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
isConnected = true;
|
|
36
|
+
} catch (error) {
|
|
37
|
+
console.error('[core-db] Failed to connect to MongoDB', error);
|
|
38
|
+
throw error;
|
|
39
|
+
}
|
|
40
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -51,8 +51,8 @@ export type WhatsappConfig = {};
|
|
|
51
51
|
|
|
52
52
|
export type CommunicationsConfig = {
|
|
53
53
|
sendGrid?: SendGridConfig;
|
|
54
|
-
sms
|
|
55
|
-
whatsapp
|
|
54
|
+
sms?: SmsConfig;
|
|
55
|
+
whatsapp?: WhatsappConfig;
|
|
56
56
|
};
|
|
57
57
|
|
|
58
58
|
export type ClientConfig<P extends Products = Products> = {
|