zaileys 2.2.7 → 3.0.0
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.
- package/.agent/skills/codebase-mapper/SKILL.md +226 -0
- package/.agent/skills/context-compressor/SKILL.md +201 -0
- package/.agent/skills/context-fetch/SKILL.md +184 -0
- package/.agent/skills/context-health-monitor/SKILL.md +105 -0
- package/.agent/skills/debugger/SKILL.md +273 -0
- package/.agent/skills/empirical-validation/SKILL.md +97 -0
- package/.agent/skills/executor/SKILL.md +465 -0
- package/.agent/skills/plan-checker/SKILL.md +283 -0
- package/.agent/skills/planner/SKILL.md +485 -0
- package/.agent/skills/token-budget/SKILL.md +166 -0
- package/.agent/skills/verifier/SKILL.md +421 -0
- package/.agent/workflows/add-phase.md +96 -0
- package/.agent/workflows/add-todo.md +69 -0
- package/.agent/workflows/audit-milestone.md +107 -0
- package/.agent/workflows/check-todos.md +80 -0
- package/.agent/workflows/complete-milestone.md +135 -0
- package/.agent/workflows/debug.md +235 -0
- package/.agent/workflows/discuss-phase.md +103 -0
- package/.agent/workflows/execute.md +325 -0
- package/.agent/workflows/health.md +122 -0
- package/.agent/workflows/help.md +96 -0
- package/.agent/workflows/insert-phase.md +109 -0
- package/.agent/workflows/install.md +152 -0
- package/.agent/workflows/list-phase-assumptions.md +82 -0
- package/.agent/workflows/map.md +394 -0
- package/.agent/workflows/new-milestone.md +126 -0
- package/.agent/workflows/new-project.md +368 -0
- package/.agent/workflows/pause.md +176 -0
- package/.agent/workflows/plan-milestone-gaps.md +116 -0
- package/.agent/workflows/plan.md +380 -0
- package/.agent/workflows/progress.md +90 -0
- package/.agent/workflows/quick.md +128 -0
- package/.agent/workflows/remove-phase.md +139 -0
- package/.agent/workflows/research-phase.md +160 -0
- package/.agent/workflows/resume.md +131 -0
- package/.agent/workflows/update.md +203 -0
- package/.agent/workflows/verify.md +263 -0
- package/.agent/workflows/web-search.md +121 -0
- package/.agent/workflows/whats-new.md +80 -0
- package/.gemini/GEMINI.md +67 -0
- package/.gsd/DEBUG.md +26 -0
- package/.gsd/GSD-STYLE.md +272 -0
- package/.gsd/PROJECT_RULES.md +256 -0
- package/.gsd/ROADMAP.md +38 -0
- package/.gsd/SPEC.md +16 -0
- package/.gsd/STATE.md +10 -0
- package/.gsd/adapters/CLAUDE.md +77 -0
- package/.gsd/adapters/GEMINI.md +92 -0
- package/.gsd/adapters/GPT_OSS.md +130 -0
- package/.gsd/docs/model-selection-playbook.md +128 -0
- package/.gsd/docs/runbook.md +296 -0
- package/.gsd/docs/token-optimization-guide.md +207 -0
- package/.gsd/model_capabilities.yaml +108 -0
- package/.gsd/phases/1/1-PLAN.md +44 -0
- package/.gsd/phases/1/2-PLAN.md +54 -0
- package/.gsd/phases/1/3-PLAN.md +46 -0
- package/.gsd/phases/1/4-PLAN.md +39 -0
- package/.gsd/phases/2/2-1-SUMMARY.md +8 -0
- package/.gsd/phases/2/2-PLAN.md +47 -0
- package/.gsd/phases/3/3-1-SUMMARY.md +8 -0
- package/.gsd/phases/3/3-PLAN.md +43 -0
- package/.gsd/phases/4/4-1-PLAN.md +44 -0
- package/.gsd/phases/4/4-1-SUMMARY.md +8 -0
- package/.gsd/phases/4/4-2-PLAN.md +59 -0
- package/.gsd/phases/4/4-2-SUMMARY.md +8 -0
- package/.gsd/phases/4/4-3-PLAN.md +42 -0
- package/.gsd/phases/4/4-3-SUMMARY.md +8 -0
- package/.gsd/phases/4/VERIFICATION.md +8 -0
- package/.gsd/phases/5/1-SUMMARY.md +5 -0
- package/.gsd/phases/5/5-PLAN.md +47 -0
- package/.gsd/phases/5/RESEARCH.md +24 -0
- package/.gsd/phases/5/VERIFICATION.md +8 -0
- package/.gsd/phases/6/1-SUMMARY.md +6 -0
- package/.gsd/phases/6/6-PLAN.md +46 -0
- package/.gsd/phases/6/RESEARCH.md +33 -0
- package/.gsd/phases/6/VERIFICATION.md +7 -0
- package/.gsd/phases/7/1-SUMMARY.md +12 -0
- package/.gsd/phases/7/7-PLAN.md +78 -0
- package/.gsd/phases/7/VERIFICATION.md +7 -0
- package/.gsd/templates/DEBUG.md +123 -0
- package/.gsd/templates/PLAN.md +90 -0
- package/.gsd/templates/RESEARCH.md +75 -0
- package/.gsd/templates/SUMMARY.md +103 -0
- package/.gsd/templates/UAT.md +168 -0
- package/.gsd/templates/VERIFICATION.md +70 -0
- package/.gsd/templates/architecture.md +67 -0
- package/.gsd/templates/context.md +91 -0
- package/.gsd/templates/decisions.md +37 -0
- package/.gsd/templates/discovery.md +122 -0
- package/.gsd/templates/journal.md +46 -0
- package/.gsd/templates/milestone.md +91 -0
- package/.gsd/templates/phase-summary.md +52 -0
- package/.gsd/templates/project.md +124 -0
- package/.gsd/templates/requirements.md +92 -0
- package/.gsd/templates/roadmap.md +103 -0
- package/.gsd/templates/spec.md +51 -0
- package/.gsd/templates/sprint.md +57 -0
- package/.gsd/templates/stack.md +62 -0
- package/.gsd/templates/state.md +92 -0
- package/.gsd/templates/state_snapshot.md +132 -0
- package/.gsd/templates/todo.md +32 -0
- package/.gsd/templates/token_report.md +79 -0
- package/.gsd/templates/user-setup.md +116 -0
- package/.husky/commit-msg +1 -0
- package/.husky/pre-commit +1 -0
- package/LICENSE +21 -21
- package/README.MD +1280 -1230
- package/commitlint.config.js +3 -0
- package/dist/index.d.mts +1397 -908
- package/dist/index.d.ts +1397 -908
- package/dist/index.js +29 -28
- package/dist/index.mjs +29 -28
- package/package.json +11 -27
- package/tsconfig.json +19 -19
package/dist/index.js
CHANGED
|
@@ -1,36 +1,37 @@
|
|
|
1
|
-
'use strict';var ke=require('fluent-ffmpeg'),le=require('fs/promises'),os=require('os'),J=require('path'),rn=require('baileys'),jetdb=require('jetdb'),nanospinner=require('nanospinner'),pe=require('node-cache'),Yt=require('pino'),events=require('events'),asyncMutex=require('async-mutex'),fileType=require('file-type'),jimp=require('jimp'),fn=require('node-webpmux'),E=require('lodash'),Ct=require('unorm'),zodValidationError=require('zod-validation-error'),Pt=require('gradient-string'),bn=require('figlet'),xn=require('qrcode-terminal'),rateLimiterFlexible=require('rate-limiter-flexible'),m=require('zod'),Xn=require('stream'),X=require('fs'),url=require('url');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var ke__default=/*#__PURE__*/_interopDefault(ke);var le__default=/*#__PURE__*/_interopDefault(le);var J__namespace=/*#__PURE__*/_interopNamespace(J);var rn__default=/*#__PURE__*/_interopDefault(rn);var pe__default=/*#__PURE__*/_interopDefault(pe);var Yt__default=/*#__PURE__*/_interopDefault(Yt);var fn__default=/*#__PURE__*/_interopDefault(fn);var E__default=/*#__PURE__*/_interopDefault(E);var Ct__default=/*#__PURE__*/_interopDefault(Ct);var Pt__default=/*#__PURE__*/_interopDefault(Pt);var bn__default=/*#__PURE__*/_interopDefault(bn);var xn__default=/*#__PURE__*/_interopDefault(xn);var m__default=/*#__PURE__*/_interopDefault(m);var Xn__default=/*#__PURE__*/_interopDefault(Xn);var X__namespace=/*#__PURE__*/_interopNamespace(X);var Gt=Object.defineProperty;var Jt=(s=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(s,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):s)(function(s){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+s+'" is not supported')});var pt=(s,e)=>()=>(s&&(e=s(s=0)),e);var Ht=(s,e)=>{for(var t in e)Gt(s,t,{get:e[t],enumerable:true});};var c=pt(()=>{});var bt={};Ht(bt,{BufferConverter:()=>C,FFMPEG_CONSTANTS:()=>b,FFmpegProcessor:()=>j,FileManager:()=>h,MimeValidator:()=>R,initializeFFmpeg:()=>qe});var b,qe,h,C,R,j,G=pt(()=>{c();b={OPUS:{CODEC:"libopus",CHANNELS:1,FREQUENCY:48e3,BITRATE:"48k",FORMAT:"ogg"},THUMBNAIL:{SIZE:100,QUALITY:50,TIMESTAMP:"10%"},STICKER:{SIZE:512,MAX_DURATION:10,FPS:15,DEFAULT_QUALITY:80,COMPRESSION_LEVEL:6},MIME:{AUDIO:"audio/",VIDEO:"video/",IMAGE:"image/",GIF:"image/gif",MP4:"video/mp4"}},qe=async(s=false)=>{if(!s)try{let e=(await import('@ffmpeg-installer/ffmpeg')).default,t=(await import('@ffprobe-installer/ffprobe')).default;ke__default.default.setFfmpegPath(e.path),ke__default.default.setFfprobePath(t.path);}catch{}},h=class{static generateUniqueId(){return `${Date.now()}_${Math.random().toString(36).slice(2,11)}`}static createTempPath(e,t){return J__namespace.default.join(os.tmpdir(),`${e}_${this.generateUniqueId()}.${t}`)}static async cleanup(e){await Promise.allSettled(e.map(t=>le__default.default.unlink(t)));}static async safeReadFile(e){try{return await le__default.default.readFile(e)}catch{throw new Error(`Failed to read file: ${e}`)}}static async safeWriteFile(e,t){try{await le__default.default.writeFile(e,t);}catch{throw new Error(`Failed to write file: ${e}`)}}},C=class{static async toBuffer(e){if(Buffer.isBuffer(e))return e;if(e instanceof ArrayBuffer)return Buffer.from(e);if(typeof e=="string")return this.fromString(e);throw new Error("Invalid input type: expected string, Buffer, or ArrayBuffer")}static async fromString(e){if(e.startsWith("http://")||e.startsWith("https://"))return this.fromUrl(e);try{if(await le__default.default.stat(e).then(t=>t.isFile()).catch(()=>!1))return await le__default.default.readFile(e)}catch{}return Buffer.from(e,"base64")}static async fromUrl(e){try{let t=await fetch(e);if(!t.ok)throw new Error(`HTTP ${t.status}: ${t.statusText}`);let n=await t.arrayBuffer();return Buffer.from(n)}catch(t){throw new Error(`Failed to fetch URL: ${t.message}`)}}static async getExtension(e){let{fileTypeFromBuffer:t}=await import('file-type'),n=await t(e);if(!n)return "tmp";let i=n.ext.toLowerCase();return ["wav","ogg","mp4","gif","jpg","webp","tmp","mp3","png"].includes(i)?i:"tmp"}},R=class{static validate(e,t){if(!e?.mime?.startsWith(t))throw new Error(`Invalid file type: expected ${t}*, got ${e?.mime||"unknown"}`)}static isMedia(e){return e.startsWith(b.MIME.IMAGE)||e.startsWith(b.MIME.VIDEO)}static isAnimated(e){return e===b.MIME.GIF||e.startsWith(b.MIME.VIDEO)}},j=class{static async process(e){return new Promise((t,n)=>{let i=ke__default.default(e.input).output(e.output);for(let r=0;r<e.options.length;r++){let o=e.options[r];o.startsWith("-")&&r+1<e.options.length&&!e.options[r+1].startsWith("-")?(i.outputOptions(o,e.options[r+1]),r++):i.outputOptions(o);}i.on("end",async()=>{try{await e.onEnd(),t();}catch(r){n(r);}}).on("error",async r=>{try{await e.onError(r);}finally{n(r);}}).run();})}static async getDuration(e){return new Promise((t,n)=>{ke__default.default.ffprobe(e,(i,r)=>{if(i)return n(i);t(r.format.duration||0);});})}};});c();c();c();c();var lt=s=>jetdb.createJetDB(`${s}/auth/creds.json`,{BufferJSON:rn.BufferJSON,cacheSize:100,flushMode:"sync",compression:"none",enableIndexing:false}),he=s=>jetdb.createJetDB(`${s}/auth/keys.json`,{BufferJSON:rn.BufferJSON,size:1024*1024,cacheSize:2e3,flushMode:"sync",compression:"none",enableIndexing:false,hotThreshold:5}),ut=(s,e)=>jetdb.createJetDB(`.session/${s}/store/${e}.json`,{BufferJSON:rn.BufferJSON,cacheSize:2e4,debounceMs:1e3,flushMode:"debounce",compression:"deflate",serialization:"json",enableIndexing:true,hotThreshold:2,size:5*1024*1024});c();c();var mt=new pe__default.default({stdTTL:600,checkperiod:120,useClones:false}),D=new pe__default.default({stdTTL:300,useClones:false}),dt=new pe__default.default({stdTTL:300}),ft=new pe__default.default({stdTTL:600,checkperiod:120,useClones:false,deleteOnExpire:true,maxKeys:100}),gt=new pe__default.default;c();var re=class{classInjection(e,t){let n=t.length;return new Proxy(e,{get(i,r,o){if(r in i){let l=Reflect.get(i,r,o);return typeof l=="function"?l.bind(i):l}for(let l=0;l<n;l++){let p=t[l];if(r in p){let u=Reflect.get(p,r,p);return typeof u=="function"?u.bind(p):u}}},set(i,r,o,l){if(r in i)return Reflect.set(i,r,o,l);for(let p=0;p<n;p++){let u=t[p];if(r in u)return Reflect.set(u,r,o,l)}return Reflect.set(i,r,o,l)},has(i,r){if(r in e)return true;for(let o=0;o<n;o++)if(r in t[o])return true;return false},ownKeys(){let i=[];for(let r of Reflect.ownKeys(e))i.push(r);for(let r=0;r<n;r++)for(let o of Reflect.ownKeys(t[r]))i.includes(o)||i.push(o);return i},getOwnPropertyDescriptor(i,r){let o=Object.getOwnPropertyDescriptor(e,r);if(o)return o;for(let l=0;l<n;l++)if(o=Object.getOwnPropertyDescriptor(t[l],r),o)return o}})}};var Le=class extends pe__default.default{constructor(){return super({useClones:false}),new re().classInjection(this,[mt])}spinner=nanospinner.createSpinner("",{color:"green"});logger=Yt__default.default({level:"silent",enabled:false});events=new events.EventEmitter},a=new Le;var yt=async s=>{a.spinner.start(" Initializing auth state...");let e=lt(s),t=he(s),n=await e.get("creds"),i=n||rn.initAuthCreds();return n?a.spinner.success(" Auth credentials loaded successfully"):a.spinner.success(" Initialized new auth session"),{state:{creds:i,keys:{get:async(r,o)=>{let l={};return await Promise.all(o.map(async p=>{let u=`${r}:${p}`,w=await t.get(u);r==="app-state-sync-key"&&w&&(w=rn.proto.Message.AppStateSyncKeyData.fromObject(w)),l[p]=w;})),l},set:async r=>{let o=[],l=[];for(let p in r)for(let u in r[p]){let w=r[p][u],T=`${p}:${u}`;w?o.push({key:T,value:w}):l.push(T);}o.length&&await t.batchSet(o),l.length&&await t.batchDelete(l),await t.flush();}}},saveCreds:async()=>{await e.set("creds",i),await e.flush();}}};c();c();var wt=(s,e)=>({logger:s.health.logger,printQRInTerminal:false,enableRecentMessageCache:true,emitOwnEvents:true,keepAliveIntervalMs:3e4,browser:rn.Browsers.ubuntu("Chrome"),markOnlineOnConnect:s.options.autoOnline,syncFullHistory:s.options.syncFullHistory,msgRetryCounterCache:gt,mediaCache:dt,auth:{creds:e.creds,keys:rn.makeCacheableSignalKeyStore(e.keys,a.logger)},cachedGroupMetadata:async t=>D.get(t),shouldIgnoreJid:()=>false,shouldSyncHistoryMessage:()=>s.options.syncFullHistory,patchMessageBeforeSending:t=>t,getMessage:async t=>{if(!t?.remoteJid)return rn.proto.Message.fromObject({});let n=await s.db("messages").getByIndex("messages","key.id",t.id);return rn.proto.Message.fromObject(n[0])}});var kt=async s=>{let e=`.session/${s.options.session}`;console.info=()=>{},console.warn=()=>{};let{state:t,saveCreds:n}=await yt(e),i=wt(s,t),r=rn__default.default(i);r.ev.on("creds.update",n),a.set("socket",r);};c();c();c();var we=class{constructor(e){this.client=e;}interval=null;start(){let e=this.client.options.autoCleanUp;e?.enabled&&(this.interval=setInterval(()=>{this.run();},e.intervalMs),this.run());}stop(){this.interval&&(clearInterval(this.interval),this.interval=null);}async run(){let e=this.client.options.autoCleanUp;if(!e?.enabled)return;let t=Date.now()-e.maxAgeMs;for(let n of e.scopes)try{let i=this.client.db(n),r=await i.query(n).where("timestamp","<",t).get();if(r.length>0){let o=r.map(l=>l.key?.id||l.id);await i.batchDelete(o),a.spinner.info(` [CleanUpManager] Cleaned up ${r.length} items from ${n}`);}}catch{}}};c();var ze=class{store=ft;mutex=new asyncMutex.Mutex;async inject(e,t){let n=await this.mutex.acquire();try{this.store.set(e,t);}finally{n();}}async get(e){let t=await this.mutex.acquire();try{return this.store.get(e)}finally{t();}}getSync(e){return this.store.get(e)}getAll(){let e=this.store.keys();return this.store.mget(e)}async remove(e){let t=await this.mutex.acquire();try{return this.store.del(e)>0}finally{t();}}async clear(){let e=await this.mutex.acquire();try{this.store.flushAll();}finally{e();}}has(e){return this.store.has(e)}get size(){return this.store.getStats().keys}keys(){return this.store.keys()}},te=new ze;c();G();c();G();var ie=class{static async toOpus(e){return this.convert(e,"opus")}static async toMp3(e){return this.convert(e,"mp3")}static async convert(e,t="opus"){let n=await C.toBuffer(e),i=await fileType.fileTypeFromBuffer(n);R.validate(i,b.MIME.AUDIO);let r=await C.getExtension(n),o=h.createTempPath("audio_in",r),l=t==="opus"?"ogg":"mp3",p=h.createTempPath("audio_out",l);await h.safeWriteFile(o,n);let u;try{let w=t==="opus"?["-vn","-c:a","libopus","-b:a","48k","-ac","1","-avoid_negative_ts","make_zero","-map_metadata","-1","-f","opus"]:["-vn","-c:a","libmp3lame","-b:a","128k","-ac","2","-avoid_negative_ts","make_zero","-map_metadata","-1","-f","mp3"];return await j.process({input:o,output:p,options:w,onEnd:async()=>{u=await h.safeReadFile(p);},onError:async()=>{await h.cleanup([o,p]);}}),await h.cleanup([o,p]),u}catch(w){throw await h.cleanup([o,p]),new Error(`${t.toUpperCase()} conversion failed: ${w.message}`)}}};c();G();var U=class{static async toMp4(e){let t=await C.toBuffer(e),n=await fileType.fileTypeFromBuffer(t);R.validate(n,b.MIME.VIDEO);let i=await C.getExtension(t),r=h.createTempPath("video_in",i),o=h.createTempPath("video_out","mp4");await h.safeWriteFile(r,t);let l;try{let p=["-c:v","libx264","-preset","ultrafast","-crf","28","-c:a","aac","-b:a","128k","-movflags","+faststart","-pix_fmt","yuv420p","-f","mp4"];return await j.process({input:r,output:o,options:p,onEnd:async()=>{l=await h.safeReadFile(o);},onError:async()=>{await h.cleanup([r,o]);}}),await h.cleanup([r,o]),l}catch(p){throw await h.cleanup([r,o]),new Error(`Video re-encoding failed: ${p.message}`)}}static async thumbnail(e){let t=await C.toBuffer(e),n=await fileType.fileTypeFromBuffer(t);R.validate(n,b.MIME.VIDEO);let i=await C.getExtension(t),r=h.createTempPath("video",i),o=h.createTempPath("thumb","jpg");await h.safeWriteFile(r,t);let l;try{return await new Promise((p,u)=>{ke__default.default(r).screenshots({timestamps:[b.THUMBNAIL.TIMESTAMP],filename:J__namespace.default.basename(o),folder:J__namespace.default.dirname(o),size:`${b.THUMBNAIL.SIZE}x${b.THUMBNAIL.SIZE}`}).on("end",async()=>{try{l=(await h.safeReadFile(o)).toString("base64"),p();}catch(w){u(w);}}).on("error",u);}),await h.cleanup([r,o]),l}catch(p){throw await h.cleanup([r,o]),new Error(`Thumbnail generation failed: ${p.message}`)}}static async duration(e){return j.getDuration(e)}};c();G();var L;try{L=Jt("sharp");}catch{L=null;}var N=class{static async thumbnail(e){let t=await fileType.fileTypeFromBuffer(e),n=b.THUMBNAIL.SIZE;if(L){let o=L(e).resize(n,n,{fit:"cover"});return t?.mime===b.MIME.GIF&&o.resize(n,n),(await o.jpeg({quality:b.THUMBNAIL.QUALITY}).toBuffer()).toString("base64")}let i=await jimp.Jimp.read(e);return i.cover({w:n,h:n}),t?.mime===b.MIME.GIF&&i.resize({w:n,h:n}),(await i.getBuffer("image/jpeg",{quality:b.THUMBNAIL.QUALITY})).toString("base64")}static async resize(e,t,n){if(L)return await L(e).resize(t,n,{fit:"cover"}).png().toBuffer();let i=await jimp.Jimp.read(e);return i.cover({w:t,h:n}),await i.getBuffer("image/png")}static async toJpeg(e){let t=await C.toBuffer(e),n=await fileType.fileTypeFromBuffer(t);if(!n||!n.mime.startsWith(b.MIME.IMAGE))throw new Error("Invalid image type");return n.mime==="image/webp"?L?await L(t).jpeg().toBuffer():await(await jimp.Jimp.read(t)).getBuffer("image/jpeg"):t}static async resizeForSticker(e,t,n="default"){let i=b.STICKER.SIZE;if(L&&n==="default")return await L(e).resize(i,i,{fit:"contain",background:{r:0,g:0,b:0,alpha:0}}).webp({quality:t}).toBuffer();let r=await jimp.Jimp.read(e);if(r.contain({w:i,h:i}),n!=="default"){let T=new jimp.Jimp({width:i,height:i,color:0});for(let M=0;M<i;M++)for(let A=0;A<i;A++){let W=false,H=i/2,K=i/2;switch(n){case "circle":{let v=A-H,F=M-K;W=v*v+F*F<=H*H;break}case "rounded":{let v=i/10,F=A>=v&&A<i-v&&M>=0&&M<i,V=A>=0&&A<i&&M>=v&&M<i-v,S=false,$=[[v,v],[i-v,v],[v,i-v],[i-v,i-v]];for(let[se,ae]of $){let ee=A-se,Q=M-ae;if(ee*ee+Q*Q<=v*v){S=true;break}}W=F||V||S;break}case "oval":{let v=i/2,F=i/3,V=(A-H)/v,S=(M-K)/F;W=V*V+S*S<=1;break}}W&&T.setPixelColor(4294967295,A,M);}r.mask(T);}let o=h.createTempPath("sticker_img","png"),l=h.createTempPath("sticker_out","webp"),p=await r.getBuffer("image/png");await h.safeWriteFile(o,p);let{FFmpegProcessor:u}=await Promise.resolve().then(()=>(G(),bt)),w;try{return await u.process({input:o,output:l,options:["-vf",`scale=${i}:${i}`,"-quality",String(t),"-f","webp"],onEnd:async()=>{w=await h.safeReadFile(l);},onError:async()=>{await h.cleanup([o,l]);}}),await h.cleanup([o,l]),w}catch(T){throw await h.cleanup([o,l]),new Error(`Sticker resize failed: ${T.message}`)}}};c();c();var ne=s=>{let e;Array.isArray(s)?e=s.join("|"):typeof s=="string"?e=s:e=String(s);let t=2166136261,n=e.length;for(let i=0;i<n;i++)t^=e.charCodeAt(i),t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24);return "Z4D3FC"+(t>>>0).toString(16).padStart(8,"0").toUpperCase()},Tt=(s="")=>{if(!s)return [];let e=new Set;for(let t of s.matchAll(/@(\d+)/g))e.add(t[1]);return E__default.default.toArray(e)},Ve=(s="")=>{if(!s)return [];let e=new Set;for(let t of s.matchAll(/@(\d+)/g))t[1].length<=15&&e.add(t[1]);return E__default.default.flatMap([...e],t=>[`${t}@s.whatsapp.net`,`${t}@g.us`,`${t}@lid`])},vi=s=>E__default.default.isEmpty(s)?[]:E__default.default.map([...s],e=>`${e}@s.whatsapp.net`),St=s=>E__default.default.omit(s,["url","contextInfo","fileSha256","fileEncSha256","mediaKey","directPath","waveform","thumbnail","jpegThumbnail","thumbnailEncSha256","thumbnailSha256","thumbnailDirectPath","firstFrameSidecar","streamingSidecar","scansSidecar","callKey","message","key","midQualityFileSha256","historySyncNotification","appStateSyncKeyShare","appStateSyncKeyRequest","initialSecurityNotificationSettingSync","appStateFatalExceptionNotification","disappearingMode","peerDataOperationRequestMessage","peerDataOperationRequestResponseMessage","botFeedbackMessage"]),be=s=>{if(!s)return {leaf:void 0,chain:[]};let e=rn.extractMessageContent(s)||s,t=[];for(;e&&typeof e=="object";){let n=rn.getContentType(e);if(!n)break;t.push(n);let i=e[n];if(!i||typeof i!="object"){e=i;break}e=i;}return {leaf:e,chain:t}},z=s=>Number(s?.split("@")[0]);c();var x=s=>s,It=async()=>{try{return (await(await fetch("https://registry.npmjs.org/zaileys")).json())["dist-tags"].latest}catch(s){throw s}},At=async s=>{try{let e=`.session/${s}/auth/creds.json`;await le__default.default.unlink(e);}catch(e){throw a.spinner.error(`Failed to remove auth creds for session "${s}"!`),e}},Y=(s="")=>{if(!s?.length)return null;let e=s.replace(/\u202E(.*?)(\u202C|$)/gu,(t,n)=>[...n].reverse().join("")).replace(/\u202D(.*?)(\u202C|$)/gu,(t,n)=>[...n].reverse().join("")).replace(/[\u061C\u200E\u200F\u202A-\u202E\u2066-\u2069]/gu,"").replace(/[\u200B\u200C\u200D\uFEFF]/gu,"").replace(/[\u00AD\u034F\u115F\u1160\u17B4\u17B5\u180B-\u180E]/gu,"").replace(/[\u2060-\u2064\u206A-\u206F]/gu,"").replace(/[\u2800\uFFFC\uFFFD]/gu,"").replace(/[\uFE00-\uFE0F]/gu,"").split("").map(t=>Ct__default.default.nfkd(t)).join("").replace(/[\u0300-\u036F]/gu,"").replace(/[\u1AB0-\u1AFF]/gu,"").replace(/[\u1DC0-\u1DFF]/gu,"").replace(/[\u20D0-\u20FF]/gu,"").replace(/[\uFE20-\uFE2F]/gu,"").replace(/[\p{Cc}]/gu,"").replace(/[\p{Cf}]/gu,"").replace(/[\p{Co}]/gu,"").replace(/[\p{Cn}]/gu,"").replace(/[\p{Cs}]/gu,"").replace(/[\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]/gu," ").replace(/[\u2028\u2029]/gu," ").replace(/[\t\r\n\f\v]/g," ").split("").map(t=>Ct__default.default.nfkc(t)).join("").normalize("NFC").replace(/\s+/g," ").trim();return e.length?e:null};G();var Me=class{static async create(e,t){try{let n=await C.toBuffer(e),i=await fileType.fileTypeFromBuffer(n);if(!i)throw new Error("Unable to detect file type");let r=t?.quality||b.STICKER.DEFAULT_QUALITY,o=R.isAnimated(i.mime),l=t?.shape||"default",p=o?await this.processAnimated(n,i.mime,r):await N.resizeForSticker(n,r,l),u=this.createExifMetadata(t),w=new fn__default.default.Image;await w.load(p),w.exif=u;let T=await w.save(null);return Buffer.isBuffer(T)?T:Buffer.from(T)}catch(n){throw new Error(`Sticker creation failed: ${n.message||n}`)}}static createExifMetadata(e){let t={"sticker-pack-id":ne(Date.now().toString()),"sticker-pack-name":e?.packageName||"Zaileys Library","sticker-pack-publisher":e?.authorName||"https://github.com/zeative/zaileys",emojis:["\u{1F913}"],"android-app-store-link":"https://play.google.com/store/apps/details?id=com.marsvard.stickermakerforwhatsapp","ios-app-store-link":"https://itunes.apple.com/app/sticker-maker-studio/id1443326857"},n=Buffer.from([73,73,42,0,8,0,0,0,1,0,65,87,7,0,0,0,0,0,22,0,0,0]),i=Buffer.from(JSON.stringify(t),"utf8"),r=Buffer.concat([n,i]);return r.writeUIntLE(i.length,14,4),r}static async processAnimated(e,t,n){let i=this.getExtension(t),r=h.createTempPath("sticker_in",i),o=h.createTempPath("sticker_out","webp");await h.safeWriteFile(r,e);let l=b.STICKER.MAX_DURATION;try{let A=await U.duration(r);l=x(Math.min(A,b.STICKER.MAX_DURATION));}catch{console.warn("Using default duration:",b.STICKER.MAX_DURATION);}let p=b.STICKER.SIZE,u=b.STICKER.FPS,w=`scale=${p}:${p}:force_original_aspect_ratio=increase,crop=${p}:${p},fps=${u},format=rgba`,T=Math.max(1,Math.min(100,100-n)),M;try{return await j.process({input:r,output:o,options:["-vcodec libwebp",`-vf ${w}`,`-q:v ${T}`,"-loop 0","-preset default","-an","-vsync 0",`-t ${l}`,`-compression_level ${b.STICKER.COMPRESSION_LEVEL}`],onEnd:async()=>{M=await h.safeReadFile(o);},onError:async()=>{await h.cleanup([r,o]);}}),await h.cleanup([r,o]),M}catch(A){throw await h.cleanup([r,o]),new Error(`Animated sticker processing failed: ${A.message}`)}}static getExtension(e){return e===b.MIME.GIF?"gif":e.startsWith(b.MIME.VIDEO)?"mp4":"tmp"}};c();G();G();var xe=class{static async create(e){try{let t=await C.toBuffer(e),n=await fileType.fileTypeFromBuffer(t);if(!n)throw new Error("Unable to detect file type");let i;return n.mime.startsWith(b.MIME.VIDEO)?i=await U.thumbnail(t):R.isMedia(n.mime)?i=await N.thumbnail(t):i="",{document:t,mimetype:n.mime,fileName:ne(Date.now().toString()),jpegThumbnail:i}}catch(t){throw new Error(`Document creation failed: ${t.message||t}`)}}};c();var ve=class{constructor(e){this.client=e;this.keysDb=he(e.options.session),this.setupLogFilters();}keysDb;setupLogFilters(){let e=console.error,t=console.log,n=i=>{let r=i.join(" ");return ["Bad MAC","Session error:","Closing open session in favor of incoming prekey bundle","Error: Bad MAC"].some(l=>r.includes(l))};console.error=(...i)=>{n(i)||e.apply(console,i);},console.log=(...i)=>{n(i)||t.apply(console,i);};}async repair(e){if(!e)return;let t=[`session:${e}`,`sender-key:${e}`];try{await this.keysDb.batchDelete(t),await this.keysDb.flush(),a.spinner.warn(` [HealthManager] Repaired session for ${e} due to Bad MAC`);}catch{}}get logger(){return Yt__default.default({level:"debug"},{write:e=>{try{let t=JSON.parse(e);if(t.msg?.includes("Bad MAC")){let n=t.jid||t.remoteJid;n&&this.repair(n);}}catch{}}})}};c();var de=(s,e)=>{try{return s.parse(e)}catch(t){let n=zodValidationError.fromError(t);throw new Error(n.toString())}};c();c();var Ge=class{concurrency;timeout;onError;queue;running;completed;failed;isClosing;closeResolve;constructor(e){this.concurrency=e?.concurrency||20,this.timeout=e?.timeout||3e4,this.onError=e?.onError||this._defaultErrorHandler,this.queue=[],this.running=new Set,this.completed=0,this.failed=0,this.isClosing=false,this.closeResolve=null;}add(e,t){if(this.isClosing)throw new Error("Queue is closing, cannot add new tasks");let n={id:this._generateId(),fn:e,priority:t?.priority||0,timeout:t?.timeout||this.timeout,retries:t?.retries||0,maxRetries:t?.maxRetries||0,createdAt:Date.now()},i=this.queue.findIndex(r=>r.priority<n.priority);return i===-1?this.queue.push(n):this.queue.splice(i,0,n),this._process(),n.id}addBulk(e){return e.map(({fn:t,options:n})=>this.add(t,n))}async _process(){for(;this.running.size<this.concurrency&&this.queue.length>0;){let e=this.queue.shift();this.running.add(e),this._executeTask(e);}this.isClosing&&this.running.size===0&&this.queue.length===0&&this.closeResolve?.();}async _executeTask(e){try{await this._withTimeout(e.fn(),e.timeout),this.completed++;}catch(t){e.retries<e.maxRetries?(e.retries++,this.queue.unshift(e)):(this.failed++,this.onError(t,e));}finally{this.running.delete(e),this._process();}}_withTimeout(e,t){return Promise.race([e,new Promise((n,i)=>setTimeout(()=>i(new Error("Task timeout")),t))])}async close(e=0){if(this.isClosing=true,this.running.size===0&&this.queue.length===0)return;let t=new Promise(n=>{this.closeResolve=n;});if(e>0){let n=new Promise(i=>setTimeout(i,e));await Promise.race([t,n]);}else await t;}forceClose(){this.queue=[],this.running.clear(),this.isClosing=true,this.closeResolve?.();}getStats(){return {queued:this.queue.length,running:this.running.size,completed:this.completed,failed:this.failed,total:this.completed+this.failed}}isIdle(){return this.queue.length===0&&this.running.size===0}async waitUntilIdle(e=100){for(;!this.isIdle();)await new Promise(t=>setTimeout(t,e));}_defaultErrorHandler(e,t){}_generateId(){return `${Date.now()}-${Math.random().toString(36).substr(2,9)}`}},P=new Ge;process.on("SIGTERM",()=>P.close());c();c();c();var y=(s,e="lime")=>Array.isArray(e)?Pt__default.default(e)(s):Pt__default.default([e,e])(s),Je=s=>{try{return JSON.parse(s)}catch{return E__default.default.attempt(()=>JSON.parse(JSON.stringify(s)||"{}"))}},fe=s=>{try{return JSON.stringify(s)}catch{let e=E__default.default.attempt(()=>JSON.stringify(Je(s)||"{}"));return E__default.default.isError(e)?"{}":e}},yo=(s="")=>E__default.default.shuffle(s).join(""),ge=(s="",e="")=>s?E__default.default.includes(s.toLowerCase(),e.toLowerCase()):null,Et=(s="")=>s?E__default.default.castArray(s.match(rn.URL_REGEX)||[]):[],ho=s=>s[Math.floor(Math.random()*s.length)],He=(s,e)=>{let t=i=>!!(i==null||typeof i=="string"&&i.trim()===""||Array.isArray(i)&&i.length===0||typeof i=="object"&&Object.keys(i).length===0),n=(i,r)=>{if(!i||typeof i!="object")return;let o=i,l=r.split(".");for(let p of l){let u=p.match(/^(.+?)\[(\d+)\]$/);if(u){let[,w,T]=u;o=o?.[w]?.[parseInt(T,10)];}else o=o?.[p];if(t(o))return}return o};if(!(!Array.isArray(s)||s.length===0)&&!(!Array.isArray(e)||e.length===0)){for(let i of s)if(!(!i||typeof i!="object"))for(let r of e){let o=n(i,r);if(!t(o))return o}}},wo=(s,e)=>{let t=E__default.default.castArray(e),n=(o,l)=>E__default.default.every(l,(p,u)=>o?.[u]===p),i=(o,l)=>E__default.default.some(l,(p,u)=>o?.[u]===p),r=o=>E__default.default.isArray(o)?E__default.default.find(o,r)??o:E__default.default.isObject(o)?E__default.default.find(t,u=>n(o,u))||E__default.default.find(t,u=>i(o,u))?o:E__default.default.find(E__default.default.values(o),r)??o:null;return r(s)},ko=(s,e,t)=>new Proxy(s,{apply(n,i,r){e?.(r);let o=Reflect.apply(n,i,r);return t?t(o,r):o}});c();var Ke=class{input;constructor(e){this.input=e;}async toOpus(){return ie.toOpus(this.input)}async toMp3(){return ie.toMp3(this.input)}async convert(e="opus"){return ie.convert(this.input,e)}},Qe=class{input;constructor(e){this.input=e;}async toMp4(){return U.toMp4(this.input)}async thumbnail(){return U.thumbnail(this.input)}},Ye=class{input;constructor(e){this.input=e;}async toJpeg(){return N.toJpeg(this.input)}async thumbnail(){let e=await C.toBuffer(this.input);return N.thumbnail(e)}async resize(e,t){let n=await C.toBuffer(this.input);return N.resize(n,e,t)}},Ze=class{input;metadata;constructor(e,t){this.input=e,this.metadata=t;}async create(){return Me.create(this.input,this.metadata)}},Xe=class{input;constructor(e){this.input=e;}async create(){return xe.create(this.input)}},et=class{input;constructor(e){this.input=e;}async get(){let e=await C.toBuffer(this.input),t=await fileType.fileTypeFromBuffer(e);if(!t||!R.isMedia(t.mime))throw new Error("Invalid media type: expected image or video");return t.mime.startsWith(b.MIME.VIDEO)?U.thumbnail(this.input):N.thumbnail(e)}},tt=class{audio(e){return new Ke(e)}video(e){return new Qe(e)}image(e){return new Ye(e)}sticker(e,t){return new Ze(e,t)}document(e){return new Xe(e)}thumbnail(e){return new et(e)}async toBuffer(e){return C.toBuffer(e)}},O=new tt;var Te=class{constructor(e){this.client=e;this.initialize();}async initialize(){let e=a.get("socket");e.ev.on("call",async t=>{for(let n of t){let i=await this.parse(n);i&&(P.add(async()=>this.client.middleware.run({calls:i})),P.add(async()=>this.client.plugins.execute(this.client,{messages:i})),a.events.emit("calls",i),this.client.options?.autoRejectCall&&P.add(async()=>e.rejectCall(i.callId,i.callerId)));}});}async parse(e){let t=a.get("socket"),n={};return n.callId=e.id,n.callerId=rn.jidNormalizedUser(e.from),n.roomId=rn.jidNormalizedUser(e.chatId),n.roomName=Y(t?.user?.name||t?.user?.verifiedName),n.date=e.date,n.offline=e.offline,n.status=e.status,n.isVideo=!!e.isVideo,n.isGroup=!!e.isGroup,this.client.logs.call(n),n}};c();c();var Bt=s=>{xn__default.default.generate(s,{small:true},e=>{console.log(e);});},Ft=async()=>{console.clear(),a.spinner.start(" Checking for updates...");let s="2.2.7",e="zaadevofc",t=await It(),n=s===t;a.spinner.stop();let i="Zaileys",r=`
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
`);return}if(u===500){a.spinner.error(" Server error occurred, attempting reconnect..."),await n();return}T&&await n();}if(o==="open")if(e.user?.id){let u=rn.jidNormalizedUser(e.user.id).split("@")[0],w=e.user.name||e.user.verifiedName;a.spinner.success(` Connected as ${Pt.cristal(w||u)}`);}else a.spinner.success(" Connected!");a.events.emit("connection",t);}),e.ev.on("messaging-history.set",({progress:r})=>{t.status="syncing",t.syncProgress=r,a.spinner.start(" Syncing messages history..."),r&&a.spinner.update(` Syncing messages history ${r+"%"}`),r==100&&(a.spinner.success(" Syncing messages history completed!"),t.syncCompleted=true),a.events.emit("connection",t);});}};c();c();var $t={text:"text",conversation:"text",imageMessage:"image",contactMessage:"contact",locationMessage:"location",documentMessage:"document",audioMessage:"audio",videoMessage:"video",protocolMessage:"protocol",contactsArrayMessage:"contacts",highlyStructuredMessage:"highlyStructured",sendPaymentMessage:"sendPayment",liveLocationMessage:"location",requestPaymentMessage:"requestPayment",groupStatusMentionMessage:"groupStatusMention",statusMentionMessage:"statusMention",albumMessage:"album",declinePaymentRequestMessage:"declinePaymentRequest",cancelPaymentRequestMessage:"cancelPaymentRequest",templateMessage:"template",stickerMessage:"sticker",groupInviteMessage:"groupInvite",templateButtonReplyMessage:"buttons",productMessage:"product",deviceSentMessage:"deviceSent",listMessage:"lists",viewOnceMessage:"viewOnce",orderMessage:"order",listResponseMessage:"lists",ephemeralMessage:"ephemeral",invoiceMessage:"invoice",buttonsMessage:"buttons",buttonsResponseMessage:"buttons",paymentInviteMessage:"paymentInvite",interactiveMessage:"interactive",reactionMessage:"reaction",stickerSyncRmrMessage:"sticker",questionMessage:"question",nativeFlowResponseMessage:"lists",interactiveResponseMessage:"interactiveResponse",pollCreationMessage:"pollCreation",pollCreationMessageKey:"pollUpdate",pollUpdateMessage:"pollUpdate",keepInChatMessage:"keepInChat",documentWithCaptionMessage:"document",requestPhoneNumberMessage:"requestPhoneNumber",viewOnceMessageV2:"viewOnce",encReactionMessage:"reaction",editedMessage:"text",viewOnceMessageV2Extension:"viewOnce",pollCreationMessageV2:"pollCreation",scheduledCallCreationMessage:"scheduledCallCreation",groupMentionedMessage:"groupMentioned",pinInChatMessage:"pinInChat",pollCreationMessageV3:"pollCreation",scheduledCallEditMessage:"scheduledCallEdit",ptvMessage:"ptv",botInvokeMessage:"botInvoke",callLogMesssage:"callLog",encCommentMessage:"encComment",bcallMessage:"bcall",lottieStickerMessage:"lottieSticker",eventMessage:"event",commentMessage:"comment",newsletterAdminInviteMessage:"text",extendedTextMessageWithParentKey:"text",extendedTextMessage:"text",placeholderMessage:"placeholder",encEventUpdateMessage:"encEventUpdate"},rt={whatsapp:"0@s.whatsapp.net",meta:"13135550002@s.whatsapp.net",chatgpt:"18002428478@s.whatsapp.net",copilot:"18772241042@s.whatsapp.net",instagram:"447723442971@s.whatsapp.net",tiktok:"6285574670498@s.whatsapp.net"};c();var Ie=class{constructor(e){this.client=e;this.limiter=new rateLimiterFlexible.RateLimiterMemory({points:this.client.options.limiter?.maxMessages,duration:this.client.options.limiter?.durationMs/1e3});}limiter;async isSpam(e){try{return await this.limiter.consume(e),!1}catch{return true}}};var Pe=class{constructor(e){this.client=e;this.limiter=new Ie(e),this.initialize();}limiter;maxReplies=3;async initialize(){let e=a.get("socket");if(!e?.ev){console.warn("\u26A0\uFE0F [Messages] Socket or socket.ev is not available during initialization");return}e.ev.on("messages.upsert",async({messages:t,type:n})=>{try{if(n!=="notify"&&n!=="append")return;for(let i of t)try{let r=await this.parse(i);r&&(P.add(async()=>this.client.middleware.run({messages:r})),P.add(async()=>this.client.plugins.execute(this.client,{messages:r})),a.set("message",r),a.events.emit("messages",r),this.client.options.autoRead&&P.add(async()=>e.readMessages([r.message().key])));}catch{}}catch{}});}async parse(e,t){if(e?.category==="peer"||!e?.message||!e?.key?.id||e?.messageStubType||e?.messageStubParameters?.length||e.message?.protocolMessage?.peerDataOperationRequestResponseMessage)return;let n=e,i=a.get("socket"),r={},o=be(e.message),l=o.chain.at(-1),p=o.leaf;if(p?.message&&(o=be(p.message),l=o.chain.at(-1),p=o.leaf),r.uniqueId=null,r.channelId=null,r.chatId=e?.message?.protocolMessage?.key?.id||e?.key?.id||null,r.chatType=$t[l],!r.chatType)return;r.receiverLid=rn.jidNormalizedUser(i?.user?.lid||""),r.receiverId=rn.jidNormalizedUser(i?.user?.id||""),r.receiverName=Y(i?.user?.name||i?.user?.verifiedName),r.roomId=rn.jidNormalizedUser(e?.key?.remoteJid);let u=p?.type===0,w=p?.type===1,T=p?.type===2,M=r.roomId?.includes("@newsletter"),A=!!e?.message?.questionMessage,W=e?.key?.fromMe||false;if(W&&this.client.options.ignoreMe&&t!=="replied")return;let H=p?.key?.id;if(u||w||T){let S=await this.client.db("messages").query(r.roomId).where("key.id","=",H).first();if(!S)return;e=S,o=be(e.message),l=o.chain.at(-1),p=o.leaf;}if(r.roomName=await this.client.getRoomName(r.roomId),r.senderLid=rn.jidNormalizedUser(e?.key?.participant||e?.key?.remoteJid)||null,r.senderId=rn.jidNormalizedUser(e?.key?.participantAlt||e?.key?.remoteJidAlt)||null,r.senderName=Y(e?.pushName||e?.verifiedBizName),r.senderDevice=rn.getDevice(r.chatId||""),r.channelId=ne([r.roomId,r.senderId]),r.uniqueId=ne([r.channelId,r.chatId]),r.timestamp=Number(e?.messageTimestamp)*1e3,M){let S=await i.newsletterMetadata("jid",r.roomId);r.roomName=x(S.thread_metadata.name)?.text,r.senderId=null,r.senderLid=null;}W&&(r.senderLid=rn.jidNormalizedUser(i.user.lid),r.senderId=r.receiverId,r.senderName=r.receiverName),r.text=p?.text||p?.caption||p?.name||p?.displayName||p?.conversation||p?.contentText||p?.selectedDisplayText||p||null,p?.name=="menu_options"&&(r.text=Je(p?.paramsJson)?.id),r.text=Y(r.text),r.mentions=Tt(r.text),r.links=Et(r.text||""),r.isBot=r.chatId.startsWith("BAE5")||r.chatId.startsWith("3EB0")||r.chatId.startsWith("Z4D3FC"),r.isFromMe=W;let K=E__default.default.castArray(this.client.options?.prefix);if(r.isPrefix=!!K.find(S=>r.text?.startsWith(S)),r.isTagMe=r.mentions?.includes(r.receiverId.split("@")[0])||r.mentions?.includes(r.receiverLid.split("@")[0]),r.isStatusMention=!!e?.message?.statusMentionMessage,r.isGroupStatusMention=!!e?.message?.groupStatusMentionMessage,r.isHideTags=false,E__default.default.isEmpty(r.text)&&p?.contextInfo?.mentionedJid?.length&&(r.isHideTags=true),r.isSpam=await this.limiter.isSpam(r.channelId),r.isPrefix&&(r.text=r.text.replace(new RegExp(`^${E__default.default.escapeRegExp(K.find(S=>r.text?.startsWith(S))||"")}`),"")),r.isGroup=r.roomId?.includes("@g.us"),r.isNewsletter=M,r.isQuestion=A,r.isStory=r.roomId?.includes("@broadcast"),!r.isGroup&&!r.roomName&&(r.roomName=r.senderName),!r.isGroup){let S=r.senderId,$=r.senderLid;r.senderId=$,r.senderLid=S;}if(r.isViewOnce=false,r.isEdited=!!ge(fe(o),"editedMessage"),r.isDeleted=u,r.isPinned=w,r.isUnPinned=T,r.isBroadcast=!!e?.broadcast,r.isEphemeral=!!ge(fe(p?.contextInfo),"ephemeralSettingTimestamp"),r.isForwarded=!!ge(fe(p?.contextInfo),"forwardingScore"),r.citation=null,this.client.options.citation){r.citation=r.citation||{};let S=this.client.options.citation;for(let $ of Object.keys(S)){let se=S[$];r.citation[$]=async()=>{let ae=await se(),ee=[z(r.roomId),z(r.senderLid),z(r.senderId)];return !!E__default.default.intersection(ee,ae).length};}}r.chatType!=="text"&&(r.media={...St(p),buffer:()=>rn.downloadMediaMessage(e,"buffer",{}),stream:()=>rn.downloadMediaMessage(e,"stream",{})}),r.isStatusMention&&(r.chatType="statusMention"),r.isGroupStatusMention&&(r.chatType="groupStatusMention"),r.message=()=>n,r.replied=null;let v=p?.contextInfo?.quotedMessage,F=ge(fe(v),"viewOnce"),V=p?.contextInfo?.stanzaId;if(v&&this.maxReplies){this.maxReplies--;let S=await this.client.db("messages").getByIndex("messages","key.id",V),$;F?$={...S[0],message:v}:$=S[0],r.replied=await this.parse($,"replied"),r.replied&&(r.replied.isViewOnce=true),this.maxReplies=3;}return t!="replied"&&this.client.logs.message(r),r.injection=te.getAll(),r}};var Ee=class{constructor(e){this.client=e;this.connection=new Ce(e),this.messages=new Pe(e),this.calls=new Te(e),this.initialize();}connection;messages;calls;async initialize(){let e=a.get("socket");e.ev.on("groups.update",async([t])=>{P.add(async()=>{let n=await e.groupMetadata(t.id);D.set(t.id,n);});}),e.ev.on("group-participants.update",async t=>{P.add(async()=>{let n=await e.groupMetadata(t.id);D.set(t.id,n);});}),e?.ev.on("messaging-history.set",async t=>{let{chats:n,contacts:i,messages:r}=t;P.add(async()=>{await this.client.db("chats").batchUpsert("chats",n,"id");}),P.add(async()=>{await this.client.db("contacts").batchUpsert("contacts",i,"id");}),P.add(async()=>{await this.client.db("messages").batchUpsert("messages",r,"key.id");});}),e?.ev.on("messages.upsert",async({messages:t})=>{P.add(async()=>{await this.client.db("messages").batchUpsert("messages",t,"key.id");});}),e?.ev.on("chats.upsert",async t=>{P.add(async()=>{await this.client.db("chats").batchUpsert("chats",t,"id");});}),e?.ev.on("contacts.upsert",async t=>{P.add(async()=>{await this.client.db("contacts").batchUpsert("contacts",t,"id");});}),await this.client.db("messages").createIndex("messages","key.remoteJid"),await this.client.db("messages").createIndex("messages","key.id"),await this.client.db("chats").createIndex("chats","id"),await this.client.db("contacts").createIndex("contacts","id");}};c();c();c();var In=m__default.default.object({type:m__default.default.literal("quick_reply"),text:m__default.default.string()}),An=m__default.default.object({type:m__default.default.literal("cta_url"),url:m__default.default.url(),text:m__default.default.string()}),Pn=m__default.default.object({type:m__default.default.literal("cta_copy"),copy:m__default.default.string(),text:m__default.default.string()}),En=m__default.default.object({type:m__default.default.literal("cta_call"),text:m__default.default.string(),phoneNumber:m__default.default.string()}),Rn=m__default.default.object({type:m__default.default.literal("single_select"),text:m__default.default.string(),section:m__default.default.object({title:m__default.default.string(),highlight_label:m__default.default.string().optional(),rows:m__default.default.object({id:m__default.default.string(),title:m__default.default.string(),header:m__default.default.string().optional(),description:m__default.default.string().optional()}).array()}).array()}),Bn=m__default.default.object({type:m__default.default.literal("interactive"),footer:m__default.default.string().optional(),data:m__default.default.union([In,An,Pn,En,Rn]).array()}),Fn=m__default.default.object({type:m__default.default.literal("simple"),footer:m__default.default.string().optional(),data:m__default.default.object({id:m__default.default.string(),text:m__default.default.string()}).array()}),Dt=m__default.default.union([Fn,Bn]);c();var $n=m.z.object({maxMessages:m.z.number().default(20),durationMs:m.z.number().default(1e4)}).optional(),On=m.z.record(m.z.string(),m.z.function({output:m.z.promise(m.z.array(m.z.number()))})).optional(),Dn=m.z.object({provider:m.z.enum(["whatsapp","meta","chatgpt","copilot","instagram","tiktok"]).or(m.z.number())}).optional(),it=m.z.enum(["default","rounded","circle","oval"]).default("default"),Nn=m.z.object({packageName:m.z.string().optional(),authorName:m.z.string().optional(),quality:m.z.number().optional(),shape:it.optional()}).optional(),Wn=m.z.object({enabled:m.z.boolean().default(false).optional(),intervalMs:m.z.number().default(3600*1e3).optional(),maxAgeMs:m.z.number().default(1440*60*1e3).optional(),scopes:m.z.array(m.z.string()).default(["messages"]).optional()}).optional(),Nt=m.z.object({session:m.z.string().default("zaileys").optional(),prefix:m.z.union([m.z.string(),m.z.array(m.z.string())]).optional(),ignoreMe:m.z.boolean().default(true).optional(),showLogs:m.z.boolean().default(true).optional(),fancyLogs:m.z.boolean().default(false).optional(),syncFullHistory:m.z.boolean().default(true).optional(),disableFFmpeg:m.z.boolean().default(false).optional(),autoMarkAI:m.z.boolean().default(true).optional(),autoMentions:m.z.boolean().default(true).optional(),autoOnline:m.z.boolean().default(true).optional(),autoRead:m.z.boolean().default(true).optional(),autoPresence:m.z.boolean().default(true).optional(),autoRejectCall:m.z.boolean().default(true).optional(),pluginsDir:m.z.string().default("plugins").optional(),pluginsHmr:m.z.boolean().default(true).optional(),autoCleanUp:Wn,limiter:$n,citation:On,fakeReply:Dn,sticker:Nn}),_n=m.z.object({authType:m.z.literal("pairing"),phoneNumber:m.z.number()}),jn=m.z.object({authType:m.z.literal("qr")}),Wt=m.z.union([_n.extend(Nt.shape),jn.extend(Nt.shape)]),Bs=m.z.enum(["connection","messages","calls"]);var ye=m__default.default.url().or(m__default.default.base64()).or(m__default.default.instanceof(Buffer)),_t=m__default.default.object({text:m__default.default.string()}).passthrough(),Un=m__default.default.object({image:ye,caption:m__default.default.string().optional()}).passthrough(),Ln=m__default.default.object({audio:ye,caption:m__default.default.string().optional(),ptt:m__default.default.boolean().optional()}).passthrough(),zn=m__default.default.object({video:ye,caption:m__default.default.string().optional(),ptv:m__default.default.boolean().optional()}).passthrough(),qn=m__default.default.object({sticker:ye,shape:it.optional(),caption:m__default.default.string().optional()}).passthrough(),Vn=m__default.default.object({document:ye,caption:m__default.default.string().optional(),fileName:m__default.default.string().optional()}).passthrough(),Gn=m__default.default.object({location:m__default.default.object({latitude:m__default.default.number(),longitude:m__default.default.number(),url:m__default.default.url().optional(),title:m__default.default.string().optional(),footer:m__default.default.string().optional()}).optional()}).passthrough(),Jn=m__default.default.object({contacts:m__default.default.object({title:m__default.default.string().optional(),contacts:m__default.default.object({fullname:m__default.default.string(),phoneNumber:m__default.default.number(),organization:m__default.default.string().optional()}).array()})}).passthrough(),Hn=m__default.default.object({poll:m__default.default.object({name:m__default.default.string(),answers:m__default.default.string().array(),isMultiple:m__default.default.boolean().default(false).optional()})}),jt=m__default.default.object({replied:m__default.default.custom().optional(),isForwardedMany:m__default.default.boolean().optional(),isViewOnce:m__default.default.boolean().optional(),banner:m__default.default.custom().optional(),buttons:Dt.optional()});m__default.default.enum(["forward","button","edit","delete"]);var Kn=m__default.default.union([_t,Un,Ln,zn,qn,Vn,Gn,Jn,Hn]),Ut=m__default.default.string().or(m__default.default.intersection(Kn,jt.omit({buttons:true}))),Lt=m__default.default.intersection(_t,jt.omit({banner:true}));c();var Re=class{toNativeSimple(e){return e.map(({id:t,text:n})=>({name:"quick_reply",buttonParamsJson:JSON.stringify({display_text:n,id:t})}))}toNativeInteractive(e){let t={quick_reply:n=>({display_text:n.text,id:n.id}),cta_url:n=>({display_text:n.text,url:n.url,merchant_url:n.url}),cta_copy:n=>({display_text:n.text,id:n.id,copy_code:n.copy}),cta_call:n=>({display_text:n.text,phone_number:n.phoneNumber}),single_select:n=>({title:n.text,sections:n.section})};return e.map(n=>({name:n.type,buttonParamsJson:JSON.stringify(t[n.type](n))}))}build(e){let t=x(e).buttons,n=t?.data||[],r=t?.type=="simple"?this.toNativeSimple(n):this.toNativeInteractive(n);return {body:{text:x(e).text},footer:t.footer?{text:t.footer}:void 0,nativeFlowMessage:{buttons:r}}}async send(e,t,n){let i=a.get("socket"),r=i?.authState?.creds?.me?.id||i?.user?.id,o=this.build(t),l=rn.generateWAMessageFromContent(e,{interactiveMessage:o},{userJid:r,messageId:rn.generateMessageIDV2(r),...n});return await i.relayMessage(e,l.message,{messageId:l.key.id,...n,additionalNodes:[{tag:"biz",attrs:{},content:[{tag:"interactive",attrs:{type:"native_flow",v:"1"},content:[{tag:"native_flow",attrs:{v:"9",name:"mixed"}}]}]}]}),i.config?.emitOwnEvents&&!rn.isJidGroup(e)&&process.nextTick(()=>i.upsertMessage?.(l,"append")),l}};var Be=class{constructor(e){this.client=e;}async signal(e,t,n,i){n!="delete"&&(n=="button"?t=de(Lt,t):t=de(Ut,t));let r=a.get("socket"),o={},l={},p=E__default.default.isString(t),u=this.client.options?.fakeReply?.provider,w=this.client.options?.autoMentions,T=this.client.options?.autoPresence,M=E__default.default.has(t,"replied"),A=E__default.default.has(t,"banner"),W=E__default.default.has(t,"isViewOnce"),H=n=="button",K=E__default.default.has(t,"image"),v=E__default.default.has(t,"video"),F=E__default.default.has(t,"audio"),V=E__default.default.has(t,"sticker"),S=E__default.default.has(t,"document"),$=E__default.default.has(t,"location"),se=E__default.default.has(t,"contacts"),ae=E__default.default.has(t,"poll"),ee=K||v||F||V||S,Q=p?t:He([t],["text","caption"]);if(T&&(F?await r.sendPresenceUpdate("recording",e):await r.sendPresenceUpdate("composing",e)),w&&(o={...o,mentions:Ve(Q),contextInfo:{mentionedJid:Ve(Q)}}),M&&(l.quoted=x(t).replied,u&&(l.quoted.key.remoteJid=rt[u],l.quoted.key.participant=rt[u])),A&&(o={...o,contextInfo:{externalAdReply:x(t).banner}},o.contextInfo.externalAdReply.mediaType=1),W&&(o={...o,viewOnce:x(t)?.isViewOnce}),Q&&(o={...o,text:Q,caption:Q},ee&&delete x(o).text),ee){let I=He([t],["image","video","audio","sticker","document"]);if(K&&(o={...o,image:await O.image(I).toJpeg(),jpegThumbnail:await O.thumbnail(I).get()}),v){let _=x(t)?.ptv;o={...o,video:await O.video(I).toMp4(),ptv:_,jpegThumbnail:await O.thumbnail(I).get()};}if(F){let _=x(t)?.ptt;o={...o,audio:await O.audio(I).toOpus(),ptt:_,mimetype:_?"audio/ogg; codecs=opus":"audio/mpeg"};}if(V){let _=x(t)?.shape;o={...o,sticker:await O.sticker(I,{...this.client.options?.sticker,shape:_}).create()};}if(S){let _=await O.document(I).create();o={...o,fileName:x(t).fileName,..._};}}if($){let I=x(t).location;o={...o,location:{degreesLatitude:I.latitude,degreesLongitude:I.longitude,url:I.url,address:I.footer,name:I.title}};}if(se){let I=x(t)?.contacts,_=I?.contacts.map(ce=>{let Vt=["BEGIN:VCARD","VERSION:3.0",`FN:${ce.fullname}`,`ORG:${ce.organization||""}`,`TEL;type=CELL;type=VOICE;waid=${ce.phoneNumber}:${ce.phoneNumber}`,"END:VCARD"].join(`
|
|
5
|
-
`);return {displayName:ce.fullname,vcard:Vt}});o={...o,contacts:{displayName:I?.title,contacts:_}};}if(ae){let I=x(t)?.poll;o={...o,poll:{name:I.name,values:I.answers,selectableCount:I.isMultiple?1:0,toAnnouncementGroup:true}};}return n=="forward"&&(o={...o,contextInfo:{...x(o).contextInfo,isForwarded:true,forwardingScore:x(t).isForwardedMany?9999:1}}),n=="edit"&&(o={...o,edit:i?.key},await r.sendPresenceUpdate("paused",e)),n=="delete"&&(o={...o,delete:i?.key},await r.sendPresenceUpdate("paused",e)),H?await new Re().send(e,t,l):await r.sendMessage(e,x(o),l)}async send(e,t){return await this.signal(e,t)}async forward(e,t){return await this.signal(e,t,"forward")}async button(e,t){return await this.signal(e,t,"button")}async edit(e,t){return await this.signal(e.key.remoteJid,t,"edit",e)}async delete(e){return E__default.default.isArray(e)?Promise.all(e.map(t=>this.signal(t.key.remoteJid,{},"delete",t))):await this.signal(e.key.remoteJid,{},"delete",e)}async presence(e,t){let n=a.get("socket"),i={typing:"composing",recording:"recording",online:"available",offline:"unavailable",paused:"paused"};return await n.sendPresenceUpdate(i[t],e)}async reaction(e,t){return await a.get("socket").sendMessage(e.key.remoteJid,{react:{text:t,key:e?.key}})}async memberLabel(e,t){return await a.get("socket").relayMessage(e,{protocolMessage:{type:30,memberLabel:{label:t,labelTimestamp:Date.now()}}},{})}};c();var ot=class{constructor(e){this.client=e;}async create(e,t){return await a.get("socket").communityCreate(e,t)}async createGroup(e,t,n){return await a.get("socket").communityCreateGroup(e,t,n)}async leave(e){return await a.get("socket").communityLeave(e)}async metadata(e){return await a.get("socket").communityMetadata(e)}async update(e,t,n){let i=a.get("socket");switch(t){case "subject":return await i.communityUpdateSubject(e,n);case "description":return await i.communityUpdateDescription(e,n)}}async group(e,t,n){let i=a.get("socket");switch(t){case "link":if(!n)throw "Group JID is required for linking";return await i.communityLinkGroup(e,n);case "unlink":if(!n)throw "Group JID is required for unlinking";return await i.communityUnlinkGroup(e,n);case "linked":return await i.communityFetchLinkedGroups(e)}}async participants(e,t,n,i){let r=a.get("socket");switch(t){case "list":return await r.communityRequestParticipantsList(e);case "request-update":return await r.communityRequestParticipantsUpdate(e,i,x(n));case "update":if(!n||!i)throw "Action and participants are required for update";return await r.communityParticipantsUpdate(e,i,x(n));case "all":return await r.communityFetchAllParticipating()}}async invite(e,t,...n){let i=a.get("socket");switch(t){case "code":return await i.communityInviteCode(e);case "revoke":return await i.communityRevokeInvite(e);case "accept":return await i.communityAcceptInvite(e);case "info":return await i.communityGetInviteInfo(e);case "revokeV4":return await i.communityRevokeInviteV4(e,n[0]);case "acceptV4":return await i.communityAcceptInviteV4(e,n[0])}}async settings(e,t,n){let i=a.get("socket");switch(t){case "ephemeral":return await i.communityToggleEphemeral(e,n);case "update":return await i.communitySettingUpdate(e,n);case "memberAdd":return await i.communityMemberAddMode(e,n);case "approval":return await i.communityJoinApprovalMode(e,n)}}},Fe=class{constructor(e){this.mlient=e;this.community=new ot(e);}community};c();var st=class{constructor(e){this.client=e;}async create(e,t){return await a.get("socket").groupCreate(e,t)}async participant(e,t,n){return await a.get("socket").groupParticipantsUpdate(e,t,n)}async profile(e,t,n){let i=a.get("socket"),r=Buffer.isBuffer(t);switch(n){case "subject":if(!r)return await i.groupUpdateSubject(e,t);case "description":if(!r)return await i.groupUpdateDescription(e,t);case "picture":return await i.updateProfilePicture(e,await O.toBuffer(t))}}async setting(e,t){let n=a.get("socket");switch(t){case "open":return await n.groupSettingUpdate(e,"not_announcement");case "close":return await n.groupSettingUpdate(e,"announcement");case "locked":return await n.groupSettingUpdate(e,t);case "unlocked":return await n.groupSettingUpdate(e,t);case "all_member_add":return await n.groupMemberAddMode(e,t);case "admin_add":return await n.groupMemberAddMode(e,t)}}async leave(e){return await a.get("socket").groupLeave(e)}async inviteCode(e,t){let n=a.get("socket");switch(t){case "code":return await n.groupInviteCode(e);case "revoke":return await n.groupRevokeInvite(e);case "accept":return await n.groupAcceptInvite(e);case "info":return await n.groupGetInviteInfo(e)}}async metadata(e){let t=a.get("socket"),n=D.get(e);if(n)return n;let i=await t.groupMetadata(e);return i&&D.set(e,i),i}async requestJoin(e,t,n){let i=a.get("socket");switch(n){case "approve":return await i.groupRequestParticipantsUpdate(e,t,n);case "reject":return await i.groupRequestParticipantsUpdate(e,t,n)}}async requestJoinList(e){return await a.get("socket").groupRequestParticipantsList(e)}async fetchAllGroups(){return await a.get("socket").groupFetchAllParticipating()}async ephemeral(e,t){let n=a.get("socket"),i={off:0,"24h":86400,"7d":604800,"90d":7776e3};return await n.groupToggleEphemeral(e,i[t])}},$e=class{constructor(e){this.glient=e;this.group=new st(e);}group};c();var at=class{constructor(e){this.client=e;}async create(e,t){return await a.get("socket").newsletterCreate(e,t)}async action(e,t){let n=a.get("socket");switch(t){case "follow":return await n.newsletterFollow(e);case "unfollow":return await n.newsletterUnfollow(e);case "mute":return await n.newsletterMute(e);case "unmute":return await n.newsletterUnmute(e);}}async update(e,t,n){let i=a.get("socket"),r=Buffer.isBuffer(t);switch(n){case "name":if(!r)return await i.newsletterUpdateName(e,t);case "description":if(!r)return await i.newsletterUpdateDescription(e,t);case "picture":return await i.newsletterUpdatePicture(e,await O.toBuffer(t))}}async metadata(e,t){return await a.get("socket").newsletterMetadata(t,e)}async subscribers(e){return await a.get("socket").newsletterSubscribers(e)}async reaction(e,t,n){return await a.get("socket").newsletterReactMessage(e,t,n)}async fetchMessages(e,t,n,i){let r=a.get("socket"),o=n.getTime()/1e3,l=i.getTime()/1e3;return await r.newsletterFetchMessages(e,t,o,l)}async adminCount(e){return await a.get("socket").newsletterAdminCount(e)}async changeOwner(e,t){return await a.get("socket").newsletterChangeOwner(e,t)}async demote(e,t){return await a.get("socket").newsletterDemote(e,t)}async delete(e){return await a.get("socket").newsletterDelete(e)}async removePicture(e){return await a.get("socket").newsletterRemovePicture(e)}},Oe=class{constructor(e){this.nlient=e;this.newsletter=new at(e);}newsletter};c();var ct=class{constructor(e){this.client=e;}async block(e){return await a.get("socket").updateBlockStatus(e,"block")}async unblock(e){return await a.get("socket").updateBlockStatus(e,"unblock")}async lastSeen(e){return await a.get("socket").updateLastSeenPrivacy(e)}async online(e){return await a.get("socket").updateOnlinePrivacy(e)}async picture(e){return await a.get("socket").updateProfilePicturePrivacy(e)}async status(e){return await a.get("socket").updateStatusPrivacy(e)}async readReceipt(e){return await a.get("socket").updateReadReceiptsPrivacy(e)}async groupsAdd(e){return await a.get("socket").updateGroupsAddPrivacy(e)}async ephemeral(e){let t=a.get("socket"),n={off:0,"24h":86400,"7d":604800,"90d":7776e3};return await t.updateDefaultDisappearingMode(n[e])}async blocklist(){return await a.get("socket").fetchBlocklist()}async getSettings(){return await a.get("socket").fetchPrivacySettings(true)}},De=class{constructor(e){this.plient=e;this.privacy=new ct(e);}privacy};c();c();var va=m__default.default.object({status:m__default.default.enum(["connecting","open","close","reload","syncing"]),authType:m__default.default.enum(["pairing","qr"]),authTimeout:m__default.default.number().optional(),syncProgress:m__default.default.number().optional(),syncCompleted:m__default.default.boolean().default(false).optional(),qr:m__default.default.string().optional(),code:m__default.default.string().optional()});c();var er=m__default.default.enum(["unknown","android","ios","desktop","web"]),tr=m__default.default.enum(["text","album","image","contact","location","document","audio","video","protocol","contacts","highlyStructured","sendPayment","requestPayment","groupStatusMention","statusMention","declinePaymentRequest","cancelPaymentRequest","template","sticker","groupInvite","product","deviceSent","lists","viewOnce","order","ephemeral","invoice","buttons","paymentInvite","interactive","reaction","sticker","interactiveResponse","pollCreation","pollUpdate","keepInChat","document","requestPhoneNumber","viewOnce","reaction","text","viewOnce","pollCreation","scheduledCallCreation","groupMentioned","pinInChat","pollCreation","scheduledCallEdit","ptv","botInvoke","callLog","encComment","bcall","lottieSticker","event","comment","placeholder","encEventUpdate"]),zt=m__default.default.object({channelId:m__default.default.string(),uniqueId:m__default.default.string(),chatId:m__default.default.string(),chatType:tr,receiverLid:m__default.default.string(),receiverId:m__default.default.string(),receiverName:m__default.default.string(),roomId:m__default.default.string(),roomName:m__default.default.string(),senderLid:m__default.default.string(),senderId:m__default.default.string(),senderName:m__default.default.string(),senderDevice:er,timestamp:m__default.default.number(),text:m__default.default.string().nullable(),mentions:m__default.default.string().array(),links:m__default.default.string().array(),isBot:m__default.default.boolean(),isFromMe:m__default.default.boolean(),isPrefix:m__default.default.boolean(),isSpam:m__default.default.boolean(),isTagMe:m__default.default.boolean(),isStatusMention:m__default.default.boolean(),isGroupStatusMention:m__default.default.boolean(),isHideTags:m__default.default.boolean(),isGroup:m__default.default.boolean(),isNewsletter:m__default.default.boolean(),isQuestion:m__default.default.boolean(),isStory:m__default.default.boolean(),isViewOnce:m__default.default.boolean(),isEdited:m__default.default.boolean(),isDeleted:m__default.default.boolean(),isPinned:m__default.default.boolean(),isUnPinned:m__default.default.boolean(),isBroadcast:m__default.default.boolean(),isEphemeral:m__default.default.boolean(),isForwarded:m__default.default.boolean(),citation:m__default.default.record(m__default.default.string(),m__default.default.function({output:m__default.default.promise(m__default.default.boolean())})).nullable(),media:m__default.default.object({buffer:m__default.default.function({output:m__default.default.promise(m__default.default.instanceof(Buffer))}),stream:m__default.default.function({output:m__default.default.promise(m__default.default.instanceof(Xn__default.default))})}).loose().nullable(),injection:m__default.default.record(m__default.default.string(),m__default.default.any()).default({}),message:m__default.default.function({input:[],output:m__default.default.custom()})}),Aa=zt.extend({replied:zt.nullable()});c();var Ba=m__default.default.object({callId:m__default.default.string(),callerId:m__default.default.string(),roomId:m__default.default.string(),roomName:m__default.default.string(),date:m__default.default.date(),offline:m__default.default.boolean(),status:m__default.default.enum(["accept","offer","reject","ringing","terminate","timeout"]),isVideo:m__default.default.boolean(),isGroup:m__default.default.boolean()});c();var Ne=class{constructor(e){this.client=e;this.initialize();}logsInitialized=false;logsDisplayed=false;isReady=false;getRoomColor(e){return e?.isNewsletter?"blue":e?.isGroup?e?.isGroup?"lime":"dimgray":"orange"}initialize(){if(!this.client.options.showLogs||this.logsInitialized)return;this.logsInitialized=true;let e=async({status:t})=>{t==="open"&&(this.isReady=true,this.logsDisplayed||setTimeout(()=>{this.displayIndicator();},500));};a.events.on("connection",e);}displayIndicator(){this.logsDisplayed||(this.logsDisplayed=true,console.log(),a.spinner.info("Logs Indicator:"),console.log(y(" \u2022","orange")+" Private Chat"),console.log(y(" \u2022","lime")+" Group Chat"),console.log(y(" \u2022","blue")+" Newsletter Chat"),console.log());}message(e){if(!this.isReady)return;let t=x(this.getRoomColor(e)),n=e?.text?.toLowerCase()?.match("zaileys"),i=this.client.options?.fancyLogs,r=y(`[${new Date(e?.timestamp).toTimeString().split(" ")[0]}]`,"dimgray"),o=y(`${e?.roomName}`,t),l=e?.text?.slice(0,300)||"",p=l?.length>=300?"...":"";if(i){let u=y("\u2501".repeat(50),"dimgray"),w=y("\u2192","dimgray"),T=y("\u2022",t),M=`
|
|
6
|
-
${u}
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
`,
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
`,
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
`,
|
|
16
|
-
|
|
17
|
-
`),e?.
|
|
18
|
-
`),
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
`,
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
`,
|
|
1
|
+
'use strict';var _t=require('baileys'),I=require('radashi'),lmdb=require('lmdb'),lruCache=require('lru-cache'),asyncMutex=require('async-mutex'),nanospinner=require('nanospinner'),Ot=require('pino'),events=require('events'),mediaProcess=require('@zaadevofc/media-process'),Ft=require('crypto'),a=require('valibot'),nt=require('gradient-string'),Vt=require('fs/promises'),zt=require('figlet'),Ht=require('qrcode-terminal'),U=require('fs'),W=require('path'),url=require('url');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var _t__default=/*#__PURE__*/_interopDefault(_t);var I__namespace=/*#__PURE__*/_interopNamespace(I);var Ot__default=/*#__PURE__*/_interopDefault(Ot);var Ft__default=/*#__PURE__*/_interopDefault(Ft);var a__namespace=/*#__PURE__*/_interopNamespace(a);var nt__default=/*#__PURE__*/_interopDefault(nt);var Vt__default=/*#__PURE__*/_interopDefault(Vt);var zt__default=/*#__PURE__*/_interopDefault(zt);var Ht__default=/*#__PURE__*/_interopDefault(Ht);var U__namespace=/*#__PURE__*/_interopNamespace(U);var W__namespace=/*#__PURE__*/_interopNamespace(W);var Te={encode:i=>JSON.stringify(i,_t.BufferJSON.replacer),decode:i=>JSON.parse(i,_t.BufferJSON.reviver)},Me=new Map,Ce=(i,e)=>(Me.has(i)||Me.set(i,lmdb.open({path:i,...e})),Me.get(i)),Ge=i=>Ce(`.session/${i}/auth/creds`,{compression:false,encoder:Te}),ne=i=>Ce(`.session/${i}/auth/keys`,{compression:false,encoder:Te}),Ve=(i,e)=>Ce(`.session/${i}/store/${e}`,{compression:true,encoder:Te});var Ae=class{cache;mutex=new asyncMutex.Mutex;namespace;constructor(e,t){this.namespace=e,this.cache=new lruCache.LRUCache({max:t?.max??500,ttl:t?.ttl});}key(e){return `${this.namespace}:${e}`}set(e,t){this.cache.set(this.key(e),t);}get(e){return this.cache.get(this.key(e))}has(e){return this.cache.has(this.key(e))}delete(e){return this.cache.delete(this.key(e))}getOrSet(e,t){if(this.has(e))return this.get(e);let n=t();return this.set(e,n),n}async getOrCreate(e,t){if(this.has(e))return this.get(e);let n=await this.mutex.acquire();try{if(this.has(e))return this.get(e);let o=await t();return this.set(e,o),o}finally{n();}}clear(){this.cache.clear();}keys(){return Array.from(this.cache.keys()).filter(e=>e.startsWith(`${this.namespace}:`)).map(e=>e.slice(this.namespace.length+1))}getAll(){let e={};for(let t of this.keys())e[t]=this.get(t);return e}get size(){return this.keys().length}},Re=class{namespaces=new Map;spinner=nanospinner.createSpinner("",{color:"green"});logger=Ot__default.default({level:"silent",enabled:false});events=new events.EventEmitter;ns(e,t){return this.namespaces.has(e)||this.namespaces.set(e,new Ae(e,t)),this.namespaces.get(e)}drop(e){let t=this.namespaces.get(e);return t?(t.clear(),this.namespaces.delete(e),true):false}snapshot(){let e={};for(let[t,n]of this.namespaces)e[t]=n.getAll();return e}get namespaceNames(){return Array.from(this.namespaces.keys())}},f=new Re;var j=f.ns("context",{max:500,ttl:1e3*60*10}),ze=f.ns("cache",{max:2e3,ttl:1e3*60*5}),d=f.ns("center",{max:500,ttl:1e3*60*10}),Pe=f.ns("rate",{max:5e3,ttl:1e3*10}),P=f.ns("group",{max:500,ttl:1e3*60*5}),Je=f.ns("msg",{max:1e3});var Ke=async i=>{f.spinner.start(" Initializing auth state...");let e=Ge(i),t=ne(i),n=await e.get("creds"),o=n||_t.initAuthCreds();return n?f.spinner.success(" Auth credentials loaded successfully"):f.spinner.success(" Initialized new auth session"),{state:{creds:o,keys:{get:async(s,r)=>{let u={};return await Promise.all(r.map(async l=>{let g=`${s}:${l}`,w=await t.get(g);s==="app-state-sync-key"&&w&&(w=_t.proto.Message.AppStateSyncKeyData.fromObject(w)),u[l]=w;})),u},set:async s=>{let r=[];for(let u in s)for(let l in s[u]){let g=s[u][l],w=`${u}:${l}`;r.push({key:w,value:g});}for(let u of I__namespace.cluster(r,500))await Promise.all(u.map(({key:l,value:g})=>g?t.put(l,g):t.remove(l)));}}},saveCreds:async()=>{await e.put("creds",o);}}};var J=class{constructor(e){this.cache=e;}get(e){return this.cache.get(e)}set(e,t){this.cache.set(e,t);}del(e){this.cache.delete(e);}flushAll(){this.cache.clear();}};var Ye=(i,e)=>({logger:i.health.logger,printQRInTerminal:false,enableRecentMessageCache:true,emitOwnEvents:true,keepAliveIntervalMs:3e4,browser:_t.Browsers.macOS("Desktop"),markOnlineOnConnect:i.options.autoOnline,syncFullHistory:i.options.syncFullHistory,msgRetryCounterCache:new J(Je),mediaCache:new J(ze),auth:{creds:e.creds,keys:_t.makeCacheableSignalKeyStore(e.keys,f.logger)},cachedGroupMetadata:async t=>P.get(t),shouldIgnoreJid:()=>false,shouldSyncHistoryMessage:()=>i.options.syncFullHistory,patchMessageBeforeSending:t=>t,getMessage:async t=>{if(!t?.remoteJid||!t?.id)return _t.proto.Message.fromObject({});let n=await i.db("messages").get(t.id);return _t.proto.Message.fromObject(n||{})}});var Ze=async i=>{let e=i.options.session||"zaileys",{state:t,saveCreds:n}=await Ke(e),{version:o}=await _t.fetchLatestBaileysVersion(),s=Ye(i,t),r=_t__default.default({...s,version:o});r.ev.on("creds.update",n),d.set("socket",r);};function Xe(i,e){let t=e.length;return new Proxy(i,{get(n,o,s){if(o in n){let r=Reflect.get(n,o,s);return typeof r=="function"?r.bind(s):r}for(let r=0;r<t;r++){let u=e[r];if(o in u){let l=Reflect.get(u,o,u);return typeof l=="function"?l.bind(u):l}}},set(n,o,s,r){if(o in n)return Reflect.set(n,o,s,r);for(let u=0;u<t;u++){let l=e[u];if(o in l)return Reflect.set(l,o,s,l)}return Reflect.set(n,o,s,r)},has(n,o){if(o in i)return true;for(let s=0;s<t;s++)if(o in e[s])return true;return false},ownKeys(){let n=new Set(Reflect.ownKeys(i)),o=[...n];for(let s=0;s<t;s++)for(let r of Reflect.ownKeys(e[s]))n.has(r)||(n.add(r),o.push(r));return o},getOwnPropertyDescriptor(n,o){let s=Object.getOwnPropertyDescriptor(i,o);if(s)return s;for(let r=0;r<t;r++)if(s=Object.getOwnPropertyDescriptor(e[r],o),s)return {...s,configurable:true}}})}var se=class{constructor(e){this.client=e;}interval=null;start(){let e=this.client.options.autoCleanUp;e?.enabled&&(this.interval=setInterval(()=>{this.run();},e.intervalMs),this.run());}stop(){this.interval&&(clearInterval(this.interval),this.interval=null);}async run(){let e=this.client.options.autoCleanUp;if(!e?.enabled)return;let t=Date.now()-e.maxAgeMs;for(let n of e.scopes)try{let o=this.client.db(n),s=[];for(let{value:r}of o.getRange())r&&r.timestamp!==void 0&&r.timestamp<t&&s.push(r);if(s.length>0){let r=s.map(u=>u.key?.id||u.id);for(let u of I__namespace.cluster(r,500))await Promise.all(u.map(l=>o.remove(l)));f.spinner.info(` [CleanUpManager] Cleaned up ${s.length} items from ${n}`);}}catch{}}};var C={CRITICAL:20,HIGH:10,NORMAL:0,LOW:-10},Ie=class{concurrency;timeout;onError;queue;running;completed;failed;isClosing;closeResolve;_idleResolvers=[];constructor(e){this.concurrency=e?.concurrency||20,this.timeout=e?.timeout||3e4,this.onError=e?.onError||this._defaultErrorHandler,this.queue=[],this.running=new Set,this.completed=0,this.failed=0,this.isClosing=false,this.closeResolve=null;}add(e,t){if(this.isClosing)throw new Error("Queue is closing, cannot add new tasks");let n={id:this._generateId(),fn:e,priority:t?.priority||0,timeout:t?.timeout||this.timeout,retries:0,maxRetries:t?.maxRetries||0,createdAt:Date.now()},o=this.queue.findIndex(s=>s.priority<n.priority);return o===-1?this.queue.push(n):this.queue.splice(o,0,n),this._process(),n.id}addBulk(e){return e.map(({fn:t,options:n})=>this.add(t,n))}async _process(){for(;this.running.size<this.concurrency&&this.queue.length>0;){let e=this.queue.shift();this.running.add(e),this._executeTask(e);}this.isClosing&&this.running.size===0&&this.queue.length===0&&this.closeResolve?.(),this.isIdle()&&(this._idleResolvers.forEach(e=>e()),this._idleResolvers=[]);}async _executeTask(e){try{await this._withTimeout(e.fn(),e.timeout),this.completed++;}catch(t){if(e.retries<e.maxRetries){e.retries++;let n=Math.min(500*2**e.retries,3e4);setTimeout(()=>{this.isClosing||(this.queue.unshift(e),this._process());},n);}else this.failed++,this.onError(t,e);}finally{this.running.delete(e),this._process();}}_withTimeout(e,t){let n,o=new Promise((s,r)=>{n=setTimeout(()=>r(new Error("Task timeout")),t);});return Promise.race([e,o]).finally(()=>clearTimeout(n))}async close(e=0){if(this.isClosing=true,this.running.size===0&&this.queue.length===0)return;let t=new Promise(n=>{this.closeResolve=n;});if(e>0){let n=new Promise(o=>setTimeout(o,e));await Promise.race([t,n]);}else await t;}forceClose(){this.queue=[],this.running.clear(),this.isClosing=true,this.closeResolve?.();}getStats(){return {queued:this.queue.length,running:this.running.size,completed:this.completed,failed:this.failed,total:this.completed+this.failed}}isIdle(){return this.queue.length===0&&this.running.size===0}async waitUntilIdle(){if(!this.isIdle())return new Promise(e=>{this._idleResolvers.push(e);})}_defaultErrorHandler(e,t){console.error(`[FireForget] Task ${t.id} failed:`,e.message);}_generateId(){return Ft__default.default.randomUUID()}},S=new Ie;var oe=class{constructor(e){this.client=e;this.keysDb=ne(e.options.session);}keysDb;async repair(e){if(e)try{let t=this.client.socket;t&&t.authState&&(await t.authState.keys.set({session:{[e]:null},"sender-key":{[e]:null}}),f.spinner.warn(` [HealthManager] Repaired session for ${e} due to Bad MAC by clearing auth cache`));}catch(t){this.logger.error({err:t},"Failed to repair session");}}get logger(){return Ot__default.default({level:"silent"},{write:e=>{try{let t=JSON.parse(e),n=t.msg||"",o=["Bad MAC","Session error:","Closing open session in favor of incoming prekey bundle","Error: Bad MAC"];if(n.includes("Bad MAC")){let s=t.jid||t.remoteJid;s&&this.repair(s);}o.some(s=>n.includes(s))||t.level>=50&&t.err&&console.error(t.err);}catch{}}})}};var H=(i,e)=>{let t=a__namespace.safeParse(i,e);if(t.issues){let n=[],o=r=>{for(let u of r)if(u.issues&&u.issues.length>0)o(u.issues);else {let l=u.path?.map(g=>g.key).join(".")||"root";n.push(`${l}: ${u.message}`);}};o(t.issues);let s=Array.from(new Set(n));throw new Error(`Validation Error:
|
|
2
|
+
- ${s.join(`
|
|
3
|
+
- `)}`)}return t.output};var y=(i,e="lime")=>Array.isArray(e)?nt__default.default(e)(i):nt__default.default([e,e])(i),Oe=i=>{try{return JSON.parse(i)}catch{return I__namespace.tryit(()=>JSON.parse(JSON.stringify(i)||"{}"))()[1]}},K=i=>{try{return JSON.stringify(i)}catch{let e=I__namespace.tryit(()=>JSON.stringify(Oe(i)||"{}"))();return e[0]?"{}":e[1]}},_s=(i="")=>I__namespace.shuffle(i.split("")).join(""),Q=(i="",e="")=>i?i.toLowerCase().includes(e.toLowerCase()):null,st=(i="")=>{if(!i)return [];let e=i.match(_t.URL_REGEX)||[];return Array.isArray(e)?e:[e]},js=i=>i[Math.floor(Math.random()*i.length)],Ee=(i,e)=>{if(!(!Array.isArray(i)||i.length===0)&&!(!Array.isArray(e)||e.length===0)){for(let t of i)if(!(!t||typeof t!="object"))for(let n of e){let o=I__namespace.get(t,n);if(!I__namespace.isEmpty(o)||typeof o=="number"||typeof o=="boolean"){if(typeof o=="string"&&o.trim()==="")continue;return o}}}},Fs=(i,e)=>{let t=Array.isArray(e)?e:[e],n=(r,u)=>Object.entries(u).every(([l,g])=>r?.[l]===g),o=(r,u)=>Object.entries(u).some(([l,g])=>r?.[l]===g),s=r=>Array.isArray(r)?r.find(s)??r:I__namespace.isObject(r)?t.find(g=>n(r,g))||t.find(g=>o(r,g))?r:Object.values(r).find(s)??r:null;return s(i)},Ls=(i,e,t)=>new Proxy(i,{apply(n,o,s){e?.(s);let r=Reflect.apply(n,o,s);return t?t(r,s):r}}),ot=i=>i.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");var We=i=>{let e;Array.isArray(i)?e=i.join("|"):typeof i=="string"?e=i:e=String(i);let t=2166136261,n=e.length;for(let o=0;o<n;o++)t^=e.charCodeAt(o),t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24);return "Z4D3FC"+(t>>>0).toString(16).padStart(8,"0").toUpperCase()},rt=(i="")=>{if(!i)return [];let e=new Set;for(let t of i.matchAll(/@(\d+)/g))e.add(t[1]);return Array.from(e)},Ne=(i="")=>{if(!i)return [];let e=new Set;for(let t of i.matchAll(/@(\d+)/g))t[1].length<=15&&e.add(t[1]);return [...e].flatMap(t=>[`${t}@s.whatsapp.net`,`${t}@g.us`,`${t}@lid`])},ie=i=>{let e=i.filter(Boolean).map(o=>_t.jidNormalizedUser(o)),t=e.find(o=>!o.includes("@lid")),n=e.find(o=>o.includes("@lid"));return {id:t||n||null,lid:n||null}},Vs=i=>i?.length?[...i].map(e=>`${e}@s.whatsapp.net`):[],at=i=>I__namespace.omit(i,["url","contextInfo","fileSha256","fileEncSha256","mediaKey","directPath","waveform","thumbnail","jpegThumbnail","thumbnailEncSha256","thumbnailSha256","thumbnailDirectPath","firstFrameSidecar","streamingSidecar","scansSidecar","callKey","message","key","midQualityFileSha256","historySyncNotification","appStateSyncKeyShare","appStateSyncKeyRequest","initialSecurityNotificationSettingSync","appStateFatalExceptionNotification","disappearingMode","peerDataOperationRequestMessage","peerDataOperationRequestResponseMessage","botFeedbackMessage"]),re=i=>{if(!i)return {leaf:void 0,chain:[]};let e=_t.extractMessageContent(i)||i,t=[];for(;e&&typeof e=="object";){let n=_t.getContentType(e);if(!n)break;t.push(n);let o=e[n];if(!o||typeof o!="object"){e=o;break}e=o;}return {leaf:e,chain:t}},E=i=>Number(i?.split("@")[0]);var v=i=>i,ct=async()=>{try{return (await(await fetch("https://registry.npmjs.org/zaileys")).json())["dist-tags"].latest}catch(i){throw i}},$e=async i=>{try{let e=`.session/${i}`;await Vt__default.default.rm(e,{recursive:!0,force:!0});}catch{f.spinner.error(`Failed to remove auth creds for session "${i}"!`);}},$=(i="")=>{if(!i?.length)return null;let e=i.replace(/\u202E(.*?)(\u202C|$)/gu,(t,n)=>[...n].reverse().join("")).replace(/\u202D(.*?)(\u202C|$)/gu,(t,n)=>[...n].reverse().join("")).replace(/[\u061C\u200E\u200F\u202A-\u202E\u2066-\u2069]/gu,"").replace(/[\u200B\u200C\u200D\uFEFF]/gu,"").replace(/[\u00AD\u034F\u115F\u1160\u17B4\u17B5\u180B-\u180E]/gu,"").replace(/[\u2060-\u2064\u206A-\u206F]/gu,"").replace(/[\u2800\uFFFC\uFFFD]/gu,"").replace(/[\uFE00-\uFE0F]/gu,"").normalize("NFKD").replace(/[\u0300-\u036F]/gu,"").replace(/[\u1AB0-\u1AFF]/gu,"").replace(/[\u1DC0-\u1DFF]/gu,"").replace(/[\u20D0-\u20FF]/gu,"").replace(/[\uFE20-\uFE2F]/gu,"").replace(/[\p{Cc}]/gu,"").replace(/[\p{Cf}]/gu,"").replace(/[\p{Co}]/gu,"").replace(/[\p{Cn}]/gu,"").replace(/[\p{Cs}]/gu,"").replace(/[\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]/gu," ").replace(/[\u2028\u2029]/gu," ").replace(/[\t\r\n\f\v]/g," ").normalize("NFKC").normalize("NFC").replace(/\s+/g," ").trim();return e.length?e:null};var ae=class{constructor(e){this.client=e;this.initialize();}async initialize(){let e=d.get("socket");e.ev.on("call",async t=>{for(let n of t){let o=await this.parse(n);o&&(S.add(async()=>{await Promise.all([this.client.middleware.run({calls:o}),this.client.plugins.execute(this.client,{messages:o})]);},{priority:C.NORMAL,timeout:5e3}),f.events.emit("calls",o),this.client.options?.autoRejectCall&&S.add(async()=>e.rejectCall(o.callId,o.callerId),{priority:C.CRITICAL,timeout:3e3}));}});}async parse(e){let t=d.get("socket"),n={};return n.callId=e.id,n.callerId=_t.jidNormalizedUser(e.from),n.roomId=_t.jidNormalizedUser(e.chatId),n.roomName=$(t?.user?.name||t?.user?.verifiedName),n.date=e.date,n.offline=e.offline,n.status=e.status,n.isVideo=!!e.isVideo,n.isGroup=!!e.isGroup,this.client.logs.call(n),n}};var pt=i=>{Ht__default.default.generate(i,{small:true},e=>{console.log(e);});},ut=async()=>{console.clear(),f.spinner.start(" Checking for updates...");let i="3.0.0",e="zaadevofc",t=await ct(),n=i===t;f.spinner.stop();let o="Zaileys",s=`
|
|
4
|
+
by ${e} \xB7 v${i}`,r="\u2014 discord.gg/KBHhTTVUc5",u="\u2014 chat.whatsapp.com/GlQfvc83mSH3F6ov06vuCt",l=`${n?"\u2714 Already using latest version!":`\u2714 Update available! (v${t})`}
|
|
5
|
+
`,g=n?"blue":"orange",w=await zt__default.default.text(o),O=nt.cristal(w);console.log(O),console.log(y(s,"dimgray")),console.log(y(r,"purple")),console.log(y(u,"green")),console.log(y(l,g));};var le=class{constructor(e){this.client=e;this.initialize();}async initialize(){f.spinner.start(" Initializing connection...");let e=d.get("socket"),t={},n=async()=>{t.status="reload",f.spinner.warn(" Connection lost. Attempting auto-reload..."),await this.client.initialize();},o=async()=>{await _t.delay(3e3),f.spinner.warn(" Invalid session. Attempting auto cleaning creds..."),await _t.delay(3e3),await $e(this.client.options.session),await n();};if(this.client.options.authType==="pairing"&&this.client.options.phoneNumber&&!e.authState.creds.registered){f.spinner.update(" Generating pairing code..."),await _t.delay(3500);try{t.authTimeout=Date.now()+6e4;let s=new Date(t.authTimeout).toLocaleTimeString(),r=await e.requestPairingCode(this.client.options.phoneNumber.toString());f.spinner.warn(` Pairing expired at ${nt.cristal(s)}`),f.spinner.warn(` Pairing code: ${r}`),t.code=r;}catch{await o();}}e.ev.on("connection.update",async s=>{let{connection:r,lastDisconnect:u,qr:l}=s;if(t.status=r||"connecting",t.authType=this.client.options.authType,f.spinner.update(" Connection status: "+nt.cristal(t.status)),this.client.options.authType==="qr"&&l){t.authTimeout=Date.now()+6e4;let g=new Date(t.authTimeout).toLocaleTimeString();f.spinner.warn(" Please scan the QR code..."),f.spinner.warn(` Qr code expired at ${nt.cristal(g)}`),pt(l),t.qr=l;return}if(r==="close"){let g=v(u?.error)?.output?.statusCode,w=u?.error?.message||"Unknown Error",O=g??"Internal";if(f.spinner.error(` [${O} - Closed] ${w}`),g===_t.DisconnectReason.loggedOut){this.client.options.deleteSessionOnLogout?(f.spinner.warn(" Session logged out or invalidated. Self-healing..."),await $e(this.client.options.session),setTimeout(()=>n(),3e3)):f.spinner.warn(" Session logged out or invalidated. Automatic session deletion is disabled.");return}if(g===405){f.spinner.warn(" Session invalid/stale or used by another device (405)."),f.spinner.warn(" Automatic reconnecting..."),setTimeout(()=>n(),3e3);return}if(g===500){f.spinner.error(" Server error occurred, attempting reconnect..."),setTimeout(()=>n(),3e3);return}typeof g=="number"&&(f.spinner.warn(` Connection marked for reconnect (${g}). Wait a moment...`),setTimeout(()=>n(),3e3));}if(r==="open")if(e.user?.id){let g=_t.jidNormalizedUser(e.user.id).split("@")[0],w=e.user.name||e.user.verifiedName;f.spinner.success(` Connected as ${nt.cristal(w||g)}`);}else f.spinner.success(" Connected!");f.events.emit("connection",t);}),e.ev.on("messaging-history.set",({progress:s})=>{t.status="syncing",t.syncProgress=s,f.spinner.start(" Syncing messages history..."),s&&f.spinner.update(` Syncing messages history ${s+"%"}`),s==100&&(f.spinner.success(" Syncing messages history completed!"),t.syncCompleted=true),f.events.emit("connection",t);});}};var mt={text:"text",conversation:"text",imageMessage:"image",contactMessage:"contact",locationMessage:"location",documentMessage:"document",audioMessage:"audio",videoMessage:"video",protocolMessage:"protocol",contactsArrayMessage:"contacts",highlyStructuredMessage:"highlyStructured",sendPaymentMessage:"sendPayment",liveLocationMessage:"location",requestPaymentMessage:"requestPayment",groupStatusMentionMessage:"groupStatusMention",statusMentionMessage:"statusMention",albumMessage:"album",declinePaymentRequestMessage:"declinePaymentRequest",cancelPaymentRequestMessage:"cancelPaymentRequest",templateMessage:"template",stickerMessage:"sticker",groupInviteMessage:"groupInvite",templateButtonReplyMessage:"buttons",productMessage:"product",deviceSentMessage:"deviceSent",listMessage:"lists",viewOnceMessage:"viewOnce",orderMessage:"order",listResponseMessage:"lists",ephemeralMessage:"ephemeral",invoiceMessage:"invoice",buttonsMessage:"buttons",buttonsResponseMessage:"buttons",paymentInviteMessage:"paymentInvite",interactiveMessage:"interactive",reactionMessage:"reaction",stickerSyncRmrMessage:"sticker",questionMessage:"question",nativeFlowResponseMessage:"lists",interactiveResponseMessage:"interactiveResponse",pollCreationMessage:"pollCreation",pollCreationMessageKey:"pollUpdate",pollUpdateMessage:"pollUpdate",keepInChatMessage:"keepInChat",documentWithCaptionMessage:"document",requestPhoneNumberMessage:"requestPhoneNumber",viewOnceMessageV2:"viewOnce",encReactionMessage:"reaction",editedMessage:"text",viewOnceMessageV2Extension:"viewOnce",pollCreationMessageV2:"pollCreation",scheduledCallCreationMessage:"scheduledCallCreation",groupMentionedMessage:"groupMentioned",pinInChatMessage:"pinInChat",pollCreationMessageV3:"pollCreation",scheduledCallEditMessage:"scheduledCallEdit",ptvMessage:"ptv",botInvokeMessage:"botInvoke",callLogMesssage:"callLog",encCommentMessage:"encComment",bcallMessage:"bcall",lottieStickerMessage:"lottieSticker",eventMessage:"event",commentMessage:"comment",newsletterAdminInviteMessage:"text",extendedTextMessageWithParentKey:"text",extendedTextMessage:"text",placeholderMessage:"placeholder",encEventUpdateMessage:"encEventUpdate"},_e={whatsapp:"0@s.whatsapp.net",meta:"13135550002@s.whatsapp.net",chatgpt:"18002428478@s.whatsapp.net",copilot:"18772241042@s.whatsapp.net",instagram:"447723442971@s.whatsapp.net",tiktok:"6285574670498@s.whatsapp.net"};var pe=class{constructor(e){this.client=e;this.maxMessages=this.client.options.limiter?.maxMessages||20;}maxMessages;async isSpam(e){let t=Pe.get(e)||0;return t>=this.maxMessages?true:(Pe.set(e,t+1),false)}};var ue=class{constructor(e){this.client=e;this.limiter=new pe(e),this.maxReplies=this.client.options?.maxReplies??3,this.initialize();}limiter;maxReplies;async initialize(){let e=d.get("socket");if(!e?.ev){console.warn("\u26A0\uFE0F [Messages] Socket or socket.ev is not available during initialization");return}e.ev.on("messages.upsert",async({messages:t,type:n})=>{try{if(n!=="notify"&&n!=="append")return;for(let o of t)try{let s=await this.parse(o);s&&(S.add(async()=>{await Promise.all([this.client.middleware.run({messages:s}),this.client.plugins.execute(this.client,{messages:s})]);},{priority:C.NORMAL,timeout:5e3}),d.set("message",s),f.events.emit("messages",s),this.client.options.autoRead&&S.add(async()=>e.readMessages([s.message().key]),{priority:C.NORMAL,timeout:5e3}));}catch{}}catch{}});}async parse(e,t){if(e?.category==="peer"||!e?.message||!e?.key?.id||e?.messageStubType||e?.messageStubParameters?.length||e.message?.protocolMessage?.peerDataOperationRequestResponseMessage)return;let n=e,o=d.get("socket"),s={},r=re(e.message),u=r.chain.at(-1),l=r.leaf;if(l?.message&&(r=re(l.message),u=r.chain.at(-1),l=r.leaf),s.uniqueId=null,s.channelId=null,s.chatId=e?.message?.protocolMessage?.key?.id||e?.key?.id||null,s.chatType=mt[u],!s.chatType)return;let g=ie([o?.user?.id,o?.user?.lid]);s.receiverId=g.id||g.lid||"",s.receiverLid=g.lid||g.id||"",s.receiverName=$(o?.user?.name||o?.user?.verifiedName);let w=ie([e?.key?.remoteJid]);s.roomId=w.id,s.roomLid=w.lid;let O=l?.type===0,b=l?.type===1,X=l?.type===2,ee=s.roomId?.includes("@newsletter"),be=!!e?.message?.questionMessage,q=e?.key?.fromMe||false;if(q&&this.client.options.ignoreMe&&t!=="replied")return;let G=l?.key?.id;if(O||b||X){if(!G)return;let M=await this.client.db("messages").get(G);if(!M)return;e=M,r=re(e.message),u=r.chain.at(-1),l=r.leaf;}s.roomName=await this.client.getRoomName(s.roomId);let V=ie([e?.key?.participant,e?.key?.remoteJid,e?.key?.participantAlt,e?.key?.remoteJidAlt]);if(s.senderId=V.id,s.senderLid=V.lid,s.senderName=$(e?.pushName||e?.verifiedBizName),s.senderDevice=_t.getDevice(s.chatId||""),s.channelId=We([s.roomId,s.senderId]),s.uniqueId=We([s.channelId,s.chatId]),s.timestamp=Number(e?.messageTimestamp)*1e3,ee){let M=await o.newsletterMetadata("jid",s.roomId);s.roomName=v(M.thread_metadata.name)?.text,s.senderId=null,s.senderLid=null;}q&&(s.senderLid=s.receiverLid,s.senderId=s.receiverId,s.senderName=s.receiverName),s.text=l?.text||l?.caption||l?.name||l?.displayName||l?.conversation||l?.contentText||l?.selectedDisplayText||l||null,l?.name=="menu_options"&&(s.text=Oe(l?.paramsJson)?.id),s.text=$(s.text),s.mentions=rt(s.text),s.links=st(s.text||""),s.isBot=s.chatId.startsWith("BAE5")||s.chatId.startsWith("3EB0"),s.isFromMe=q;let D=this.client.options?.prefix,z=Array.isArray(D)?D:[D];if(s.isPrefix=!!z.find(M=>s.text?.startsWith(M)),s.isTagMe=s.mentions?.includes(s.receiverId.split("@")[0])||s.mentions?.includes(s.receiverLid.split("@")[0]),s.isStatusMention=!!e?.message?.statusMentionMessage,s.isGroupStatusMention=!!e?.message?.groupStatusMentionMessage,s.isHideTags=false,!s.text?.trim()&&l?.contextInfo?.mentionedJid?.length&&(s.isHideTags=true),s.isSpam=await this.limiter.isSpam(s.channelId),s.isPrefix&&(s.text=s.text.replace(new RegExp(`^${ot(z.find(M=>s.text?.startsWith(M))||"")}`),"")),s.isGroup=s.roomId?.includes("@g.us"),s.isNewsletter=ee,s.isQuestion=be,s.isStory=s.roomId?.includes("@broadcast"),!s.isGroup&&!s.roomName&&(s.roomName=s.senderName),s.isViewOnce=false,s.isEdited=!!Q(K(r),"editedMessage"),s.isDeleted=O,s.isPinned=b,s.isUnPinned=X,s.isBroadcast=!!e?.broadcast,s.isEphemeral=!!Q(K(l?.contextInfo),"ephemeralSettingTimestamp"),s.isForwarded=!!Q(K(l?.contextInfo),"forwardingScore"),s.citation=null,this.client.options.citation){s.citation=s.citation||{};let M=this.client.options.citation;for(let N of Object.keys(M)){let _=M[N];s.citation[N]=async()=>{let k=await _();return !![E(s.roomId),E(s.senderLid),E(s.senderId)].some(R=>k.includes(R))};}}s.chatType!=="text"&&(s.media={...at(l),buffer:()=>_t.downloadMediaMessage(e,"buffer",{}),stream:()=>_t.downloadMediaMessage(e,"stream",{})}),s.isStatusMention&&(s.chatType="statusMention"),s.isGroupStatusMention&&(s.chatType="groupStatusMention"),s.message=()=>n,s.replied=null;let B=l?.contextInfo?.quotedMessage,xe=Q(K(B),"viewOnce"),te=l?.contextInfo?.stanzaId;if(B&&this.maxReplies){if(this.maxReplies--,!te)return s;let M=await this.client.db("messages").get(te),N;xe?N={...M,message:B}:N=M,s.replied=await this.parse(N,"replied"),s.replied&&(s.replied.isViewOnce=true),this.maxReplies=this.client.options?.maxReplies??3;}return t!="replied"&&this.client.logs.message(s),s.injection=j.getAll(),s}};var me=class{constructor(e){this.client=e;this.connection=new le(e),this.messages=new ue(e),this.calls=new ae(e),this.initialize();}connection;messages;calls;async initialize(){let e=d.get("socket");e.ev.on("groups.update",async([n])=>{S.add(async()=>{let o=await e.groupMetadata(n.id);P.set(n.id,o);},{priority:C.LOW,timeout:1e4});}),e.ev.on("group-participants.update",async n=>{S.add(async()=>{let o=await e.groupMetadata(n.id);P.set(n.id,o);},{priority:C.LOW,timeout:1e4});});let t=async(n,o)=>{for(let r=0;r<n.length;r+=500){let u=n.slice(r,r+500);await Promise.all(u.map(o));}};e?.ev.on("messaging-history.set",async n=>{let{chats:o,contacts:s,messages:r}=n;S.add(async()=>{await t(o,u=>this.client.db("chats").put(u.id,u));},{priority:C.LOW,timeout:3e4}),S.add(async()=>{await t(s,u=>this.client.db("contacts").put(u.id,u));},{priority:C.LOW,timeout:3e4}),S.add(async()=>{await t(r,u=>this.client.db("messages").put(u.key.id,u));},{priority:C.LOW,timeout:3e4});}),e?.ev.on("messages.upsert",async({messages:n})=>{S.add(async()=>{await t(n,o=>this.client.db("messages").put(o.key.id,o));},{priority:C.LOW,timeout:3e4});}),e?.ev.on("chats.upsert",async n=>{S.add(async()=>{await t(n,o=>this.client.db("chats").put(o.id,o));},{priority:C.LOW,timeout:3e4});}),e?.ev.on("contacts.upsert",async n=>{S.add(async()=>{await t(n,o=>this.client.db("contacts").put(o.id,o));},{priority:C.LOW,timeout:3e4});});}};var gt=a__namespace.object({type:a__namespace.literal("quick_reply"),id:a__namespace.string(),text:a__namespace.string()}),ft=a__namespace.object({type:a__namespace.literal("cta_url"),url:a__namespace.pipe(a__namespace.string(),a__namespace.url()),text:a__namespace.string()}),yt=a__namespace.object({type:a__namespace.literal("cta_copy"),id:a__namespace.string(),copy:a__namespace.string(),text:a__namespace.string()}),ht=a__namespace.object({type:a__namespace.literal("cta_call"),text:a__namespace.string(),phoneNumber:a__namespace.string()}),Zt=a__namespace.object({type:a__namespace.literal("single_select"),text:a__namespace.string(),section:a__namespace.array(a__namespace.object({title:a__namespace.string(),highlight_label:a__namespace.optional(a__namespace.string()),rows:a__namespace.array(a__namespace.object({id:a__namespace.string(),title:a__namespace.string(),header:a__namespace.optional(a__namespace.string()),description:a__namespace.optional(a__namespace.string())}))}))}),Xt=a__namespace.object({type:a__namespace.literal("interactive"),footer:a__namespace.optional(a__namespace.string()),data:a__namespace.array(a__namespace.union([gt,ft,yt,ht,Zt]))}),en=a__namespace.object({type:a__namespace.literal("simple"),footer:a__namespace.optional(a__namespace.string()),data:a__namespace.array(a__namespace.object({id:a__namespace.string(),text:a__namespace.string()}))}),tn=a__namespace.object({body:a__namespace.string(),footer:a__namespace.optional(a__namespace.string()),header:a__namespace.optional(a__namespace.object({title:a__namespace.optional(a__namespace.string()),subtitle:a__namespace.optional(a__namespace.string()),hasMediaAttachment:a__namespace.optional(a__namespace.boolean()),image:a__namespace.optional(a__namespace.string()),video:a__namespace.optional(a__namespace.string())})),nativeFlow:a__namespace.array(a__namespace.union([gt,ft,yt,ht]))}),nn=a__namespace.object({type:a__namespace.literal("carousel"),data:a__namespace.array(tn)}),vt=a__namespace.union([en,Xt,nn]);var sn=a__namespace.optional(a__namespace.object({maxMessages:a__namespace.optional(a__namespace.number(),20),durationMs:a__namespace.optional(a__namespace.number(),1e4)})),on=a__namespace.optional(a__namespace.record(a__namespace.string(),a__namespace.custom(i=>typeof i=="function"))),rn=a__namespace.optional(a__namespace.object({provider:a__namespace.union([a__namespace.picklist(["whatsapp","meta","chatgpt","copilot","instagram","tiktok"]),a__namespace.number()])})),je=a__namespace.optional(a__namespace.picklist(["default","rounded","circle","oval"]),"default"),an=a__namespace.optional(a__namespace.object({packageName:a__namespace.optional(a__namespace.string()),authorName:a__namespace.optional(a__namespace.string()),quality:a__namespace.optional(a__namespace.number()),shape:a__namespace.optional(je)})),cn=a__namespace.optional(a__namespace.object({enabled:a__namespace.optional(a__namespace.boolean(),false),intervalMs:a__namespace.optional(a__namespace.number(),3600*1e3),maxAgeMs:a__namespace.optional(a__namespace.number(),1440*60*1e3),scopes:a__namespace.optional(a__namespace.array(a__namespace.string()),["messages"])})),kt=a__namespace.object({session:a__namespace.optional(a__namespace.string(),"zaileys"),prefix:a__namespace.optional(a__namespace.union([a__namespace.string(),a__namespace.array(a__namespace.string())])),ignoreMe:a__namespace.optional(a__namespace.boolean(),true),showLogs:a__namespace.optional(a__namespace.boolean(),true),fancyLogs:a__namespace.optional(a__namespace.boolean(),false),syncFullHistory:a__namespace.optional(a__namespace.boolean(),true),disableFFmpeg:a__namespace.optional(a__namespace.boolean(),false),autoMarkAI:a__namespace.optional(a__namespace.boolean(),true),autoMentions:a__namespace.optional(a__namespace.boolean(),true),autoOnline:a__namespace.optional(a__namespace.boolean(),true),autoRead:a__namespace.optional(a__namespace.boolean(),true),autoPresence:a__namespace.optional(a__namespace.boolean(),true),autoRejectCall:a__namespace.optional(a__namespace.boolean(),true),showSpinner:a__namespace.optional(a__namespace.boolean(),true),maxReplies:a__namespace.optional(a__namespace.number(),3),deleteSessionOnLogout:a__namespace.optional(a__namespace.boolean(),false),pluginsDir:a__namespace.optional(a__namespace.string(),"plugins"),pluginsHmr:a__namespace.optional(a__namespace.boolean(),true),autoCleanUp:cn,limiter:sn,citation:on,fakeReply:rn,sticker:an}),ln=a__namespace.object({authType:a__namespace.literal("pairing"),phoneNumber:a__namespace.number()}),pn=a__namespace.object({authType:a__namespace.literal("qr")}),wt=a__namespace.union([a__namespace.object({...ln.entries,...kt.entries}),a__namespace.object({...pn.entries,...kt.entries})]),si=a__namespace.picklist(["connection","messages","calls"]);var Y=a__namespace.union([a__namespace.pipe(a__namespace.string(),a__namespace.url()),a__namespace.pipe(a__namespace.string(),a__namespace.base64()),a__namespace.custom(i=>i instanceof Buffer)]),bt=a__namespace.looseObject({text:a__namespace.string()}),un=a__namespace.looseObject({image:Y,caption:a__namespace.optional(a__namespace.string())}),mn=a__namespace.looseObject({audio:Y,caption:a__namespace.optional(a__namespace.string()),ptt:a__namespace.optional(a__namespace.boolean())}),dn=a__namespace.looseObject({video:Y,caption:a__namespace.optional(a__namespace.string()),ptv:a__namespace.optional(a__namespace.boolean())}),gn=a__namespace.looseObject({sticker:Y,shape:a__namespace.optional(je),caption:a__namespace.optional(a__namespace.string())}),fn=a__namespace.looseObject({document:Y,caption:a__namespace.optional(a__namespace.string()),fileName:a__namespace.optional(a__namespace.string())}),yn=a__namespace.looseObject({location:a__namespace.optional(a__namespace.object({latitude:a__namespace.number(),longitude:a__namespace.number(),url:a__namespace.optional(a__namespace.pipe(a__namespace.string(),a__namespace.url())),title:a__namespace.optional(a__namespace.string()),footer:a__namespace.optional(a__namespace.string())}))}),hn=a__namespace.looseObject({contacts:a__namespace.object({title:a__namespace.optional(a__namespace.string()),contacts:a__namespace.array(a__namespace.object({fullname:a__namespace.string(),phoneNumber:a__namespace.number(),organization:a__namespace.optional(a__namespace.string())}))})}),vn=a__namespace.object({poll:a__namespace.object({name:a__namespace.string(),answers:a__namespace.array(a__namespace.string()),isMultiple:a__namespace.optional(a__namespace.boolean(),false)})}),xt=a__namespace.object({replied:a__namespace.optional(a__namespace.custom(i=>typeof i=="object"&&i!==null)),isForwardedMany:a__namespace.optional(a__namespace.boolean()),isViewOnce:a__namespace.optional(a__namespace.boolean()),banner:a__namespace.optional(a__namespace.custom(i=>typeof i=="object"&&i!==null)),buttons:a__namespace.optional(vt)});a__namespace.picklist(["forward","button","edit","delete"]);var kn=a__namespace.union([bt,un,mn,dn,gn,fn,yn,hn,vn]),St=a__namespace.union([a__namespace.string(),a__namespace.intersect([kn,a__namespace.omit(xt,["buttons"])])]),Mt=a__namespace.intersect([bt,a__namespace.omit(xt,["banner"])]);var de=class{toNativeSimple(e){return e.map(({id:t,text:n})=>({name:"quick_reply",buttonParamsJson:JSON.stringify({display_text:n,id:t})}))}toNativeInteractive(e){let t={quick_reply:n=>({display_text:n.text,id:n.id}),cta_url:n=>({display_text:n.text,url:n.url,merchant_url:n.url}),cta_copy:n=>({display_text:n.text,id:n.id,copy_code:n.copy}),cta_call:n=>({display_text:n.text,phone_number:n.phoneNumber}),single_select:n=>({title:n.text,sections:n.section})};return e.map(n=>({name:n.type,buttonParamsJson:JSON.stringify(t[n.type](n))}))}async build(e,t){let n=v(e).buttons,o=n?.data||[],s=n?.type;if(s==="carousel"){let u=[];for(let l of o){let g={};(l.header?.image||l.header?.video)&&(g=await _t.prepareWAMessageMedia(l.header.image?{image:{url:l.header.image}}:{video:{url:l.header.video}},{upload:t.waUploadToServer})),u.push({body:_t.proto.Message.InteractiveMessage.Body.fromObject({text:l.body}),footer:l.footer?_t.proto.Message.InteractiveMessage.Footer.fromObject({text:l.footer}):void 0,header:_t.proto.Message.InteractiveMessage.Header.fromObject({title:l.header?.title||"",subtitle:l.header?.subtitle||"",hasMediaAttachment:!!(l.header?.image||l.header?.video||l.header?.hasMediaAttachment),...g}),nativeFlowMessage:_t.proto.Message.InteractiveMessage.NativeFlowMessage.fromObject({buttons:this.toNativeInteractive(l.nativeFlow)})});}return {body:_t.proto.Message.InteractiveMessage.Body.fromObject({text:v(e).text}),footer:n.footer?_t.proto.Message.InteractiveMessage.Footer.fromObject({text:n.footer}):void 0,carouselMessage:_t.proto.Message.InteractiveMessage.CarouselMessage.fromObject({cards:u})}}let r=s=="simple"?this.toNativeSimple(o):this.toNativeInteractive(o);return {body:{text:v(e).text},footer:n.footer?{text:n.footer}:void 0,nativeFlowMessage:{buttons:r}}}async send(e,t,n){let o=d.get("socket"),s=o?.authState?.creds?.me?.id||o?.user?.id,r=await this.build(t,o),u=v(t).buttons?.type==="carousel",l=_t.generateWAMessageFromContent(e,u?{viewOnceMessage:{message:{messageContextInfo:{deviceListMetadata:{},deviceListMetadataVersion:2},interactiveMessage:r}}}:{interactiveMessage:r},{userJid:s,messageId:_t.generateMessageIDV2(s),...n});return await o.relayMessage(e,l.message,{messageId:l.key.id,...n,additionalNodes:[{tag:"biz",attrs:{},content:[{tag:"interactive",attrs:{type:"native_flow",v:"1"},content:[{tag:"native_flow",attrs:{v:"9",name:"mixed"}}]}]}]}),o.config?.emitOwnEvents&&!_t.isJidGroup(e)&&process.nextTick(()=>o.upsertMessage?.(l,"append")),l}};var ge=class{constructor(e){this.client=e;}async signal(e,t,n,o){n!="delete"&&(n=="button"?t=H(Mt,t):t=H(St,t));let s=d.get("socket"),r={},u={},l=typeof t=="string",g=(k,T)=>typeof k=="object"&&k!==null&&T in k,w=this.client.options?.fakeReply?.provider,O=this.client.options?.autoMentions,b=this.client.options?.autoPresence,X=g(t,"replied"),ee=g(t,"banner"),be=g(t,"isViewOnce"),q=n=="button",G=g(t,"image"),V=g(t,"video"),D=g(t,"audio"),z=g(t,"sticker"),B=g(t,"document"),xe=g(t,"location"),te=g(t,"contacts"),M=g(t,"poll"),N=G||V||D||z||B,_=l?t:Ee([t],["text","caption"]);if(b&&(D?await s.sendPresenceUpdate("recording",e):await s.sendPresenceUpdate("composing",e)),O&&(r={...r,mentions:Ne(_),contextInfo:{mentionedJid:Ne(_)}}),X&&(u.quoted=v(t).replied,w&&(u.quoted.key.remoteJid=_e[w],u.quoted.key.participant=_e[w])),ee&&(r={...r,contextInfo:{externalAdReply:v(t).banner}},r.contextInfo.externalAdReply.mediaType=1),be&&(r={...r,viewOnce:v(t)?.isViewOnce}),_&&(r={...r,text:_,caption:_},N&&delete v(r).text),N){let k=Ee([t],["image","video","audio","sticker","document"]);if(G&&(r={...r,image:await new mediaProcess.Media(k).image.toJpeg(),jpegThumbnail:await new mediaProcess.Media(k).thumbnail.get()}),V){let T=v(t)?.ptv;r={...r,video:await new mediaProcess.Media(k).video.toMp4(),ptv:T,jpegThumbnail:await new mediaProcess.Media(k).thumbnail.get()};}if(D){let T=v(t)?.ptt;r={...r,audio:await new mediaProcess.Media(k).audio.toOpus(),ptt:T,mimetype:T?"audio/ogg; codecs=opus":"audio/mpeg"};}if(z){let T=v(t)?.shape;r={...r,sticker:await new mediaProcess.Media(k).sticker.create({...this.client.options?.sticker,shape:T})};}if(B){let T=await new mediaProcess.Media(k).document.create(),R=v(t).fileName||`Document_${T.fileName.slice(-6)}`,Se=R.includes(".")?R.substring(0,R.lastIndexOf(".")):R;r={...r,...T,fileName:`${Se}.${T.ext} - Zaileys`};}}if(xe){let k=v(t).location;r={...r,location:{degreesLatitude:k.latitude,degreesLongitude:k.longitude,url:k.url,address:k.footer,name:k.title}};}if(te){let k=v(t)?.contacts,T=k?.contacts.map(R=>{let Se=["BEGIN:VCARD","VERSION:3.0",`FN:${R.fullname}`,`ORG:${R.organization||""}`,`TEL;type=CELL;type=VOICE;waid=${R.phoneNumber}:${R.phoneNumber}`,"END:VCARD"].join(`
|
|
6
|
+
`);return {displayName:R.fullname,vcard:Se}});r={...r,contacts:{displayName:k?.title,contacts:T}};}if(M){let k=v(t)?.poll;r={...r,poll:{name:k.name,values:k.answers,selectableCount:k.isMultiple?1:0,toAnnouncementGroup:true}};}return n=="forward"&&(r={...r,contextInfo:{...v(r).contextInfo,isForwarded:true,forwardingScore:v(t).isForwardedMany?9999:1}}),n=="edit"&&(r={...r,edit:o?.key},await s.sendPresenceUpdate("paused",e)),n=="delete"&&(r={...r,delete:o?.key},await s.sendPresenceUpdate("paused",e)),q?await new de().send(e,t,u):await s.sendMessage(e,v(r),u)}async send(e,t){return await this.signal(e,t)}async forward(e,t){return await this.signal(e,t,"forward")}async button(e,t){return await this.signal(e,t,"button")}async edit(e,t){return await this.signal(e.key.remoteJid,t,"edit",e)}async delete(e){return Array.isArray(e)?Promise.all(e.map(t=>this.signal(t.key.remoteJid,{},"delete",t))):await this.signal(e.key.remoteJid,{},"delete",e)}async presence(e,t){let n=d.get("socket"),o={typing:"composing",recording:"recording",online:"available",offline:"unavailable",paused:"paused"};return await n.sendPresenceUpdate(o[t],e)}async reaction(e,t){return await d.get("socket").sendMessage(e.key.remoteJid,{react:{text:t,key:e?.key}})}async memberLabel(e,t){return await d.get("socket").relayMessage(e,{protocolMessage:{type:30,memberLabel:{label:t,labelTimestamp:Date.now()}}},{})}};var Fe=class{constructor(e){this.client=e;}async create(e,t){return await d.get("socket").communityCreate(e,t)}async createGroup(e,t,n){return await d.get("socket").communityCreateGroup(e,t,n)}async leave(e){return await d.get("socket").communityLeave(e)}async metadata(e){return await d.get("socket").communityMetadata(e)}async update(e,t,n){let o=d.get("socket");switch(t){case "subject":return await o.communityUpdateSubject(e,n);case "description":return await o.communityUpdateDescription(e,n)}}async group(e,t,n){let o=d.get("socket");switch(t){case "link":if(!n)throw "Group JID is required for linking";return await o.communityLinkGroup(e,n);case "unlink":if(!n)throw "Group JID is required for unlinking";return await o.communityUnlinkGroup(e,n);case "linked":return await o.communityFetchLinkedGroups(e)}}async participants(e,t,n,o){let s=d.get("socket");switch(t){case "list":return await s.communityRequestParticipantsList(e);case "request-update":return await s.communityRequestParticipantsUpdate(e,o,v(n));case "update":if(!n||!o)throw "Action and participants are required for update";return await s.communityParticipantsUpdate(e,o,v(n));case "all":return await s.communityFetchAllParticipating()}}async invite(e,t,...n){let o=d.get("socket");switch(t){case "code":return await o.communityInviteCode(e);case "revoke":return await o.communityRevokeInvite(e);case "accept":return await o.communityAcceptInvite(e);case "info":return await o.communityGetInviteInfo(e);case "revokeV4":return await o.communityRevokeInviteV4(e,n[0]);case "acceptV4":return await o.communityAcceptInviteV4(e,n[0])}}async settings(e,t,n){let o=d.get("socket");switch(t){case "ephemeral":return await o.communityToggleEphemeral(e,n);case "update":return await o.communitySettingUpdate(e,n);case "memberAdd":return await o.communityMemberAddMode(e,n);case "approval":return await o.communityJoinApprovalMode(e,n)}}},fe=class{constructor(e){this.mlient=e;this.community=new Fe(e);}community};var Le=class{constructor(e){this.client=e;}async create(e,t){return await d.get("socket").groupCreate(e,t)}async participant(e,t,n){return await d.get("socket").groupParticipantsUpdate(e,t,n)}async profile(e,t,n){let o=d.get("socket"),s=Buffer.isBuffer(t);switch(n){case "subject":if(!s)return await o.groupUpdateSubject(e,t);case "description":if(!s)return await o.groupUpdateDescription(e,t);case "picture":return await o.updateProfilePicture(e,await new mediaProcess.Media(t).toBuffer())}}async setting(e,t){let n=d.get("socket");switch(t){case "open":return await n.groupSettingUpdate(e,"not_announcement");case "close":return await n.groupSettingUpdate(e,"announcement");case "locked":return await n.groupSettingUpdate(e,t);case "unlocked":return await n.groupSettingUpdate(e,t);case "all_member_add":return await n.groupMemberAddMode(e,t);case "admin_add":return await n.groupMemberAddMode(e,t)}}async leave(e){return await d.get("socket").groupLeave(e)}async inviteCode(e,t){let n=d.get("socket");switch(t){case "code":return await n.groupInviteCode(e);case "revoke":return await n.groupRevokeInvite(e);case "accept":return await n.groupAcceptInvite(e);case "info":return await n.groupGetInviteInfo(e)}}async metadata(e){let t=d.get("socket"),n=P.get(e);if(n)return n;let o=await t.groupMetadata(e);return o&&P.set(e,o),o}async requestJoin(e,t,n){let o=d.get("socket");switch(n){case "approve":return await o.groupRequestParticipantsUpdate(e,t,n);case "reject":return await o.groupRequestParticipantsUpdate(e,t,n)}}async requestJoinList(e){return await d.get("socket").groupRequestParticipantsList(e)}async fetchAllGroups(){return await d.get("socket").groupFetchAllParticipating()}async ephemeral(e,t){let n=d.get("socket"),o={off:0,"24h":86400,"7d":604800,"90d":7776e3};return await n.groupToggleEphemeral(e,o[t])}},ye=class{constructor(e){this.glient=e;this.group=new Le(e);}group};var Ue=class{constructor(e){this.client=e;}async create(e,t){return await d.get("socket").newsletterCreate(e,t)}async action(e,t){let n=d.get("socket");switch(t){case "follow":return await n.newsletterFollow(e);case "unfollow":return await n.newsletterUnfollow(e);case "mute":return await n.newsletterMute(e);case "unmute":return await n.newsletterUnmute(e);}}async update(e,t,n){let o=d.get("socket"),s=Buffer.isBuffer(t);switch(n){case "name":if(!s)return await o.newsletterUpdateName(e,t);case "description":if(!s)return await o.newsletterUpdateDescription(e,t);case "picture":return await o.newsletterUpdatePicture(e,await new mediaProcess.Media(t).toBuffer())}}async metadata(e,t){return await d.get("socket").newsletterMetadata(t,e)}async subscribers(e){return await d.get("socket").newsletterSubscribers(e)}async reaction(e,t,n){return await d.get("socket").newsletterReactMessage(e,t,n)}async fetchMessages(e,t,n,o){let s=d.get("socket"),r=n.getTime()/1e3,u=o.getTime()/1e3;return await s.newsletterFetchMessages(e,t,r,u)}async adminCount(e){return await d.get("socket").newsletterAdminCount(e)}async changeOwner(e,t){return await d.get("socket").newsletterChangeOwner(e,t)}async demote(e,t){return await d.get("socket").newsletterDemote(e,t)}async delete(e){return await d.get("socket").newsletterDelete(e)}async removePicture(e){return await d.get("socket").newsletterRemovePicture(e)}},he=class{constructor(e){this.nlient=e;this.newsletter=new Ue(e);}newsletter};var Be=class{constructor(e){this.client=e;}async block(e){return await d.get("socket").updateBlockStatus(e,"block")}async unblock(e){return await d.get("socket").updateBlockStatus(e,"unblock")}async lastSeen(e){return await d.get("socket").updateLastSeenPrivacy(e)}async online(e){return await d.get("socket").updateOnlinePrivacy(e)}async picture(e){return await d.get("socket").updateProfilePicturePrivacy(e)}async status(e){return await d.get("socket").updateStatusPrivacy(e)}async readReceipt(e){return await d.get("socket").updateReadReceiptsPrivacy(e)}async groupsAdd(e){return await d.get("socket").updateGroupsAddPrivacy(e)}async ephemeral(e){let t=d.get("socket"),n={off:0,"24h":86400,"7d":604800,"90d":7776e3};return await t.updateDefaultDisappearingMode(n[e])}async blocklist(){return await d.get("socket").fetchBlocklist()}async getSettings(){return await d.get("socket").fetchPrivacySettings(true)}},ve=class{constructor(e){this.plient=e;this.privacy=new Be(e);}privacy};var Gi=a__namespace.object({status:a__namespace.picklist(["connecting","open","close","reload","syncing"]),authType:a__namespace.picklist(["pairing","qr"]),authTimeout:a__namespace.optional(a__namespace.number()),syncProgress:a__namespace.optional(a__namespace.number()),syncCompleted:a__namespace.optional(a__namespace.boolean(),false),qr:a__namespace.optional(a__namespace.string()),code:a__namespace.optional(a__namespace.string())});var Cn=a__namespace.picklist(["unknown","android","ios","desktop","web"]),An=a__namespace.picklist(["text","album","image","contact","location","document","audio","video","protocol","contacts","highlyStructured","sendPayment","requestPayment","groupStatusMention","statusMention","declinePaymentRequest","cancelPaymentRequest","template","sticker","groupInvite","product","deviceSent","lists","viewOnce","order","ephemeral","invoice","buttons","paymentInvite","interactive","reaction","interactiveResponse","pollCreation","pollUpdate","keepInChat","requestPhoneNumber","scheduledCallCreation","groupMentioned","pinInChat","scheduledCallEdit","ptv","botInvoke","callLog","encComment","bcall","lottieSticker","event","comment","placeholder","encEventUpdate"]),Tt=a__namespace.object({channelId:a__namespace.string(),uniqueId:a__namespace.string(),chatId:a__namespace.string(),chatType:An,receiverLid:a__namespace.string(),receiverId:a__namespace.string(),receiverName:a__namespace.string(),roomId:a__namespace.string(),roomLid:a__namespace.nullable(a__namespace.string()),roomName:a__namespace.nullable(a__namespace.string()),senderLid:a__namespace.string(),senderId:a__namespace.string(),senderName:a__namespace.string(),senderDevice:Cn,timestamp:a__namespace.number(),text:a__namespace.nullable(a__namespace.string()),mentions:a__namespace.array(a__namespace.string()),links:a__namespace.array(a__namespace.string()),isBot:a__namespace.boolean(),isFromMe:a__namespace.boolean(),isPrefix:a__namespace.boolean(),isSpam:a__namespace.boolean(),isTagMe:a__namespace.boolean(),isStatusMention:a__namespace.boolean(),isGroupStatusMention:a__namespace.boolean(),isHideTags:a__namespace.boolean(),isGroup:a__namespace.boolean(),isNewsletter:a__namespace.boolean(),isQuestion:a__namespace.boolean(),isStory:a__namespace.boolean(),isViewOnce:a__namespace.boolean(),isEdited:a__namespace.boolean(),isDeleted:a__namespace.boolean(),isPinned:a__namespace.boolean(),isUnPinned:a__namespace.boolean(),isBroadcast:a__namespace.boolean(),isEphemeral:a__namespace.boolean(),isForwarded:a__namespace.boolean(),citation:a__namespace.nullable(a__namespace.record(a__namespace.string(),a__namespace.custom(i=>typeof i=="function"))),media:a__namespace.nullable(a__namespace.looseObject({buffer:a__namespace.custom(i=>typeof i=="function"),stream:a__namespace.custom(i=>typeof i=="function")})),injection:a__namespace.optional(a__namespace.record(a__namespace.string(),a__namespace.any()),{}),message:a__namespace.custom(i=>typeof i=="function")}),Ji=a__namespace.object({...Tt.entries,replied:a__namespace.nullable(Tt)});var Qi=a__namespace.object({callId:a__namespace.string(),callerId:a__namespace.string(),roomId:a__namespace.string(),roomName:a__namespace.string(),date:a__namespace.date(),offline:a__namespace.boolean(),status:a__namespace.picklist(["accept","offer","reject","ringing","terminate","timeout"]),isVideo:a__namespace.boolean(),isGroup:a__namespace.boolean()});var ke=class{constructor(e){this.client=e;this.initialize();}logsInitialized=false;logsDisplayed=false;isReady=false;getRoomColor(e){return e?.isNewsletter?"blue":e?.isGroup?e?.isGroup?"lime":"dimgray":"orange"}initialize(){if(!this.client.options.showLogs||this.logsInitialized)return;this.logsInitialized=true;let e=async({status:t})=>{t==="open"&&(this.isReady=true,this.logsDisplayed||setTimeout(()=>{this.displayIndicator();},500));};f.events.on("connection",e);}displayIndicator(){this.logsDisplayed||(this.logsDisplayed=true,console.log(),f.spinner.info("Logs Indicator:"),console.log(y(" \u2022","orange")+" Private Chat"),console.log(y(" \u2022","lime")+" Group Chat"),console.log(y(" \u2022","blue")+" Newsletter Chat"),console.log());}message(e){if(!this.isReady)return;let t=v(this.getRoomColor(e)),n=e?.text?.toLowerCase()?.match("zaileys"),o=this.client.options?.fancyLogs,s=y(`[${new Date(e?.timestamp).toTimeString().split(" ")[0]}]`,"dimgray"),r=y(`${e?.roomName}`,t),u=e?.text?.slice(0,300)||"",l=u?.length>=300?"...":"";if(o){let g=y("\u2501".repeat(50),"dimgray"),w=y("\u2192","dimgray"),O=y("\u2022",t),b=`
|
|
7
|
+
${g}
|
|
8
|
+
`;b+=`${O} ${s} ${w} ${r}
|
|
9
|
+
`,e?.isNewsletter?(b+=` ${y("\u{1F4E2} Room:","dimgray")} ${y(`${e?.roomName}`,t)}
|
|
10
|
+
`,b+=` ${y("\u{1F194} ID:","dimgray")} ${y(`${E(e?.roomId)}`,"gray")}
|
|
11
|
+
`):(b+=` ${y("\u{1F464} Sender:","dimgray")} ${y(`${e?.senderName}`,t)}
|
|
12
|
+
`,b+=` ${y("\u{1F194} ID:","dimgray")} ${y(`${E(e?.senderId)}`,"gray")}
|
|
13
|
+
`,e?.isGroup&&(b+=` ${y("\u{1F3E0} Group:","dimgray")} ${y(`${e?.roomName}`,"lime")}
|
|
14
|
+
`)),b+=` ${y("\u{1F4DD} Type:","dimgray")} ${y(`${e?.chatType||"text"}`,"cyan")}
|
|
15
|
+
`,b+=` ${y("\u{1F4AC} Text:","dimgray")} ${y(u+l,n?["#ff5f6d","#ffc371"]:"brown")}
|
|
16
|
+
`,e?.isSpam&&(b+=` ${y("\u26A0\uFE0F Spam:","dimgray")} ${y("Yes","red")}
|
|
17
|
+
`),e?.isForwarded&&(b+=` ${y("\u21AA\uFE0F Forwarded:","dimgray")} ${y("Yes","yellow")}
|
|
18
|
+
`),e?.isEdited&&(b+=` ${y("\u270F\uFE0F Edited:","dimgray")} ${y("Yes","yellow")}
|
|
19
|
+
`),b+=`${g}`,console.log(b);}else {let g=`${s} \u2192 ${r}
|
|
20
|
+
`;e?.isNewsletter?g+=`${y("[room]","dimgray")} \u2192 ${y(`${e?.roomName} (${E(e?.roomId)})`,t)}
|
|
21
|
+
`:g+=`${y("[sender]","dimgray")} \u2192 ${y(`${e?.senderName} (${E(e?.senderId)})`,t)}
|
|
22
|
+
`,g+=`${y(`[${e?.chatType||"unknown"}]`,"dimgray")} \u2192 ${y(u+l,n?["#ff5f6d","#ffc371"]:"brown")}
|
|
23
|
+
`,g+="\u2014",console.log(g);}}call(e){if(!this.isReady)return;let t=v(this.getRoomColor(e)),n=y(`[${new Date(e?.date).toTimeString().split(" ")[0]}]`,"dimgray"),o=y(`${e?.roomName}`,t),s=`${n} \u2192 ${o}
|
|
24
|
+
`;s+=`${y("[caller]","dimgray")} \u2192 ${y(`${e?.callerId} (${E(e?.callerId)})`,t)}
|
|
25
|
+
`,s+=`${y(`[${e?.status}]`,"dimgray")} \u2192 ${y(e?.isVideo?"Video Call":"Voice Call","brown")}
|
|
26
|
+
`,s+="\u2014",console.log(s);}};var we=class{stack=[];use(e){return this.stack.push(e),this}async run(e){let t=-1,n=async o=>{if(o<=t)throw "next() called multiple times";t=o;let s=this.stack[o];if(s)try{await s(e,()=>n(o+1));}catch(r){throw console.error("Middleware error:",r),r}};await n(0);}};var Pn=1e4,Z=class{plugins=[];pluginsDir;globalEnabled=true;disabledPlugins=new Set;hmr=false;watcher=null;reloadTimer=null;constructor(e="plugins",t=false){this.pluginsDir=W__namespace.isAbsolute(e)?e:W__namespace.join(process.cwd(),e),this.hmr=t;}getPluginId(e){return W__namespace.relative(this.pluginsDir,e)}async load(){let t=(await U__namespace.promises.readdir(this.pluginsDir,{withFileTypes:true,recursive:true}).catch(()=>[])).filter(o=>o.isFile()&&/(?<!\.d)\.[jt]s$/.test(o.name)).map(o=>{let s=o.parentPath??o.path??this.pluginsDir;return {filePath:W__namespace.join(s,o.name),parent:W__namespace.relative(this.pluginsDir,s).split(W__namespace.sep)[0]||null}}),n=await Promise.all(t.map(async({filePath:o,parent:s})=>{try{let{mtimeMs:r}=await U__namespace.promises.stat(o),g=(await import(`${url.pathToFileURL(o).href}?v=${Math.floor(r)}`)).default;if(g?.default&&(g=g.default),g?.handler&&g?.config){let w=this.getPluginId(o);return {...g,filePath:o,parent:s,enabled:!this.disabledPlugins.has(w)}}}catch(r){console.error(`[Plugins] Failed to load plugin ${o}:`,r);}return null}));this.plugins=n.filter(o=>o!==null);}setupHmr(){if(!(!this.hmr||this.watcher))try{if(!U__namespace.existsSync(this.pluginsDir))return;this.watcher=U__namespace.watch(this.pluginsDir,{recursive:!0},(e,t)=>{t&&/(?<!\.d)\.[jt]s$/.test(t)&&(t.includes("node_modules")||(this.reloadTimer&&clearTimeout(this.reloadTimer),this.reloadTimer=setTimeout(async()=>{await this.reload(),this.reloadTimer=null;},300)));});}catch(e){console.error("[Plugins] Failed to setup HMR:",e);}}async execute(e,t){if(!this.globalEnabled)return;let n=t.messages?.text||"";for(let o of this.plugins)if(o.enabled)try{this.match(n,o.config.matcher)&&await Promise.race([o.handler(e,t),new Promise((r,u)=>setTimeout(()=>u(new Error(`Plugin timeout: ${this.getPluginId(o.filePath)}`)),Pn))]);}catch(s){console.error("[Plugins] Error executing plugin:",s);}}match(e,t){return t.some(n=>n instanceof RegExp?n.test(e):e===n||e.startsWith(n+" "))}enableAll(){this.globalEnabled=true,this.plugins.forEach(e=>e.enabled=true),this.disabledPlugins.clear();}disableAll(){this.globalEnabled=false;}enable(e){let t=e.toString(),n=0;for(let o of this.plugins)o.config.matcher.some(s=>s.toString()===t)&&(o.enabled=true,this.disabledPlugins.delete(this.getPluginId(o.filePath)),n++);return n}disable(e){let t=e.toString(),n=0;for(let o of this.plugins)o.config.matcher.some(s=>s.toString()===t)&&(o.enabled=false,this.disabledPlugins.add(this.getPluginId(o.filePath)),n++);return n}enableByParent(e){let t=0;return this.plugins.forEach(n=>{n.parent===e&&(n.enabled=true,this.disabledPlugins.delete(this.getPluginId(n.filePath)),t++);}),t}disableByParent(e){let t=0;return this.plugins.forEach(n=>{n.parent===e&&(n.enabled=false,this.disabledPlugins.add(this.getPluginId(n.filePath)),t++);}),t}isEnabled(){return this.globalEnabled}getLoadedPlugins(){return this.plugins}getPluginsInfo(){return this.plugins.map(e=>({matcher:e.config.matcher,metadata:e.config.metadata,parent:e.parent,enabled:e.enabled}))}async reload(){let e=this.plugins;try{await this.load(),console.log(`[Plugins] Reloaded ${this.plugins.length} plugins.`);}catch(t){this.plugins=e,console.error("[Plugins] Reload failed, keeping previous plugins:",t);}}stopHmr(){this.reloadTimer&&(clearTimeout(this.reloadTimer),this.reloadTimer=null),this.watcher&&(this.watcher.close(),this.watcher=null);}},gr=(i,e)=>({handler:i,config:e});var Ct=class{_ready;logs;middleware=new we;plugins;health;cleanup;options;constructor(e){this.options=H(wt,e);let t=Xe(this,[new ge(this),new ye(this),new ve(this),new he(this),new fe(this)]);return this.plugins=new Z(this.options.pluginsDir,this.options.pluginsHmr),this._ready=this.initialize(t),t}async initialize(e){await ut(),await mediaProcess.initializeFFmpeg(this.options.disableFFmpeg),this.plugins=new Z(this.options.pluginsDir,this.options.pluginsHmr);let t=console.info;console.info=(...o)=>{if(o.some(r=>typeof r=="string"&&(r.includes("Closing session:")||r.includes("Opening session:")))){this.options.showLogs&&f.spinner.info("Encryption session rotated securely.");return}t(...o);},this.health=new oe(this),this.cleanup=new se(this),this.options.showSpinner||(f.spinner=new Proxy(f.spinner,{get:(o,s)=>typeof o[s]=="function"?()=>o:o[s]})),this.options.autoCleanUp?.enabled&&this.cleanup.start(),await Ze(this),await this.plugins.load(),this.plugins.setupHmr(),new me(e||this),this.logs||(this.logs=new ke(this));let n=async o=>{try{this.socket&&this.socket.end(new Error("Process Terminated")),await S.close(5e3);}catch{}process.exit();};process.on("SIGINT",n),process.on("SIGTERM",n),process.on("uncaughtException",o=>{console.error("FATAL UNCAUGHT:",o),n();});}ready(){return this._ready}db(e){return Ve(this.options.session,e)}on(e,t){f.events.on(e,t);}use(e){return this.middleware.use(e),this}get socket(){return d.get("socket")}async getRoomName(e){let t=d.get("socket"),n=e.endsWith("@g.us"),o=null;if(n){let s=P.get(e);if(s)o=s.subject;else {let r=await t.groupMetadata(e);r&&(P.set(e,r),o=r.subject);}}return $(o)}inject(e,t){j.set(e,t);}getInjection(e){return j.get(e)}removeInjection(e){j.delete(e);}clearInjections(){j.clear();}};
|
|
26
27
|
/*
|
|
27
|
-
* Copyright (c)
|
|
28
|
+
* Copyright (c) 2026 zaadevofc.
|
|
28
29
|
* All rights reserved.
|
|
29
30
|
* Licensed under the MIT License.
|
|
30
31
|
* See LICENSE file for details.
|
|
31
32
|
|
|
32
33
|
* Author: zaadevofc
|
|
33
|
-
* Last build time:
|
|
34
|
+
* Last build time: 3/17/2026 11:53:16 AM
|
|
34
35
|
*
|
|
35
36
|
* Repository: git+https://github.com/zeative/zaileys.git
|
|
36
|
-
*/exports.BaseMessagesType=
|
|
37
|
+
*/exports.BaseMessagesType=Tt;exports.ButtonCarouselCardType=tn;exports.ButtonCarouselType=nn;exports.ButtonInteractiveCallType=ht;exports.ButtonInteractiveCopyType=yt;exports.ButtonInteractiveReplyType=gt;exports.ButtonInteractiveSingleSelectType=Zt;exports.ButtonInteractiveType=Xt;exports.ButtonInteractiveUrlType=ft;exports.ButtonSimpleType=en;exports.ButtonType=vt;exports.CitationType=on;exports.Client=Ct;exports.ClientAuthPairingType=ln;exports.ClientAuthQRType=pn;exports.ClientBaseType=kt;exports.ClientOptionsType=wt;exports.ClientStickerOptionsType=an;exports.ClientStickerShapeType=je;exports.DEVICE_ENUM_TYPES=Cn;exports.EventEnumType=si;exports.FakeReplyType=rn;exports.LimiterType=sn;exports.ListenerCallsType=Qi;exports.ListenerConnectionType=Gi;exports.ListenerMessagesType=Ji;exports.MESSAGE_ENUM_TYPES=An;exports.Plugins=Z;exports.autoCleanUp=cn;exports.cleanJid=E;exports.cleanMediaObject=at;exports.definePlugins=gr;exports.escapeRegExp=ot;exports.extractJids=Ne;exports.extractUrls=st;exports.findGlobalWord=Q;exports.findNestedByKeys=Fs;exports.generateId=We;exports.getDeepContent=re;exports.getLatestLibVersion=ct;exports.getUsersMentions=rt;exports.ignoreLint=v;exports.logColor=y;exports.modifyFn=Ls;exports.normalizeText=$;exports.numbersToJids=Vs;exports.pickKeysFromArray=Ee;exports.randomize=js;exports.registerAuthCreds=Ze;exports.removeAuthCreds=$e;exports.resolveJids=ie;exports.shuffleString=_s;exports.toJson=Oe;exports.toString=K;exports.useAuthState=Ke;Object.keys(mediaProcess).forEach(function(k){if(k!=='default'&&!Object.prototype.hasOwnProperty.call(exports,k))Object.defineProperty(exports,k,{enumerable:true,get:function(){return mediaProcess[k]}})});
|