uaxi-shared-entities 1.0.4 → 1.0.6

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.
Files changed (31) hide show
  1. package/dist/config/database.config.d.ts +2 -18
  2. package/dist/config/database.config.d.ts.map +1 -1
  3. package/dist/config/database.config.js +13 -5
  4. package/dist/config/database.config.js.map +1 -1
  5. package/dist/entities/faq.entity.d.ts +63 -0
  6. package/dist/entities/faq.entity.d.ts.map +1 -0
  7. package/dist/entities/faq.entity.js +157 -0
  8. package/dist/entities/faq.entity.js.map +1 -0
  9. package/dist/entities/index.d.ts +30 -27
  10. package/dist/entities/index.d.ts.map +1 -1
  11. package/dist/entities/index.js +3 -0
  12. package/dist/entities/index.js.map +1 -1
  13. package/dist/entities/supportticket-comment.entity.d.ts +31 -0
  14. package/dist/entities/supportticket-comment.entity.d.ts.map +1 -0
  15. package/dist/entities/supportticket-comment.entity.js +97 -0
  16. package/dist/entities/supportticket-comment.entity.js.map +1 -0
  17. package/dist/entities/supportticket-history.entity.d.ts +38 -0
  18. package/dist/entities/supportticket-history.entity.d.ts.map +1 -0
  19. package/dist/entities/supportticket-history.entity.js +110 -0
  20. package/dist/entities/supportticket-history.entity.js.map +1 -0
  21. package/dist/entities/supportticket.entity.d.ts +44 -6
  22. package/dist/entities/supportticket.entity.d.ts.map +1 -1
  23. package/dist/entities/supportticket.entity.js +115 -3
  24. package/dist/entities/supportticket.entity.js.map +1 -1
  25. package/package.json +8 -8
  26. package/src/config/database.config.ts +18 -24
  27. package/src/entities/faq.entity.ts +167 -0
  28. package/src/entities/index.ts +30 -27
  29. package/src/entities/supportticket-comment.entity.ts +92 -0
  30. package/src/entities/supportticket-history.entity.ts +104 -0
  31. package/src/entities/supportticket.entity.ts +143 -16
@@ -1,19 +1,3 @@
1
- export interface DatabaseConfig {
2
- dialect: "postgres";
3
- host: string;
4
- port: number;
5
- username: string;
6
- password: string;
7
- database: string;
8
- autoLoadModels?: boolean;
9
- synchronize?: boolean;
10
- logging?: boolean | ((sql: string, timing?: number) => void);
11
- pool?: {
12
- max: number;
13
- min: number;
14
- acquire: number;
15
- idle: number;
16
- };
17
- }
18
- export declare const databaseConfig: DatabaseConfig;
1
+ import { Options } from "sequelize";
2
+ export declare const databaseConfig: Options;
19
3
  //# sourceMappingURL=database.config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"database.config.d.ts","sourceRoot":"","sources":["../../src/config/database.config.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,UAAU,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC,EAAE;QACL,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED,eAAO,MAAM,cAAc,EAAE,cAgB5B,CAAC"}
1
+ {"version":3,"file":"database.config.d.ts","sourceRoot":"","sources":["../../src/config/database.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,eAAO,MAAM,cAAc,EAAE,OA8B5B,CAAC"}
@@ -1,7 +1,4 @@
1
1
  "use strict";
2
- // =============================================
3
- // CONFIGURACIÓN DE BASE DE DATOS COMPARTIDA
4
- // =============================================
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.databaseConfig = void 0;
7
4
  exports.databaseConfig = {
@@ -11,8 +8,6 @@ exports.databaseConfig = {
11
8
  username: process.env.DB_USERNAME || "postgres",
12
9
  password: process.env.DB_PASSWORD || "",
13
10
  database: process.env.DB_NAME || "uaxi",
14
- autoLoadModels: true,
15
- synchronize: process.env.NODE_ENV !== "production", // Solo en desarrollo
16
11
  logging: process.env.NODE_ENV !== "production" ? console.log : false,
17
12
  pool: {
18
13
  max: 5,
@@ -20,5 +15,18 @@ exports.databaseConfig = {
20
15
  acquire: 30000,
21
16
  idle: 10000,
22
17
  },
18
+ // Hook para habilitar PostGIS automáticamente
19
+ hooks: {
20
+ afterConnect: async (connection) => {
21
+ try {
22
+ // Habilitar PostGIS si no está habilitado
23
+ await connection.query("CREATE EXTENSION IF NOT EXISTS postgis;");
24
+ console.log("✅ PostGIS extension enabled successfully");
25
+ }
26
+ catch (error) {
27
+ console.warn("⚠️ Warning: Could not enable PostGIS extension:", error.message);
28
+ }
29
+ },
30
+ },
23
31
  };
24
32
  //# sourceMappingURL=database.config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"database.config.js","sourceRoot":"","sources":["../../src/config/database.config.ts"],"names":[],"mappings":";AAAA,gDAAgD;AAChD,4CAA4C;AAC5C,gDAAgD;;;AAoBnC,QAAA,cAAc,GAAmB;IAC5C,OAAO,EAAE,UAAU;IACnB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,WAAW;IACxC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC;IAC7C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,UAAU;IAC/C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE;IACvC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,MAAM;IACvC,cAAc,EAAE,IAAI;IACpB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,qBAAqB;IACzE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK;IACpE,IAAI,EAAE;QACJ,GAAG,EAAE,CAAC;QACN,GAAG,EAAE,CAAC;QACN,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,KAAK;KACZ;CACF,CAAC"}
1
+ {"version":3,"file":"database.config.js","sourceRoot":"","sources":["../../src/config/database.config.ts"],"names":[],"mappings":";;;AAEa,QAAA,cAAc,GAAY;IACrC,OAAO,EAAE,UAAU;IACnB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,WAAW;IACxC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC;IAC7C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,UAAU;IAC/C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE;IACvC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,MAAM;IAEvC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK;IACpE,IAAI,EAAE;QACJ,GAAG,EAAE,CAAC;QACN,GAAG,EAAE,CAAC;QACN,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,KAAK;KACZ;IACD,8CAA8C;IAC9C,KAAK,EAAE;QACL,YAAY,EAAE,KAAK,EAAE,UAAe,EAAE,EAAE;YACtC,IAAI,CAAC;gBACH,0CAA0C;gBAC1C,MAAM,UAAU,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;gBAClE,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YAC1D,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,OAAO,CAAC,IAAI,CACV,kDAAkD,EAClD,KAAK,CAAC,OAAO,CACd,CAAC;YACJ,CAAC;QACH,CAAC;KACF;CACF,CAAC"}
@@ -0,0 +1,63 @@
1
+ import { Model } from "sequelize-typescript";
2
+ export declare enum FAQCategory {
3
+ GENERAL = "general",
4
+ PAYMENTS = "payments",
5
+ RIDES = "rides",
6
+ SAFETY = "safety",
7
+ APP_TECHNICAL = "app_technical",
8
+ ACCOUNT = "account",
9
+ DRIVER_ISSUES = "driver_issues",
10
+ BILLING = "billing",
11
+ CANCELLATIONS = "cancellations",
12
+ REFUNDS = "refunds"
13
+ }
14
+ export declare enum FAQStatus {
15
+ ACTIVE = "active",
16
+ INACTIVE = "inactive",
17
+ DRAFT = "draft"
18
+ }
19
+ export interface FAQAttributes {
20
+ id: string;
21
+ question: string;
22
+ answer: string;
23
+ category: FAQCategory;
24
+ status: FAQStatus;
25
+ priority: number;
26
+ tags: string[];
27
+ viewCount: number;
28
+ helpfulCount: number;
29
+ notHelpfulCount: number;
30
+ createdAt: Date;
31
+ updatedAt: Date;
32
+ }
33
+ export interface CreateFAQData {
34
+ question: string;
35
+ answer: string;
36
+ category: FAQCategory;
37
+ status?: FAQStatus;
38
+ priority?: number;
39
+ tags?: string[];
40
+ }
41
+ export declare class FAQ extends Model<FAQAttributes, CreateFAQData> {
42
+ id: string;
43
+ question: string;
44
+ answer: string;
45
+ category: FAQCategory;
46
+ status: FAQStatus;
47
+ priority: number;
48
+ tags: string[];
49
+ viewCount: number;
50
+ helpfulCount: number;
51
+ notHelpfulCount: number;
52
+ isActive(): boolean;
53
+ isDraft(): boolean;
54
+ incrementViewCount(): void;
55
+ markAsHelpful(): void;
56
+ markAsNotHelpful(): void;
57
+ getHelpfulPercentage(): number;
58
+ hasTag(tag: string): boolean;
59
+ addTag(tag: string): void;
60
+ removeTag(tag: string): void;
61
+ matchesSearch(searchTerm: string): boolean;
62
+ }
63
+ //# sourceMappingURL=faq.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"faq.entity.d.ts","sourceRoot":"","sources":["../../src/entities/faq.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,EAAS,MAAM,sBAAsB,CAAC;AAEtE,oBAAY,WAAW;IACrB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,aAAa,kBAAkB;IAC/B,OAAO,YAAY;IACnB,aAAa,kBAAkB;IAC/B,OAAO,YAAY;IACnB,aAAa,kBAAkB;IAC/B,OAAO,YAAY;CACpB;AAED,oBAAY,SAAS;IACnB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,KAAK,UAAU;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,WAAW,CAAC;IACtB,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,WAAW,CAAC;IACtB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,qBAUa,GAAI,SAAQ,KAAK,CAAC,aAAa,EAAE,aAAa,CAAC;IAMlD,EAAE,EAAE,MAAM,CAAC;IAMnB,QAAQ,EAAE,MAAM,CAAC;IAMjB,MAAM,EAAE,MAAM,CAAC;IAMf,QAAQ,EAAE,WAAW,CAAC;IAMtB,MAAM,EAAE,SAAS,CAAC;IAMlB,QAAQ,EAAE,MAAM,CAAC;IAMjB,IAAI,EAAE,MAAM,EAAE,CAAC;IAMf,SAAS,EAAE,MAAM,CAAC;IAMlB,YAAY,EAAE,MAAM,CAAC;IAMrB,eAAe,EAAE,MAAM,CAAC;IAGxB,QAAQ,IAAI,OAAO;IAInB,OAAO,IAAI,OAAO;IAIlB,kBAAkB,IAAI,IAAI;IAI1B,aAAa,IAAI,IAAI;IAIrB,gBAAgB,IAAI,IAAI;IAIxB,oBAAoB,IAAI,MAAM;IAK9B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI5B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAMzB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAK5B,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;CAQ3C"}
@@ -0,0 +1,157 @@
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.FAQ = exports.FAQStatus = exports.FAQCategory = void 0;
13
+ const sequelize_typescript_1 = require("sequelize-typescript");
14
+ var FAQCategory;
15
+ (function (FAQCategory) {
16
+ FAQCategory["GENERAL"] = "general";
17
+ FAQCategory["PAYMENTS"] = "payments";
18
+ FAQCategory["RIDES"] = "rides";
19
+ FAQCategory["SAFETY"] = "safety";
20
+ FAQCategory["APP_TECHNICAL"] = "app_technical";
21
+ FAQCategory["ACCOUNT"] = "account";
22
+ FAQCategory["DRIVER_ISSUES"] = "driver_issues";
23
+ FAQCategory["BILLING"] = "billing";
24
+ FAQCategory["CANCELLATIONS"] = "cancellations";
25
+ FAQCategory["REFUNDS"] = "refunds";
26
+ })(FAQCategory || (exports.FAQCategory = FAQCategory = {}));
27
+ var FAQStatus;
28
+ (function (FAQStatus) {
29
+ FAQStatus["ACTIVE"] = "active";
30
+ FAQStatus["INACTIVE"] = "inactive";
31
+ FAQStatus["DRAFT"] = "draft";
32
+ })(FAQStatus || (exports.FAQStatus = FAQStatus = {}));
33
+ let FAQ = class FAQ extends sequelize_typescript_1.Model {
34
+ // Métodos de instancia
35
+ isActive() {
36
+ return this.status === FAQStatus.ACTIVE;
37
+ }
38
+ isDraft() {
39
+ return this.status === FAQStatus.DRAFT;
40
+ }
41
+ incrementViewCount() {
42
+ this.viewCount += 1;
43
+ }
44
+ markAsHelpful() {
45
+ this.helpfulCount += 1;
46
+ }
47
+ markAsNotHelpful() {
48
+ this.notHelpfulCount += 1;
49
+ }
50
+ getHelpfulPercentage() {
51
+ const total = this.helpfulCount + this.notHelpfulCount;
52
+ return total > 0 ? (this.helpfulCount / total) * 100 : 0;
53
+ }
54
+ hasTag(tag) {
55
+ return this.tags.includes(tag.toLowerCase());
56
+ }
57
+ addTag(tag) {
58
+ if (!this.hasTag(tag)) {
59
+ this.tags.push(tag.toLowerCase());
60
+ }
61
+ }
62
+ removeTag(tag) {
63
+ this.tags = this.tags.filter((t) => t !== tag.toLowerCase());
64
+ }
65
+ // Método para buscar en pregunta y respuesta
66
+ matchesSearch(searchTerm) {
67
+ const term = searchTerm.toLowerCase();
68
+ return (this.question.toLowerCase().includes(term) ||
69
+ this.answer.toLowerCase().includes(term) ||
70
+ this.tags.some((tag) => tag.includes(term)));
71
+ }
72
+ };
73
+ exports.FAQ = FAQ;
74
+ __decorate([
75
+ (0, sequelize_typescript_1.Column)({
76
+ type: sequelize_typescript_1.DataType.UUID,
77
+ defaultValue: sequelize_typescript_1.DataType.UUIDV4,
78
+ primaryKey: true,
79
+ }),
80
+ __metadata("design:type", String)
81
+ ], FAQ.prototype, "id", void 0);
82
+ __decorate([
83
+ (0, sequelize_typescript_1.Column)({
84
+ type: sequelize_typescript_1.DataType.TEXT,
85
+ allowNull: false,
86
+ }),
87
+ __metadata("design:type", String)
88
+ ], FAQ.prototype, "question", void 0);
89
+ __decorate([
90
+ (0, sequelize_typescript_1.Column)({
91
+ type: sequelize_typescript_1.DataType.TEXT,
92
+ allowNull: false,
93
+ }),
94
+ __metadata("design:type", String)
95
+ ], FAQ.prototype, "answer", void 0);
96
+ __decorate([
97
+ (0, sequelize_typescript_1.Column)({
98
+ type: sequelize_typescript_1.DataType.ENUM(...Object.values(FAQCategory)),
99
+ allowNull: false,
100
+ }),
101
+ __metadata("design:type", String)
102
+ ], FAQ.prototype, "category", void 0);
103
+ __decorate([
104
+ (0, sequelize_typescript_1.Column)({
105
+ type: sequelize_typescript_1.DataType.ENUM(...Object.values(FAQStatus)),
106
+ defaultValue: FAQStatus.ACTIVE,
107
+ }),
108
+ __metadata("design:type", String)
109
+ ], FAQ.prototype, "status", void 0);
110
+ __decorate([
111
+ (0, sequelize_typescript_1.Column)({
112
+ type: sequelize_typescript_1.DataType.INTEGER,
113
+ defaultValue: 0,
114
+ }),
115
+ __metadata("design:type", Number)
116
+ ], FAQ.prototype, "priority", void 0);
117
+ __decorate([
118
+ (0, sequelize_typescript_1.Column)({
119
+ type: sequelize_typescript_1.DataType.JSON,
120
+ defaultValue: [],
121
+ }),
122
+ __metadata("design:type", Array)
123
+ ], FAQ.prototype, "tags", void 0);
124
+ __decorate([
125
+ (0, sequelize_typescript_1.Column)({
126
+ type: sequelize_typescript_1.DataType.INTEGER,
127
+ defaultValue: 0,
128
+ }),
129
+ __metadata("design:type", Number)
130
+ ], FAQ.prototype, "viewCount", void 0);
131
+ __decorate([
132
+ (0, sequelize_typescript_1.Column)({
133
+ type: sequelize_typescript_1.DataType.INTEGER,
134
+ defaultValue: 0,
135
+ }),
136
+ __metadata("design:type", Number)
137
+ ], FAQ.prototype, "helpfulCount", void 0);
138
+ __decorate([
139
+ (0, sequelize_typescript_1.Column)({
140
+ type: sequelize_typescript_1.DataType.INTEGER,
141
+ defaultValue: 0,
142
+ }),
143
+ __metadata("design:type", Number)
144
+ ], FAQ.prototype, "notHelpfulCount", void 0);
145
+ exports.FAQ = FAQ = __decorate([
146
+ (0, sequelize_typescript_1.Table)({
147
+ tableName: "faqs",
148
+ timestamps: true,
149
+ indexes: [
150
+ { fields: ["category"] },
151
+ { fields: ["status"] },
152
+ { fields: ["priority"] },
153
+ { fields: ["viewCount"] },
154
+ ],
155
+ })
156
+ ], FAQ);
157
+ //# sourceMappingURL=faq.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"faq.entity.js","sourceRoot":"","sources":["../../src/entities/faq.entity.ts"],"names":[],"mappings":"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"}
@@ -1,28 +1,31 @@
1
- export * from './user.entity';
2
- export * from './address.entity';
3
- export * from './vehicle.entity';
4
- export * from './brand.entity';
5
- export * from './vehicle-model.entity';
6
- export * from './wallet.entity';
7
- export * from './walletTransaction.entity';
8
- export * from './driver.entity';
9
- export * from './farerates.entity';
10
- export * from './notifications.entity';
11
- export * from './payments.entity';
12
- export * from './raitings.entity';
13
- export * from './roles.entity';
14
- export * from './supportticket.entity';
15
- export * from './triplocation.entity';
16
- export * from './trips.entity';
17
- export * from './address.entity';
18
- export * from './geofence.entity';
19
- export * from './recent_serch.entity';
20
- export * from './camping_coupons.entity';
21
- export * from './coupon.entity';
22
- export * from './coupon_usages.entity';
23
- export * from './coupon_user_mappings.entity';
24
- export * from './promotion_camping';
25
- export * from './trip-route-change.entity';
26
- export * from './trip-stop.entity';
27
- export * from './userCard.entity';
1
+ export * from "./user.entity";
2
+ export * from "./address.entity";
3
+ export * from "./vehicle.entity";
4
+ export * from "./brand.entity";
5
+ export * from "./vehicle-model.entity";
6
+ export * from "./wallet.entity";
7
+ export * from "./walletTransaction.entity";
8
+ export * from "./driver.entity";
9
+ export * from "./farerates.entity";
10
+ export * from "./notifications.entity";
11
+ export * from "./payments.entity";
12
+ export * from "./raitings.entity";
13
+ export * from "./roles.entity";
14
+ export * from "./supportticket.entity";
15
+ export * from "./triplocation.entity";
16
+ export * from "./trips.entity";
17
+ export * from "./address.entity";
18
+ export * from "./geofence.entity";
19
+ export * from "./recent_serch.entity";
20
+ export * from "./camping_coupons.entity";
21
+ export * from "./coupon.entity";
22
+ export * from "./coupon_usages.entity";
23
+ export * from "./coupon_user_mappings.entity";
24
+ export * from "./promotion_camping";
25
+ export * from "./trip-route-change.entity";
26
+ export * from "./trip-stop.entity";
27
+ export * from "./userCard.entity";
28
+ export * from "./supportticket-history.entity";
29
+ export * from "./supportticket-comment.entity";
30
+ export * from "./faq.entity";
28
31
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/entities/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/entities/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,cAAc,CAAC"}
@@ -41,4 +41,7 @@ __exportStar(require("./promotion_camping"), exports);
41
41
  __exportStar(require("./trip-route-change.entity"), exports);
42
42
  __exportStar(require("./trip-stop.entity"), exports);
43
43
  __exportStar(require("./userCard.entity"), exports);
44
+ __exportStar(require("./supportticket-history.entity"), exports);
45
+ __exportStar(require("./supportticket-comment.entity"), exports);
46
+ __exportStar(require("./faq.entity"), exports);
44
47
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/entities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,mDAAiC;AACjC,mDAAiC;AACjC,iDAA+B;AAC/B,yDAAuC;AACvC,kDAAgC;AAChC,6DAA2C;AAC3C,kDAAgC;AAChC,qDAAmC;AACnC,yDAAuC;AACvC,oDAAkC;AAClC,oDAAkC;AAClC,iDAA+B;AAC/B,yDAAuC;AACvC,wDAAsC;AACtC,iDAA+B;AAC/B,mDAAiC;AACjC,oDAAkC;AAClC,wDAAsC;AACtC,2DAAyC;AACzC,kDAAgC;AAChC,yDAAuC;AACvC,gEAA8C;AAC9C,sDAAoC;AACpC,6DAA2C;AAC3C,qDAAmC;AACnC,oDAAkC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/entities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,mDAAiC;AACjC,mDAAiC;AACjC,iDAA+B;AAC/B,yDAAuC;AACvC,kDAAgC;AAChC,6DAA2C;AAC3C,kDAAgC;AAChC,qDAAmC;AACnC,yDAAuC;AACvC,oDAAkC;AAClC,oDAAkC;AAClC,iDAA+B;AAC/B,yDAAuC;AACvC,wDAAsC;AACtC,iDAA+B;AAC/B,mDAAiC;AACjC,oDAAkC;AAClC,wDAAsC;AACtC,2DAAyC;AACzC,kDAAgC;AAChC,yDAAuC;AACvC,gEAA8C;AAC9C,sDAAoC;AACpC,6DAA2C;AAC3C,qDAAmC;AACnC,oDAAkC;AAClC,iEAA+C;AAC/C,iEAA+C;AAC/C,+CAA6B"}
@@ -0,0 +1,31 @@
1
+ import { Model } from "sequelize-typescript";
2
+ import { SupportTicket } from "./supportticket.entity";
3
+ import { User } from "./user.entity";
4
+ export declare enum CommentType {
5
+ INTERNAL = "internal",
6
+ PUBLIC = "public",
7
+ SYSTEM = "system"
8
+ }
9
+ export interface SupportTicketCommentAttributes {
10
+ id: string;
11
+ ticketId: string;
12
+ authorId: string;
13
+ content: string;
14
+ type: CommentType;
15
+ isInternal: boolean;
16
+ attachments?: string[];
17
+ createdAt: Date;
18
+ updatedAt: Date;
19
+ }
20
+ export declare class SupportTicketComment extends Model<SupportTicketCommentAttributes> {
21
+ id: string;
22
+ ticketId: string;
23
+ authorId: string;
24
+ content: string;
25
+ type: CommentType;
26
+ isInternal: boolean;
27
+ attachments: string[];
28
+ ticket: SupportTicket;
29
+ author: User;
30
+ }
31
+ //# sourceMappingURL=supportticket-comment.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supportticket-comment.entity.d.ts","sourceRoot":"","sources":["../../src/entities/supportticket-comment.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,EAGN,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,oBAAY,WAAW;IACrB,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED,MAAM,WAAW,8BAA8B;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,WAAW,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,qBAUa,oBAAqB,SAAQ,KAAK,CAAC,8BAA8B,CAAC;IAMrE,EAAE,EAAE,MAAM,CAAC;IAOnB,QAAQ,EAAE,MAAM,CAAC;IAOjB,QAAQ,EAAE,MAAM,CAAC;IAMjB,OAAO,EAAE,MAAM,CAAC;IAMhB,IAAI,EAAE,WAAW,CAAC;IAMlB,UAAU,EAAE,OAAO,CAAC;IAMpB,WAAW,EAAE,MAAM,EAAE,CAAC;IAItB,MAAM,EAAE,aAAa,CAAC;IAGtB,MAAM,EAAE,IAAI,CAAC;CACd"}
@@ -0,0 +1,97 @@
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.SupportTicketComment = exports.CommentType = void 0;
13
+ const sequelize_typescript_1 = require("sequelize-typescript");
14
+ const supportticket_entity_1 = require("./supportticket.entity");
15
+ const user_entity_1 = require("./user.entity");
16
+ var CommentType;
17
+ (function (CommentType) {
18
+ CommentType["INTERNAL"] = "internal";
19
+ CommentType["PUBLIC"] = "public";
20
+ CommentType["SYSTEM"] = "system";
21
+ })(CommentType || (exports.CommentType = CommentType = {}));
22
+ let SupportTicketComment = class SupportTicketComment extends sequelize_typescript_1.Model {
23
+ };
24
+ exports.SupportTicketComment = SupportTicketComment;
25
+ __decorate([
26
+ (0, sequelize_typescript_1.Column)({
27
+ type: sequelize_typescript_1.DataType.UUID,
28
+ defaultValue: sequelize_typescript_1.DataType.UUIDV4,
29
+ primaryKey: true,
30
+ }),
31
+ __metadata("design:type", String)
32
+ ], SupportTicketComment.prototype, "id", void 0);
33
+ __decorate([
34
+ (0, sequelize_typescript_1.ForeignKey)(() => supportticket_entity_1.SupportTicket),
35
+ (0, sequelize_typescript_1.Column)({
36
+ type: sequelize_typescript_1.DataType.UUID,
37
+ allowNull: false,
38
+ }),
39
+ __metadata("design:type", String)
40
+ ], SupportTicketComment.prototype, "ticketId", void 0);
41
+ __decorate([
42
+ (0, sequelize_typescript_1.ForeignKey)(() => user_entity_1.User),
43
+ (0, sequelize_typescript_1.Column)({
44
+ type: sequelize_typescript_1.DataType.UUID,
45
+ allowNull: false,
46
+ }),
47
+ __metadata("design:type", String)
48
+ ], SupportTicketComment.prototype, "authorId", void 0);
49
+ __decorate([
50
+ (0, sequelize_typescript_1.Column)({
51
+ type: sequelize_typescript_1.DataType.TEXT,
52
+ allowNull: false,
53
+ }),
54
+ __metadata("design:type", String)
55
+ ], SupportTicketComment.prototype, "content", void 0);
56
+ __decorate([
57
+ (0, sequelize_typescript_1.Column)({
58
+ type: sequelize_typescript_1.DataType.ENUM(...Object.values(CommentType)),
59
+ defaultValue: CommentType.PUBLIC,
60
+ }),
61
+ __metadata("design:type", String)
62
+ ], SupportTicketComment.prototype, "type", void 0);
63
+ __decorate([
64
+ (0, sequelize_typescript_1.Column)({
65
+ type: sequelize_typescript_1.DataType.BOOLEAN,
66
+ defaultValue: false,
67
+ }),
68
+ __metadata("design:type", Boolean)
69
+ ], SupportTicketComment.prototype, "isInternal", void 0);
70
+ __decorate([
71
+ (0, sequelize_typescript_1.Column)({
72
+ type: sequelize_typescript_1.DataType.JSON,
73
+ allowNull: true,
74
+ }),
75
+ __metadata("design:type", Array)
76
+ ], SupportTicketComment.prototype, "attachments", void 0);
77
+ __decorate([
78
+ (0, sequelize_typescript_1.BelongsTo)(() => supportticket_entity_1.SupportTicket),
79
+ __metadata("design:type", supportticket_entity_1.SupportTicket)
80
+ ], SupportTicketComment.prototype, "ticket", void 0);
81
+ __decorate([
82
+ (0, sequelize_typescript_1.BelongsTo)(() => user_entity_1.User),
83
+ __metadata("design:type", user_entity_1.User)
84
+ ], SupportTicketComment.prototype, "author", void 0);
85
+ exports.SupportTicketComment = SupportTicketComment = __decorate([
86
+ (0, sequelize_typescript_1.Table)({
87
+ tableName: "support_ticket_comments",
88
+ timestamps: true,
89
+ indexes: [
90
+ { fields: ["ticketId"] },
91
+ { fields: ["authorId"] },
92
+ { fields: ["type"] },
93
+ { fields: ["createdAt"] },
94
+ ],
95
+ })
96
+ ], SupportTicketComment);
97
+ //# sourceMappingURL=supportticket-comment.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supportticket-comment.entity.js","sourceRoot":"","sources":["../../src/entities/supportticket-comment.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+DAO8B;AAC9B,iEAAuD;AACvD,+CAAqC;AAErC,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,oCAAqB,CAAA;IACrB,gCAAiB,CAAA;IACjB,gCAAiB,CAAA;AACnB,CAAC,EAJW,WAAW,2BAAX,WAAW,QAItB;AAwBM,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,4BAAqC;CAoD9E,CAAA;AApDY,oDAAoB;AAMvB;IALP,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,YAAY,EAAE,+BAAQ,CAAC,MAAM;QAC7B,UAAU,EAAE,IAAI;KACjB,CAAC;;gDACiB;AAOnB;IALC,IAAA,iCAAU,EAAC,GAAG,EAAE,CAAC,oCAAa,CAAC;IAC/B,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,KAAK;KACjB,CAAC;;sDACe;AAOjB;IALC,IAAA,iCAAU,EAAC,GAAG,EAAE,CAAC,kBAAI,CAAC;IACtB,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,KAAK;KACjB,CAAC;;sDACe;AAMjB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,KAAK;KACjB,CAAC;;qDACc;AAMhB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAClD,YAAY,EAAE,WAAW,CAAC,MAAM;KACjC,CAAC;;kDACgB;AAMlB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO;QACtB,YAAY,EAAE,KAAK;KACpB,CAAC;;wDACkB;AAMpB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,IAAI;KAChB,CAAC;;yDACoB;AAItB;IADC,IAAA,gCAAS,EAAC,GAAG,EAAE,CAAC,oCAAa,CAAC;8BACvB,oCAAa;oDAAC;AAGtB;IADC,IAAA,gCAAS,EAAC,GAAG,EAAE,CAAC,kBAAI,CAAC;8BACd,kBAAI;oDAAC;+BAnDF,oBAAoB;IAVhC,IAAA,4BAAK,EAAC;QACL,SAAS,EAAE,yBAAyB;QACpC,UAAU,EAAE,IAAI;QAChB,OAAO,EAAE;YACP,EAAE,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE;YACxB,EAAE,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE;YACxB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE;YACpB,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE;SAC1B;KACF,CAAC;GACW,oBAAoB,CAoDhC"}
@@ -0,0 +1,38 @@
1
+ import { Model } from "sequelize-typescript";
2
+ import { SupportTicket } from "./supportticket.entity";
3
+ import { User } from "./user.entity";
4
+ export declare enum TicketAction {
5
+ CREATED = "created",
6
+ STATUS_CHANGED = "status_changed",
7
+ PRIORITY_CHANGED = "priority_changed",
8
+ ASSIGNED = "assigned",
9
+ ESCALATED = "escalated",
10
+ RESOLVED = "resolved",
11
+ CLOSED = "closed",
12
+ REOPENED = "reopened",
13
+ COMMENT_ADDED = "comment_added"
14
+ }
15
+ export interface SupportTicketHistoryAttributes {
16
+ id: string;
17
+ ticketId: string;
18
+ action: TicketAction;
19
+ performedBy: string;
20
+ oldValue?: string;
21
+ newValue?: string;
22
+ comment?: string;
23
+ metadata?: Record<string, any>;
24
+ createdAt: Date;
25
+ }
26
+ export declare class SupportTicketHistory extends Model<SupportTicketHistoryAttributes> {
27
+ id: string;
28
+ ticketId: string;
29
+ action: TicketAction;
30
+ performedBy: string;
31
+ oldValue: string;
32
+ newValue: string;
33
+ comment: string;
34
+ metadata: Record<string, any>;
35
+ ticket: SupportTicket;
36
+ performer: User;
37
+ }
38
+ //# sourceMappingURL=supportticket-history.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supportticket-history.entity.d.ts","sourceRoot":"","sources":["../../src/entities/supportticket-history.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,EAGN,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,oBAAY,YAAY;IACtB,OAAO,YAAY;IACnB,cAAc,mBAAmB;IACjC,gBAAgB,qBAAqB;IACrC,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,aAAa,kBAAkB;CAChC;AAED,MAAM,WAAW,8BAA8B;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,qBAUa,oBAAqB,SAAQ,KAAK,CAAC,8BAA8B,CAAC;IAMrE,EAAE,EAAE,MAAM,CAAC;IAOnB,QAAQ,EAAE,MAAM,CAAC;IAMjB,MAAM,EAAE,YAAY,CAAC;IAOrB,WAAW,EAAE,MAAM,CAAC;IAMpB,QAAQ,EAAE,MAAM,CAAC;IAMjB,QAAQ,EAAE,MAAM,CAAC;IAMjB,OAAO,EAAE,MAAM,CAAC;IAMhB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAI9B,MAAM,EAAE,aAAa,CAAC;IAGtB,SAAS,EAAE,IAAI,CAAC;CACjB"}