easywork-common-lib 1.0.1344 → 1.0.1350

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 (41) hide show
  1. package/dist/common/enums/drive.enum.d.ts +2 -1
  2. package/dist/common/enums/drive.enum.js +1 -0
  3. package/dist/common/enums/drive.enum.js.map +1 -1
  4. package/dist/entities/sales/agent-comment.entity.d.ts +2 -0
  5. package/dist/entities/sales/agent-comment.entity.js +1 -0
  6. package/dist/entities/sales/agent-comment.entity.js.map +1 -1
  7. package/dist/entities/tools/calendar/event.entity.d.ts +9 -0
  8. package/dist/entities/tools/calendar/event.entity.js +33 -1
  9. package/dist/entities/tools/calendar/event.entity.js.map +1 -1
  10. package/dist/grpc/drive/drive.proto +339 -339
  11. package/dist/grpc/drive/leads.proto +114 -114
  12. package/dist/modules/authorization/authorization.module.d.ts +2 -2
  13. package/dist/modules/authorization/services/resource-access-filter.service.js +21 -21
  14. package/package.json +55 -55
  15. package/dist/entities/subscriptions/payment-history.entity.d.ts +0 -24
  16. package/dist/entities/subscriptions/payment-history.entity.js +0 -124
  17. package/dist/entities/subscriptions/payment-history.entity.js.map +0 -1
  18. package/dist/entities/thirdparty/wati/index.d.ts +0 -7
  19. package/dist/entities/thirdparty/wati/index.js +0 -24
  20. package/dist/entities/thirdparty/wati/index.js.map +0 -1
  21. package/dist/entities/thirdparty/wati/wati-chat.entity.d.ts +0 -27
  22. package/dist/entities/thirdparty/wati/wati-chat.entity.js +0 -207
  23. package/dist/entities/thirdparty/wati/wati-chat.entity.js.map +0 -1
  24. package/dist/entities/thirdparty/wati/wati-configuration.entity.d.ts +0 -22
  25. package/dist/entities/thirdparty/wati/wati-configuration.entity.js +0 -149
  26. package/dist/entities/thirdparty/wati/wati-configuration.entity.js.map +0 -1
  27. package/dist/entities/thirdparty/wati/wati-events.entity.d.ts +0 -9
  28. package/dist/entities/thirdparty/wati/wati-events.entity.js +0 -63
  29. package/dist/entities/thirdparty/wati/wati-events.entity.js.map +0 -1
  30. package/dist/entities/thirdparty/wati/wati-message.entity.d.ts +0 -30
  31. package/dist/entities/thirdparty/wati/wati-message.entity.js +0 -280
  32. package/dist/entities/thirdparty/wati/wati-message.entity.js.map +0 -1
  33. package/dist/entities/thirdparty/wati/wati-user-access-log.entity.d.ts +0 -71
  34. package/dist/entities/thirdparty/wati/wati-user-access-log.entity.js +0 -216
  35. package/dist/entities/thirdparty/wati/wati-user-access-log.entity.js.map +0 -1
  36. package/dist/entities/thirdparty/wati/wati-user-access.entity.d.ts +0 -31
  37. package/dist/entities/thirdparty/wati/wati-user-access.entity.js +0 -193
  38. package/dist/entities/thirdparty/wati/wati-user-access.entity.js.map +0 -1
  39. package/dist/entities/thirdparty/wati/wati.enum.d.ts +0 -69
  40. package/dist/entities/thirdparty/wati/wati.enum.js +0 -83
  41. package/dist/entities/thirdparty/wati/wati.enum.js.map +0 -1
@@ -1,27 +0,0 @@
1
- import { Lead } from "../../sales/lead.entity";
2
- import { Contact } from "../../sales/contact.entity";
3
- import { BaseEntityOnlyEssential } from "../../../common";
4
- import { WatiMessage } from "../wati/wati-message.entity";
5
- import { WatiConfiguration } from "../wati/wati-configuration.entity";
6
- import { User } from "../../user.entity";
7
- import { WhatsAppConversationStatusEnum } from "../wati/wati.enum";
8
- export declare class WatiChat extends BaseEntityOnlyEssential {
9
- watiConfigurationId: string;
10
- watiConfiguration: WatiConfiguration;
11
- watiConversationId: string;
12
- phoneNumber: string;
13
- fullName?: string;
14
- sessionActive: boolean;
15
- sessionExpiresAt?: Date;
16
- watiCustomAttributes?: object;
17
- lastMessageTimestamp?: Date;
18
- status: WhatsAppConversationStatusEnum;
19
- unreadCountForAgent: number;
20
- assignedToUserId?: string;
21
- assignedToUser?: User;
22
- crmLeadId?: string;
23
- crmLead?: Lead;
24
- crmContactId?: string;
25
- crmContact?: Contact;
26
- messages: WatiMessage[];
27
- }
@@ -1,207 +0,0 @@
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.WatiChat = void 0;
13
- const typeorm_1 = require("typeorm");
14
- const swagger_1 = require("@nestjs/swagger");
15
- const class_validator_1 = require("class-validator");
16
- const lead_entity_1 = require("../../sales/lead.entity");
17
- const contact_entity_1 = require("../../sales/contact.entity");
18
- const common_1 = require("../../../common");
19
- const wati_message_entity_1 = require("../wati/wati-message.entity");
20
- const wati_configuration_entity_1 = require("../wati/wati-configuration.entity");
21
- const user_entity_1 = require("../../user.entity");
22
- const wati_enum_1 = require("../wati/wati.enum");
23
- let WatiChat = class WatiChat extends common_1.BaseEntityOnlyEssential {
24
- watiConfigurationId;
25
- watiConfiguration;
26
- watiConversationId;
27
- phoneNumber;
28
- fullName;
29
- sessionActive;
30
- sessionExpiresAt;
31
- watiCustomAttributes;
32
- lastMessageTimestamp;
33
- status;
34
- unreadCountForAgent;
35
- assignedToUserId;
36
- assignedToUser;
37
- crmLeadId;
38
- crmLead;
39
- crmContactId;
40
- crmContact;
41
- messages;
42
- };
43
- exports.WatiChat = WatiChat;
44
- __decorate([
45
- (0, swagger_1.ApiProperty)({ description: "ID de la WatiConfiguration asociada" }),
46
- (0, class_validator_1.IsString)(),
47
- (0, typeorm_1.Index)(),
48
- (0, typeorm_1.Column)({ type: "uuid" }),
49
- __metadata("design:type", String)
50
- ], WatiChat.prototype, "watiConfigurationId", void 0);
51
- __decorate([
52
- (0, typeorm_1.ManyToOne)(() => wati_configuration_entity_1.WatiConfiguration, (config) => config.chats),
53
- (0, typeorm_1.JoinColumn)({ name: "watiConfigurationId" }),
54
- __metadata("design:type", wati_configuration_entity_1.WatiConfiguration)
55
- ], WatiChat.prototype, "watiConfiguration", void 0);
56
- __decorate([
57
- (0, swagger_1.ApiProperty)({
58
- description: "ID único de la conversación en Wati (puede ser el número de teléfono del contacto)",
59
- }),
60
- (0, class_validator_1.IsString)(),
61
- (0, class_validator_1.MaxLength)(255),
62
- (0, typeorm_1.Column)({ type: "varchar", length: 255 }),
63
- __metadata("design:type", String)
64
- ], WatiChat.prototype, "watiConversationId", void 0);
65
- __decorate([
66
- (0, swagger_1.ApiProperty)({
67
- description: "Número de teléfono del contacto externo (cliente/prospecto)",
68
- }),
69
- (0, class_validator_1.IsString)(),
70
- (0, class_validator_1.MaxLength)(50),
71
- (0, typeorm_1.Index)(),
72
- (0, typeorm_1.Column)({ type: "varchar", length: 50 }),
73
- __metadata("design:type", String)
74
- ], WatiChat.prototype, "phoneNumber", void 0);
75
- __decorate([
76
- (0, swagger_1.ApiProperty)({
77
- description: "Nombre del contacto tal como aparece en Wati",
78
- required: false,
79
- }),
80
- (0, class_validator_1.IsString)(),
81
- (0, class_validator_1.MaxLength)(255),
82
- (0, class_validator_1.IsOptional)(),
83
- (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
84
- __metadata("design:type", String)
85
- ], WatiChat.prototype, "fullName", void 0);
86
- __decorate([
87
- (0, swagger_1.ApiProperty)({
88
- description: "Indica si hay una sesión de WhatsApp activa con este contacto",
89
- type: Boolean,
90
- default: false,
91
- }),
92
- (0, class_validator_1.IsBoolean)(),
93
- (0, typeorm_1.Column)({ type: "boolean", default: false }),
94
- __metadata("design:type", Boolean)
95
- ], WatiChat.prototype, "sessionActive", void 0);
96
- __decorate([
97
- (0, swagger_1.ApiProperty)({
98
- description: "Fecha y hora de expiración de la sesión activa de WhatsApp",
99
- required: false,
100
- }),
101
- (0, class_validator_1.IsDate)(),
102
- (0, class_validator_1.IsOptional)(),
103
- (0, typeorm_1.Column)({ type: "timestamp with time zone", nullable: true }),
104
- __metadata("design:type", Date)
105
- ], WatiChat.prototype, "sessionExpiresAt", void 0);
106
- __decorate([
107
- (0, swagger_1.ApiProperty)({
108
- description: "Atributos personalizados de Wati asociados al chat",
109
- type: "object",
110
- required: false,
111
- }),
112
- (0, class_validator_1.IsJSON)(),
113
- (0, class_validator_1.IsOptional)(),
114
- (0, typeorm_1.Column)({ type: "jsonb", nullable: true }),
115
- __metadata("design:type", Object)
116
- ], WatiChat.prototype, "watiCustomAttributes", void 0);
117
- __decorate([
118
- (0, swagger_1.ApiProperty)({
119
- description: "Timestamp del último mensaje en esta conversación",
120
- required: false,
121
- }),
122
- (0, class_validator_1.IsDate)(),
123
- (0, class_validator_1.IsOptional)(),
124
- (0, typeorm_1.Index)(),
125
- (0, typeorm_1.Column)({ type: "timestamp with time zone", nullable: true }),
126
- __metadata("design:type", Date)
127
- ], WatiChat.prototype, "lastMessageTimestamp", void 0);
128
- __decorate([
129
- (0, swagger_1.ApiProperty)({
130
- enum: wati_enum_1.WhatsAppConversationStatusEnum,
131
- description: "Estado de la conversación en Easywork",
132
- }),
133
- (0, class_validator_1.IsEnum)(wati_enum_1.WhatsAppConversationStatusEnum),
134
- (0, typeorm_1.Column)({
135
- type: "enum",
136
- enum: wati_enum_1.WhatsAppConversationStatusEnum,
137
- default: wati_enum_1.WhatsAppConversationStatusEnum.OPEN,
138
- }),
139
- __metadata("design:type", String)
140
- ], WatiChat.prototype, "status", void 0);
141
- __decorate([
142
- (0, swagger_1.ApiProperty)({
143
- description: "Número de mensajes no leídos para el agente",
144
- default: 0,
145
- }),
146
- (0, class_validator_1.IsInt)(),
147
- (0, class_validator_1.Min)(0),
148
- (0, typeorm_1.Column)({ type: "integer", default: 0 }),
149
- __metadata("design:type", Number)
150
- ], WatiChat.prototype, "unreadCountForAgent", void 0);
151
- __decorate([
152
- (0, swagger_1.ApiProperty)({
153
- description: "ID del usuario del CRM asignado a este chat",
154
- required: false,
155
- }),
156
- (0, class_validator_1.IsString)(),
157
- (0, class_validator_1.IsOptional)(),
158
- (0, typeorm_1.Index)(),
159
- (0, typeorm_1.Column)({ type: "uuid", nullable: true }),
160
- __metadata("design:type", String)
161
- ], WatiChat.prototype, "assignedToUserId", void 0);
162
- __decorate([
163
- (0, typeorm_1.ManyToOne)(() => user_entity_1.User, { onDelete: "SET NULL", nullable: true }),
164
- (0, typeorm_1.JoinColumn)({ name: "assignedToUserId" }),
165
- __metadata("design:type", user_entity_1.User)
166
- ], WatiChat.prototype, "assignedToUser", void 0);
167
- __decorate([
168
- (0, swagger_1.ApiProperty)({
169
- description: "ID del Lead en el CRM asociado a este chat",
170
- required: false,
171
- }),
172
- (0, class_validator_1.IsString)(),
173
- (0, class_validator_1.IsOptional)(),
174
- (0, typeorm_1.Index)(),
175
- (0, typeorm_1.Column)({ type: "uuid", nullable: true }),
176
- __metadata("design:type", String)
177
- ], WatiChat.prototype, "crmLeadId", void 0);
178
- __decorate([
179
- (0, typeorm_1.ManyToOne)(() => lead_entity_1.Lead, { onDelete: "SET NULL", nullable: true }),
180
- (0, typeorm_1.JoinColumn)({ name: "crmLeadId" }),
181
- __metadata("design:type", lead_entity_1.Lead)
182
- ], WatiChat.prototype, "crmLead", void 0);
183
- __decorate([
184
- (0, swagger_1.ApiProperty)({
185
- description: "ID del Contact en el CRM asociado a este chat",
186
- required: false,
187
- }),
188
- (0, class_validator_1.IsString)(),
189
- (0, class_validator_1.IsOptional)(),
190
- (0, typeorm_1.Index)(),
191
- (0, typeorm_1.Column)({ type: "uuid", nullable: true }),
192
- __metadata("design:type", String)
193
- ], WatiChat.prototype, "crmContactId", void 0);
194
- __decorate([
195
- (0, typeorm_1.ManyToOne)(() => contact_entity_1.Contact, { onDelete: "SET NULL", nullable: true }),
196
- (0, typeorm_1.JoinColumn)({ name: "crmContactId" }),
197
- __metadata("design:type", contact_entity_1.Contact)
198
- ], WatiChat.prototype, "crmContact", void 0);
199
- __decorate([
200
- (0, typeorm_1.OneToMany)(() => wati_message_entity_1.WatiMessage, (message) => message.watiChat),
201
- __metadata("design:type", Array)
202
- ], WatiChat.prototype, "messages", void 0);
203
- exports.WatiChat = WatiChat = __decorate([
204
- (0, typeorm_1.Entity)("wati_chat"),
205
- (0, typeorm_1.Index)(["watiConfigurationId", "watiConversationId"], { unique: true })
206
- ], WatiChat);
207
- //# sourceMappingURL=wati-chat.entity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wati-chat.entity.js","sourceRoot":"","sources":["../../../../src/entities/thirdparty/wati/wati-chat.entity.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import { Group } from "../../group.entity";
2
- import { EntityBase } from "../../../common";
3
- import { WatiChat } from "./wati-chat.entity";
4
- import { WatiIntegrationStatusEnum, WatiPlanType } from "./wati.enum";
5
- export declare class WatiConfiguration extends EntityBase {
6
- baseWebhookUrl: string;
7
- generatedWebhookSecret: string;
8
- apiEndpoint: string;
9
- apiToken: string;
10
- watiClientID: string;
11
- associatedPhoneNumber: string;
12
- status: WatiIntegrationStatusEnum;
13
- lastErrorDetails?: string;
14
- lastSuccessfulConnectionAt?: Date;
15
- groupId: string;
16
- group: Group;
17
- watiSubscription?: {
18
- planType: WatiPlanType;
19
- features?: string[];
20
- };
21
- chats: WatiChat[];
22
- }
@@ -1,149 +0,0 @@
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.WatiConfiguration = void 0;
13
- const typeorm_1 = require("typeorm");
14
- const swagger_1 = require("@nestjs/swagger");
15
- const class_validator_1 = require("class-validator");
16
- const group_entity_1 = require("../../group.entity");
17
- const common_1 = require("../../../common");
18
- const wati_chat_entity_1 = require("./wati-chat.entity");
19
- const wati_enum_1 = require("./wati.enum");
20
- let WatiConfiguration = class WatiConfiguration extends common_1.EntityBase {
21
- baseWebhookUrl;
22
- generatedWebhookSecret;
23
- apiEndpoint;
24
- apiToken;
25
- watiClientID;
26
- associatedPhoneNumber;
27
- status;
28
- lastErrorDetails;
29
- lastSuccessfulConnectionAt;
30
- groupId;
31
- group;
32
- watiSubscription;
33
- chats;
34
- };
35
- exports.WatiConfiguration = WatiConfiguration;
36
- __decorate([
37
- (0, swagger_1.ApiProperty)({
38
- description: "URL base del endpoint de webhooks de Easywork para esta integración. La URL completa se construye con identificadores y el secreto.",
39
- }),
40
- (0, class_validator_1.IsUrl)(),
41
- (0, typeorm_1.Column)({ type: "varchar", length: 512 }),
42
- __metadata("design:type", String)
43
- ], WatiConfiguration.prototype, "baseWebhookUrl", void 0);
44
- __decorate([
45
- (0, swagger_1.ApiProperty)({
46
- description: "Secreto generado por Easywork para validar los webhooks de Wati. Este secreto se añade a la URL que el usuario configura en Wati.",
47
- }),
48
- (0, class_validator_1.IsString)(),
49
- (0, typeorm_1.Column)({ type: "varchar", length: 255, select: false }),
50
- __metadata("design:type", String)
51
- ], WatiConfiguration.prototype, "generatedWebhookSecret", void 0);
52
- __decorate([
53
- (0, swagger_1.ApiProperty)({ description: "URL base de la API de Wati" }),
54
- (0, class_validator_1.IsUrl)(),
55
- (0, typeorm_1.Column)({ type: "varchar", length: 255 }),
56
- __metadata("design:type", String)
57
- ], WatiConfiguration.prototype, "apiEndpoint", void 0);
58
- __decorate([
59
- (0, swagger_1.ApiProperty)({ description: "Token de acceso para la API de Wati" }),
60
- (0, class_validator_1.IsString)(),
61
- (0, typeorm_1.Column)({ type: "text", select: false }),
62
- __metadata("design:type", String)
63
- ], WatiConfiguration.prototype, "apiToken", void 0);
64
- __decorate([
65
- (0, swagger_1.ApiProperty)({
66
- description: "ID de cliente de Wati, identificador único de la cuenta de Wati",
67
- example: "513892",
68
- }),
69
- (0, class_validator_1.IsString)(),
70
- (0, typeorm_1.Index)(),
71
- (0, typeorm_1.Column)({ type: "varchar", length: 255 }),
72
- __metadata("design:type", String)
73
- ], WatiConfiguration.prototype, "watiClientID", void 0);
74
- __decorate([
75
- (0, swagger_1.ApiProperty)({
76
- description: "Número de WhatsApp asociado a esta configuración de Wati",
77
- }),
78
- (0, class_validator_1.IsString)(),
79
- (0, typeorm_1.Index)(),
80
- (0, typeorm_1.Column)({ type: "varchar", length: 50 }),
81
- __metadata("design:type", String)
82
- ], WatiConfiguration.prototype, "associatedPhoneNumber", void 0);
83
- __decorate([
84
- (0, swagger_1.ApiProperty)({
85
- enum: wati_enum_1.WatiIntegrationStatusEnum,
86
- description: "Estado actual de la integración con Wati",
87
- default: wati_enum_1.WatiIntegrationStatusEnum.PENDING_SETUP,
88
- }),
89
- (0, class_validator_1.IsEnum)(wati_enum_1.WatiIntegrationStatusEnum),
90
- (0, typeorm_1.Column)({
91
- type: "enum",
92
- enum: wati_enum_1.WatiIntegrationStatusEnum,
93
- default: wati_enum_1.WatiIntegrationStatusEnum.PENDING_SETUP,
94
- }),
95
- __metadata("design:type", String)
96
- ], WatiConfiguration.prototype, "status", void 0);
97
- __decorate([
98
- (0, swagger_1.ApiProperty)({
99
- description: "Detalles del último error de configuración/conexión",
100
- required: false,
101
- }),
102
- (0, class_validator_1.IsString)(),
103
- (0, class_validator_1.IsOptional)(),
104
- (0, typeorm_1.Column)({ type: "text", nullable: true }),
105
- __metadata("design:type", String)
106
- ], WatiConfiguration.prototype, "lastErrorDetails", void 0);
107
- __decorate([
108
- (0, swagger_1.ApiProperty)({
109
- description: "Fecha del último intento de conexión exitoso",
110
- required: false,
111
- }),
112
- (0, class_validator_1.IsDate)(),
113
- (0, class_validator_1.IsOptional)(),
114
- (0, typeorm_1.Column)({ type: "timestamp with time zone", nullable: true }),
115
- __metadata("design:type", Date)
116
- ], WatiConfiguration.prototype, "lastSuccessfulConnectionAt", void 0);
117
- __decorate([
118
- (0, swagger_1.ApiProperty)({
119
- description: "ID del Group (tenant) al que pertenece esta configuración",
120
- }),
121
- (0, class_validator_1.IsString)(),
122
- (0, typeorm_1.Index)(),
123
- (0, typeorm_1.Column)({ type: "uuid", unique: true }),
124
- __metadata("design:type", String)
125
- ], WatiConfiguration.prototype, "groupId", void 0);
126
- __decorate([
127
- (0, typeorm_1.ManyToOne)(() => group_entity_1.Group, { onDelete: "CASCADE" }),
128
- (0, typeorm_1.JoinColumn)({ name: "groupId" }),
129
- __metadata("design:type", group_entity_1.Group)
130
- ], WatiConfiguration.prototype, "group", void 0);
131
- __decorate([
132
- (0, swagger_1.ApiProperty)({
133
- description: "Información de la suscripción de Wati",
134
- type: "object",
135
- required: false,
136
- }),
137
- (0, class_validator_1.IsJSON)(),
138
- (0, class_validator_1.IsOptional)(),
139
- (0, typeorm_1.Column)({ type: "jsonb", nullable: true }),
140
- __metadata("design:type", Object)
141
- ], WatiConfiguration.prototype, "watiSubscription", void 0);
142
- __decorate([
143
- (0, typeorm_1.OneToMany)(() => wati_chat_entity_1.WatiChat, (chat) => chat.watiConfiguration),
144
- __metadata("design:type", Array)
145
- ], WatiConfiguration.prototype, "chats", void 0);
146
- exports.WatiConfiguration = WatiConfiguration = __decorate([
147
- (0, typeorm_1.Entity)("wati_configurations")
148
- ], WatiConfiguration);
149
- //# sourceMappingURL=wati-configuration.entity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wati-configuration.entity.js","sourceRoot":"","sources":["../../../../src/entities/thirdparty/wati/wati-configuration.entity.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import { BaseEntityOnlyEssential } from "../../../common";
2
- import { WatiEventType } from "./wati.enum";
3
- import { WatiConfiguration } from "./wati-configuration.entity";
4
- export declare class WatiEvents extends BaseEntityOnlyEssential {
5
- watiConfigurationId: string;
6
- watiConfiguration: WatiConfiguration;
7
- watiEventType: WatiEventType;
8
- rawPayload?: object;
9
- }
@@ -1,63 +0,0 @@
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.WatiEvents = void 0;
13
- const common_1 = require("../../../common");
14
- const class_validator_1 = require("class-validator");
15
- const wati_enum_1 = require("./wati.enum");
16
- const typeorm_1 = require("typeorm");
17
- const swagger_1 = require("@nestjs/swagger");
18
- const wati_configuration_entity_1 = require("./wati-configuration.entity");
19
- let WatiEvents = class WatiEvents extends common_1.BaseEntityOnlyEssential {
20
- watiConfigurationId;
21
- watiConfiguration;
22
- watiEventType;
23
- rawPayload;
24
- };
25
- exports.WatiEvents = WatiEvents;
26
- __decorate([
27
- (0, swagger_1.ApiProperty)({
28
- description: "ID de la WatiConfiguration que originó este evento",
29
- }),
30
- (0, class_validator_1.IsString)(),
31
- (0, typeorm_1.Index)(),
32
- (0, typeorm_1.Column)({ type: "uuid" }),
33
- __metadata("design:type", String)
34
- ], WatiEvents.prototype, "watiConfigurationId", void 0);
35
- __decorate([
36
- (0, typeorm_1.ManyToOne)(() => wati_configuration_entity_1.WatiConfiguration, { onDelete: "CASCADE" }),
37
- (0, typeorm_1.JoinColumn)({ name: "watiConfigurationId" }),
38
- __metadata("design:type", wati_configuration_entity_1.WatiConfiguration)
39
- ], WatiEvents.prototype, "watiConfiguration", void 0);
40
- __decorate([
41
- (0, swagger_1.ApiProperty)({
42
- enum: wati_enum_1.WatiEventType,
43
- description: "Tipo de evento de Wati",
44
- }),
45
- (0, class_validator_1.IsEnum)(wati_enum_1.WatiEventType),
46
- (0, typeorm_1.Column)({ type: "enum", enum: wati_enum_1.WatiEventType, nullable: false }),
47
- __metadata("design:type", String)
48
- ], WatiEvents.prototype, "watiEventType", void 0);
49
- __decorate([
50
- (0, swagger_1.ApiProperty)({
51
- description: "Payload crudo del evento de Wati",
52
- type: "object",
53
- required: false,
54
- }),
55
- (0, class_validator_1.IsJSON)(),
56
- (0, class_validator_1.IsOptional)(),
57
- (0, typeorm_1.Column)({ type: "jsonb", nullable: true, select: false }),
58
- __metadata("design:type", Object)
59
- ], WatiEvents.prototype, "rawPayload", void 0);
60
- exports.WatiEvents = WatiEvents = __decorate([
61
- (0, typeorm_1.Entity)("wati_events")
62
- ], WatiEvents);
63
- //# sourceMappingURL=wati-events.entity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wati-events.entity.js","sourceRoot":"","sources":["../../../../src/entities/thirdparty/wati/wati-events.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA0D;AAC1D,qDAAuE;AACvE,2CAA4C;AAC5C,qCAAuE;AACvE,6CAA8C;AAC9C,2EAAgE;AAGzD,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,gCAAuB;IAOrD,mBAAmB,CAAS;IAI5B,iBAAiB,CAAoB;IAQrC,aAAa,CAAgB;IAU7B,UAAU,CAAU;CACrB,CAAA;AA9BY,gCAAU;AAOrB;IANC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,oDAAoD;KAClE,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,eAAK,GAAE;IACP,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;uDACG;AAI5B;IAFC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,6CAAiB,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC3D,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;8BACzB,6CAAiB;qDAAC;AAQrC;IANC,IAAA,qBAAW,EAAC;QACX,IAAI,EAAE,yBAAa;QACnB,WAAW,EAAE,wBAAwB;KACtC,CAAC;IACD,IAAA,wBAAM,EAAC,yBAAa,CAAC;IACrB,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;;iDAClC;AAU7B;IARC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,kCAAkC;QAC/C,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,KAAK;KAChB,CAAC;IACD,IAAA,wBAAM,GAAE;IACR,IAAA,4BAAU,GAAE;IACZ,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;;8CACrC;qBA7BT,UAAU;IADtB,IAAA,gBAAM,EAAC,aAAa,CAAC;GACT,UAAU,CA8BtB"}
@@ -1,30 +0,0 @@
1
- import { WatiChat } from "./wati-chat.entity";
2
- import { User } from "../../user.entity";
3
- import { WatiMessageDirection, WatiMessageType, WatiMessageStatus, WatiEventType } from "./wati.enum";
4
- import { BaseEntitySimple } from "../../../common";
5
- export declare class WatiMessage extends BaseEntitySimple {
6
- watiChatId: string;
7
- watiChat: WatiChat;
8
- watiMessageId?: string;
9
- watiTicketId?: string;
10
- whatsappMessageId?: string;
11
- watiConversationId?: string;
12
- watiTemplateId?: string;
13
- waId?: string;
14
- senderName?: string;
15
- content: string;
16
- messageType: WatiMessageType;
17
- direction: WatiMessageDirection;
18
- channelMessageTimestamp: Date;
19
- watiTimestamp?: number;
20
- watiEventType?: WatiEventType;
21
- watiMessageTemplateName?: string;
22
- templateParametersUsed?: object;
23
- messageData?: object;
24
- sourceType?: string;
25
- status: WatiMessageStatus;
26
- deliveredAt?: Date;
27
- readAt?: Date;
28
- sentByCrmUserId?: string;
29
- sentByCrmUser?: User;
30
- }