@uniorganization/uni-lib 4.0.46 → 4.0.48

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.
@@ -0,0 +1,10 @@
1
+ import { BusinessSchedule } from './business-schedule.entity';
2
+ export declare class BusinessScheduleDay {
3
+ id: string;
4
+ schedule: BusinessSchedule;
5
+ scheduleId: string;
6
+ weekday: number;
7
+ isWorking: boolean;
8
+ startTime: string | null;
9
+ endTime: string | null;
10
+ }
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BusinessScheduleDay = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const business_schedule_entity_1 = require("./business-schedule.entity");
15
+ let BusinessScheduleDay = class BusinessScheduleDay {
16
+ };
17
+ exports.BusinessScheduleDay = BusinessScheduleDay;
18
+ __decorate([
19
+ (0, typeorm_1.PrimaryGeneratedColumn)({ type: 'bigint' }),
20
+ __metadata("design:type", String)
21
+ ], BusinessScheduleDay.prototype, "id", void 0);
22
+ __decorate([
23
+ (0, typeorm_1.ManyToOne)(() => business_schedule_entity_1.BusinessSchedule, (schedule) => schedule.days, {
24
+ onDelete: 'CASCADE',
25
+ }),
26
+ (0, typeorm_1.JoinColumn)({ name: 'schedule_id' }),
27
+ __metadata("design:type", business_schedule_entity_1.BusinessSchedule)
28
+ ], BusinessScheduleDay.prototype, "schedule", void 0);
29
+ __decorate([
30
+ (0, typeorm_1.Column)({ name: 'schedule_id', type: 'bigint' }),
31
+ __metadata("design:type", String)
32
+ ], BusinessScheduleDay.prototype, "scheduleId", void 0);
33
+ __decorate([
34
+ (0, typeorm_1.Column)({ type: 'smallint' }),
35
+ __metadata("design:type", Number)
36
+ ], BusinessScheduleDay.prototype, "weekday", void 0);
37
+ __decorate([
38
+ (0, typeorm_1.Column)({ name: 'is_working', type: 'boolean', default: false }),
39
+ __metadata("design:type", Boolean)
40
+ ], BusinessScheduleDay.prototype, "isWorking", void 0);
41
+ __decorate([
42
+ (0, typeorm_1.Column)({ name: 'start_time', type: 'time', nullable: true }),
43
+ __metadata("design:type", String)
44
+ ], BusinessScheduleDay.prototype, "startTime", void 0);
45
+ __decorate([
46
+ (0, typeorm_1.Column)({ name: 'end_time', type: 'time', nullable: true }),
47
+ __metadata("design:type", String)
48
+ ], BusinessScheduleDay.prototype, "endTime", void 0);
49
+ exports.BusinessScheduleDay = BusinessScheduleDay = __decorate([
50
+ (0, typeorm_1.Entity)('business_schedule_days', { schema: 'stm' })
51
+ ], BusinessScheduleDay);
@@ -0,0 +1,12 @@
1
+ import { BusinessScheduleDay } from './business-schedule-day.entity';
2
+ export declare class BusinessSchedule {
3
+ id: string;
4
+ name: string;
5
+ division: string | null;
6
+ lob: string | null;
7
+ timezone: string;
8
+ isActive: boolean;
9
+ days: BusinessScheduleDay[];
10
+ createdAt: Date;
11
+ updatedAt: Date;
12
+ }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BusinessSchedule = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const business_schedule_day_entity_1 = require("./business-schedule-day.entity");
15
+ let BusinessSchedule = class BusinessSchedule {
16
+ };
17
+ exports.BusinessSchedule = BusinessSchedule;
18
+ __decorate([
19
+ (0, typeorm_1.PrimaryGeneratedColumn)({ type: 'bigint' }),
20
+ __metadata("design:type", String)
21
+ ], BusinessSchedule.prototype, "id", void 0);
22
+ __decorate([
23
+ (0, typeorm_1.Column)({ type: 'varchar', length: 150 }),
24
+ __metadata("design:type", String)
25
+ ], BusinessSchedule.prototype, "name", void 0);
26
+ __decorate([
27
+ (0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: true }),
28
+ __metadata("design:type", String)
29
+ ], BusinessSchedule.prototype, "division", void 0);
30
+ __decorate([
31
+ (0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: true }),
32
+ __metadata("design:type", String)
33
+ ], BusinessSchedule.prototype, "lob", void 0);
34
+ __decorate([
35
+ (0, typeorm_1.Column)({ type: 'varchar', length: 100 }),
36
+ __metadata("design:type", String)
37
+ ], BusinessSchedule.prototype, "timezone", void 0);
38
+ __decorate([
39
+ (0, typeorm_1.Column)({ name: 'is_active', type: 'boolean', default: true }),
40
+ __metadata("design:type", Boolean)
41
+ ], BusinessSchedule.prototype, "isActive", void 0);
42
+ __decorate([
43
+ (0, typeorm_1.OneToMany)(() => business_schedule_day_entity_1.BusinessScheduleDay, (day) => day.schedule, {
44
+ cascade: ['insert', 'update'],
45
+ }),
46
+ __metadata("design:type", Array)
47
+ ], BusinessSchedule.prototype, "days", void 0);
48
+ __decorate([
49
+ (0, typeorm_1.CreateDateColumn)({ name: 'created_at', type: 'timestamp' }),
50
+ __metadata("design:type", Date)
51
+ ], BusinessSchedule.prototype, "createdAt", void 0);
52
+ __decorate([
53
+ (0, typeorm_1.UpdateDateColumn)({ name: 'updated_at', type: 'timestamp' }),
54
+ __metadata("design:type", Date)
55
+ ], BusinessSchedule.prototype, "updatedAt", void 0);
56
+ exports.BusinessSchedule = BusinessSchedule = __decorate([
57
+ (0, typeorm_1.Entity)('business_schedules', { schema: 'stm' })
58
+ ], BusinessSchedule);
@@ -2,6 +2,7 @@ import { Users } from '../usr.entity';
2
2
  import { InboundMessageEntity } from './inbound-message.entity';
3
3
  import { SlaPolicyEntity } from './sla-policy.entity';
4
4
  import { TicketQueue } from '../ticket-queue.entity';
5
+ import { BusinessSchedule } from '../business-schedule.entity';
5
6
  export declare class MessageCaseEntity {
6
7
  id: string;
7
8
  caseNumber: string;
@@ -28,6 +29,21 @@ export declare class MessageCaseEntity {
28
29
  closedAt: Date | null;
29
30
  dueFirstReviewAt: Date | null;
30
31
  dueResolutionAt: Date | null;
32
+ firstReviewWarningAt: Date | null;
33
+ firstReviewCriticalAt: Date | null;
34
+ resolutionWarningAt: Date | null;
35
+ resolutionCriticalAt: Date | null;
36
+ businessSchedule?: BusinessSchedule | null;
37
+ businessScheduleId: string | null;
38
+ businessScheduleSource: 'agent_scope' | 'global_default' | null;
39
+ businessDivision: string | null;
40
+ businessLob: string | null;
41
+ businessScheduleSnapshot: Record<string, unknown> | null;
42
+ businessTimeEnabled: boolean;
43
+ businessClockStartedAt: Date | null;
44
+ businessElapsedSeconds: number;
45
+ firstReviewBusinessMinutes: number | null;
46
+ resolutionBusinessMinutes: number | null;
31
47
  lastStatusChangedAt: Date | null;
32
48
  agentSnapshot: Record<string, unknown> | null;
33
49
  metadata: Record<string, unknown> | null;
@@ -15,6 +15,7 @@ const usr_entity_1 = require("../usr.entity");
15
15
  const inbound_message_entity_1 = require("./inbound-message.entity");
16
16
  const sla_policy_entity_1 = require("./sla-policy.entity");
17
17
  const ticket_queue_entity_1 = require("../ticket-queue.entity");
18
+ const business_schedule_entity_1 = require("../business-schedule.entity");
18
19
  let MessageCaseEntity = class MessageCaseEntity {
19
20
  };
20
21
  exports.MessageCaseEntity = MessageCaseEntity;
@@ -159,6 +160,124 @@ __decorate([
159
160
  (0, typeorm_1.Column)({ name: 'due_resolution_at', type: 'timestamp', nullable: true }),
160
161
  __metadata("design:type", Date)
161
162
  ], MessageCaseEntity.prototype, "dueResolutionAt", void 0);
163
+ __decorate([
164
+ (0, typeorm_1.Column)({
165
+ name: 'first_review_warning_at',
166
+ type: 'timestamp',
167
+ nullable: true,
168
+ }),
169
+ __metadata("design:type", Date)
170
+ ], MessageCaseEntity.prototype, "firstReviewWarningAt", void 0);
171
+ __decorate([
172
+ (0, typeorm_1.Column)({
173
+ name: 'first_review_critical_at',
174
+ type: 'timestamp',
175
+ nullable: true,
176
+ }),
177
+ __metadata("design:type", Date)
178
+ ], MessageCaseEntity.prototype, "firstReviewCriticalAt", void 0);
179
+ __decorate([
180
+ (0, typeorm_1.Column)({
181
+ name: 'resolution_warning_at',
182
+ type: 'timestamp',
183
+ nullable: true,
184
+ }),
185
+ __metadata("design:type", Date)
186
+ ], MessageCaseEntity.prototype, "resolutionWarningAt", void 0);
187
+ __decorate([
188
+ (0, typeorm_1.Column)({
189
+ name: 'resolution_critical_at',
190
+ type: 'timestamp',
191
+ nullable: true,
192
+ }),
193
+ __metadata("design:type", Date)
194
+ ], MessageCaseEntity.prototype, "resolutionCriticalAt", void 0);
195
+ __decorate([
196
+ (0, typeorm_1.ManyToOne)(() => business_schedule_entity_1.BusinessSchedule),
197
+ (0, typeorm_1.JoinColumn)({ name: 'business_schedule_id' }),
198
+ __metadata("design:type", business_schedule_entity_1.BusinessSchedule)
199
+ ], MessageCaseEntity.prototype, "businessSchedule", void 0);
200
+ __decorate([
201
+ (0, typeorm_1.Column)({ name: 'business_schedule_id', type: 'bigint', nullable: true }),
202
+ __metadata("design:type", String)
203
+ ], MessageCaseEntity.prototype, "businessScheduleId", void 0);
204
+ __decorate([
205
+ (0, typeorm_1.Column)({
206
+ name: 'business_schedule_source',
207
+ type: 'varchar',
208
+ length: 30,
209
+ nullable: true,
210
+ }),
211
+ __metadata("design:type", String)
212
+ ], MessageCaseEntity.prototype, "businessScheduleSource", void 0);
213
+ __decorate([
214
+ (0, typeorm_1.Column)({
215
+ name: 'business_division',
216
+ type: 'varchar',
217
+ length: 100,
218
+ nullable: true,
219
+ }),
220
+ __metadata("design:type", String)
221
+ ], MessageCaseEntity.prototype, "businessDivision", void 0);
222
+ __decorate([
223
+ (0, typeorm_1.Column)({
224
+ name: 'business_lob',
225
+ type: 'varchar',
226
+ length: 100,
227
+ nullable: true,
228
+ }),
229
+ __metadata("design:type", String)
230
+ ], MessageCaseEntity.prototype, "businessLob", void 0);
231
+ __decorate([
232
+ (0, typeorm_1.Column)({ name: 'business_schedule_snapshot', type: 'jsonb', nullable: true }),
233
+ __metadata("design:type", Object)
234
+ ], MessageCaseEntity.prototype, "businessScheduleSnapshot", void 0);
235
+ __decorate([
236
+ (0, typeorm_1.Column)({
237
+ name: 'business_time_enabled',
238
+ type: 'boolean',
239
+ nullable: false,
240
+ default: false,
241
+ }),
242
+ __metadata("design:type", Boolean)
243
+ ], MessageCaseEntity.prototype, "businessTimeEnabled", void 0);
244
+ __decorate([
245
+ (0, typeorm_1.Column)({
246
+ name: 'business_clock_started_at',
247
+ type: 'timestamp',
248
+ nullable: true,
249
+ }),
250
+ __metadata("design:type", Date)
251
+ ], MessageCaseEntity.prototype, "businessClockStartedAt", void 0);
252
+ __decorate([
253
+ (0, typeorm_1.Column)({
254
+ name: 'business_elapsed_seconds',
255
+ type: 'integer',
256
+ nullable: false,
257
+ default: 0,
258
+ }),
259
+ __metadata("design:type", Number)
260
+ ], MessageCaseEntity.prototype, "businessElapsedSeconds", void 0);
261
+ __decorate([
262
+ (0, typeorm_1.Column)({
263
+ name: 'first_review_business_minutes',
264
+ type: 'numeric',
265
+ precision: 12,
266
+ scale: 2,
267
+ nullable: true,
268
+ }),
269
+ __metadata("design:type", Number)
270
+ ], MessageCaseEntity.prototype, "firstReviewBusinessMinutes", void 0);
271
+ __decorate([
272
+ (0, typeorm_1.Column)({
273
+ name: 'resolution_business_minutes',
274
+ type: 'numeric',
275
+ precision: 12,
276
+ scale: 2,
277
+ nullable: true,
278
+ }),
279
+ __metadata("design:type", Number)
280
+ ], MessageCaseEntity.prototype, "resolutionBusinessMinutes", void 0);
162
281
  __decorate([
163
282
  (0, typeorm_1.Column)({ name: 'last_status_changed_at', type: 'timestamp', nullable: true }),
164
283
  __metadata("design:type", Date)
@@ -78,6 +78,8 @@ export * from './p1-service-center.entity';
78
78
  export * from './p1-service-network.entity';
79
79
  export * from './raw_roster.entity';
80
80
  export * from './bp-alerts.entity';
81
+ export * from './business-schedule.entity';
82
+ export * from './business-schedule-day.entity';
81
83
  export * from './feedback.entity';
82
84
  export * from './file-type.entity';
83
85
  export * from './file.entity';
@@ -94,6 +94,8 @@ __exportStar(require("./p1-service-center.entity"), exports);
94
94
  __exportStar(require("./p1-service-network.entity"), exports);
95
95
  __exportStar(require("./raw_roster.entity"), exports);
96
96
  __exportStar(require("./bp-alerts.entity"), exports);
97
+ __exportStar(require("./business-schedule.entity"), exports);
98
+ __exportStar(require("./business-schedule-day.entity"), exports);
97
99
  __exportStar(require("./feedback.entity"), exports);
98
100
  __exportStar(require("./file-type.entity"), exports);
99
101
  __exportStar(require("./file.entity"), exports);
package/dist/index.d.ts CHANGED
@@ -3,5 +3,4 @@ export * from './config';
3
3
  export * from './utils';
4
4
  export * from './modules';
5
5
  export * from './modules/file-storage';
6
- export * from './middlewares';
7
6
  export * from './enums';
package/dist/index.js CHANGED
@@ -19,5 +19,4 @@ __exportStar(require("./config"), exports);
19
19
  __exportStar(require("./utils"), exports);
20
20
  __exportStar(require("./modules"), exports);
21
21
  __exportStar(require("./modules/file-storage"), exports);
22
- __exportStar(require("./middlewares"), exports);
23
22
  __exportStar(require("./enums"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uniorganization/uni-lib",
3
- "version": "4.0.46",
3
+ "version": "4.0.48",
4
4
  "description": "UNI Library",
5
5
  "author": "Jhomiguel",
6
6
  "main": "dist/index.js",
@@ -9,23 +9,10 @@
9
9
  "dist/**/*",
10
10
  "*.md"
11
11
  ],
12
- "scripts": {
13
- "start:dev": "tsc -w",
14
- "build": "tsc",
15
- "prepare": "npm run build",
16
- "format": "prettier --write \"src/**/*.ts\"",
17
- "lint": "tslint -p tsconfig.json -c tslint.json",
18
- "test": "jest",
19
- "test:watch": "jest --watch",
20
- "test:cov": "jest --coverage",
21
- "test:e2e": "jest --config ./test/jest-e2e.json"
22
- },
23
12
  "dependencies": {
24
13
  "@googlemaps/google-maps-services-js": "^3.4.2",
25
14
  "@aws-sdk/client-s3": "^3.833.0",
26
15
  "@nestjs/axios": "3.0.3",
27
- "@nestjs/common": "^10.4.1",
28
- "@nestjs/core": "^10.4.1",
29
16
  "@nestjs/jwt": "^10.2.0",
30
17
  "@nestjs/passport": "^10.0.3",
31
18
  "@nestjs/swagger": "^7.4.0",
@@ -33,13 +20,21 @@
33
20
  "csvtojson": "^2.0.10",
34
21
  "passport": "^0.7.0",
35
22
  "passport-jwt": "^4.0.1",
36
- "rxjs": "^7.8.1",
37
23
  "swagger-ui-express": "^5.0.1",
38
- "xlsx": "^0.18.5",
24
+ "xlsx": "^0.18.5"
25
+ },
26
+ "peerDependencies": {
27
+ "@nestjs/common": ">=10 <12",
28
+ "@nestjs/core": ">=10 <12",
29
+ "@nestjs/typeorm": ">=10 <12",
30
+ "reflect-metadata": "^0.2.2",
31
+ "rxjs": "^7.8.1",
39
32
  "typeorm": "^0.3.20"
40
33
  },
41
34
  "devDependencies": {
42
35
  "@nestjs/cli": "^10.4.5",
36
+ "@nestjs/common": "^10.4.1",
37
+ "@nestjs/core": "^10.4.1",
43
38
  "@nestjs/platform-express": "^10.4.1",
44
39
  "@nestjs/testing": "^10.4.1",
45
40
  "@nestjs/typeorm": "^10.0.2",
@@ -51,13 +46,16 @@
51
46
  "@types/supertest": "^6.0.2",
52
47
  "jest": "^29.7.0",
53
48
  "prettier": "^3.3.3",
49
+ "reflect-metadata": "^0.2.2",
50
+ "rxjs": "^7.8.1",
54
51
  "supertest": "^7.0.0",
55
52
  "ts-jest": "^29.2.5",
56
53
  "ts-loader": "^9.5.1",
57
54
  "ts-node": "^10.9.2",
58
55
  "tsconfig-paths": "^4.2.0",
59
56
  "tslint": "6.1.3",
60
- "typescript": "^5.5.4"
57
+ "typescript": "^5.5.4",
58
+ "typeorm": "^0.3.20"
61
59
  },
62
60
  "jest": {
63
61
  "moduleFileExtensions": [
@@ -72,5 +70,15 @@
72
70
  },
73
71
  "coverageDirectory": "../coverage",
74
72
  "testEnvironment": "node"
73
+ },
74
+ "scripts": {
75
+ "start:dev": "tsc -w",
76
+ "build": "tsc",
77
+ "format": "prettier --write \"src/**/*.ts\"",
78
+ "lint": "tslint -p tsconfig.json -c tslint.json",
79
+ "test": "jest",
80
+ "test:watch": "jest --watch",
81
+ "test:cov": "jest --coverage",
82
+ "test:e2e": "jest --config ./test/jest-e2e.json"
75
83
  }
76
- }
84
+ }
@@ -1 +0,0 @@
1
- export * from './version-checker.middleware';
@@ -1,17 +0,0 @@
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("./version-checker.middleware"), exports);
@@ -1,2 +0,0 @@
1
- import { NextFunction, Request, Response } from 'express';
2
- export declare function versionChecker(req: Request, res: Response, next: NextFunction): Promise<Response<any, Record<string, any>>>;
@@ -1,27 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.versionChecker = versionChecker;
13
- const fs = require("fs/promises");
14
- const path = require("path");
15
- function versionChecker(req, res, next) {
16
- return __awaiter(this, void 0, void 0, function* () {
17
- const version = (yield fs.readFile(path.join(process.cwd(), 'app-version.txt')))
18
- .toString()
19
- .trim();
20
- if (req.headers['app-version'] !== version)
21
- return res.status(409).json({
22
- message: `You need to update the application version to ${version}`,
23
- status: 409,
24
- });
25
- next();
26
- });
27
- }