@talkpilot/core-db 1.3.13 → 1.3.15
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 +57 -50
- package/README_OLD.md +160 -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/municipal/index.d.ts +1 -1
- package/dist/municipal/index.d.ts.map +1 -1
- package/dist/talkpilot/clientsConfig/clientsConfig.getters.d.ts +3 -0
- package/dist/talkpilot/clientsConfig/clientsConfig.getters.d.ts.map +1 -1
- package/dist/talkpilot/clientsConfig/clientsConfig.getters.js +17 -1
- package/dist/talkpilot/clientsConfig/clientsConfig.getters.js.map +1 -1
- package/dist/talkpilot/clientsConfig/clientsConfig.types.d.ts +1 -2
- package/dist/talkpilot/clientsConfig/clientsConfig.types.d.ts.map +1 -1
- package/dist/talkpilot/flows/flows.schema.d.ts +0 -3
- package/dist/talkpilot/flows/flows.schema.d.ts.map +1 -1
- package/dist/talkpilot/flows/flows.schema.js +0 -1
- package/dist/talkpilot/flows/flows.schema.js.map +1 -1
- package/dist/talkpilot/flows/flows.types.d.ts +0 -2
- package/dist/talkpilot/flows/flows.types.d.ts.map +1 -1
- package/dist/test-utils/factories/index.d.ts +1 -0
- package/dist/test-utils/factories/index.d.ts.map +1 -1
- package/dist/test-utils/factories/index.js +1 -0
- package/dist/test-utils/factories/index.js.map +1 -1
- package/dist/test-utils/factories/talkpilot/flows.d.ts.map +1 -1
- package/dist/test-utils/factories/talkpilot/flows.js +0 -1
- package/dist/test-utils/factories/talkpilot/flows.js.map +1 -1
- package/dist/test-utils/factories/websitalk/scans.d.ts.map +1 -1
- package/dist/test-utils/factories/websitalk/scans.js +2 -1
- package/dist/test-utils/factories/websitalk/scans.js.map +1 -1
- package/dist/test-utils/factories/websitalk/websiteUrls.d.ts +5 -0
- package/dist/test-utils/factories/websitalk/websiteUrls.d.ts.map +1 -0
- package/dist/test-utils/factories/websitalk/websiteUrls.js +17 -0
- package/dist/test-utils/factories/websitalk/websiteUrls.js.map +1 -0
- package/dist/websitalk/index.d.ts +1 -0
- package/dist/websitalk/index.d.ts.map +1 -1
- package/dist/websitalk/index.js +1 -0
- package/dist/websitalk/index.js.map +1 -1
- package/dist/websitalk/scans/index.d.ts +1 -0
- package/dist/websitalk/scans/index.d.ts.map +1 -1
- package/dist/websitalk/scans/index.js +1 -0
- package/dist/websitalk/scans/index.js.map +1 -1
- package/dist/websitalk/scans/scans.constants.d.ts +5 -0
- package/dist/websitalk/scans/scans.constants.d.ts.map +1 -0
- package/dist/websitalk/scans/scans.constants.js +12 -0
- package/dist/websitalk/scans/scans.constants.js.map +1 -0
- package/dist/websitalk/scans/scans.getters.d.ts +10 -3
- package/dist/websitalk/scans/scans.getters.d.ts.map +1 -1
- package/dist/websitalk/scans/scans.getters.js +48 -9
- package/dist/websitalk/scans/scans.getters.js.map +1 -1
- package/dist/websitalk/scans/scans.types.d.ts +2 -8
- package/dist/websitalk/scans/scans.types.d.ts.map +1 -1
- package/dist/websitalk/websitalk.setup.d.ts +3 -0
- package/dist/websitalk/websitalk.setup.d.ts.map +1 -0
- package/dist/websitalk/websitalk.setup.js +34 -0
- package/dist/websitalk/websitalk.setup.js.map +1 -0
- package/dist/websitalk/websiteUrls/index.d.ts +3 -0
- package/dist/websitalk/websiteUrls/index.d.ts.map +1 -0
- package/dist/websitalk/websiteUrls/index.js +19 -0
- package/dist/websitalk/websiteUrls/index.js.map +1 -0
- package/dist/websitalk/websiteUrls/websiteUrls.constants.d.ts +2 -0
- package/dist/websitalk/websiteUrls/websiteUrls.constants.d.ts.map +1 -0
- package/dist/websitalk/websiteUrls/websiteUrls.constants.js +5 -0
- package/dist/websitalk/websiteUrls/websiteUrls.constants.js.map +1 -0
- package/dist/websitalk/websiteUrls/websiteUrls.context.d.ts +11 -0
- package/dist/websitalk/websiteUrls/websiteUrls.context.d.ts.map +1 -0
- package/dist/websitalk/websiteUrls/websiteUrls.context.js +35 -0
- package/dist/websitalk/websiteUrls/websiteUrls.context.js.map +1 -0
- package/dist/websitalk/websiteUrls/websiteUrls.getters.d.ts +10 -0
- package/dist/websitalk/websiteUrls/websiteUrls.getters.d.ts.map +1 -0
- package/dist/websitalk/websiteUrls/websiteUrls.getters.js +47 -0
- package/dist/websitalk/websiteUrls/websiteUrls.getters.js.map +1 -0
- package/dist/websitalk/websiteUrls/websiteUrls.setters.d.ts +7 -0
- package/dist/websitalk/websiteUrls/websiteUrls.setters.d.ts.map +1 -0
- package/dist/websitalk/websiteUrls/websiteUrls.setters.js +29 -0
- package/dist/websitalk/websiteUrls/websiteUrls.setters.js.map +1 -0
- package/dist/websitalk/websiteUrls/websiteUrls.types.d.ts +13 -0
- package/dist/websitalk/websiteUrls/websiteUrls.types.d.ts.map +1 -0
- package/dist/websitalk/websiteUrls/websiteUrls.types.js +3 -0
- package/dist/websitalk/websiteUrls/websiteUrls.types.js.map +1 -0
- package/package.json +1 -1
- package/src/index.ts +1 -0
- package/src/municipal/index.ts +1 -1
- package/src/talkpilot/clientsConfig/__tests__/clientsConfig.getters.spec.ts +57 -5
- package/src/talkpilot/clientsConfig/__tests__/clientsConfig.spec.ts +0 -4
- package/src/talkpilot/clientsConfig/clientsConfig.getters.ts +24 -0
- package/src/talkpilot/clientsConfig/clientsConfig.types.ts +1 -2
- package/src/talkpilot/flows/flows.schema.ts +0 -1
- package/src/talkpilot/flows/flows.types.ts +0 -2
- package/src/test-utils/factories/index.ts +1 -0
- package/src/test-utils/factories/talkpilot/flows.ts +0 -1
- package/src/test-utils/factories/websitalk/scans.ts +2 -1
- package/src/test-utils/factories/websitalk/websiteUrls.ts +17 -0
- package/src/websitalk/index.ts +1 -0
- package/src/websitalk/scans/__tests__/scans.spec.ts +121 -26
- package/src/websitalk/scans/index.ts +1 -0
- package/src/websitalk/scans/scans.constants.ts +12 -0
- package/src/websitalk/scans/scans.getters.ts +67 -17
- package/src/websitalk/scans/scans.types.ts +3 -6
- package/src/websitalk/websiteUrls/__tests__/websiteUrls.spec.ts +77 -0
- package/src/websitalk/websiteUrls/index.ts +2 -0
- package/src/websitalk/websiteUrls/websiteUrls.getters.ts +65 -0
- package/src/websitalk/websiteUrls/websiteUrls.types.ts +13 -0
- package/tsconfig.json +4 -4
- package/dist/talkpilot/subscriptions/subscriptions.utils.d.ts +0 -4
- package/dist/talkpilot/subscriptions/subscriptions.utils.d.ts.map +0 -1
- package/dist/talkpilot/subscriptions/subscriptions.utils.js +0 -20
- package/dist/talkpilot/subscriptions/subscriptions.utils.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flows.js","sourceRoot":"","sources":["../../../../src/test-utils/factories/talkpilot/flows.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"flows.js","sourceRoot":"","sources":["../../../../src/test-utils/factories/talkpilot/flows.ts"],"names":[],"mappings":";;;AAoBA,gCAYC;AAhCD,qCAAkC;AAClC,qCAAmC;AACnC,2CAAwC;AAG3B,QAAA,WAAW,GAAG,iBAAO,CAAC,MAAM,CAA2B,GAAG,EAAE;IACvE,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,OAAO;QACL,GAAG,EAAE,IAAI,kBAAQ,EAAE;QACnB,QAAQ,EAAE,aAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9B,QAAQ,EAAE,aAAK,CAAC,MAAM,CAAC,IAAI,EAAE;QAC7B,kBAAkB,EAAE,aAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAC5C,eAAe,EAAE,aAAK,CAAC,KAAK,CAAC,QAAQ,EAAE;QACvC,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,GAAG;QACd,SAAS,EAAE,GAAG;KACf,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,SAAgB,UAAU,CACxB,SAAyB;IAEzB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,IAAI,GAAG,mBAAW,CAAC,KAAK,EAAE,CAAC;IACjC,OAAO;QACL,GAAG,IAAI;QACP,GAAG,SAAS;QACZ,GAAG,EAAG,SAAS,EAAE,GAAgB,IAAI,IAAI,CAAC,GAAG;QAC7C,SAAS,EAAE,GAAG;QACd,SAAS,EAAE,SAAS,EAAE,SAAS,IAAI,GAAG;KACvC,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scans.d.ts","sourceRoot":"","sources":["../../../../src/test-utils/factories/websitalk/scans.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"scans.d.ts","sourceRoot":"","sources":["../../../../src/test-utils/factories/websitalk/scans.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE/C,eAAO,MAAM,WAAW,qEAcrB,CAAC;AAEJ,wBAAgB,iBAAiB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAEjE"}
|
|
@@ -4,9 +4,10 @@ exports.scanFactory = void 0;
|
|
|
4
4
|
exports.createScanFixture = createScanFixture;
|
|
5
5
|
const fishery_1 = require("fishery");
|
|
6
6
|
const faker_1 = require("@faker-js/faker");
|
|
7
|
+
const mongodb_1 = require("mongodb");
|
|
7
8
|
exports.scanFactory = fishery_1.Factory.define(() => ({
|
|
8
9
|
clientId: faker_1.faker.string.uuid(),
|
|
9
|
-
|
|
10
|
+
websiteUrlId: new mongodb_1.ObjectId().toString(),
|
|
10
11
|
status: "CHECKING",
|
|
11
12
|
activeTasksCount: 0,
|
|
12
13
|
pagesScanned: 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scans.js","sourceRoot":"","sources":["../../../../src/test-utils/factories/websitalk/scans.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"scans.js","sourceRoot":"","sources":["../../../../src/test-utils/factories/websitalk/scans.ts"],"names":[],"mappings":";;;AAqBA,8CAEC;AAvBD,qCAAkC;AAClC,2CAAwC;AACxC,qCAAmC;AAGtB,QAAA,WAAW,GAAG,iBAAO,CAAC,MAAM,CAAO,GAAG,EAAE,CAAC,CAAC;IACrD,QAAQ,EAAE,aAAK,CAAC,MAAM,CAAC,IAAI,EAAE;IAC7B,YAAY,EAAE,IAAI,kBAAQ,EAAE,CAAC,QAAQ,EAAE;IACvC,MAAM,EAAE,UAAU;IAClB,gBAAgB,EAAE,CAAC;IACnB,YAAY,EAAE,CAAC;IACf,YAAY,EAAE,CAAC;IACf,OAAO,EAAE,EAAE;IACX,UAAU,EAAE;QACV,GAAG,EAAE,aAAK,CAAC,QAAQ,CAAC,GAAG,EAAE;QACzB,UAAU,EAAE,aAAa;KAC1B;IACD,SAAS,EAAE,IAAI,IAAI,EAAE;IACrB,SAAS,EAAE,IAAI,IAAI,EAAE;CACtB,CAAC,CAAC,CAAC;AAEJ,SAAgB,iBAAiB,CAAC,SAAyB;IACzD,OAAO,mBAAW,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AACtC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Factory } from "fishery";
|
|
2
|
+
import type { WebsiteUrl } from "../../../websitalk/websiteUrls";
|
|
3
|
+
export declare const websiteUrlFactory: Factory<WebsiteUrl, any, WebsiteUrl, import("fishery").DeepPartialObject<WebsiteUrl>>;
|
|
4
|
+
export declare function createWebsiteUrlFixture(overrides?: Partial<WebsiteUrl>): WebsiteUrl;
|
|
5
|
+
//# sourceMappingURL=websiteUrls.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websiteUrls.d.ts","sourceRoot":"","sources":["../../../../src/test-utils/factories/websitalk/websiteUrls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAEjE,eAAO,MAAM,iBAAiB,uFAM3B,CAAC;AAEJ,wBAAgB,uBAAuB,CACrC,SAAS,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAC9B,UAAU,CAEZ"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.websiteUrlFactory = void 0;
|
|
4
|
+
exports.createWebsiteUrlFixture = createWebsiteUrlFixture;
|
|
5
|
+
const fishery_1 = require("fishery");
|
|
6
|
+
const faker_1 = require("@faker-js/faker");
|
|
7
|
+
exports.websiteUrlFactory = fishery_1.Factory.define(() => ({
|
|
8
|
+
clientId: faker_1.faker.string.uuid(),
|
|
9
|
+
name: faker_1.faker.company.name(),
|
|
10
|
+
baseUrl: faker_1.faker.internet.url(),
|
|
11
|
+
createdAt: new Date(),
|
|
12
|
+
updatedAt: new Date(),
|
|
13
|
+
}));
|
|
14
|
+
function createWebsiteUrlFixture(overrides) {
|
|
15
|
+
return exports.websiteUrlFactory.build(overrides);
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=websiteUrls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websiteUrls.js","sourceRoot":"","sources":["../../../../src/test-utils/factories/websitalk/websiteUrls.ts"],"names":[],"mappings":";;;AAYA,0DAIC;AAhBD,qCAAkC;AAClC,2CAAwC;AAG3B,QAAA,iBAAiB,GAAG,iBAAO,CAAC,MAAM,CAAa,GAAG,EAAE,CAAC,CAAC;IACjE,QAAQ,EAAE,aAAK,CAAC,MAAM,CAAC,IAAI,EAAE;IAC7B,IAAI,EAAE,aAAK,CAAC,OAAO,CAAC,IAAI,EAAE;IAC1B,OAAO,EAAE,aAAK,CAAC,QAAQ,CAAC,GAAG,EAAE;IAC7B,SAAS,EAAE,IAAI,IAAI,EAAE;IACrB,SAAS,EAAE,IAAI,IAAI,EAAE;CACtB,CAAC,CAAC,CAAC;AAEJ,SAAgB,uBAAuB,CACrC,SAA+B;IAE/B,OAAO,yBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AAC5C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/websitalk/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,SAAS,CAAC;AAExD,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAG1D,eAAO,MAAM,KAAK,GAAI,GAAG,EAAE,SAE1B,CAAC;AAEF,eAAO,MAAM,KAAK,QAAO,EAGxB,CAAC;AACF,eAAO,MAAM,QAAQ,sBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/websitalk/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,SAAS,CAAC;AAExD,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAG1D,eAAO,MAAM,KAAK,GAAI,GAAG,EAAE,SAE1B,CAAC;AAEF,eAAO,MAAM,KAAK,QAAO,EAGxB,CAAC;AACF,eAAO,MAAM,QAAQ,sBAAgB,CAAC"}
|
package/dist/websitalk/index.js
CHANGED
|
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
exports.ObjectId = exports.getDb = exports.setDb = exports.websitalkMongodbClient = void 0;
|
|
18
18
|
const mongodb_1 = require("mongodb");
|
|
19
19
|
__exportStar(require("./scans"), exports);
|
|
20
|
+
__exportStar(require("./websiteUrls"), exports);
|
|
20
21
|
var mongodb_client_1 = require("./mongodb-client");
|
|
21
22
|
Object.defineProperty(exports, "websitalkMongodbClient", { enumerable: true, get: function () { return mongodb_client_1.websitalkMongodbClient; } });
|
|
22
23
|
let db;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/websitalk/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qCAAwD;AAExD,0CAAwB;AACxB,mDAA0D;AAAjD,wHAAA,sBAAsB,OAAA;AAE/B,IAAI,EAAM,CAAC;AACJ,MAAM,KAAK,GAAG,CAAC,CAAK,EAAE,EAAE;IAC7B,EAAE,GAAG,CAAC,CAAC;AACT,CAAC,CAAC;AAFW,QAAA,KAAK,SAEhB;AAEK,MAAM,KAAK,GAAG,GAAO,EAAE;IAC5B,IAAI,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAC5D,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAHW,QAAA,KAAK,SAGhB;AACW,QAAA,QAAQ,GAAG,kBAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/websitalk/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qCAAwD;AAExD,0CAAwB;AACxB,gDAA8B;AAC9B,mDAA0D;AAAjD,wHAAA,sBAAsB,OAAA;AAE/B,IAAI,EAAM,CAAC;AACJ,MAAM,KAAK,GAAG,CAAC,CAAK,EAAE,EAAE;IAC7B,EAAE,GAAG,CAAC,CAAC;AACT,CAAC,CAAC;AAFW,QAAA,KAAK,SAEhB;AAEK,MAAM,KAAK,GAAG,GAAO,EAAE;IAC5B,IAAI,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAC5D,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAHW,QAAA,KAAK,SAGhB;AACW,QAAA,QAAQ,GAAG,kBAAa,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/websitalk/scans/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/websitalk/scans/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC"}
|
|
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./scans.constants"), exports);
|
|
17
18
|
__exportStar(require("./scans.getters"), exports);
|
|
18
19
|
__exportStar(require("./scans.types"), exports);
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/websitalk/scans/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,gDAA8B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/websitalk/scans/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,kDAAgC;AAChC,gDAA8B"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { Scan, ScanStatus } from "./scans.types";
|
|
2
|
+
export declare const INITIAL_SCAN_STATUS: "CHECKING";
|
|
3
|
+
export declare const FINISHED_SCAN_STATUSES: ScanStatus[];
|
|
4
|
+
export declare const isInProgressScan: (scan: Scan) => boolean;
|
|
5
|
+
//# sourceMappingURL=scans.constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scans.constants.d.ts","sourceRoot":"","sources":["../../../src/websitalk/scans/scans.constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEtD,eAAO,MAAM,mBAAmB,YAA2C,CAAC;AAE5E,eAAO,MAAM,sBAAsB,EAAE,UAAU,EAI9C,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,MAAM,IAAI,KAAG,OACC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isInProgressScan = exports.FINISHED_SCAN_STATUSES = exports.INITIAL_SCAN_STATUS = void 0;
|
|
4
|
+
exports.INITIAL_SCAN_STATUS = "CHECKING";
|
|
5
|
+
exports.FINISHED_SCAN_STATUSES = [
|
|
6
|
+
"COMPLETED",
|
|
7
|
+
"FAILED",
|
|
8
|
+
"OVERWRITTEN",
|
|
9
|
+
];
|
|
10
|
+
const isInProgressScan = (scan) => !exports.FINISHED_SCAN_STATUSES.includes(scan.status);
|
|
11
|
+
exports.isInProgressScan = isInProgressScan;
|
|
12
|
+
//# sourceMappingURL=scans.constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scans.constants.js","sourceRoot":"","sources":["../../../src/websitalk/scans/scans.constants.ts"],"names":[],"mappings":";;;AAEa,QAAA,mBAAmB,GAAG,UAAwC,CAAC;AAE/D,QAAA,sBAAsB,GAAiB;IAClD,WAAW;IACX,QAAQ;IACR,aAAa;CACd,CAAC;AAEK,MAAM,gBAAgB,GAAG,CAAC,IAAU,EAAW,EAAE,CACtD,CAAC,8BAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AADnC,QAAA,gBAAgB,oBACmB"}
|
|
@@ -1,12 +1,19 @@
|
|
|
1
1
|
import { Collection, Filter, ObjectId } from "mongodb";
|
|
2
2
|
import { QueryOptions } from "../../talkpilot/utils/query.utils";
|
|
3
|
-
import type {
|
|
3
|
+
import type { Scan, ScanDoc } from "./scans.types";
|
|
4
4
|
export declare const getScansCollection: () => Collection<Scan>;
|
|
5
5
|
export declare const getScansByClientAndDateRange: (clientId: string, startDate: Date, endDate: Date) => Promise<ScanDoc[]>;
|
|
6
6
|
export declare const getScanFieldsByClientAndDateRange: <K extends keyof Scan>(clientId: string, startDate: Date, endDate: Date, fields: K[]) => Promise<Pick<ScanDoc, "_id" | K>[]>;
|
|
7
|
-
export declare const createScanDoc: (scan: Pick<Scan, "clientId" | "
|
|
8
|
-
export declare const
|
|
7
|
+
export declare const createScanDoc: (scan: Pick<Scan, "clientId" | "websiteUrlId"> & Partial<Pick<Scan, "notifyPhoneNumber">>) => Promise<import("mongodb").InsertOneResult<Scan>>;
|
|
8
|
+
export declare const getScanById: (id: string) => Promise<ScanDoc | null>;
|
|
9
|
+
export declare const getScansByWebsiteUrl: (websiteUrlId: string) => Promise<ScanDoc[]>;
|
|
10
|
+
export declare const getLatestScanByWebsiteUrl: (websiteUrlId: string) => Promise<ScanDoc | null>;
|
|
11
|
+
export declare const getInProgressScanByWebsiteUrl: (websiteUrlId: string) => Promise<ScanDoc | null>;
|
|
12
|
+
export declare const findInProgressScansByClient: (clientId: string) => Promise<ScanDoc[]>;
|
|
9
13
|
export declare const updateScanDoc: (scanId: ObjectId, updates: Partial<Omit<Scan, "clientId" | "createdAt">>) => Promise<ScanDoc | null>;
|
|
10
14
|
export declare const findScansByQuery: (query: Filter<Scan>, options?: QueryOptions) => Promise<ScanDoc[]>;
|
|
11
15
|
export declare const countScans: (query: Filter<Scan>) => Promise<number>;
|
|
16
|
+
export declare const hasScansForWebsiteUrl: (websiteUrlId: string) => Promise<boolean>;
|
|
17
|
+
export declare const getLatestCompletedScanByWebsiteUrl: (websiteUrlId: string) => Promise<ScanDoc | null>;
|
|
18
|
+
export declare const deleteScansByWebsiteUrl: (websiteUrlId: string) => Promise<number>;
|
|
12
19
|
//# sourceMappingURL=scans.getters.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scans.getters.d.ts","sourceRoot":"","sources":["../../../src/websitalk/scans/scans.getters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEvD,OAAO,EAEL,YAAY,EACb,MAAM,mCAAmC,CAAC;AAC3C,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"scans.getters.d.ts","sourceRoot":"","sources":["../../../src/websitalk/scans/scans.getters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEvD,OAAO,EAEL,YAAY,EACb,MAAM,mCAAmC,CAAC;AAC3C,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAOnD,eAAO,MAAM,kBAAkB,QAAO,UAAU,CAAC,IAAI,CAEpD,CAAC;AAEF,eAAO,MAAM,4BAA4B,GACvC,UAAU,MAAM,EAChB,WAAW,IAAI,EACf,SAAS,IAAI,KACZ,OAAO,CAAC,OAAO,EAAE,CAUnB,CAAC;AAEF,eAAO,MAAM,iCAAiC,GAAI,CAAC,SAAS,MAAM,IAAI,EACpE,UAAU,MAAM,EAChB,WAAW,IAAI,EACf,SAAS,IAAI,EACb,QAAQ,CAAC,EAAE,KACV,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE,CAkBpC,CAAC;AAEF,eAAO,MAAM,aAAa,GACxB,MAAM,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,cAAc,CAAC,GAC3C,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC,qDAa3C,CAAC;AAEF,eAAO,MAAM,WAAW,GAAU,IAAI,MAAM,KAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAEpE,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,cAAc,MAAM,KACnB,OAAO,CAAC,OAAO,EAAE,CAKnB,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,cAAc,MAAM,KACnB,OAAO,CAAC,OAAO,GAAG,IAAI,CAKxB,CAAC;AAEF,eAAO,MAAM,6BAA6B,GACxC,cAAc,MAAM,KACnB,OAAO,CAAC,OAAO,GAAG,IAAI,CAMxB,CAAC;AAEF,eAAO,MAAM,2BAA2B,GACtC,UAAU,MAAM,KACf,OAAO,CAAC,OAAO,EAAE,CAQnB,CAAC;AAEF,eAAO,MAAM,aAAa,GACxB,QAAQ,QAAQ,EAChB,SAAS,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,CAAC,CAAC,KACrD,OAAO,CAAC,OAAO,GAAG,IAAI,CAMxB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,OAAO,MAAM,CAAC,IAAI,CAAC,EACnB,UAAU,YAAY,KACrB,OAAO,CAAC,OAAO,EAAE,CAGnB,CAAC;AAEF,eAAO,MAAM,UAAU,GAAU,OAAO,MAAM,CAAC,IAAI,CAAC,KAAG,OAAO,CAAC,MAAM,CAEpE,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAChC,cAAc,MAAM,KACnB,OAAO,CAAC,OAAO,CAEjB,CAAC;AAEF,eAAO,MAAM,kCAAkC,GAC7C,cAAc,MAAM,KACnB,OAAO,CAAC,OAAO,GAAG,IAAI,CAKxB,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,cAAc,MAAM,KACnB,OAAO,CAAC,MAAM,CAGhB,CAAC"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.countScans = exports.findScansByQuery = exports.updateScanDoc = exports.
|
|
3
|
+
exports.deleteScansByWebsiteUrl = exports.getLatestCompletedScanByWebsiteUrl = exports.hasScansForWebsiteUrl = exports.countScans = exports.findScansByQuery = exports.updateScanDoc = exports.findInProgressScansByClient = exports.getInProgressScanByWebsiteUrl = exports.getLatestScanByWebsiteUrl = exports.getScansByWebsiteUrl = exports.getScanById = exports.createScanDoc = exports.getScanFieldsByClientAndDateRange = exports.getScansByClientAndDateRange = exports.getScansCollection = void 0;
|
|
4
|
+
const mongodb_1 = require("mongodb");
|
|
4
5
|
const index_1 = require("../index");
|
|
5
6
|
const query_utils_1 = require("../../talkpilot/utils/query.utils");
|
|
7
|
+
const scans_constants_1 = require("./scans.constants");
|
|
6
8
|
const getScansCollection = () => {
|
|
7
9
|
return (0, index_1.getDb)().collection("scans");
|
|
8
10
|
};
|
|
@@ -38,7 +40,7 @@ exports.getScanFieldsByClientAndDateRange = getScanFieldsByClientAndDateRange;
|
|
|
38
40
|
const createScanDoc = (scan) => {
|
|
39
41
|
return (0, exports.getScansCollection)().insertOne({
|
|
40
42
|
...scan,
|
|
41
|
-
status:
|
|
43
|
+
status: scans_constants_1.INITIAL_SCAN_STATUS,
|
|
42
44
|
activeTasksCount: 0,
|
|
43
45
|
pagesScanned: 0,
|
|
44
46
|
pagesSkipped: 0,
|
|
@@ -49,15 +51,39 @@ const createScanDoc = (scan) => {
|
|
|
49
51
|
});
|
|
50
52
|
};
|
|
51
53
|
exports.createScanDoc = createScanDoc;
|
|
52
|
-
const
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
const getScanById = async (id) => {
|
|
55
|
+
return (0, exports.getScansCollection)().findOne({ _id: new mongodb_1.ObjectId(id) });
|
|
56
|
+
};
|
|
57
|
+
exports.getScanById = getScanById;
|
|
58
|
+
const getScansByWebsiteUrl = async (websiteUrlId) => {
|
|
59
|
+
return (0, exports.getScansCollection)()
|
|
60
|
+
.find({ websiteUrlId })
|
|
61
|
+
.sort({ createdAt: -1 })
|
|
62
|
+
.toArray();
|
|
63
|
+
};
|
|
64
|
+
exports.getScansByWebsiteUrl = getScansByWebsiteUrl;
|
|
65
|
+
const getLatestScanByWebsiteUrl = async (websiteUrlId) => {
|
|
66
|
+
return (0, exports.getScansCollection)().findOne({ websiteUrlId }, { sort: { createdAt: -1 } });
|
|
67
|
+
};
|
|
68
|
+
exports.getLatestScanByWebsiteUrl = getLatestScanByWebsiteUrl;
|
|
69
|
+
const getInProgressScanByWebsiteUrl = async (websiteUrlId) => {
|
|
70
|
+
const latestScan = await (0, exports.getLatestScanByWebsiteUrl)(websiteUrlId);
|
|
71
|
+
if (!latestScan || !(0, scans_constants_1.isInProgressScan)(latestScan)) {
|
|
72
|
+
return null;
|
|
57
73
|
}
|
|
58
|
-
return
|
|
74
|
+
return latestScan;
|
|
75
|
+
};
|
|
76
|
+
exports.getInProgressScanByWebsiteUrl = getInProgressScanByWebsiteUrl;
|
|
77
|
+
const findInProgressScansByClient = async (clientId) => {
|
|
78
|
+
return (0, exports.getScansCollection)()
|
|
79
|
+
.find({
|
|
80
|
+
clientId,
|
|
81
|
+
status: { $nin: scans_constants_1.FINISHED_SCAN_STATUSES },
|
|
82
|
+
})
|
|
83
|
+
.sort({ createdAt: -1 })
|
|
84
|
+
.toArray();
|
|
59
85
|
};
|
|
60
|
-
exports.
|
|
86
|
+
exports.findInProgressScansByClient = findInProgressScansByClient;
|
|
61
87
|
const updateScanDoc = async (scanId, updates) => {
|
|
62
88
|
return await (0, exports.getScansCollection)().findOneAndUpdate({ _id: scanId }, { $set: { ...updates, updatedAt: new Date() } }, { returnDocument: "after" });
|
|
63
89
|
};
|
|
@@ -71,4 +97,17 @@ const countScans = async (query) => {
|
|
|
71
97
|
return (0, exports.getScansCollection)().countDocuments(query);
|
|
72
98
|
};
|
|
73
99
|
exports.countScans = countScans;
|
|
100
|
+
const hasScansForWebsiteUrl = async (websiteUrlId) => {
|
|
101
|
+
return (await (0, exports.countScans)({ websiteUrlId })) > 0;
|
|
102
|
+
};
|
|
103
|
+
exports.hasScansForWebsiteUrl = hasScansForWebsiteUrl;
|
|
104
|
+
const getLatestCompletedScanByWebsiteUrl = async (websiteUrlId) => {
|
|
105
|
+
return (0, exports.getScansCollection)().findOne({ websiteUrlId, status: "COMPLETED" }, { sort: { createdAt: -1 } });
|
|
106
|
+
};
|
|
107
|
+
exports.getLatestCompletedScanByWebsiteUrl = getLatestCompletedScanByWebsiteUrl;
|
|
108
|
+
const deleteScansByWebsiteUrl = async (websiteUrlId) => {
|
|
109
|
+
const result = await (0, exports.getScansCollection)().deleteMany({ websiteUrlId });
|
|
110
|
+
return result.deletedCount;
|
|
111
|
+
};
|
|
112
|
+
exports.deleteScansByWebsiteUrl = deleteScansByWebsiteUrl;
|
|
74
113
|
//# sourceMappingURL=scans.getters.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scans.getters.js","sourceRoot":"","sources":["../../../src/websitalk/scans/scans.getters.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"scans.getters.js","sourceRoot":"","sources":["../../../src/websitalk/scans/scans.getters.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,5 @@
|
|
|
1
1
|
import { WithId } from "mongodb";
|
|
2
|
-
export type ScanStatus = "CHECKING" | "PREPARING" | "SCANNING" | "PROCESSING" | "COMPLETED" | "FAILED";
|
|
3
|
-
export type ActiveScanStatus = {
|
|
4
|
-
isActive: true;
|
|
5
|
-
status: ScanStatus;
|
|
6
|
-
} | {
|
|
7
|
-
isActive: false;
|
|
8
|
-
};
|
|
2
|
+
export type ScanStatus = "CHECKING" | "PREPARING" | "SCANNING" | "PROCESSING" | "COMPLETED" | "FAILED" | "OVERWRITTEN";
|
|
9
3
|
export type SiteChromeEntry = {
|
|
10
4
|
url: string;
|
|
11
5
|
urlCanonical?: string | null;
|
|
@@ -30,7 +24,7 @@ export type SkippedEntry = {
|
|
|
30
24
|
};
|
|
31
25
|
export type Scan = {
|
|
32
26
|
clientId: string;
|
|
33
|
-
|
|
27
|
+
websiteUrlId: string;
|
|
34
28
|
notifyPhoneNumber?: string | null;
|
|
35
29
|
status: ScanStatus;
|
|
36
30
|
activeTasksCount: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scans.types.d.ts","sourceRoot":"","sources":["../../../src/websitalk/scans/scans.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,MAAM,MAAM,UAAU,GAClB,UAAU,GACV,WAAW,GACX,UAAU,GACV,YAAY,GACZ,WAAW,GACX,QAAQ,
|
|
1
|
+
{"version":3,"file":"scans.types.d.ts","sourceRoot":"","sources":["../../../src/websitalk/scans/scans.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,MAAM,MAAM,UAAU,GAClB,UAAU,GACV,WAAW,GACX,UAAU,GACV,YAAY,GACZ,WAAW,GACX,QAAQ,GACR,aAAa,CAAC;AAElB,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,IAAI,GAAG;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,MAAM,EAAE,UAAU,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,UAAU,EAAE,eAAe,CAAC;IAC5B,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websitalk.setup.d.ts","sourceRoot":"","sources":["../../src/websitalk/websitalk.setup.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,sBAAsB,QAAa,OAAO,CAAC,IAAI,CAW3D,CAAC;AAIF,eAAO,MAAM,0BAA0B,QAAO,OAAO,CAAC,IAAI,CAWzD,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ensureWebsitalkIndexesOnce = exports.ensureWebsitalkIndexes = void 0;
|
|
4
|
+
const index_1 = require("./index");
|
|
5
|
+
const scans_getters_1 = require("./scans/scans.getters");
|
|
6
|
+
const websiteUrls_getters_1 = require("./websiteUrls/websiteUrls.getters");
|
|
7
|
+
const ensureWebsitalkIndexes = async () => {
|
|
8
|
+
await (0, index_1.getDb)().collection(websiteUrls_getters_1.WEBSITE_URLS_COLLECTION).createIndex({ clientId: 1 });
|
|
9
|
+
await (0, scans_getters_1.getScansCollection)().createIndexes([
|
|
10
|
+
{ key: { clientId: 1, createdAt: -1 } },
|
|
11
|
+
{ key: { websiteUrlId: 1, createdAt: -1 } },
|
|
12
|
+
{
|
|
13
|
+
key: { websiteUrlId: 1, status: 1 },
|
|
14
|
+
unique: true,
|
|
15
|
+
partialFilterExpression: { status: "COMPLETED" },
|
|
16
|
+
},
|
|
17
|
+
]);
|
|
18
|
+
};
|
|
19
|
+
exports.ensureWebsitalkIndexes = ensureWebsitalkIndexes;
|
|
20
|
+
const provisioningByDb = new WeakMap();
|
|
21
|
+
const ensureWebsitalkIndexesOnce = () => {
|
|
22
|
+
const db = (0, index_1.getDb)();
|
|
23
|
+
let provisioning = provisioningByDb.get(db);
|
|
24
|
+
if (!provisioning) {
|
|
25
|
+
provisioning = (0, exports.ensureWebsitalkIndexes)().catch((err) => {
|
|
26
|
+
provisioningByDb.delete(db);
|
|
27
|
+
throw err;
|
|
28
|
+
});
|
|
29
|
+
provisioningByDb.set(db, provisioning);
|
|
30
|
+
}
|
|
31
|
+
return provisioning;
|
|
32
|
+
};
|
|
33
|
+
exports.ensureWebsitalkIndexesOnce = ensureWebsitalkIndexesOnce;
|
|
34
|
+
//# sourceMappingURL=websitalk.setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websitalk.setup.js","sourceRoot":"","sources":["../../src/websitalk/websitalk.setup.ts"],"names":[],"mappings":";;;AACA,mCAAgC;AAChC,yDAA2D;AAC3D,2EAA4E;AAErE,MAAM,sBAAsB,GAAG,KAAK,IAAmB,EAAE;IAC9D,MAAM,IAAA,aAAK,GAAE,CAAC,UAAU,CAAC,6CAAuB,CAAC,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/E,MAAM,IAAA,kCAAkB,GAAE,CAAC,aAAa,CAAC;QACvC,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;QACvC,EAAE,GAAG,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;QAC3C;YACE,GAAG,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;YACnC,MAAM,EAAE,IAAI;YACZ,uBAAuB,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE;SACjD;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAXW,QAAA,sBAAsB,0BAWjC;AAEF,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAAqB,CAAC;AAEnD,MAAM,0BAA0B,GAAG,GAAkB,EAAE;IAC5D,MAAM,EAAE,GAAG,IAAA,aAAK,GAAE,CAAC;IACnB,IAAI,YAAY,GAAG,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5C,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,YAAY,GAAG,IAAA,8BAAsB,GAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACpD,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC5B,MAAM,GAAG,CAAC;QACZ,CAAC,CAAC,CAAC;QACH,gBAAgB,CAAC,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC;AAXW,QAAA,0BAA0B,8BAWrC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/websitalk/websiteUrls/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./websiteUrls.types"), exports);
|
|
18
|
+
__exportStar(require("./websiteUrls.getters"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/websitalk/websiteUrls/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,wDAAsC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websiteUrls.constants.d.ts","sourceRoot":"","sources":["../../../src/websitalk/websiteUrls/websiteUrls.constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websiteUrls.constants.js","sourceRoot":"","sources":["../../../src/websitalk/websiteUrls/websiteUrls.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,uBAAuB,GAAG,aAAa,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ScanDoc } from "../scans/scans.types";
|
|
2
|
+
import type { WebsiteUrlDoc } from "./websiteUrls.types";
|
|
3
|
+
export type ActiveWebsiteContext = {
|
|
4
|
+
websiteUrl: WebsiteUrlDoc | null;
|
|
5
|
+
scan: ScanDoc | null;
|
|
6
|
+
activeScanId: string | null;
|
|
7
|
+
};
|
|
8
|
+
export declare const resolveActiveWebsiteContext: (clientId: string) => Promise<ActiveWebsiteContext>;
|
|
9
|
+
export declare const getSelectedScanByClient: (clientId: string) => Promise<ScanDoc | null>;
|
|
10
|
+
export declare const getActiveWebsiteUrlByClient: (clientId: string) => Promise<WebsiteUrlDoc | null>;
|
|
11
|
+
//# sourceMappingURL=websiteUrls.context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websiteUrls.context.d.ts","sourceRoot":"","sources":["../../../src/websitalk/websiteUrls/websiteUrls.context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAIpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,MAAM,MAAM,oBAAoB,GAAG;IACjC,UAAU,EAAE,aAAa,GAAG,IAAI,CAAC;IACjC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,2BAA2B,GACtC,UAAU,MAAM,KACf,OAAO,CAAC,oBAAoB,CAgB9B,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,UAAU,MAAM,KACf,OAAO,CAAC,OAAO,GAAG,IAAI,CAOxB,CAAC;AAEF,eAAO,MAAM,2BAA2B,GACtC,UAAU,MAAM,KACf,OAAO,CAAC,aAAa,GAAG,IAAI,CAG9B,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getActiveWebsiteUrlByClient = exports.getSelectedScanByClient = exports.resolveActiveWebsiteContext = void 0;
|
|
4
|
+
const clientsConfig_getters_1 = require("../../talkpilot/clientsConfig/clientsConfig.getters");
|
|
5
|
+
const scans_getters_1 = require("../scans/scans.getters");
|
|
6
|
+
const websiteUrls_getters_1 = require("./websiteUrls.getters");
|
|
7
|
+
const resolveActiveWebsiteContext = async (clientId) => {
|
|
8
|
+
const config = await (0, clientsConfig_getters_1.getClientConfig)(clientId);
|
|
9
|
+
const activeScanId = config?.products?.websiteTalk?.activeScanId ?? null;
|
|
10
|
+
if (!activeScanId) {
|
|
11
|
+
return { websiteUrl: null, scan: null, activeScanId: null };
|
|
12
|
+
}
|
|
13
|
+
const scan = await (0, scans_getters_1.getScanById)(activeScanId);
|
|
14
|
+
if (!scan) {
|
|
15
|
+
return { websiteUrl: null, scan: null, activeScanId };
|
|
16
|
+
}
|
|
17
|
+
const websiteUrl = await (0, websiteUrls_getters_1.getWebsiteUrlById)(scan.websiteUrlId);
|
|
18
|
+
return { websiteUrl, scan, activeScanId };
|
|
19
|
+
};
|
|
20
|
+
exports.resolveActiveWebsiteContext = resolveActiveWebsiteContext;
|
|
21
|
+
const getSelectedScanByClient = async (clientId) => {
|
|
22
|
+
const config = await (0, clientsConfig_getters_1.getClientConfig)(clientId);
|
|
23
|
+
const activeScanId = config?.products?.websiteTalk?.activeScanId;
|
|
24
|
+
if (!activeScanId) {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
return (0, scans_getters_1.getScanById)(activeScanId);
|
|
28
|
+
};
|
|
29
|
+
exports.getSelectedScanByClient = getSelectedScanByClient;
|
|
30
|
+
const getActiveWebsiteUrlByClient = async (clientId) => {
|
|
31
|
+
const context = await (0, exports.resolveActiveWebsiteContext)(clientId);
|
|
32
|
+
return context.websiteUrl;
|
|
33
|
+
};
|
|
34
|
+
exports.getActiveWebsiteUrlByClient = getActiveWebsiteUrlByClient;
|
|
35
|
+
//# sourceMappingURL=websiteUrls.context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websiteUrls.context.js","sourceRoot":"","sources":["../../../src/websitalk/websiteUrls/websiteUrls.context.ts"],"names":[],"mappings":";;;AAAA,+FAAsF;AACtF,0DAAqD;AAErD,+DAE+B;AASxB,MAAM,2BAA2B,GAAG,KAAK,EAC9C,QAAgB,EACe,EAAE;IACjC,MAAM,MAAM,GAAG,MAAM,IAAA,uCAAe,EAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,IAAI,IAAI,CAAC;IAEzE,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAC9D,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,IAAA,2BAAW,EAAC,YAAY,CAAC,CAAC;IAC7C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IACxD,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,IAAA,uCAAiB,EAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAE9D,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;AAC5C,CAAC,CAAC;AAlBW,QAAA,2BAA2B,+BAkBtC;AAEK,MAAM,uBAAuB,GAAG,KAAK,EAC1C,QAAgB,EACS,EAAE;IAC3B,MAAM,MAAM,GAAG,MAAM,IAAA,uCAAe,EAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,CAAC;IACjE,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAA,2BAAW,EAAC,YAAY,CAAC,CAAC;AACnC,CAAC,CAAC;AATW,QAAA,uBAAuB,2BASlC;AAEK,MAAM,2BAA2B,GAAG,KAAK,EAC9C,QAAgB,EACe,EAAE;IACjC,MAAM,OAAO,GAAG,MAAM,IAAA,mCAA2B,EAAC,QAAQ,CAAC,CAAC;IAC5D,OAAO,OAAO,CAAC,UAAU,CAAC;AAC5B,CAAC,CAAC;AALW,QAAA,2BAA2B,+BAKtC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Collection, Filter, ObjectId as MongoObjectId } from "mongodb";
|
|
2
|
+
import type { CreateWebsiteUrlInput, WebsiteUrl, WebsiteUrlDoc } from "./websiteUrls.types";
|
|
3
|
+
export declare const getWebsiteUrlsCollection: () => Collection<WebsiteUrl>;
|
|
4
|
+
export declare const getWebsiteUrlsByClient: (clientId: string) => Promise<WebsiteUrlDoc[]>;
|
|
5
|
+
export declare const getWebsiteUrlById: (id: string) => Promise<WebsiteUrlDoc | null>;
|
|
6
|
+
export declare const findWebsiteUrls: (filter?: Filter<WebsiteUrl>) => Promise<WebsiteUrlDoc[]>;
|
|
7
|
+
export declare const createWebsiteUrl: (input: CreateWebsiteUrlInput) => Promise<MongoObjectId>;
|
|
8
|
+
export declare const updateWebsiteUrl: (id: string, updates: Partial<Pick<WebsiteUrl, "name" | "baseUrl">>) => Promise<WebsiteUrlDoc | null>;
|
|
9
|
+
export declare const deleteWebsiteUrl: (id: string) => Promise<boolean>;
|
|
10
|
+
//# sourceMappingURL=websiteUrls.getters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websiteUrls.getters.d.ts","sourceRoot":"","sources":["../../../src/websitalk/websiteUrls/websiteUrls.getters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,SAAS,CAAC;AAExE,OAAO,KAAK,EACV,qBAAqB,EACrB,UAAU,EACV,aAAa,EACd,MAAM,qBAAqB,CAAC;AAE7B,eAAO,MAAM,wBAAwB,QAAO,UAAU,CAAC,UAAU,CAEhE,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,UAAU,MAAM,KACf,OAAO,CAAC,aAAa,EAAE,CAKzB,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,IAAI,MAAM,KACT,OAAO,CAAC,aAAa,GAAG,IAAI,CAE9B,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,SAAQ,MAAM,CAAC,UAAU,CAAM,KAC9B,OAAO,CAAC,aAAa,EAAE,CAEzB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,OAAO,qBAAqB,KAC3B,OAAO,CAAC,aAAa,CAWvB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,IAAI,MAAM,EACV,SAAS,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,KACrD,OAAO,CAAC,aAAa,GAAG,IAAI,CAM9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAU,IAAI,MAAM,KAAG,OAAO,CAAC,OAAO,CAKlE,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.deleteWebsiteUrl = exports.updateWebsiteUrl = exports.createWebsiteUrl = exports.findWebsiteUrls = exports.getWebsiteUrlById = exports.getWebsiteUrlsByClient = exports.getWebsiteUrlsCollection = void 0;
|
|
4
|
+
const index_1 = require("../index");
|
|
5
|
+
const getWebsiteUrlsCollection = () => {
|
|
6
|
+
return (0, index_1.getDb)().collection("websiteUrls");
|
|
7
|
+
};
|
|
8
|
+
exports.getWebsiteUrlsCollection = getWebsiteUrlsCollection;
|
|
9
|
+
const getWebsiteUrlsByClient = async (clientId) => {
|
|
10
|
+
return (0, exports.getWebsiteUrlsCollection)()
|
|
11
|
+
.find({ clientId })
|
|
12
|
+
.sort({ createdAt: 1 })
|
|
13
|
+
.toArray();
|
|
14
|
+
};
|
|
15
|
+
exports.getWebsiteUrlsByClient = getWebsiteUrlsByClient;
|
|
16
|
+
const getWebsiteUrlById = async (id) => {
|
|
17
|
+
return (0, exports.getWebsiteUrlsCollection)().findOne({ _id: new index_1.ObjectId(id) });
|
|
18
|
+
};
|
|
19
|
+
exports.getWebsiteUrlById = getWebsiteUrlById;
|
|
20
|
+
const findWebsiteUrls = async (filter = {}) => {
|
|
21
|
+
return (0, exports.getWebsiteUrlsCollection)().find(filter).toArray();
|
|
22
|
+
};
|
|
23
|
+
exports.findWebsiteUrls = findWebsiteUrls;
|
|
24
|
+
const createWebsiteUrl = async (input) => {
|
|
25
|
+
const now = new Date();
|
|
26
|
+
const { insertedId } = await (0, exports.getWebsiteUrlsCollection)().insertOne({
|
|
27
|
+
clientId: input.clientId,
|
|
28
|
+
name: input.name,
|
|
29
|
+
baseUrl: input.baseUrl,
|
|
30
|
+
createdAt: now,
|
|
31
|
+
updatedAt: now,
|
|
32
|
+
});
|
|
33
|
+
return insertedId;
|
|
34
|
+
};
|
|
35
|
+
exports.createWebsiteUrl = createWebsiteUrl;
|
|
36
|
+
const updateWebsiteUrl = async (id, updates) => {
|
|
37
|
+
return (0, exports.getWebsiteUrlsCollection)().findOneAndUpdate({ _id: new index_1.ObjectId(id) }, { $set: { ...updates, updatedAt: new Date() } }, { returnDocument: "after" });
|
|
38
|
+
};
|
|
39
|
+
exports.updateWebsiteUrl = updateWebsiteUrl;
|
|
40
|
+
const deleteWebsiteUrl = async (id) => {
|
|
41
|
+
const result = await (0, exports.getWebsiteUrlsCollection)().deleteOne({
|
|
42
|
+
_id: new index_1.ObjectId(id),
|
|
43
|
+
});
|
|
44
|
+
return result.deletedCount === 1;
|
|
45
|
+
};
|
|
46
|
+
exports.deleteWebsiteUrl = deleteWebsiteUrl;
|
|
47
|
+
//# sourceMappingURL=websiteUrls.getters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websiteUrls.getters.js","sourceRoot":"","sources":["../../../src/websitalk/websiteUrls/websiteUrls.getters.ts"],"names":[],"mappings":";;;AACA,oCAA2C;AAOpC,MAAM,wBAAwB,GAAG,GAA2B,EAAE;IACnE,OAAO,IAAA,aAAK,GAAE,CAAC,UAAU,CAAa,aAAa,CAAC,CAAC;AACvD,CAAC,CAAC;AAFW,QAAA,wBAAwB,4BAEnC;AAEK,MAAM,sBAAsB,GAAG,KAAK,EACzC,QAAgB,EACU,EAAE;IAC5B,OAAO,IAAA,gCAAwB,GAAE;SAC9B,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;SAClB,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;SACtB,OAAO,EAAE,CAAC;AACf,CAAC,CAAC;AAPW,QAAA,sBAAsB,0BAOjC;AAEK,MAAM,iBAAiB,GAAG,KAAK,EACpC,EAAU,EACqB,EAAE;IACjC,OAAO,IAAA,gCAAwB,GAAE,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,gBAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACvE,CAAC,CAAC;AAJW,QAAA,iBAAiB,qBAI5B;AAEK,MAAM,eAAe,GAAG,KAAK,EAClC,SAA6B,EAAE,EACL,EAAE;IAC5B,OAAO,IAAA,gCAAwB,GAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;AAC3D,CAAC,CAAC;AAJW,QAAA,eAAe,mBAI1B;AAEK,MAAM,gBAAgB,GAAG,KAAK,EACnC,KAA4B,EACJ,EAAE;IAC1B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,IAAA,gCAAwB,GAAE,CAAC,SAAS,CAAC;QAChE,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,SAAS,EAAE,GAAG;QACd,SAAS,EAAE,GAAG;KACf,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAbW,QAAA,gBAAgB,oBAa3B;AAEK,MAAM,gBAAgB,GAAG,KAAK,EACnC,EAAU,EACV,OAAsD,EACvB,EAAE;IACjC,OAAO,IAAA,gCAAwB,GAAE,CAAC,gBAAgB,CAChD,EAAE,GAAG,EAAE,IAAI,gBAAQ,CAAC,EAAE,CAAC,EAAE,EACzB,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAC/C,EAAE,cAAc,EAAE,OAAO,EAAE,CAC5B,CAAC;AACJ,CAAC,CAAC;AATW,QAAA,gBAAgB,oBAS3B;AAEK,MAAM,gBAAgB,GAAG,KAAK,EAAE,EAAU,EAAoB,EAAE;IACrE,MAAM,MAAM,GAAG,MAAM,IAAA,gCAAwB,GAAE,CAAC,SAAS,CAAC;QACxD,GAAG,EAAE,IAAI,gBAAQ,CAAC,EAAE,CAAC;KACtB,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,YAAY,KAAK,CAAC,CAAC;AACnC,CAAC,CAAC;AALW,QAAA,gBAAgB,oBAK3B"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ObjectId as MongoObjectId } from "mongodb";
|
|
2
|
+
import type { WebsiteUrl, WebsiteUrlDoc } from "./websiteUrls.types";
|
|
3
|
+
export type CreateWebsiteUrlInput = Omit<WebsiteUrl, "createdAt" | "updatedAt">;
|
|
4
|
+
export declare const createWebsiteUrl: (input: CreateWebsiteUrlInput) => Promise<MongoObjectId>;
|
|
5
|
+
export declare const updateWebsiteUrl: (id: string, updates: Partial<Pick<WebsiteUrl, "name" | "baseUrl">>) => Promise<WebsiteUrlDoc | null>;
|
|
6
|
+
export declare const deleteWebsiteUrl: (id: string) => Promise<boolean>;
|
|
7
|
+
//# sourceMappingURL=websiteUrls.setters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websiteUrls.setters.d.ts","sourceRoot":"","sources":["../../../src/websitalk/websiteUrls/websiteUrls.setters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,SAAS,CAAC;AAGpD,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAErE,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,UAAU,EACV,WAAW,GAAG,WAAW,CAC1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,OAAO,qBAAqB,KAC3B,OAAO,CAAC,aAAa,CAWvB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,IAAI,MAAM,EACV,SAAS,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,KACrD,OAAO,CAAC,aAAa,GAAG,IAAI,CAM9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAU,IAAI,MAAM,KAAG,OAAO,CAAC,OAAO,CAMlE,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.deleteWebsiteUrl = exports.updateWebsiteUrl = exports.createWebsiteUrl = void 0;
|
|
4
|
+
const index_1 = require("../index");
|
|
5
|
+
const websiteUrls_getters_1 = require("./websiteUrls.getters");
|
|
6
|
+
const createWebsiteUrl = async (input) => {
|
|
7
|
+
const now = new Date();
|
|
8
|
+
const { insertedId } = await (0, websiteUrls_getters_1.getWebsiteUrlsCollection)().insertOne({
|
|
9
|
+
clientId: input.clientId,
|
|
10
|
+
name: input.name,
|
|
11
|
+
baseUrl: input.baseUrl,
|
|
12
|
+
createdAt: now,
|
|
13
|
+
updatedAt: now,
|
|
14
|
+
});
|
|
15
|
+
return insertedId;
|
|
16
|
+
};
|
|
17
|
+
exports.createWebsiteUrl = createWebsiteUrl;
|
|
18
|
+
const updateWebsiteUrl = async (id, updates) => {
|
|
19
|
+
return (0, websiteUrls_getters_1.getWebsiteUrlsCollection)().findOneAndUpdate({ _id: new index_1.ObjectId(id) }, { $set: { ...updates, updatedAt: new Date() } }, { returnDocument: "after" });
|
|
20
|
+
};
|
|
21
|
+
exports.updateWebsiteUrl = updateWebsiteUrl;
|
|
22
|
+
const deleteWebsiteUrl = async (id) => {
|
|
23
|
+
const result = await (0, websiteUrls_getters_1.getWebsiteUrlsCollection)().deleteOne({
|
|
24
|
+
_id: new index_1.ObjectId(id),
|
|
25
|
+
});
|
|
26
|
+
return result.deletedCount > 0;
|
|
27
|
+
};
|
|
28
|
+
exports.deleteWebsiteUrl = deleteWebsiteUrl;
|
|
29
|
+
//# sourceMappingURL=websiteUrls.setters.js.map
|