Path: blob/master/node_modules/@adiwajshing/baileys/lib/Socket/business.js
1129 views
"use strict";1Object.defineProperty(exports, "__esModule", { value: true });2exports.makeBusinessSocket = void 0;3const business_1 = require("../Utils/business");4const WABinary_1 = require("../WABinary");5const generic_utils_1 = require("../WABinary/generic-utils");6const messages_recv_1 = require("./messages-recv");7const makeBusinessSocket = (config) => {8const sock = (0, messages_recv_1.makeMessagesRecvSocket)(config);9const { authState, query, waUploadToServer } = sock;10const getCatalog = async (jid, limit = 10) => {11var _a;12jid = jid || ((_a = authState.creds.me) === null || _a === void 0 ? void 0 : _a.id);13jid = (0, WABinary_1.jidNormalizedUser)(jid);14const result = await query({15tag: 'iq',16attrs: {17to: WABinary_1.S_WHATSAPP_NET,18type: 'get',19xmlns: 'w:biz:catalog'20},21content: [22{23tag: 'product_catalog',24attrs: {25jid,26allow_shop_source: 'true'27},28content: [29{30tag: 'limit',31attrs: {},32content: Buffer.from(limit.toString())33},34{35tag: 'width',36attrs: {},37content: Buffer.from('100')38},39{40tag: 'height',41attrs: {},42content: Buffer.from('100')43}44]45}46]47});48return (0, business_1.parseCatalogNode)(result);49};50const getCollections = async (jid, limit = 51) => {51var _a;52jid = jid || ((_a = authState.creds.me) === null || _a === void 0 ? void 0 : _a.id);53jid = (0, WABinary_1.jidNormalizedUser)(jid);54const result = await query({55tag: 'iq',56attrs: {57to: WABinary_1.S_WHATSAPP_NET,58type: 'get',59xmlns: 'w:biz:catalog',60smax_id: '35'61},62content: [63{64tag: 'collections',65attrs: {66biz_jid: jid,67},68content: [69{70tag: 'collection_limit',71attrs: {},72content: Buffer.from(limit.toString())73},74{75tag: 'item_limit',76attrs: {},77content: Buffer.from(limit.toString())78},79{80tag: 'width',81attrs: {},82content: Buffer.from('100')83},84{85tag: 'height',86attrs: {},87content: Buffer.from('100')88}89]90}91]92});93return (0, business_1.parseCollectionsNode)(result);94};95const getOrderDetails = async (orderId, tokenBase64) => {96const result = await query({97tag: 'iq',98attrs: {99to: WABinary_1.S_WHATSAPP_NET,100type: 'get',101xmlns: 'fb:thrift_iq',102smax_id: '5'103},104content: [105{106tag: 'order',107attrs: {108op: 'get',109id: orderId110},111content: [112{113tag: 'image_dimensions',114attrs: {},115content: [116{117tag: 'width',118attrs: {},119content: Buffer.from('100')120},121{122tag: 'height',123attrs: {},124content: Buffer.from('100')125}126]127},128{129tag: 'token',130attrs: {},131content: Buffer.from(tokenBase64)132}133]134}135]136});137return (0, business_1.parseOrderDetailsNode)(result);138};139const productUpdate = async (productId, update) => {140update = await (0, business_1.uploadingNecessaryImagesOfProduct)(update, waUploadToServer);141const editNode = (0, business_1.toProductNode)(productId, update);142const result = await query({143tag: 'iq',144attrs: {145to: WABinary_1.S_WHATSAPP_NET,146type: 'set',147xmlns: 'w:biz:catalog'148},149content: [150{151tag: 'product_catalog_edit',152attrs: { v: '1' },153content: [154editNode,155{156tag: 'width',157attrs: {},158content: '100'159},160{161tag: 'height',162attrs: {},163content: '100'164}165]166}167]168});169const productCatalogEditNode = (0, generic_utils_1.getBinaryNodeChild)(result, 'product_catalog_edit');170const productNode = (0, generic_utils_1.getBinaryNodeChild)(productCatalogEditNode, 'product');171return (0, business_1.parseProductNode)(productNode);172};173const productCreate = async (create) => {174// ensure isHidden is defined175create.isHidden = !!create.isHidden;176create = await (0, business_1.uploadingNecessaryImagesOfProduct)(create, waUploadToServer);177const createNode = (0, business_1.toProductNode)(undefined, create);178const result = await query({179tag: 'iq',180attrs: {181to: WABinary_1.S_WHATSAPP_NET,182type: 'set',183xmlns: 'w:biz:catalog'184},185content: [186{187tag: 'product_catalog_add',188attrs: { v: '1' },189content: [190createNode,191{192tag: 'width',193attrs: {},194content: '100'195},196{197tag: 'height',198attrs: {},199content: '100'200}201]202}203]204});205const productCatalogAddNode = (0, generic_utils_1.getBinaryNodeChild)(result, 'product_catalog_add');206const productNode = (0, generic_utils_1.getBinaryNodeChild)(productCatalogAddNode, 'product');207return (0, business_1.parseProductNode)(productNode);208};209const productDelete = async (productIds) => {210const result = await query({211tag: 'iq',212attrs: {213to: WABinary_1.S_WHATSAPP_NET,214type: 'set',215xmlns: 'w:biz:catalog'216},217content: [218{219tag: 'product_catalog_delete',220attrs: { v: '1' },221content: productIds.map(id => ({222tag: 'product',223attrs: {},224content: [225{226tag: 'id',227attrs: {},228content: Buffer.from(id)229}230]231}))232}233]234});235const productCatalogDelNode = (0, generic_utils_1.getBinaryNodeChild)(result, 'product_catalog_delete');236return {237deleted: +((productCatalogDelNode === null || productCatalogDelNode === void 0 ? void 0 : productCatalogDelNode.attrs.deleted_count) || 0)238};239};240return {241...sock,242getOrderDetails,243getCatalog,244getCollections,245productCreate,246productDelete,247productUpdate248};249};250exports.makeBusinessSocket = makeBusinessSocket;251252253