@talkpilot/core-db 1.3.85 → 1.3.86
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 +1 -0
- package/dist/municipal/muniIssues/index.d.ts +3 -2
- package/dist/municipal/muniIssues/index.d.ts.map +1 -1
- package/dist/municipal/muniIssues/index.js +4 -1
- package/dist/municipal/muniIssues/index.js.map +1 -1
- package/dist/municipal/muniIssues/muniIssues.constants.d.ts +2 -0
- package/dist/municipal/muniIssues/muniIssues.constants.d.ts.map +1 -1
- package/dist/municipal/muniIssues/muniIssues.constants.js +8 -1
- package/dist/municipal/muniIssues/muniIssues.constants.js.map +1 -1
- package/dist/municipal/muniIssues/muniIssues.getters.d.ts +4 -1
- package/dist/municipal/muniIssues/muniIssues.getters.d.ts.map +1 -1
- package/dist/municipal/muniIssues/muniIssues.getters.js +35 -1
- package/dist/municipal/muniIssues/muniIssues.getters.js.map +1 -1
- package/dist/municipal/muniIssues/muniIssues.schema.d.ts.map +1 -1
- package/dist/municipal/muniIssues/muniIssues.schema.js +17 -0
- package/dist/municipal/muniIssues/muniIssues.schema.js.map +1 -1
- package/dist/municipal/muniIssues/muniIssues.setters.d.ts +3 -1
- package/dist/municipal/muniIssues/muniIssues.setters.d.ts.map +1 -1
- package/dist/municipal/muniIssues/muniIssues.setters.js +46 -2
- package/dist/municipal/muniIssues/muniIssues.setters.js.map +1 -1
- package/dist/municipal/muniIssues/muniIssues.types.d.ts +22 -2
- package/dist/municipal/muniIssues/muniIssues.types.d.ts.map +1 -1
- package/dist/municipal/muniIssues/muniIssues.utils.d.ts +3 -0
- package/dist/municipal/muniIssues/muniIssues.utils.d.ts.map +1 -0
- package/dist/municipal/muniIssues/muniIssues.utils.js +6 -0
- package/dist/municipal/muniIssues/muniIssues.utils.js.map +1 -0
- package/dist/talkpilot/contextNotes/contextNotes.getters.d.ts +1 -7
- package/dist/talkpilot/contextNotes/contextNotes.getters.d.ts.map +1 -1
- package/dist/talkpilot/contextNotes/contextNotes.getters.js +1 -37
- package/dist/talkpilot/contextNotes/contextNotes.getters.js.map +1 -1
- package/dist/talkpilot/contextNotes/contextNotes.types.d.ts +0 -6
- package/dist/talkpilot/contextNotes/contextNotes.types.d.ts.map +1 -1
- package/dist/talkpilot/flows/flows.schema.d.ts +9 -0
- package/dist/talkpilot/flows/flows.schema.d.ts.map +1 -1
- package/dist/talkpilot/flows/flows.schema.js +7 -0
- package/dist/talkpilot/flows/flows.schema.js.map +1 -1
- package/dist/talkpilot/flows/flows.types.d.ts +3 -0
- package/dist/talkpilot/flows/flows.types.d.ts.map +1 -1
- package/dist/talkpilot/subscriptions/subscriptions.utils.d.ts +4 -0
- package/dist/talkpilot/subscriptions/subscriptions.utils.d.ts.map +1 -0
- package/dist/talkpilot/subscriptions/subscriptions.utils.js +20 -0
- package/dist/talkpilot/subscriptions/subscriptions.utils.js.map +1 -0
- package/package.json +1 -1
- package/src/municipal/muniIssues/__tests__/muniIssues.getters.spec.ts +87 -0
- package/src/municipal/muniIssues/__tests__/muniIssues.setters.spec.ts +126 -1
- package/src/municipal/muniIssues/__tests__/muniIssues.setup.spec.ts +1 -0
- package/src/municipal/muniIssues/__tests__/muniIssues.utils.spec.ts +17 -0
- package/src/municipal/muniIssues/index.ts +7 -0
- package/src/municipal/muniIssues/muniIssues.constants.ts +9 -0
- package/src/municipal/muniIssues/muniIssues.getters.ts +51 -2
- package/src/municipal/muniIssues/muniIssues.schema.ts +19 -0
- package/src/municipal/muniIssues/muniIssues.setters.ts +66 -3
- package/src/municipal/muniIssues/muniIssues.types.ts +34 -4
- package/src/municipal/muniIssues/muniIssues.utils.ts +6 -0
- package/src/talkpilot/contextNotes/__tests__/contextNotes.getters.spec.ts +0 -141
- package/src/talkpilot/contextNotes/contextNotes.getters.ts +1 -75
- package/src/talkpilot/contextNotes/contextNotes.types.ts +0 -7
- package/src/talkpilot/flows/__tests__/flows.schema.spec.ts +11 -0
- package/src/talkpilot/flows/flows.schema.ts +7 -0
- package/src/talkpilot/flows/flows.types.ts +1 -0
- package/dist/configuration/gptLive.seed.d.ts +0 -2
- package/dist/configuration/gptLive.seed.d.ts.map +0 -1
- package/dist/configuration/gptLive.seed.js +0 -59
- package/dist/configuration/gptLive.seed.js.map +0 -1
- package/dist/talkpilot/clients/clients.quota.constants.d.ts +0 -2
- package/dist/talkpilot/clients/clients.quota.constants.d.ts.map +0 -1
- package/dist/talkpilot/clients/clients.quota.constants.js +0 -5
- package/dist/talkpilot/clients/clients.quota.constants.js.map +0 -1
- package/dist/talkpilot/clients/clients.quota.utils.d.ts +0 -8
- package/dist/talkpilot/clients/clients.quota.utils.d.ts.map +0 -1
- package/dist/talkpilot/clients/clients.quota.utils.js +0 -45
- package/dist/talkpilot/clients/clients.quota.utils.js.map +0 -1
package/README.md
CHANGED
|
@@ -186,6 +186,7 @@ Refer to `DEVELOPMENT.md` for the full walkthrough, token instructions, and fact
|
|
|
186
186
|
| 1.3.69 | Municipal `residents` collection: optional resident fields (`cityName`, `firstName`, `lastName`, `idNumber`, `phoneNumber`, `address`) with exact-match getters by phone, by idNumber, and by phone+idNumber (city-scoped). Schema + indexes exported; collection is created out of band. |
|
|
187
187
|
| 1.3.71 | Who ended a call (CP-1873): optional `Call.endedBy` (`system` / `agent` / `user`), `CallEndedByValues`, and `setCallEndedBy` (first write wins). **Breaking** vs 1.3.69–1.3.70: the value `resident` was replaced by `user`. |
|
|
188
188
|
| 1.3.74 | Added `human` to `CallEndedByValues` (CP-1873): a human agent ended the call, after a transfer or in a conference. |
|
|
189
|
+
| 1.3.82 | Complaint tracking on `muniIssues` (CP-1888): optional `status` / `response` / `updatedAt`; an editable TalkPilot response with up to `MUNI_ISSUE_MAX_RESPONSE_IMAGES` (5) `response.imageUrls` and `response.updatedAt`; `updateMuniIssueStatus`, `setMuniIssueResponse`, `findMuniIssuesByClient`, `countMuniIssuesByClient`, `getMuniIssueByIdForClient`; index `clientId_1_createdAt_-1`. |
|
|
189
190
|
|
|
190
191
|
### 1.1.9
|
|
191
192
|
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export * from "./muniIssues.getters";
|
|
2
2
|
export * from "./muniIssues.setters";
|
|
3
3
|
export * from "./muniIssues.setup";
|
|
4
|
-
export
|
|
4
|
+
export * from "./muniIssues.utils";
|
|
5
|
+
export { MUNI_ISSUES_COLLECTION, MUNI_ISSUE_MAX_RESPONSE_IMAGES, MUNI_ISSUE_STATUSES, MUNI_ISSUE_SYNC_STATUSES, MUNI_ISSUE_TEXT_MAX_LENGTH, MUNI_ISSUE_NAME_MAX_LENGTH, } from "./muniIssues.constants";
|
|
5
6
|
export { muniIssuesJsonSchema, muniIssuesIndexes } from "./muniIssues.schema";
|
|
6
|
-
export type { MuniIssue, MuniIssueContent, MuniIssueJira, MuniIssueSyncStatus, CreateMuniIssueInput, } from "./muniIssues.types";
|
|
7
|
+
export type { MuniIssue, MuniIssueContent, MuniIssueJira, MuniIssueSyncStatus, MuniIssueStatus, MuniIssueResponse, CreateMuniIssueInput, SetMuniIssueResponseInput, FindMuniIssuesOptions, } from "./muniIssues.types";
|
|
7
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/municipal/muniIssues/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,YAAY,EACV,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/municipal/muniIssues/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EACL,sBAAsB,EACtB,8BAA8B,EAC9B,mBAAmB,EACnB,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,YAAY,EACV,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,oBAAoB,CAAC"}
|
|
@@ -14,12 +14,15 @@ 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
|
-
exports.muniIssuesIndexes = exports.muniIssuesJsonSchema = exports.MUNI_ISSUE_NAME_MAX_LENGTH = exports.MUNI_ISSUE_TEXT_MAX_LENGTH = exports.MUNI_ISSUE_SYNC_STATUSES = exports.MUNI_ISSUES_COLLECTION = void 0;
|
|
17
|
+
exports.muniIssuesIndexes = exports.muniIssuesJsonSchema = exports.MUNI_ISSUE_NAME_MAX_LENGTH = exports.MUNI_ISSUE_TEXT_MAX_LENGTH = exports.MUNI_ISSUE_SYNC_STATUSES = exports.MUNI_ISSUE_STATUSES = exports.MUNI_ISSUE_MAX_RESPONSE_IMAGES = exports.MUNI_ISSUES_COLLECTION = void 0;
|
|
18
18
|
__exportStar(require("./muniIssues.getters"), exports);
|
|
19
19
|
__exportStar(require("./muniIssues.setters"), exports);
|
|
20
20
|
__exportStar(require("./muniIssues.setup"), exports);
|
|
21
|
+
__exportStar(require("./muniIssues.utils"), exports);
|
|
21
22
|
var muniIssues_constants_1 = require("./muniIssues.constants");
|
|
22
23
|
Object.defineProperty(exports, "MUNI_ISSUES_COLLECTION", { enumerable: true, get: function () { return muniIssues_constants_1.MUNI_ISSUES_COLLECTION; } });
|
|
24
|
+
Object.defineProperty(exports, "MUNI_ISSUE_MAX_RESPONSE_IMAGES", { enumerable: true, get: function () { return muniIssues_constants_1.MUNI_ISSUE_MAX_RESPONSE_IMAGES; } });
|
|
25
|
+
Object.defineProperty(exports, "MUNI_ISSUE_STATUSES", { enumerable: true, get: function () { return muniIssues_constants_1.MUNI_ISSUE_STATUSES; } });
|
|
23
26
|
Object.defineProperty(exports, "MUNI_ISSUE_SYNC_STATUSES", { enumerable: true, get: function () { return muniIssues_constants_1.MUNI_ISSUE_SYNC_STATUSES; } });
|
|
24
27
|
Object.defineProperty(exports, "MUNI_ISSUE_TEXT_MAX_LENGTH", { enumerable: true, get: function () { return muniIssues_constants_1.MUNI_ISSUE_TEXT_MAX_LENGTH; } });
|
|
25
28
|
Object.defineProperty(exports, "MUNI_ISSUE_NAME_MAX_LENGTH", { enumerable: true, get: function () { return muniIssues_constants_1.MUNI_ISSUE_NAME_MAX_LENGTH; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/municipal/muniIssues/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,uDAAqC;AACrC,qDAAmC;AACnC,+
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/municipal/muniIssues/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,uDAAqC;AACrC,qDAAmC;AACnC,qDAAmC;AACnC,+DAOgC;AAN9B,8HAAA,sBAAsB,OAAA;AACtB,sIAAA,8BAA8B,OAAA;AAC9B,2HAAA,mBAAmB,OAAA;AACnB,gIAAA,wBAAwB,OAAA;AACxB,kIAAA,0BAA0B,OAAA;AAC1B,kIAAA,0BAA0B,OAAA;AAE5B,yDAA8E;AAArE,yHAAA,oBAAoB,OAAA;AAAE,sHAAA,iBAAiB,OAAA"}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
export declare const MUNI_ISSUES_COLLECTION = "muniIssues";
|
|
3
3
|
/** Sync state of the issue's Jira ticket at write time. */
|
|
4
4
|
export declare const MUNI_ISSUE_SYNC_STATUSES: readonly ["created", "failed"];
|
|
5
|
+
export declare const MUNI_ISSUE_STATUSES: readonly ["in_review", "in_progress", "resolved", "no_issue_found"];
|
|
6
|
+
export declare const MUNI_ISSUE_MAX_RESPONSE_IMAGES = 5;
|
|
5
7
|
/** Max length for the long free-text fields — well above the ~2000-char target. */
|
|
6
8
|
export declare const MUNI_ISSUE_TEXT_MAX_LENGTH = 5000;
|
|
7
9
|
/** Max length for the short identity fields (a person's name and role). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muniIssues.constants.d.ts","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.constants.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,eAAO,MAAM,sBAAsB,eAAe,CAAC;AAEnD,2DAA2D;AAC3D,eAAO,MAAM,wBAAwB,gCAAiC,CAAC;AAEvE,mFAAmF;AACnF,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAE/C,2EAA2E;AAC3E,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C,uGAAuG;AACvG,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,yEAAyE;AACzE,eAAO,MAAM,gBAAgB,EAAG,QAAiB,CAAC;AAClD,eAAO,MAAM,iBAAiB,EAAG,OAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"muniIssues.constants.d.ts","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.constants.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,eAAO,MAAM,sBAAsB,eAAe,CAAC;AAEnD,2DAA2D;AAC3D,eAAO,MAAM,wBAAwB,gCAAiC,CAAC;AAEvE,eAAO,MAAM,mBAAmB,qEAKtB,CAAC;AAEX,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,mFAAmF;AACnF,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAE/C,2EAA2E;AAC3E,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C,uGAAuG;AACvG,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,yEAAyE;AACzE,eAAO,MAAM,gBAAgB,EAAG,QAAiB,CAAC;AAClD,eAAO,MAAM,iBAAiB,EAAG,OAAgB,CAAC"}
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.VALIDATION_ACTION = exports.VALIDATION_LEVEL = exports.NAMESPACE_EXISTS = exports.MUNI_ISSUE_NAME_MAX_LENGTH = exports.MUNI_ISSUE_TEXT_MAX_LENGTH = exports.MUNI_ISSUE_SYNC_STATUSES = exports.MUNI_ISSUES_COLLECTION = void 0;
|
|
3
|
+
exports.VALIDATION_ACTION = exports.VALIDATION_LEVEL = exports.NAMESPACE_EXISTS = exports.MUNI_ISSUE_NAME_MAX_LENGTH = exports.MUNI_ISSUE_TEXT_MAX_LENGTH = exports.MUNI_ISSUE_MAX_RESPONSE_IMAGES = exports.MUNI_ISSUE_STATUSES = exports.MUNI_ISSUE_SYNC_STATUSES = exports.MUNI_ISSUES_COLLECTION = void 0;
|
|
4
4
|
/** Mongo collection name for reported municipal issues. */
|
|
5
5
|
exports.MUNI_ISSUES_COLLECTION = "muniIssues";
|
|
6
6
|
/** Sync state of the issue's Jira ticket at write time. */
|
|
7
7
|
exports.MUNI_ISSUE_SYNC_STATUSES = ["created", "failed"];
|
|
8
|
+
exports.MUNI_ISSUE_STATUSES = [
|
|
9
|
+
"in_review",
|
|
10
|
+
"in_progress",
|
|
11
|
+
"resolved",
|
|
12
|
+
"no_issue_found",
|
|
13
|
+
];
|
|
14
|
+
exports.MUNI_ISSUE_MAX_RESPONSE_IMAGES = 5;
|
|
8
15
|
/** Max length for the long free-text fields — well above the ~2000-char target. */
|
|
9
16
|
exports.MUNI_ISSUE_TEXT_MAX_LENGTH = 5000;
|
|
10
17
|
/** Max length for the short identity fields (a person's name and role). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muniIssues.constants.js","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.constants.ts"],"names":[],"mappings":";;;AAAA,2DAA2D;AAC9C,QAAA,sBAAsB,GAAG,YAAY,CAAC;AAEnD,2DAA2D;AAC9C,QAAA,wBAAwB,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"muniIssues.constants.js","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.constants.ts"],"names":[],"mappings":";;;AAAA,2DAA2D;AAC9C,QAAA,sBAAsB,GAAG,YAAY,CAAC;AAEnD,2DAA2D;AAC9C,QAAA,wBAAwB,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAU,CAAC;AAE1D,QAAA,mBAAmB,GAAG;IACjC,WAAW;IACX,aAAa;IACb,UAAU;IACV,gBAAgB;CACR,CAAC;AAEE,QAAA,8BAA8B,GAAG,CAAC,CAAC;AAEhD,mFAAmF;AACtE,QAAA,0BAA0B,GAAG,IAAI,CAAC;AAE/C,2EAA2E;AAC9D,QAAA,0BAA0B,GAAG,GAAG,CAAC;AAE9C,uGAAuG;AAC1F,QAAA,gBAAgB,GAAG,EAAE,CAAC;AAEnC,yEAAyE;AAC5D,QAAA,gBAAgB,GAAG,QAAiB,CAAC;AACrC,QAAA,iBAAiB,GAAG,OAAgB,CAAC"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { Collection, ObjectId } from "mongodb";
|
|
2
|
-
import { MuniIssue } from "./muniIssues.types";
|
|
2
|
+
import { FindMuniIssuesOptions, MuniIssue } from "./muniIssues.types";
|
|
3
3
|
export declare const getMuniIssuesCollection: () => Collection<MuniIssue>;
|
|
4
4
|
export declare const generateMuniIssueId: () => ObjectId;
|
|
5
5
|
export declare const getMuniIssueById: (id: string) => Promise<MuniIssue | null>;
|
|
6
6
|
export declare const getMuniIssueByJiraKey: (jiraKey: string) => Promise<MuniIssue | null>;
|
|
7
|
+
export declare const findMuniIssuesByClient: (clientId: string, { answered, skip, limit }?: FindMuniIssuesOptions) => Promise<MuniIssue[]>;
|
|
8
|
+
export declare const countMuniIssuesByClient: (clientId: string, { answered }?: Pick<FindMuniIssuesOptions, "answered">) => Promise<number>;
|
|
9
|
+
export declare const getMuniIssueByIdForClient: (id: string, clientId: string) => Promise<MuniIssue | null>;
|
|
7
10
|
//# sourceMappingURL=muniIssues.getters.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muniIssues.getters.d.ts","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.getters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"muniIssues.getters.d.ts","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.getters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAU,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEvD,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAGtE,eAAO,MAAM,uBAAuB,QAAO,UAAU,CAAC,SAAS,CAE9D,CAAC;AAEF,eAAO,MAAM,mBAAmB,QAAO,QAA0B,CAAC;AAElE,eAAO,MAAM,gBAAgB,GAC3B,IAAI,MAAM,KACT,OAAO,CAAC,SAAS,GAAG,IAAI,CAI1B,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAChC,SAAS,MAAM,KACd,OAAO,CAAC,SAAS,GAAG,IAAI,CAE1B,CAAC;AAmBF,eAAO,MAAM,sBAAsB,GACjC,UAAU,MAAM,EAChB,4BAAmC,qBAA0B,KAC5D,OAAO,CAAC,SAAS,EAAE,CAOrB,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,UAAU,MAAM,EAChB,eAAc,IAAI,CAAC,qBAAqB,EAAE,UAAU,CAAM,KACzD,OAAO,CAAC,MAAM,CAIhB,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,IAAI,MAAM,EACV,UAAU,MAAM,KACf,OAAO,CAAC,SAAS,GAAG,IAAI,CAM1B,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getMuniIssueByJiraKey = exports.getMuniIssueById = exports.generateMuniIssueId = exports.getMuniIssuesCollection = void 0;
|
|
3
|
+
exports.getMuniIssueByIdForClient = exports.countMuniIssuesByClient = exports.findMuniIssuesByClient = exports.getMuniIssueByJiraKey = exports.getMuniIssueById = exports.generateMuniIssueId = exports.getMuniIssuesCollection = void 0;
|
|
4
4
|
const mongodb_1 = require("mongodb");
|
|
5
5
|
const index_1 = require("../index");
|
|
6
6
|
const muniIssues_constants_1 = require("./muniIssues.constants");
|
|
@@ -21,4 +21,38 @@ const getMuniIssueByJiraKey = async (jiraKey) => {
|
|
|
21
21
|
return (0, exports.getMuniIssuesCollection)().findOne({ "jira.key": jiraKey });
|
|
22
22
|
};
|
|
23
23
|
exports.getMuniIssueByJiraKey = getMuniIssueByJiraKey;
|
|
24
|
+
// Answered = the response has text or at least one image; a cleared response object stays in the document.
|
|
25
|
+
const responseHasContent = [
|
|
26
|
+
{ "response.text": { $nin: ["", null] } },
|
|
27
|
+
{ "response.imageUrls.0": { $exists: true } },
|
|
28
|
+
];
|
|
29
|
+
// Tracked issues of one client. Issues without a status predate complaint tracking and are excluded.
|
|
30
|
+
const clientIssuesFilter = (clientId, answered) => ({
|
|
31
|
+
clientId,
|
|
32
|
+
status: { $exists: true },
|
|
33
|
+
...(answered === true && { $or: responseHasContent }),
|
|
34
|
+
...(answered === false && { $nor: responseHasContent }),
|
|
35
|
+
});
|
|
36
|
+
const findMuniIssuesByClient = async (clientId, { answered, skip = 0, limit = 0 } = {}) => {
|
|
37
|
+
return (0, exports.getMuniIssuesCollection)()
|
|
38
|
+
.find(clientIssuesFilter(clientId, answered))
|
|
39
|
+
.sort({ createdAt: -1 })
|
|
40
|
+
.skip(skip)
|
|
41
|
+
.limit(limit)
|
|
42
|
+
.toArray();
|
|
43
|
+
};
|
|
44
|
+
exports.findMuniIssuesByClient = findMuniIssuesByClient;
|
|
45
|
+
const countMuniIssuesByClient = async (clientId, { answered } = {}) => {
|
|
46
|
+
return (0, exports.getMuniIssuesCollection)().countDocuments(clientIssuesFilter(clientId, answered));
|
|
47
|
+
};
|
|
48
|
+
exports.countMuniIssuesByClient = countMuniIssuesByClient;
|
|
49
|
+
const getMuniIssueByIdForClient = async (id, clientId) => {
|
|
50
|
+
if (!mongodb_1.ObjectId.isValid(id))
|
|
51
|
+
return null;
|
|
52
|
+
return (0, exports.getMuniIssuesCollection)().findOne({
|
|
53
|
+
...clientIssuesFilter(clientId),
|
|
54
|
+
_id: new mongodb_1.ObjectId(id),
|
|
55
|
+
});
|
|
56
|
+
};
|
|
57
|
+
exports.getMuniIssueByIdForClient = getMuniIssueByIdForClient;
|
|
24
58
|
//# sourceMappingURL=muniIssues.getters.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muniIssues.getters.js","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.getters.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"muniIssues.getters.js","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.getters.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muniIssues.schema.d.ts","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"muniIssues.schema.d.ts","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAS1D,eAAO,MAAM,oBAAoB,EAAE,QAmElC,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,gBAAgB,EAM/C,CAAC"}
|
|
@@ -52,11 +52,28 @@ exports.muniIssuesJsonSchema = {
|
|
|
52
52
|
},
|
|
53
53
|
},
|
|
54
54
|
createdAt: { bsonType: "date" },
|
|
55
|
+
status: { enum: [...muniIssues_constants_1.MUNI_ISSUE_STATUSES] },
|
|
56
|
+
response: {
|
|
57
|
+
bsonType: "object",
|
|
58
|
+
required: ["text", "createdAt"],
|
|
59
|
+
properties: {
|
|
60
|
+
text: { bsonType: "string", maxLength: muniIssues_constants_1.MUNI_ISSUE_TEXT_MAX_LENGTH },
|
|
61
|
+
imageUrls: {
|
|
62
|
+
bsonType: "array",
|
|
63
|
+
maxItems: muniIssues_constants_1.MUNI_ISSUE_MAX_RESPONSE_IMAGES,
|
|
64
|
+
items: { bsonType: "string" },
|
|
65
|
+
},
|
|
66
|
+
createdAt: { bsonType: "date" },
|
|
67
|
+
updatedAt: { bsonType: "date" },
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
updatedAt: { bsonType: "date" },
|
|
55
71
|
},
|
|
56
72
|
};
|
|
57
73
|
exports.muniIssuesIndexes = [
|
|
58
74
|
{ key: { callSid: 1 }, name: "callSid_1" },
|
|
59
75
|
{ key: { createdAt: -1 }, name: "createdAt_-1" },
|
|
76
|
+
{ key: { clientId: 1, createdAt: -1 }, name: "clientId_1_createdAt_-1" },
|
|
60
77
|
// Unique: one stored document per Jira ticket, guarding against duplicate writes.
|
|
61
78
|
{ key: { "jira.key": 1 }, name: "jira_key_unique", unique: true },
|
|
62
79
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muniIssues.schema.js","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.schema.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"muniIssues.schema.js","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.schema.ts"],"names":[],"mappings":";;;AACA,iEAMgC;AAEnB,QAAA,oBAAoB,GAAa;IAC5C,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE;QACR,SAAS;QACT,UAAU;QACV,UAAU;QACV,cAAc;QACd,MAAM;QACN,WAAW;KACZ;IACD,UAAU,EAAE;QACV,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;QAC/B,QAAQ,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;QAChC,QAAQ,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;QAChC,YAAY,EAAE;YACZ,QAAQ,EAAE,QAAQ;YAClB,QAAQ,EAAE;gBACR,YAAY;gBACZ,YAAY;gBACZ,kBAAkB;gBAClB,iBAAiB;aAClB;YACD,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,QAAQ,EAAE,QAAQ;oBAClB,SAAS,EAAE,iDAA0B;iBACtC;gBACD,UAAU,EAAE;oBACV,QAAQ,EAAE,QAAQ;oBAClB,SAAS,EAAE,iDAA0B;iBACtC;gBACD,gBAAgB,EAAE;oBAChB,QAAQ,EAAE,QAAQ;oBAClB,SAAS,EAAE,iDAA0B;iBACtC;gBACD,eAAe,EAAE;oBACf,QAAQ,EAAE,QAAQ;oBAClB,SAAS,EAAE,iDAA0B;iBACtC;aACF;SACF;QACD,IAAI,EAAE;YACJ,QAAQ,EAAE,QAAQ;YAClB,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;YAC/B,UAAU,EAAE;gBACV,GAAG,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;gBAC3B,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,+CAAwB,CAAC,EAAE;aACpD;SACF;QACD,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;QAC/B,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,0CAAmB,CAAC,EAAE;QAC1C,QAAQ,EAAE;YACR,QAAQ,EAAE,QAAQ;YAClB,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;YAC/B,UAAU,EAAE;gBACV,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,iDAA0B,EAAE;gBACnE,SAAS,EAAE;oBACT,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE,qDAA8B;oBACxC,KAAK,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;iBAC9B;gBACD,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;gBAC/B,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;aAChC;SACF;QACD,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;KAChC;CACF,CAAC;AAEW,QAAA,iBAAiB,GAAuB;IACnD,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;IAC1C,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE;IAChD,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE;IACxE,kFAAkF;IAClF,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAE;CAClE,CAAC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { ObjectId } from "mongodb";
|
|
2
|
-
import { CreateMuniIssueInput } from "./muniIssues.types";
|
|
2
|
+
import { CreateMuniIssueInput, MuniIssueStatus, SetMuniIssueResponseInput } from "./muniIssues.types";
|
|
3
3
|
export declare const createMuniIssue: (issueData: CreateMuniIssueInput, id: ObjectId) => Promise<ObjectId>;
|
|
4
|
+
export declare const updateMuniIssueStatus: (id: string, clientId: string, status: MuniIssueStatus) => Promise<boolean>;
|
|
5
|
+
export declare const setMuniIssueResponse: (id: string, clientId: string, { status, text, imageUrls }: SetMuniIssueResponseInput) => Promise<boolean>;
|
|
4
6
|
//# sourceMappingURL=muniIssues.setters.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muniIssues.setters.d.ts","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.setters.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"muniIssues.setters.d.ts","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.setters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EACL,oBAAoB,EAEpB,eAAe,EACf,yBAAyB,EAC1B,MAAM,oBAAoB,CAAC;AAK5B,eAAO,MAAM,eAAe,GAC1B,WAAW,oBAAoB,EAC/B,IAAI,QAAQ,KACX,OAAO,CAAC,QAAQ,CAiBlB,CAAC;AASF,eAAO,MAAM,qBAAqB,GAChC,IAAI,MAAM,EACV,UAAU,MAAM,EAChB,QAAQ,eAAe,KACtB,OAAO,CAAC,OAAO,CASjB,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,IAAI,MAAM,EACV,UAAU,MAAM,EAChB,6BAA6B,yBAAyB,KACrD,OAAO,CAAC,OAAO,CA2BjB,CAAC"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createMuniIssue = void 0;
|
|
3
|
+
exports.setMuniIssueResponse = exports.updateMuniIssueStatus = exports.createMuniIssue = void 0;
|
|
4
|
+
const mongodb_1 = require("mongodb");
|
|
4
5
|
const muniIssues_getters_1 = require("./muniIssues.getters");
|
|
5
6
|
const muniIssues_setup_1 = require("./muniIssues.setup");
|
|
6
7
|
// Required `id`: MIS pre-generates it (generateMuniIssueId) and embeds it in the Jira ticket — the two-way link.
|
|
7
8
|
const createMuniIssue = async (issueData, id) => {
|
|
8
9
|
await (0, muniIssues_setup_1.ensureMuniIssuesCollectionOnce)();
|
|
10
|
+
const now = new Date();
|
|
9
11
|
const issue = {
|
|
10
12
|
_id: id,
|
|
11
13
|
...issueData,
|
|
@@ -13,10 +15,52 @@ const createMuniIssue = async (issueData, id) => {
|
|
|
13
15
|
...issueData.jira,
|
|
14
16
|
syncStatus: issueData.jira.syncStatus ?? "created",
|
|
15
17
|
},
|
|
16
|
-
|
|
18
|
+
status: "in_review",
|
|
19
|
+
createdAt: now,
|
|
20
|
+
updatedAt: now,
|
|
17
21
|
};
|
|
18
22
|
const { insertedId } = await (0, muniIssues_getters_1.getMuniIssuesCollection)().insertOne(issue);
|
|
19
23
|
return insertedId;
|
|
20
24
|
};
|
|
21
25
|
exports.createMuniIssue = createMuniIssue;
|
|
26
|
+
// An issue of this client that is tracked (has a status); answered issues stay editable.
|
|
27
|
+
const trackedIssueFilter = (id, clientId) => ({
|
|
28
|
+
_id: new mongodb_1.ObjectId(id),
|
|
29
|
+
clientId,
|
|
30
|
+
status: { $exists: true },
|
|
31
|
+
});
|
|
32
|
+
const updateMuniIssueStatus = async (id, clientId, status) => {
|
|
33
|
+
if (!mongodb_1.ObjectId.isValid(id))
|
|
34
|
+
return false;
|
|
35
|
+
await (0, muniIssues_setup_1.ensureMuniIssuesCollectionOnce)();
|
|
36
|
+
const { matchedCount } = await (0, muniIssues_getters_1.getMuniIssuesCollection)().updateOne(trackedIssueFilter(id, clientId), { $set: { status, updatedAt: new Date() } });
|
|
37
|
+
return matchedCount > 0;
|
|
38
|
+
};
|
|
39
|
+
exports.updateMuniIssueStatus = updateMuniIssueStatus;
|
|
40
|
+
const setMuniIssueResponse = async (id, clientId, { status, text, imageUrls }) => {
|
|
41
|
+
if (!mongodb_1.ObjectId.isValid(id))
|
|
42
|
+
return false;
|
|
43
|
+
await (0, muniIssues_setup_1.ensureMuniIssuesCollectionOnce)();
|
|
44
|
+
const now = new Date();
|
|
45
|
+
// Pipeline update, so the first-sent date can be read from the stored response.
|
|
46
|
+
// $literal: user text starting with "$" must not be read as a field path.
|
|
47
|
+
const { matchedCount } = await (0, muniIssues_getters_1.getMuniIssuesCollection)().updateOne(trackedIssueFilter(id, clientId), [
|
|
48
|
+
{
|
|
49
|
+
$set: {
|
|
50
|
+
status: { $literal: status },
|
|
51
|
+
updatedAt: now,
|
|
52
|
+
response: {
|
|
53
|
+
text: { $literal: text },
|
|
54
|
+
imageUrls: { $literal: imageUrls ?? [] },
|
|
55
|
+
createdAt: { $ifNull: ["$response.createdAt", now] },
|
|
56
|
+
updatedAt: {
|
|
57
|
+
$cond: [{ $ifNull: ["$response.createdAt", false] }, now, "$$REMOVE"],
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
]);
|
|
63
|
+
return matchedCount > 0;
|
|
64
|
+
};
|
|
65
|
+
exports.setMuniIssueResponse = setMuniIssueResponse;
|
|
22
66
|
//# sourceMappingURL=muniIssues.setters.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muniIssues.setters.js","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.setters.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"muniIssues.setters.js","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.setters.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
import { ObjectId } from "mongodb";
|
|
2
2
|
import { CityName } from "../utils/types";
|
|
3
|
-
import { MUNI_ISSUE_SYNC_STATUSES } from "./muniIssues.constants";
|
|
3
|
+
import { MUNI_ISSUE_STATUSES, MUNI_ISSUE_SYNC_STATUSES } from "./muniIssues.constants";
|
|
4
4
|
export type MuniIssueSyncStatus = (typeof MUNI_ISSUE_SYNC_STATUSES)[number];
|
|
5
|
+
export type MuniIssueStatus = (typeof MUNI_ISSUE_STATUSES)[number];
|
|
6
|
+
export type MuniIssueResponse = {
|
|
7
|
+
text: string;
|
|
8
|
+
imageUrls?: string[];
|
|
9
|
+
createdAt: Date;
|
|
10
|
+
updatedAt?: Date;
|
|
11
|
+
};
|
|
5
12
|
export type MuniIssueContent = {
|
|
6
13
|
issuerName: string;
|
|
7
14
|
issuerRole: string;
|
|
@@ -20,11 +27,24 @@ export type MuniIssue = {
|
|
|
20
27
|
issueContent: MuniIssueContent;
|
|
21
28
|
jira: MuniIssueJira;
|
|
22
29
|
createdAt: Date;
|
|
30
|
+
status?: MuniIssueStatus;
|
|
31
|
+
response?: MuniIssueResponse;
|
|
32
|
+
updatedAt?: Date;
|
|
23
33
|
};
|
|
24
|
-
export type CreateMuniIssueInput = Omit<MuniIssue, "_id" | "createdAt" | "jira"> & {
|
|
34
|
+
export type CreateMuniIssueInput = Omit<MuniIssue, "_id" | "createdAt" | "jira" | "status" | "response" | "updatedAt"> & {
|
|
25
35
|
jira: {
|
|
26
36
|
key: string;
|
|
27
37
|
syncStatus?: MuniIssueSyncStatus;
|
|
28
38
|
};
|
|
29
39
|
};
|
|
40
|
+
export type SetMuniIssueResponseInput = {
|
|
41
|
+
status: MuniIssueStatus;
|
|
42
|
+
text: string;
|
|
43
|
+
imageUrls?: string[];
|
|
44
|
+
};
|
|
45
|
+
export type FindMuniIssuesOptions = {
|
|
46
|
+
answered?: boolean;
|
|
47
|
+
skip?: number;
|
|
48
|
+
limit?: number;
|
|
49
|
+
};
|
|
30
50
|
//# sourceMappingURL=muniIssues.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muniIssues.types.d.ts","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,
|
|
1
|
+
{"version":3,"file":"muniIssues.types.d.ts","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACzB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,mBAAmB,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,GAAG,EAAE,QAAQ,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,gBAAgB,CAAC;IAC/B,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,IAAI,CAAC;IAGhB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB,CAAC;AAKF,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,SAAS,EACT,KAAK,GAAG,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,WAAW,CACnE,GAAG;IACF,IAAI,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,mBAAmB,CAAA;KAAE,CAAC;CACzD,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"muniIssues.utils.d.ts","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,eAAO,MAAM,2BAA2B,GACtC,WAAW,iBAAiB,KAC3B,OACgE,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.hasMuniIssueResponseContent = void 0;
|
|
4
|
+
const hasMuniIssueResponseContent = (response) => Boolean(response?.text) || (response?.imageUrls?.length ?? 0) > 0;
|
|
5
|
+
exports.hasMuniIssueResponseContent = hasMuniIssueResponseContent;
|
|
6
|
+
//# sourceMappingURL=muniIssues.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"muniIssues.utils.js","sourceRoot":"","sources":["../../../src/municipal/muniIssues/muniIssues.utils.ts"],"names":[],"mappings":";;;AAEO,MAAM,2BAA2B,GAAG,CACzC,QAA4B,EACnB,EAAE,CACX,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;AAHvD,QAAA,2BAA2B,+BAG4B"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Collection, ObjectId, WithId } from "mongodb";
|
|
2
|
-
import type { ContextNote, ContextNoteEntry
|
|
2
|
+
import type { ContextNote, ContextNoteEntry } from "./contextNotes.types";
|
|
3
3
|
export declare const getContextNotesCollection: () => Collection<ContextNote>;
|
|
4
4
|
/** Returns all context note documents matching a clientId and product. */
|
|
5
5
|
export declare const getContextNotes: (clientId: string, product: string) => Promise<WithId<ContextNote>[]>;
|
|
@@ -14,12 +14,6 @@ export declare const setContextNoteConfig: (id: ObjectId, clientId: string, conf
|
|
|
14
14
|
systemPrompt?: string;
|
|
15
15
|
product?: string;
|
|
16
16
|
}) => Promise<boolean>;
|
|
17
|
-
/** Appends one note. Other notes on the document are left untouched. */
|
|
18
|
-
export declare const appendContextNoteEntry: (clientId: string, product: string, entry: ContextNoteEntryWrite, now?: Date) => Promise<ContextNoteEntry>;
|
|
19
|
-
/** Replaces one note's fields. Other notes on the document are left untouched. */
|
|
20
|
-
export declare const updateContextNoteEntryFields: (clientId: string, product: string, noteId: ObjectId, entry: ContextNoteEntryWrite, now?: Date) => Promise<ContextNoteEntry | null>;
|
|
21
|
-
/** Removes one note by id. Other notes on the document are left untouched. */
|
|
22
|
-
export declare const pullContextNoteEntry: (clientId: string, product: string, noteId: ObjectId) => Promise<boolean>;
|
|
23
17
|
/** Removes a single note entry from a document by its _id. */
|
|
24
18
|
export declare const deleteContextNoteEntry: (id: ObjectId, clientId: string, noteId: ObjectId) => Promise<boolean>;
|
|
25
19
|
//# sourceMappingURL=contextNotes.getters.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contextNotes.getters.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/contextNotes/contextNotes.getters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEvD,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"contextNotes.getters.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/contextNotes/contextNotes.getters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEvD,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE1E,eAAO,MAAM,yBAAyB,QAAO,UAAU,CAAC,WAAW,CAElE,CAAC;AAEF,0EAA0E;AAC1E,eAAO,MAAM,eAAe,GAC1B,UAAU,MAAM,EAChB,SAAS,MAAM,KACd,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAE/B,CAAC;AAEF,0EAA0E;AAC1E,eAAO,MAAM,qBAAqB,GAChC,UAAU,MAAM,EAChB,SAAS,MAAM,KACd,OAAO,CAAC,gBAAgB,EAAE,CAU5B,CAAC;AAEF,2CAA2C;AAC3C,eAAO,MAAM,iBAAiB,GAC5B,MAAM,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,KAC7B,OAAO,CAAC,QAAQ,CAIlB,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,qBAAqB,GAChC,IAAI,QAAQ,EACZ,UAAU,MAAM,EAChB,OAAO,gBAAgB,EAAE,KACxB,OAAO,CAAC,OAAO,CAMjB,CAAC;AAEF,2FAA2F;AAC3F,eAAO,MAAM,oBAAoB,GAC/B,IAAI,QAAQ,EACZ,UAAU,MAAM,EAChB,QAAQ;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,KAClD,OAAO,CAAC,OAAO,CAYjB,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,sBAAsB,GACjC,IAAI,QAAQ,EACZ,UAAU,MAAM,EAChB,QAAQ,QAAQ,KACf,OAAO,CAAC,OAAO,CAMjB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.deleteContextNoteEntry = exports.
|
|
3
|
+
exports.deleteContextNoteEntry = exports.setContextNoteConfig = exports.setContextNoteEntries = exports.createContextNote = exports.getActiveContextNotes = exports.getContextNotes = exports.getContextNotesCollection = void 0;
|
|
4
4
|
const mongodb_1 = require("mongodb");
|
|
5
5
|
const index_1 = require("../index");
|
|
6
6
|
const getContextNotesCollection = () => {
|
|
@@ -46,42 +46,6 @@ const setContextNoteConfig = async (id, clientId, config) => {
|
|
|
46
46
|
return result.matchedCount > 0;
|
|
47
47
|
};
|
|
48
48
|
exports.setContextNoteConfig = setContextNoteConfig;
|
|
49
|
-
const findNoteEntryById = (doc, noteId) => doc?.notes.find((note) => note._id.equals(noteId)) ?? null;
|
|
50
|
-
/** Appends one note. Other notes on the document are left untouched. */
|
|
51
|
-
const appendContextNoteEntry = async (clientId, product, entry, now = new Date()) => {
|
|
52
|
-
const note = {
|
|
53
|
-
_id: new mongodb_1.ObjectId(),
|
|
54
|
-
title: entry.title,
|
|
55
|
-
content: entry.content,
|
|
56
|
-
activeFrom: entry.activeFrom,
|
|
57
|
-
expiresAt: entry.expiresAt,
|
|
58
|
-
createdAt: now,
|
|
59
|
-
updatedAt: now,
|
|
60
|
-
};
|
|
61
|
-
const saved = await (0, exports.getContextNotesCollection)().findOneAndUpdate({ clientId, product }, { $push: { notes: note } }, { upsert: true, returnDocument: "after" });
|
|
62
|
-
return findNoteEntryById(saved, note._id) ?? note;
|
|
63
|
-
};
|
|
64
|
-
exports.appendContextNoteEntry = appendContextNoteEntry;
|
|
65
|
-
/** Replaces one note's fields. Other notes on the document are left untouched. */
|
|
66
|
-
const updateContextNoteEntryFields = async (clientId, product, noteId, entry, now = new Date()) => {
|
|
67
|
-
const saved = await (0, exports.getContextNotesCollection)().findOneAndUpdate({ clientId, product, "notes._id": noteId }, {
|
|
68
|
-
$set: {
|
|
69
|
-
"notes.$.title": entry.title,
|
|
70
|
-
"notes.$.content": entry.content,
|
|
71
|
-
"notes.$.activeFrom": entry.activeFrom,
|
|
72
|
-
"notes.$.expiresAt": entry.expiresAt,
|
|
73
|
-
"notes.$.updatedAt": now,
|
|
74
|
-
},
|
|
75
|
-
}, { returnDocument: "after" });
|
|
76
|
-
return findNoteEntryById(saved, noteId);
|
|
77
|
-
};
|
|
78
|
-
exports.updateContextNoteEntryFields = updateContextNoteEntryFields;
|
|
79
|
-
/** Removes one note by id. Other notes on the document are left untouched. */
|
|
80
|
-
const pullContextNoteEntry = async (clientId, product, noteId) => {
|
|
81
|
-
const result = await (0, exports.getContextNotesCollection)().updateOne({ clientId, product, "notes._id": noteId }, { $pull: { notes: { _id: noteId } } });
|
|
82
|
-
return result.modifiedCount > 0;
|
|
83
|
-
};
|
|
84
|
-
exports.pullContextNoteEntry = pullContextNoteEntry;
|
|
85
49
|
/** Removes a single note entry from a document by its _id. */
|
|
86
50
|
const deleteContextNoteEntry = async (id, clientId, noteId) => {
|
|
87
51
|
const result = await (0, exports.getContextNotesCollection)().updateOne({ _id: id, clientId }, { $pull: { notes: { _id: noteId } } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contextNotes.getters.js","sourceRoot":"","sources":["../../../src/talkpilot/contextNotes/contextNotes.getters.ts"],"names":[],"mappings":";;;AAAA,qCAAuD;AACvD,oCAAiC;
|
|
1
|
+
{"version":3,"file":"contextNotes.getters.js","sourceRoot":"","sources":["../../../src/talkpilot/contextNotes/contextNotes.getters.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,12 +8,6 @@ export type ContextNoteEntry = {
|
|
|
8
8
|
createdAt: Date;
|
|
9
9
|
updatedAt: Date;
|
|
10
10
|
};
|
|
11
|
-
export type ContextNoteEntryWrite = {
|
|
12
|
-
title: string;
|
|
13
|
-
content: string;
|
|
14
|
-
activeFrom: Date;
|
|
15
|
-
expiresAt: Date | null;
|
|
16
|
-
};
|
|
17
11
|
export type ContextNote = {
|
|
18
12
|
_id: ObjectId;
|
|
19
13
|
clientId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contextNotes.types.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/contextNotes/contextNotes.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,EAAE,QAAQ,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,IAAI,CAAC;IACjB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"contextNotes.types.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/contextNotes/contextNotes.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,EAAE,QAAQ,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,IAAI,CAAC;IACjB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,QAAQ,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,6DAA6D;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC"}
|
|
@@ -20,6 +20,15 @@ export declare const flowMongoSchema: {
|
|
|
20
20
|
readonly disableGenericPrompt: {
|
|
21
21
|
readonly bsonType: "bool";
|
|
22
22
|
};
|
|
23
|
+
readonly keypadInput: {
|
|
24
|
+
readonly bsonType: readonly ["object", "null"];
|
|
25
|
+
readonly properties: {
|
|
26
|
+
readonly enabled: {
|
|
27
|
+
readonly bsonType: "bool";
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
readonly additionalProperties: false;
|
|
31
|
+
};
|
|
23
32
|
readonly voice: {
|
|
24
33
|
readonly bsonType: readonly ["string", "null"];
|
|
25
34
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flows.schema.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/flows/flows.schema.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"flows.schema.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/flows/flows.schema.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0MlB,CAAC"}
|
|
@@ -16,6 +16,13 @@ exports.flowMongoSchema = {
|
|
|
16
16
|
systemInstructions: { bsonType: "string" },
|
|
17
17
|
initialSentence: { bsonType: "string" },
|
|
18
18
|
disableGenericPrompt: { bsonType: "bool" },
|
|
19
|
+
keypadInput: {
|
|
20
|
+
bsonType: ["object", "null"],
|
|
21
|
+
properties: {
|
|
22
|
+
enabled: { bsonType: "bool" },
|
|
23
|
+
},
|
|
24
|
+
additionalProperties: false,
|
|
25
|
+
},
|
|
19
26
|
voice: { bsonType: ["string", "null"] },
|
|
20
27
|
conversationSettings: {
|
|
21
28
|
bsonType: ["object", "null"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flows.schema.js","sourceRoot":"","sources":["../../../src/talkpilot/flows/flows.schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"flows.schema.js","sourceRoot":"","sources":["../../../src/talkpilot/flows/flows.schema.ts"],"names":[],"mappings":"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"}
|