UNPKG

evolution-api-sdk

Version:

Unofficial SDK for the Evolution Whatsapp API v2

1 lines 3.64 kB
{"version":3,"sources":["../../../../src/types/tags.ts","../../../../src/utils/phone-numer-from-jid.ts","../../../../src/modules/messages/schemas/text.ts"],"sourcesContent":["export type Jid = `${string}@s.whatsapp.net` | string;\nexport const Jid = (jid: string) => jid as Jid;\n\nexport type GroupJid = `${string}@g.us` | string;\nexport const GroupJid = (jid: string) => jid as GroupJid;\n\nexport type GroupInviteCode = string & { __tag: \"GroupInviteCode\" };\nexport const GroupInviteCode = (code: string) => code as GroupInviteCode;\n\nexport type MessageId = string & { __tag: \"MessageId\" };\nexport const MessageId = (id: string) => id as MessageId;\n\nexport type ChatId = string & { __tag: \"ChatId\" };\nexport const ChatId = (id: string) => id as ChatId;\n","import { parsePhoneNumber } from \"libphonenumber-js\";\n\n/**\n * Get phone number from JID\n * @param jid - JID (remote JID)\n */\nexport function phoneNumberFromJid(jid: string) {\n\treturn parsePhoneNumber(`+${jid.split(\"@\")[0]}`).number;\n}\n","// Pure TypeScript interfaces for better IDE support and performance\nimport { Jid, MessageId } from \"@/types/tags\";\nimport { phoneNumberFromJid } from \"@/utils/phone-numer-from-jid\";\nimport { BaseMessageOptions } from \"./base\";\n\n// Raw response interface from API\nexport interface TextMessageResponseRaw {\n key: {\n remoteJid: string;\n fromMe: boolean;\n id: string;\n };\n pushName: string;\n status: string;\n message: {\n conversation: string;\n };\n contextInfo: null;\n messageType: string;\n messageTimestamp: number;\n instanceId: string;\n source: string;\n}\n\n// Request interfaces\nexport interface TextMessageOptions extends BaseMessageOptions {\n /**\n * Message text content\n */\n text: string;\n /**\n * Whether link preview should be shown\n */\n linkPreview?: boolean;\n}\n\n// Response interfaces\nexport interface TextMessageResponse {\n key: {\n remoteJid: string;\n fromMe: boolean;\n id: string;\n };\n pushName: string;\n status: string;\n message: {\n conversation: string;\n };\n contextInfo: null;\n messageType: string;\n messageTimestamp: number;\n instanceId: string;\n source: string;\n receiver: {\n phoneNumber: string;\n jid: Jid;\n };\n messageId: MessageId;\n timestamp: Date;\n}\n\nexport interface TextMessageReceived {\n conversation: string;\n extendedTextMessage: {\n text: string;\n };\n}\n\n// Transform function\nexport const TextMessageResponseTransform = (\n data: TextMessageResponseRaw\n): TextMessageResponse => ({\n receiver: {\n phoneNumber: phoneNumberFromJid(data.key.remoteJid),\n jid: Jid(data.key.remoteJid),\n },\n messageId: MessageId(data.key.id),\n timestamp: new Date(data.messageTimestamp),\n key: data.key,\n pushName: data.pushName,\n status: data.status,\n message: data.message,\n contextInfo: data.contextInfo,\n messageType: data.messageType,\n messageTimestamp: data.messageTimestamp,\n instanceId: data.instanceId,\n source: data.source,\n});\n"],"mappings":";AACO,IAAM,MAAM,CAAC,QAAgB;AAS7B,IAAM,YAAY,CAAC,OAAe;;;ACVzC,SAAS,wBAAwB;AAM1B,SAAS,mBAAmB,KAAa;AAC/C,SAAO,iBAAiB,IAAI,IAAI,MAAM,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;AAClD;;;AC6DO,IAAM,+BAA+B,CAC1C,UACyB;AAAA,EACzB,UAAU;AAAA,IACR,aAAa,mBAAmB,KAAK,IAAI,SAAS;AAAA,IAClD,KAAK,IAAI,KAAK,IAAI,SAAS;AAAA,EAC7B;AAAA,EACA,WAAW,UAAU,KAAK,IAAI,EAAE;AAAA,EAChC,WAAW,IAAI,KAAK,KAAK,gBAAgB;AAAA,EACzC,KAAK,KAAK;AAAA,EACV,UAAU,KAAK;AAAA,EACf,QAAQ,KAAK;AAAA,EACb,SAAS,KAAK;AAAA,EACd,aAAa,KAAK;AAAA,EAClB,aAAa,KAAK;AAAA,EAClB,kBAAkB,KAAK;AAAA,EACvB,YAAY,KAAK;AAAA,EACjB,QAAQ,KAAK;AACf;","names":[]}