@arcaelas/whatsapp 2.2.0 → 3.0.2

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 (127) hide show
  1. package/build/cjs/decorators.d.ts +9 -0
  2. package/build/cjs/decorators.js +26 -0
  3. package/build/cjs/decorators.js.map +1 -0
  4. package/build/cjs/index.d.ts +6 -10
  5. package/build/cjs/index.js +11 -10
  6. package/build/cjs/index.js.map +1 -1
  7. package/build/cjs/lib/bot/decorator.d.ts +77 -0
  8. package/build/cjs/lib/bot/decorator.js +219 -0
  9. package/build/cjs/lib/bot/decorator.js.map +1 -0
  10. package/build/cjs/lib/bot/decorators.d.ts +113 -0
  11. package/build/cjs/lib/bot/decorators.js +253 -0
  12. package/build/cjs/lib/bot/decorators.js.map +1 -0
  13. package/build/cjs/lib/bot/index.d.ts +3 -0
  14. package/build/cjs/lib/bot/index.js +20 -0
  15. package/build/cjs/lib/bot/index.js.map +1 -0
  16. package/build/cjs/lib/chat/index.d.ts +227 -0
  17. package/build/cjs/lib/chat/index.js +324 -0
  18. package/build/cjs/lib/chat/index.js.map +1 -0
  19. package/build/cjs/lib/contact/index.d.ts +203 -0
  20. package/build/cjs/lib/contact/index.js +226 -0
  21. package/build/cjs/lib/contact/index.js.map +1 -0
  22. package/build/cjs/lib/message/index.d.ts +237 -0
  23. package/build/cjs/lib/message/index.js +685 -0
  24. package/build/cjs/lib/message/index.js.map +1 -0
  25. package/build/cjs/lib/store/engine/index.d.ts +34 -0
  26. package/build/cjs/lib/store/engine/index.js +13 -0
  27. package/build/cjs/lib/store/engine/index.js.map +1 -0
  28. package/build/cjs/lib/store/engine/lib/file_system/index.d.ts +56 -0
  29. package/build/cjs/lib/store/engine/lib/file_system/index.js +160 -0
  30. package/build/cjs/lib/store/engine/lib/file_system/index.js.map +1 -0
  31. package/build/cjs/lib/store/engine/lib/redis/index.d.ts +82 -0
  32. package/build/cjs/lib/store/engine/lib/redis/index.js +132 -0
  33. package/build/cjs/lib/store/engine/lib/redis/index.js.map +1 -0
  34. package/build/cjs/lib/store/index.d.ts +22 -0
  35. package/build/cjs/lib/store/index.js +38 -0
  36. package/build/cjs/lib/store/index.js.map +1 -0
  37. package/build/cjs/lib/whatsapp/index.d.ts +179 -0
  38. package/build/cjs/lib/whatsapp/index.js +754 -0
  39. package/build/cjs/lib/whatsapp/index.js.map +1 -0
  40. package/build/esm/decorators.d.ts +9 -0
  41. package/build/esm/decorators.js +9 -0
  42. package/build/esm/decorators.js.map +1 -0
  43. package/build/esm/index.d.ts +6 -10
  44. package/build/esm/index.js +4 -6
  45. package/build/esm/index.js.map +1 -1
  46. package/build/esm/lib/bot/decorator.d.ts +77 -0
  47. package/build/esm/lib/bot/decorator.js +210 -0
  48. package/build/esm/lib/bot/decorator.js.map +1 -0
  49. package/build/esm/lib/bot/decorators.d.ts +113 -0
  50. package/build/esm/lib/bot/decorators.js +242 -0
  51. package/build/esm/lib/bot/decorators.js.map +1 -0
  52. package/build/esm/lib/bot/index.d.ts +3 -0
  53. package/build/esm/lib/bot/index.js +3 -0
  54. package/build/esm/lib/bot/index.js.map +1 -0
  55. package/build/esm/lib/chat/index.d.ts +227 -0
  56. package/build/esm/lib/chat/index.js +319 -0
  57. package/build/esm/lib/chat/index.js.map +1 -0
  58. package/build/esm/lib/contact/index.d.ts +203 -0
  59. package/build/esm/lib/contact/index.js +221 -0
  60. package/build/esm/lib/contact/index.js.map +1 -0
  61. package/build/esm/lib/message/index.d.ts +237 -0
  62. package/build/esm/lib/message/index.js +673 -0
  63. package/build/esm/lib/message/index.js.map +1 -0
  64. package/build/esm/lib/store/engine/index.d.ts +34 -0
  65. package/build/esm/lib/store/engine/index.js +8 -0
  66. package/build/esm/lib/store/engine/index.js.map +1 -0
  67. package/build/esm/lib/store/engine/lib/file_system/index.d.ts +56 -0
  68. package/build/esm/lib/store/engine/lib/file_system/index.js +156 -0
  69. package/build/esm/lib/store/engine/lib/file_system/index.js.map +1 -0
  70. package/build/esm/lib/store/engine/lib/redis/index.d.ts +82 -0
  71. package/build/esm/lib/store/engine/lib/redis/index.js +128 -0
  72. package/build/esm/lib/store/engine/lib/redis/index.js.map +1 -0
  73. package/build/esm/lib/store/index.d.ts +22 -0
  74. package/build/esm/lib/store/index.js +31 -0
  75. package/build/esm/lib/store/index.js.map +1 -0
  76. package/build/esm/lib/whatsapp/index.d.ts +179 -0
  77. package/build/esm/lib/whatsapp/index.js +714 -0
  78. package/build/esm/lib/whatsapp/index.js.map +1 -0
  79. package/package.json +8 -6
  80. package/build/cjs/Chat.d.ts +0 -317
  81. package/build/cjs/Chat.js +0 -275
  82. package/build/cjs/Chat.js.map +0 -1
  83. package/build/cjs/Contact.d.ts +0 -1163
  84. package/build/cjs/Contact.js +0 -162
  85. package/build/cjs/Contact.js.map +0 -1
  86. package/build/cjs/Message.d.ts +0 -902
  87. package/build/cjs/Message.js +0 -515
  88. package/build/cjs/Message.js.map +0 -1
  89. package/build/cjs/WhatsApp.d.ts +0 -80
  90. package/build/cjs/WhatsApp.js +0 -412
  91. package/build/cjs/WhatsApp.js.map +0 -1
  92. package/build/cjs/store/driver/FileEngine.d.ts +0 -34
  93. package/build/cjs/store/driver/FileEngine.js +0 -86
  94. package/build/cjs/store/driver/FileEngine.js.map +0 -1
  95. package/build/cjs/store/driver/RedisEngine.d.ts +0 -47
  96. package/build/cjs/store/driver/RedisEngine.js +0 -70
  97. package/build/cjs/store/driver/RedisEngine.js.map +0 -1
  98. package/build/cjs/store/engine.d.ts +0 -53
  99. package/build/cjs/store/engine.js +0 -7
  100. package/build/cjs/store/engine.js.map +0 -1
  101. package/build/cjs/store/index.d.ts +0 -8
  102. package/build/cjs/store/index.js +0 -12
  103. package/build/cjs/store/index.js.map +0 -1
  104. package/build/esm/Chat.d.ts +0 -317
  105. package/build/esm/Chat.js +0 -270
  106. package/build/esm/Chat.js.map +0 -1
  107. package/build/esm/Contact.d.ts +0 -1163
  108. package/build/esm/Contact.js +0 -157
  109. package/build/esm/Contact.js.map +0 -1
  110. package/build/esm/Message.d.ts +0 -902
  111. package/build/esm/Message.js +0 -510
  112. package/build/esm/Message.js.map +0 -1
  113. package/build/esm/WhatsApp.d.ts +0 -80
  114. package/build/esm/WhatsApp.js +0 -372
  115. package/build/esm/WhatsApp.js.map +0 -1
  116. package/build/esm/store/driver/FileEngine.d.ts +0 -34
  117. package/build/esm/store/driver/FileEngine.js +0 -82
  118. package/build/esm/store/driver/FileEngine.js.map +0 -1
  119. package/build/esm/store/driver/RedisEngine.d.ts +0 -47
  120. package/build/esm/store/driver/RedisEngine.js +0 -66
  121. package/build/esm/store/driver/RedisEngine.js.map +0 -1
  122. package/build/esm/store/engine.d.ts +0 -53
  123. package/build/esm/store/engine.js +0 -6
  124. package/build/esm/store/engine.js.map +0 -1
  125. package/build/esm/store/index.d.ts +0 -8
  126. package/build/esm/store/index.js +0 -7
  127. package/build/esm/store/index.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/whatsapp/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcaelas/whatsapp",
3
- "version": "2.2.0",
3
+ "version": "3.0.2",
4
4
  "description": "A small box of tools, which are implemented in different factions of the library.",
5
5
  "license": "ISC",
6
6
  "main": "./build/cjs/index.js",
@@ -11,6 +11,11 @@
11
11
  "types": "./build/esm/index.d.ts",
12
12
  "import": "./build/esm/index.js",
13
13
  "require": "./build/cjs/index.js"
14
+ },
15
+ "./decorators": {
16
+ "types": "./build/esm/decorators.d.ts",
17
+ "import": "./build/esm/decorators.js",
18
+ "require": "./build/cjs/decorators.js"
14
19
  }
15
20
  },
16
21
  "author": {
@@ -43,7 +48,7 @@
43
48
  "registry": "https://registry.npmjs.org/"
44
49
  },
45
50
  "scripts": {
46
- "build:esm": "tsc --module ESNext --moduleResolution bundler --outDir build/esm && tsc-alias --outDir build/esm && echo '{\"type\":\"module\"}' > build/esm/package.json",
51
+ "build:esm": "tsc --module ESNext --moduleResolution bundler --outDir build/esm && tsc-alias --resolve-full-paths --outDir build/esm && echo '{\"type\":\"module\"}' > build/esm/package.json",
47
52
  "build:cjs": "tsc --module commonjs --moduleResolution node --outDir build/cjs && tsc-alias --outDir build/cjs && echo '{\"type\":\"commonjs\"}' > build/cjs/package.json",
48
53
  "build": "yarn build:esm && yarn build:cjs",
49
54
  "docs": "mkdocs gh-deploy --force",
@@ -52,12 +57,8 @@
52
57
  "postpublish": "rm -rf build/"
53
58
  },
54
59
  "dependencies": {
55
- "@arcaelas/dynamite": "^1.0.9",
56
- "@arcaelas/utils": "^2.0.5",
57
- "@hapi/boom": "^10.0.1",
58
60
  "baileys": "7.0.0-rc.9",
59
61
  "pino": "^10.1.0",
60
- "pino-pretty": "^13.1.3",
61
62
  "qrcode": "^1.5.4"
62
63
  },
63
64
  "devDependencies": {
@@ -65,6 +66,7 @@
65
66
  "@types/node": "^25.0.3",
66
67
  "@types/qrcode": "^1.5.6",
67
68
  "eslint": "^9.0.0",
69
+ "ioredis": "^5.10.1",
68
70
  "prettier": "^3.0.0",
69
71
  "tsc-alias": "^1.8.16",
70
72
  "typescript": "^5.0.4",
@@ -1,317 +0,0 @@
1
- /**
2
- * @file Chat.ts
3
- * @description Clase Chat para gestión de conversaciones de WhatsApp
4
- */
5
- import type { WhatsApp } from './WhatsApp';
6
- /**
7
- * @description Participante de grupo.
8
- * Group participant.
9
- */
10
- export interface IGroupParticipant {
11
- /** JID del participante / Participant JID */
12
- id: string;
13
- /** Rol de admin: null, 'admin', 'superadmin' / Admin role */
14
- admin: string | null;
15
- }
16
- /**
17
- * @description Objeto raw del chat (protocolo).
18
- * Raw chat object (protocol).
19
- */
20
- export interface IChatRaw {
21
- /** JID único del chat / Unique chat JID */
22
- id: string;
23
- /** Nombre del chat o grupo / Chat or group name */
24
- name?: string | null;
25
- /** Nombre alternativo para mostrar / Alternative display name */
26
- displayName?: string | null;
27
- /** Descripción del grupo / Group description */
28
- description?: string | null;
29
- /** Cantidad de mensajes no leídos / Unread message count */
30
- unreadCount?: number | null;
31
- /** Si el chat es de solo lectura / Whether the chat is read-only */
32
- readOnly?: boolean | null;
33
- /** Si el chat está archivado / Whether the chat is archived */
34
- archived?: boolean | null;
35
- /** Timestamp cuando se fijó el chat / Pin timestamp */
36
- pinned?: number | null;
37
- /** Timestamp cuando expira el silencio / Mute end timestamp */
38
- muteEndTime?: number | null;
39
- /** Si fue marcado manualmente como no leído / Whether manually marked as unread */
40
- markedAsUnread?: boolean | null;
41
- /** Lista de participantes del grupo / Group participant list */
42
- participant?: IGroupParticipant[] | null;
43
- /** JID del creador del grupo / Group creator JID */
44
- createdBy?: string | null;
45
- /** Timestamp de creación / Creation timestamp */
46
- createdAt?: number | null;
47
- /** Duración de mensajes temporales (segundos) / Ephemeral message duration (seconds) */
48
- ephemeralExpiration?: number | null;
49
- }
50
- /**
51
- * @description
52
- * Clase base para representar una conversación de WhatsApp.
53
- * Base class representing a WhatsApp conversation.
54
- */
55
- export declare class Chat {
56
- readonly raw: IChatRaw;
57
- constructor(raw: IChatRaw);
58
- /** JID único del chat / Unique chat JID */
59
- get id(): string;
60
- /** Tipo de chat / Chat type */
61
- get type(): 'contact' | 'group';
62
- /** Nombre del chat / Chat name */
63
- get name(): string;
64
- /** Descripción del chat/grupo / Chat/group description */
65
- get content(): string;
66
- /** Si está fijado / Whether it's pinned */
67
- get pinned(): boolean;
68
- /** Si está archivado / Whether it's archived */
69
- get archived(): boolean;
70
- /** Timestamp cuando expira el silencio (0 = no silenciado) / Mute end timestamp (0 = not muted) */
71
- get muted(): number;
72
- /** Si está leído / Whether it's read */
73
- get read(): boolean;
74
- /** Si es solo lectura / Whether it's read-only */
75
- get readonly(): boolean;
76
- }
77
- /**
78
- * @description Factory que retorna la clase Chat enlazada al contexto.
79
- * Factory that returns the Chat class bound to context.
80
- * @param wa Instancia de WhatsApp.
81
- */
82
- export declare function chat(wa: WhatsApp): {
83
- new (raw: IChatRaw): {
84
- /**
85
- * @description Actualiza los datos del chat desde WhatsApp.
86
- * Refreshes chat data from WhatsApp.
87
- */
88
- refresh(): Promise</*elided*/ any | null>;
89
- /**
90
- * @description Elimina el chat con cascade delete.
91
- * Deletes the chat with cascade delete.
92
- */
93
- remove(): Promise<boolean>;
94
- /**
95
- * @description Fija o desfija el chat.
96
- * Pins or unpins the chat.
97
- */
98
- pin(value: boolean): Promise<boolean>;
99
- /**
100
- * @description Archiva o desarchiva el chat.
101
- * Archives or unarchives the chat.
102
- */
103
- archive(value: boolean): Promise<boolean>;
104
- /**
105
- * @description Silencia o quita silencio del chat.
106
- * Mutes or unmutes the chat.
107
- * @param duration Duración en ms (0 o null para quitar silencio) / Duration in ms (0 or null to unmute).
108
- */
109
- mute(duration: number | null): Promise<boolean>;
110
- /**
111
- * @description Marca el chat como leído.
112
- * Marks the chat as read.
113
- */
114
- seen(): Promise<boolean>;
115
- /**
116
- * @description Obtiene los miembros del chat.
117
- * Gets chat members.
118
- */
119
- members(offset?: number, limit?: number): Promise<InstanceType<typeof wa.Contact>[]>;
120
- /**
121
- * @description Obtiene mensajes del chat (paginados).
122
- * Gets chat messages (paginated).
123
- */
124
- messages(offset?: number, limit?: number): Promise<InstanceType<typeof wa.Message>[]>;
125
- /**
126
- * @description Obtiene el contacto asociado al chat (solo chats individuales).
127
- * Gets the contact associated with the chat (individual chats only).
128
- */
129
- contact(): Promise<InstanceType<typeof wa.Contact> | null>;
130
- readonly raw: IChatRaw;
131
- /** JID único del chat / Unique chat JID */
132
- get id(): string;
133
- /** Tipo de chat / Chat type */
134
- get type(): "contact" | "group";
135
- /** Nombre del chat / Chat name */
136
- get name(): string;
137
- /** Descripción del chat/grupo / Chat/group description */
138
- get content(): string;
139
- /** Si está fijado / Whether it's pinned */
140
- get pinned(): boolean;
141
- /** Si está archivado / Whether it's archived */
142
- get archived(): boolean;
143
- /** Timestamp cuando expira el silencio (0 = no silenciado) / Mute end timestamp (0 = not muted) */
144
- get muted(): number;
145
- /** Si está leído / Whether it's read */
146
- get read(): boolean;
147
- /** Si es solo lectura / Whether it's read-only */
148
- get readonly(): boolean;
149
- };
150
- /**
151
- * @description Obtiene un chat por su ID.
152
- * Retrieves a chat by its ID.
153
- */
154
- get(cid: string): Promise<{
155
- /**
156
- * @description Actualiza los datos del chat desde WhatsApp.
157
- * Refreshes chat data from WhatsApp.
158
- */
159
- refresh(): Promise</*elided*/ any | null>;
160
- /**
161
- * @description Elimina el chat con cascade delete.
162
- * Deletes the chat with cascade delete.
163
- */
164
- remove(): Promise<boolean>;
165
- /**
166
- * @description Fija o desfija el chat.
167
- * Pins or unpins the chat.
168
- */
169
- pin(value: boolean): Promise<boolean>;
170
- /**
171
- * @description Archiva o desarchiva el chat.
172
- * Archives or unarchives the chat.
173
- */
174
- archive(value: boolean): Promise<boolean>;
175
- /**
176
- * @description Silencia o quita silencio del chat.
177
- * Mutes or unmutes the chat.
178
- * @param duration Duración en ms (0 o null para quitar silencio) / Duration in ms (0 or null to unmute).
179
- */
180
- mute(duration: number | null): Promise<boolean>;
181
- /**
182
- * @description Marca el chat como leído.
183
- * Marks the chat as read.
184
- */
185
- seen(): Promise<boolean>;
186
- /**
187
- * @description Obtiene los miembros del chat.
188
- * Gets chat members.
189
- */
190
- members(offset?: number, limit?: number): Promise<InstanceType<typeof wa.Contact>[]>;
191
- /**
192
- * @description Obtiene mensajes del chat (paginados).
193
- * Gets chat messages (paginated).
194
- */
195
- messages(offset?: number, limit?: number): Promise<InstanceType<typeof wa.Message>[]>;
196
- /**
197
- * @description Obtiene el contacto asociado al chat (solo chats individuales).
198
- * Gets the contact associated with the chat (individual chats only).
199
- */
200
- contact(): Promise<InstanceType<typeof wa.Contact> | null>;
201
- readonly raw: IChatRaw;
202
- /** JID único del chat / Unique chat JID */
203
- get id(): string;
204
- /** Tipo de chat / Chat type */
205
- get type(): "contact" | "group";
206
- /** Nombre del chat / Chat name */
207
- get name(): string;
208
- /** Descripción del chat/grupo / Chat/group description */
209
- get content(): string;
210
- /** Si está fijado / Whether it's pinned */
211
- get pinned(): boolean;
212
- /** Si está archivado / Whether it's archived */
213
- get archived(): boolean;
214
- /** Timestamp cuando expira el silencio (0 = no silenciado) / Mute end timestamp (0 = not muted) */
215
- get muted(): number;
216
- /** Si está leído / Whether it's read */
217
- get read(): boolean;
218
- /** Si es solo lectura / Whether it's read-only */
219
- get readonly(): boolean;
220
- } | null>;
221
- /**
222
- * @description Obtiene chats paginados.
223
- * Retrieves paginated chats.
224
- */
225
- list(offset?: number, limit?: number): Promise<{
226
- /**
227
- * @description Actualiza los datos del chat desde WhatsApp.
228
- * Refreshes chat data from WhatsApp.
229
- */
230
- refresh(): Promise</*elided*/ any | null>;
231
- /**
232
- * @description Elimina el chat con cascade delete.
233
- * Deletes the chat with cascade delete.
234
- */
235
- remove(): Promise<boolean>;
236
- /**
237
- * @description Fija o desfija el chat.
238
- * Pins or unpins the chat.
239
- */
240
- pin(value: boolean): Promise<boolean>;
241
- /**
242
- * @description Archiva o desarchiva el chat.
243
- * Archives or unarchives the chat.
244
- */
245
- archive(value: boolean): Promise<boolean>;
246
- /**
247
- * @description Silencia o quita silencio del chat.
248
- * Mutes or unmutes the chat.
249
- * @param duration Duración en ms (0 o null para quitar silencio) / Duration in ms (0 or null to unmute).
250
- */
251
- mute(duration: number | null): Promise<boolean>;
252
- /**
253
- * @description Marca el chat como leído.
254
- * Marks the chat as read.
255
- */
256
- seen(): Promise<boolean>;
257
- /**
258
- * @description Obtiene los miembros del chat.
259
- * Gets chat members.
260
- */
261
- members(offset?: number, limit?: number): Promise<InstanceType<typeof wa.Contact>[]>;
262
- /**
263
- * @description Obtiene mensajes del chat (paginados).
264
- * Gets chat messages (paginated).
265
- */
266
- messages(offset?: number, limit?: number): Promise<InstanceType<typeof wa.Message>[]>;
267
- /**
268
- * @description Obtiene el contacto asociado al chat (solo chats individuales).
269
- * Gets the contact associated with the chat (individual chats only).
270
- */
271
- contact(): Promise<InstanceType<typeof wa.Contact> | null>;
272
- readonly raw: IChatRaw;
273
- /** JID único del chat / Unique chat JID */
274
- get id(): string;
275
- /** Tipo de chat / Chat type */
276
- get type(): "contact" | "group";
277
- /** Nombre del chat / Chat name */
278
- get name(): string;
279
- /** Descripción del chat/grupo / Chat/group description */
280
- get content(): string;
281
- /** Si está fijado / Whether it's pinned */
282
- get pinned(): boolean;
283
- /** Si está archivado / Whether it's archived */
284
- get archived(): boolean;
285
- /** Timestamp cuando expira el silencio (0 = no silenciado) / Mute end timestamp (0 = not muted) */
286
- get muted(): number;
287
- /** Si está leído / Whether it's read */
288
- get read(): boolean;
289
- /** Si es solo lectura / Whether it's read-only */
290
- get readonly(): boolean;
291
- }[]>;
292
- /**
293
- * @description Fija o desfija un chat por su ID.
294
- * Pins or unpins a chat by its ID.
295
- */
296
- pin(cid: string, value: boolean): Promise<boolean>;
297
- /**
298
- * @description Archiva o desarchiva un chat por su ID.
299
- * Archives or unarchives a chat by its ID.
300
- */
301
- archive(cid: string, value: boolean): Promise<boolean>;
302
- /**
303
- * @description Silencia o quita silencio de un chat por su ID.
304
- * Mutes or unmutes a chat by its ID.
305
- */
306
- mute(cid: string, duration: number | null): Promise<boolean>;
307
- /**
308
- * @description Marca un chat como leido por su ID.
309
- * Marks a chat as read by its ID.
310
- */
311
- seen(cid: string): Promise<boolean>;
312
- /**
313
- * @description Elimina un chat por su ID.
314
- * Removes a chat by its ID.
315
- */
316
- remove(cid: string): Promise<boolean>;
317
- };