JustJoin commited on
Commit
d85b9cd
·
verified ·
1 Parent(s): 02b9368

Upload 9 files

Browse files
.gitignore ADDED
File without changes
agents/jadwalAgent.js ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { GoogleGenerativeAI } from "@google/generative-ai";
2
+
3
+ const genAI = new GoogleGenerativeAI(process.env.API_KEY);
4
+ const model = genAI.getGenerativeModel({ model: "gemini-1.5-flash" });
5
+
6
+ /**
7
+ * Menganalisis data CSV untuk menjawab pertanyaan seputar jadwal
8
+ * @param {string} pesanUser - Pertanyaan dari guru
9
+ * @param {string} dataJadwalCSV - Data mentah string CSV dari Google Sheets
10
+ * @param {Array} riwayat - Riwayat obrolan dari index.js (Bawaan Kosong jika chat baru)
11
+ * @returns {Promise<string>} - Jawaban rapi hasil analisa Gemini
12
+ */
13
+ export async function jalankanJadwalAgent(pesanUser, dataJadwalCSV, riwayat = []) {
14
+ const promptSistem = `
15
+ Kamu adalah asisten admin Sekolah Minggu DNA Kids yang cerdas, ramah, dan sangat teliti.
16
+ Tugasmu adalah menjawab pertanyaan user berdasarkan DATA MENTAH CSV dari Google Sheets berikut ini:
17
+
18
+ ========== DATA JADWAL CSV ==========
19
+ ${dataJadwalCSV}
20
+ =====================================
21
+
22
+ ATURAN UTAMA:
23
+ 1. Jawablah secara singkat, padat, informatif, dan gunakan emoji Kristen/anak-anak yang ramah (seperti ✨, 🌟, 🙏, 📖).
24
+ 2. Jika data yang dicari user tidak ada di dalam CSV, katakan dengan jujur dan sopan bahwa jadwal belum tertera.
25
+ 3. Selalu asumsikan format tanggal pada CSV adalah HARI, TANGGAL-BULAN-TAHUN.
26
+ 4. Jangan berhalusinasi atau mengada-ada nama atau tanggal yang tidak tertera di data CSV.
27
+ `;
28
+
29
+ // 🟢 MENGUBAH ARRAY RIWAYAT MENJADI BLOK TEKS KONTEKS
30
+ const konteksRiwayat = riwayat.length > 0
31
+ ? `--- RIWAYAT PERCAKAPAN SEBELUMNYA (Gunakan sebagai konteks jika user menggunakan kata ganti seperti "kalau minggu depannya lagi?") ---\n` +
32
+ riwayat.map(h => `${h.role === 'user' ? 'User' : 'Asisten'}: ${h.content}`).join('\n') +
33
+ '\n=====================================\n'
34
+ : '';
35
+
36
+ try {
37
+ // 🟢 Menyisipkan konteksRiwayat di tengah sistem jaringan prompt
38
+ const hasil = await model.generateContent([promptSistem, konteksRiwayat, pesanUser]);
39
+ return hasil.response.text();
40
+ } catch (error) {
41
+ console.error("❌ Eror pada Jadwal Agent:", error);
42
+ return "Maaf ya, Kak, sistem kami sedang mengalami kendala saat membaca jadwal. Mohon hubungi koordinator. 🙏";
43
+ }
44
+ }
agents/lainnyaAgent.js ADDED
@@ -0,0 +1,41 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { GoogleGenerativeAI } from "@google/generative-ai";
2
+
3
+ const genAI = new GoogleGenerativeAI(process.env.API_KEY);
4
+ const model = genAI.getGenerativeModel({ model: "gemini-1.5-flash" });
5
+
6
+ /**
7
+ * Menangani obrolan kasual sekaligus menyaring etika komunikasi
8
+ * @param {string} pesanUser - Pesan santai atau gaul dari pengguna
9
+ * @param {Array} riwayat - Riwayat obrolan dari index.js
10
+ * @returns {Promise<string>} - Balasan ramah atau teguran kasih
11
+ */
12
+ export async function jalankanlainnyaAgent(pesanUser, riwayat = []) {
13
+ const promptSistem = `
14
+ Kamu adalah asisten virtual resmi Sekolah Minggu DNA Kids bernama "DNA Kids Assistant".
15
+ Kamu memiliki kepribadian yang ramah, asyik diajak ngobrol, ceria, namun tetap menjaga kesopanan Kristiani dan batasan profesional pelayanan gereja anak.
16
+
17
+ ATURAN KHUSUS (MENOLAK SLANG / TOXIC):
18
+ 1. Jika user menggunakan kata-kata kasar, toxic, slang jalanan liar (seperti anjir, mengkece, njir, atau bahasa tongkrongan kasar), atau mencoba curhat masalah pacaran/romantis remaja, kamu WAJIB MENOLAKNYA.
19
+ 2. Tolak/tegur secara halus dan penuh kasih. Ingatkan mereka bahwa ini adalah saluran resmi pelayanan anak DNA Kids, lalu belokkan kembali pembicaraan untuk menawarkan bantuan info seputar Sekolah Minggu.
20
+
21
+ Gaya Bicara Umum:
22
+ - Selalu sapa pengguna dengan sebutan "Kakak" atau "Kak".
23
+ - Gunakan emoji ceria (✨, 😊, 🙌, ☕, 🙏).
24
+ `;
25
+
26
+ // 🟢 MENGUBAH ARRAY RIWAYAT MENJADI BLOK TEKS KONTEKS
27
+ const konteksRiwayat = riwayat.length > 0
28
+ ? `--- RIWAYAT PERCAKAPAN SEBELUMNYA ---\n` +
29
+ riwayat.map(h => `${h.role === 'user' ? 'User' : 'Asisten'}: ${h.content}`).join('\n') +
30
+ '\n=====================================\n'
31
+ : '';
32
+
33
+ try {
34
+ // 🟢 Menyisipkan konteksRiwayat di tengah sistem jaringan prompt
35
+ const hasil = await model.generateContent([promptSistem, konteksRiwayat, pesanUser]);
36
+ return hasil.response.text();
37
+ } catch (error) {
38
+ console.error("❌ Eror pada lainnya Agent:", error);
39
+ return "Eh maaf Kak, aku mendadak nge-blank nih. Ada yang bisa aku bantu seputar Sekolah Minggu DNA Kids? 😊";
40
+ }
41
+ }
agents/routerAgent.js ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { GoogleGenerativeAI } from "@google/generative-ai";
2
+
3
+ // Inisialisasi SDK Gemini memakai API Key dari Environment Linux Colab
4
+ const genAI = new GoogleGenerativeAI(process.env.API_KEY);
5
+ const model = genAI.getGenerativeModel({ model: "gemini-1.5-flash" });
6
+
7
+ /**
8
+ * Memilah kategori pesan masuk dari user
9
+ * @param {string} pesanUser - Teks pesan WhatsApp masuk
10
+ * @returns {Promise<string>} - Mengembalikan string 'jadwal' atau 'lainnya'
11
+ */
12
+ export async function jalankanRouterAgent(pesanUser) {
13
+ const promptSistem = `
14
+ Kamu adalah sistem klasifikasi pesan otomatis (Router Agent) untuk WhatsApp Bot DNA Kids.
15
+ Tugasmu HANYA menganalisis pesan user dan mengembalikannya ke dalam satu kata kategori saja.
16
+
17
+ Kategori yang tersedia:
18
+ 1. 'jadwal' -> Jika pesan menanyakan tentang jadwal mengajar, siapa yang bertugas, tanggal tugas, absensi guru, atau hal terkait operasional mengajar Sekolah Minggu.
19
+ 2. 'lainnya' -> Jika pesan berisi sapaan (halo, pagi), ucapan terima kasih, obrolan santai, curhat, kata-kata gaul, atau luar konteks.
20
+
21
+ ATURAN MUTLAK:
22
+ Jawab HANYA dengan kata 'jadwal' atau 'lainnya'. Jangan memberikan tanda baca, penjelasan, atau kalimat tambahan apa pun. Jawab dengan huruf kecil semua.
23
+ `;
24
+
25
+ try {
26
+ // Mengirimkan instruksi sistem dan pesan user ke API Gemini
27
+ const hasil = await model.generateContent([promptSistem, pesanUser]);
28
+ const respon = hasil.response.text().trim().toLowerCase();
29
+
30
+ // Jaring pengaman (Sanitization) jika Gemini tidak patuh aturan mutlak
31
+ if (respon.includes('jadwal')) return 'jadwal';
32
+ return 'lainnya';
33
+
34
+ } catch (error) {
35
+ console.error("❌ Eror pada Router Agent:", error);
36
+ return 'lainnya'; // Fallback aman agar bot tidak mati jika API bermasalah
37
+ }
38
+ }
config/env.js ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import dotenv from 'dotenv';
2
+ dotenv.config();
3
+
4
+ export const KATA_PEMICU = process.env.KATA_PEMICU || '!bot';
5
+ export const ID_GRUP_ANNOUNCEMENT = process.env.ID_GRUP_ANNOUNCEMENT || '';
6
+ export const NOMOR_KOORDINATOR_JADWAL = process.env.NOMOR_KOORDINATOR_JADWAL || '';
7
+ export const GRUP_DI_IZINKAN = process.env.GRUP_DI_IZINKAN ? process.env.GRUP_DI_IZINKAN.split(',') : [];
8
+ export const API_KEY = process.env.API_KEY || '';
9
+
10
+ export const DATABASE_URL = process.env.DATABASE_URL || '';
11
+ export const SPREADSHEET_ID = process.env.SPREADSHEET_ID || '';
12
+
13
+ // 🟢 INI DIA YANG HILANG/DIREKUES OLEH GOOGLE SHEETS:
14
+ export const URL_EXPORT_CSV = process.env.URL_EXPORT_CSV || '';
15
+ export const SUPABASE_URL = process.env.SUPABASE_URL || '';
16
+ export const SUPABASE_KEY = process.env.SUPABASE_KEY || '';
index.js ADDED
@@ -0,0 +1,237 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import baileysPkg from '@whiskeysockets/baileys';
2
+ const { default: makeWASocket, DisconnectReason, fetchLatestBaileysVersion } = baileysPkg;
3
+ import { Boom } from '@hapi/boom';
4
+ import qrcode from 'qrcode-terminal';
5
+ import express from 'express';
6
+ import pino from 'pino';
7
+ import pg from 'pg'; // Driver penghubung ke PostgreSQL Supabase
8
+ import { KATA_PEMICU, ID_GRUP_ANNOUNCEMENT, GRUP_DI_IZINKAN, NOMOR_KOORDINATOR_JADWAL, DATABASE_URL } from './config/env.js';
9
+ import { periksaJadwalOtomatis, dataJadwalGlobal } from './services/googleSheets.js';
10
+
11
+ // MENYELARASKAN IMPORT: Menggunakan 3 Agen Baru Terpadu
12
+ import { jalankanRouterAgent } from './agents/routerAgent.js';
13
+ import { jalankanJadwalAgent } from './agents/jadwalAgent.js';
14
+ import { jalankanlainnyaAgent } from './agents/lainnyaAgent.js';
15
+
16
+ // --- TAMENG PERTAMA: INSTANSIASI EXPRESS SERVER (SINGLE PORT RULE) ---
17
+ const app = express();
18
+ const PORT = process.env.PORT || 7860; // Port standar yang diwajibkan Hugging Face Spaces
19
+
20
+ // Jalur Web Utama (Untuk cek status via browser)
21
+ app.get('/', (req, res) => {
22
+ res.status(200).send('Bot Pelayanan DNA Kids Aktif dan Berjalan di Hugging Face 🚀\n');
23
+ });
24
+
25
+ // Jalur Khusus PING (Untuk ditembak secara berkala oleh Cron-Job.org / Uptime)
26
+ app.get('/ping', (req, res) => {
27
+ const waktuWIB = new Date().toLocaleString("id-ID", { timeZone: "Asia/Jakarta" });
28
+ console.log(`⏰ [PING RECEIVED] Sinyal penjaga masuk pada pukul: ${waktuWIB} WIB. Menjaga kontainer tetap menyala.`);
29
+ res.status(200).send('Bot Terjaga!');
30
+ });
31
+
32
+ // Jalankan server di port tunggal
33
+ app.listen(PORT, () => {
34
+ console.log(`🌍 [SERVER HTTP] Server Express berhasil mengunci port ${PORT}. Siap menerima ketukan eksternal.`);
35
+ });
36
+
37
+ // --- KONFIGURASI MEMORI & STATE BOT ---
38
+ const cooldownChat = new Map();
39
+ const memoriSesiChat = new Map();
40
+
41
+ let urutanGagalKonek = 0;
42
+ const MAKSIMAL_GAGAL = 5;
43
+
44
+ // --- ADAPTER AUTHENTICATION POSTGRESQL (SUPABASE) ---
45
+ // Membuat pool koneksi ke database cloud
46
+ const pool = new pg.Pool({ connectionString: DATABASE_URL });
47
+
48
+ async function gunakanAutentikasiPostgres() {
49
+ // Membuat tabel penyimpanan session otomatis di database jika belum tersedia
50
+ await pool.query(`
51
+ CREATE TABLE IF NOT EXISTS sesi_bot_dna (
52
+ id VARCHAR(255) PRIMARY KEY,
53
+ data TEXT NOT NULL
54
+ );
55
+ `);
56
+
57
+ const authStateDB = {
58
+ state: {
59
+ creds: await ambilDataSesi('creds') || {},
60
+ keys: {
61
+ get: async (type, ids) => {
62
+ const data = {};
63
+ for (const id of ids) {
64
+ data[id] = await ambilDataSesi(`${type}-${id}`);
65
+ }
66
+ return data;
67
+ },
68
+ set: async (data) => {
69
+ for (const type in data) {
70
+ for (const id in data[type]) {
71
+ const value = data[type][id];
72
+ const keyName = `${type}-${id}`;
73
+ if (value) {
74
+ await simpanDataSesi(keyName, value);
75
+ } else {
76
+ await hapusDataSesi(keyName);
77
+ }
78
+ }
79
+ }
80
+ }
81
+ }
82
+ },
83
+ saveCreds: async () => {
84
+ await simpanDataSesi('creds', authStateDB.state.creds);
85
+ }
86
+ };
87
+ return authStateDB;
88
+ }
89
+
90
+ // Fungsi pembantu (Helper) transaksi data SQL
91
+ async function ambilDataSesi(id) {
92
+ const res = await pool.query('SELECT data FROM sesi_bot_dna WHERE id = $1', [id]);
93
+ return res.rows.length ? JSON.parse(res.rows[0].data) : null;
94
+ }
95
+ async function simpanDataSesi(id, data) {
96
+ const jsonString = JSON.stringify(data);
97
+ await pool.query('INSERT INTO sesi_bot_dna (id, data) VALUES ($1, $2) ON CONFLICT (id) DO UPDATE SET data = $2', [id, jsonString]);
98
+ }
99
+ async function hapusDataSesi(id) {
100
+ await pool.query('DELETE FROM sesi_bot_dna WHERE id = $1', [id]);
101
+ }
102
+
103
+ // --- ENGINE UTAMA WHATSAPP ---
104
+ async function hubungkanKeWhatsApp() {
105
+ if (urutanGagalKonek >= MAKSIMAL_GAGAL) {
106
+ console.error("❌ Gagal menembus WebSocket WA secara beruntun. Menghentikan percobaan...");
107
+ process.exit(1);
108
+ }
109
+
110
+ try {
111
+ console.log("⏳ Mengambil data sesi login aman dari Cloud Database...");
112
+ // Mengganti useMultiFileAuthState dengan adapter database PostgreSQL kita
113
+ const { state, saveCreds } = await gunakanAutentikasiPostgres();
114
+
115
+ console.log("⏳ Mengambil data versi protokol WhatsApp Web terbaru...");
116
+ const { version, isLatest } = await fetchLatestBaileysVersion();
117
+ console.log(`ℹ️ Menggunakan WA Web v${version.join('.')}, Terkini: ${isLatest}`);
118
+
119
+ const sock = makeWASocket({
120
+ version,
121
+ auth: state,
122
+ printQRInTerminal: false,
123
+ logger: pino({ level: 'silent' }),
124
+ browser: ['Windows', 'Chrome', '122.0.0.0'],
125
+ connectTimeoutMs: 60000,
126
+ defaultQueryTimeoutMs: 60000,
127
+ keepAliveIntervalMs: 30000
128
+ });
129
+
130
+ // --- EVENT LISTENER KONEKSI ---
131
+ sock.ev.on('connection.update', (update) => {
132
+ const { connection, lastDisconnect, qr } = update;
133
+
134
+ if (qr) {
135
+ console.log('\n====== SCAN QR CODE INI VIA WHATSAPP KAMU ======');
136
+ qrcode.generate(qr, { small: true });
137
+ }
138
+
139
+ if (connection === 'close') {
140
+ const errorDetail = lastDisconnect?.error;
141
+ const statusCode = errorDetail?.output?.statusCode || (errorDetail instanceof Boom ? errorDetail.output.statusCode : undefined);
142
+ const alasanEror = errorDetail?.message || errorDetail || "Masalah Jaringan/Handshake Jarak Jauh";
143
+
144
+ console.log(`⚠️ Koneksi Terputus! Status: ${statusCode} | Alasan: ${alasanEror}`);
145
+
146
+ const harusKonekUlang = statusCode !== DisconnectReason.loggedOut;
147
+ if (harusKonekUlang) {
148
+ urutanGagalKonek++;
149
+ console.log(`🔄 Mencoba koneksi ulang (${urutanGagalKonek}/${MAKSIMAL_GAGAL}) dalam 10 detik...`);
150
+ setTimeout(hubungkanKeWhatsApp, 10000);
151
+ }
152
+ } else if (connection === 'open') {
153
+ console.log('\n✅ Bot Otomisasi SM Versi Modular Odysseus Sukses Terhubung via Supabase!\n');
154
+ urutanGagalKonek = 0;
155
+ periksaJadwalOtomatis();
156
+ }
157
+ });
158
+
159
+ sock.ev.on('creds.update', saveCreds);
160
+
161
+ // --- EVENT LISTENER PESAN MASUK ---
162
+ sock.ev.on('messages.upsert', async ({ messages }) => {
163
+ const m = messages[0];
164
+ if (!m.message) return;
165
+
166
+ const idPengirim = m.key.remoteJid;
167
+ const teksMasingPesan = m.message?.conversation || m.message?.extendedTextMessage?.text || "";
168
+
169
+ console.log(`📩 [LOG MASUK] Dari: ${idPengirim} | Isi Pesan: "${teksMasingPesan}"`);
170
+
171
+ if (idPengirim === NOMOR_KOORDINATOR_JADWAL && teksMasingPesan.toLowerCase() === '!update') {
172
+ await sock.sendMessage(idPengirim, { text: '⏳ Sedang meremot pembaruan Google Sheets...' });
173
+ await periksaJadwalOtomatis();
174
+ await sock.sendMessage(idPengirim, { text: '✅ Sinkronisasi jadwal berhasil diperbarui!' });
175
+ return;
176
+ }
177
+
178
+ if (idPengirim === 'status@broadcast') return;
179
+
180
+ const arrayPemicu = Array.isArray(KATA_PEMICU) ? KATA_PEMICU : [KATA_PEMICU];
181
+ const pemicuCocok = arrayPemicu.find(p => teksMasingPesan.toLowerCase().startsWith(p.toLowerCase()));
182
+
183
+ if (m.key.fromMe && !pemicuCocok) return;
184
+ if (idPengirim === ID_GRUP_ANNOUNCEMENT) return;
185
+ if (teksMasingPesan.trim() === "" || !pemicuCocok) return;
186
+
187
+ const apakahDariGrup = idPengirim.endsWith('@g.us');
188
+ if (apakahDariGrup && !GRUP_DI_IZINKAN.includes(idPengirim)) return;
189
+
190
+ const pertanyaanBersih = teksMasingPesan.slice(pemicuCocok.length).trim();
191
+ if (!pertanyaanBersih) return;
192
+
193
+ const waktuSekarang = Date.now();
194
+ const waktuTerakhirChat = cooldownChat.get(idPengirim) || 0;
195
+ if (waktuSekarang - waktuTerakhirChat < 10000) {
196
+ const sisaWaktu = Math.ceil((10000 - (waktuSekarang - waktuTerakhirChat)) / 1000);
197
+ await sock.sendMessage(idPengirim, { text: `⚠️ *Sistem Cooldown!* Coba lagi dalam ${sisaWaktu} detik.` });
198
+ return;
199
+ }
200
+ cooldownChat.set(idPengirim, waktuSekarang);
201
+
202
+ if (!memoriSesiChat.has(idPengirim)) memoriSesiChat.set(idPengirim, []);
203
+ let riwayat = memoriSesiChat.get(idPengirim);
204
+
205
+ try {
206
+ await sock.sendPresenceUpdate('composing', idPengirim);
207
+
208
+ const kategori = await jalankanRouterAgent(pertanyaanBersih);
209
+ let jawabanAkhir = "";
210
+
211
+ if (kategori === "jadwal") {
212
+ jawabanAkhir = await jalankanJadwalAgent(pertanyaanBersih, dataJadwalGlobal, riwayat);
213
+ } else {
214
+ jawabanAkhir = await jalankanlainnyaAgent(pertanyaanBersih, riwayat);
215
+ }
216
+
217
+ riwayat.push({ role: "user", content: pertanyaanBersih });
218
+ riwayat.push({ role: "assistant", content: jawabanAkhir });
219
+ if (riwayat.length > 6) riwayat.splice(0, 2);
220
+
221
+ await sock.sendMessage(idPengirim, { text: jawabanAkhir });
222
+
223
+ } catch (errProses) {
224
+ console.error("��� Terjadi eror saat memproses pesan:", errProses);
225
+ }
226
+ });
227
+
228
+ } catch (error) {
229
+ console.error("❌ Terjadi eror saat menginisialisasi koneksi:", error);
230
+ }
231
+ }
232
+
233
+ hubungkanKeWhatsApp();
234
+
235
+ process.on('uncaughtException', (err) => {
236
+ console.error('Terperangkap Fatal Error Sistem:', err);
237
+ });
package-lock.json ADDED
@@ -0,0 +1,2570 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "node",
3
+ "version": "1.0.0",
4
+ "lockfileVersion": 3,
5
+ "requires": true,
6
+ "packages": {
7
+ "": {
8
+ "name": "node",
9
+ "version": "1.0.0",
10
+ "license": "ISC",
11
+ "dependencies": {
12
+ "@hapi/boom": "^10.0.1",
13
+ "@whiskeysockets/baileys": "^7.0.0-rc13",
14
+ "googleapis": "^173.0.0",
15
+ "groq-sdk": "^1.2.1",
16
+ "node-cron": "^4.4.1",
17
+ "pino": "^10.3.1",
18
+ "qrcode-terminal": "^0.12.0"
19
+ }
20
+ },
21
+ "node_modules/@borewit/text-codec": {
22
+ "version": "0.2.2",
23
+ "resolved": "https://registry.npmjs.org/@borewit/text-codec/-/text-codec-0.2.2.tgz",
24
+ "integrity": "sha512-DDaRehssg1aNrH4+2hnj1B7vnUGEjU6OIlyRdkMd0aUdIUvKXrJfXsy8LVtXAy7DRvYVluWbMspsRhz2lcW0mQ==",
25
+ "license": "MIT",
26
+ "funding": {
27
+ "type": "github",
28
+ "url": "https://github.com/sponsors/Borewit"
29
+ }
30
+ },
31
+ "node_modules/@cacheable/memory": {
32
+ "version": "2.0.9",
33
+ "resolved": "https://registry.npmjs.org/@cacheable/memory/-/memory-2.0.9.tgz",
34
+ "integrity": "sha512-HdMx6DoGywB30vacDbBsITbIX4pgFqj1zsrV58jZBUw3klzkNoXhj7qOqAgledhxG7YZI5rBSJg7Zp8/VG0DuA==",
35
+ "license": "MIT",
36
+ "dependencies": {
37
+ "@cacheable/utils": "^2.4.1",
38
+ "@keyv/bigmap": "^1.3.1",
39
+ "hookified": "^1.15.1",
40
+ "keyv": "^5.6.0"
41
+ }
42
+ },
43
+ "node_modules/@cacheable/node-cache": {
44
+ "version": "1.7.6",
45
+ "resolved": "https://registry.npmjs.org/@cacheable/node-cache/-/node-cache-1.7.6.tgz",
46
+ "integrity": "sha512-6Omk2SgNnjtxB5f/E6bTIWIt5xhdpx39fGNRQgU9lojvRxU68v+qY+SXXLsp3ZGukqoPjsK21wZ6XABFr/Ge3A==",
47
+ "license": "MIT",
48
+ "dependencies": {
49
+ "cacheable": "^2.3.1",
50
+ "hookified": "^1.14.0",
51
+ "keyv": "^5.5.5"
52
+ },
53
+ "engines": {
54
+ "node": ">=18"
55
+ }
56
+ },
57
+ "node_modules/@cacheable/utils": {
58
+ "version": "2.4.1",
59
+ "resolved": "https://registry.npmjs.org/@cacheable/utils/-/utils-2.4.1.tgz",
60
+ "integrity": "sha512-eiFgzCbIneyMlLOmNG4g9xzF7Hv3Mga4LjxjcSC/ues6VYq2+gUbQI8JqNuw/ZM8tJIeIaBGpswAsqV2V7ApgA==",
61
+ "license": "MIT",
62
+ "dependencies": {
63
+ "hashery": "^1.5.1",
64
+ "keyv": "^5.6.0"
65
+ }
66
+ },
67
+ "node_modules/@emnapi/runtime": {
68
+ "version": "1.11.1",
69
+ "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.11.1.tgz",
70
+ "integrity": "sha512-vgj7R3y3Wgx24IQaGPA/R6YFXLHVMOZ0uVEyIQPaWs+rd1AzfEMXlAC22FYwO1XkKR6NPsq7mUandH8oIRdZFw==",
71
+ "license": "MIT",
72
+ "optional": true,
73
+ "peer": true,
74
+ "dependencies": {
75
+ "tslib": "^2.4.0"
76
+ }
77
+ },
78
+ "node_modules/@hapi/boom": {
79
+ "version": "10.0.1",
80
+ "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
81
+ "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
82
+ "license": "BSD-3-Clause",
83
+ "dependencies": {
84
+ "@hapi/hoek": "^11.0.2"
85
+ }
86
+ },
87
+ "node_modules/@hapi/hoek": {
88
+ "version": "11.0.7",
89
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.7.tgz",
90
+ "integrity": "sha512-HV5undWkKzcB4RZUusqOpcgxOaq6VOAH7zhhIr2g3G8NF/MlFO75SjOr2NfuSx0Mh40+1FqCkagKLJRykUWoFQ==",
91
+ "license": "BSD-3-Clause"
92
+ },
93
+ "node_modules/@img/colour": {
94
+ "version": "1.1.0",
95
+ "resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.1.0.tgz",
96
+ "integrity": "sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==",
97
+ "license": "MIT",
98
+ "peer": true,
99
+ "engines": {
100
+ "node": ">=18"
101
+ }
102
+ },
103
+ "node_modules/@img/sharp-darwin-arm64": {
104
+ "version": "0.35.1",
105
+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.35.1.tgz",
106
+ "integrity": "sha512-T15JRWOubQ3f5+GxnWeIvo47u5qV0M9HBgJhT+f2gE1e9e6OhR6K73Re52Hm80qWcu1DNb3GweKmpr/MnuP2Ow==",
107
+ "cpu": [
108
+ "arm64"
109
+ ],
110
+ "license": "Apache-2.0",
111
+ "optional": true,
112
+ "os": [
113
+ "darwin"
114
+ ],
115
+ "peer": true,
116
+ "engines": {
117
+ "node": ">=20.9.0"
118
+ },
119
+ "funding": {
120
+ "url": "https://opencollective.com/libvips"
121
+ },
122
+ "optionalDependencies": {
123
+ "@img/sharp-libvips-darwin-arm64": "1.3.0"
124
+ }
125
+ },
126
+ "node_modules/@img/sharp-darwin-x64": {
127
+ "version": "0.35.1",
128
+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.35.1.tgz",
129
+ "integrity": "sha512-t1CPD0cr7XCHjwUj6tQ5MC0pCi866I+gUW6zbUX4aFPnKd1DFBtk0M+gWcjX8VeEzgfCNiSiNTVFZ6b7kvdbnQ==",
130
+ "cpu": [
131
+ "x64"
132
+ ],
133
+ "license": "Apache-2.0",
134
+ "optional": true,
135
+ "os": [
136
+ "darwin"
137
+ ],
138
+ "peer": true,
139
+ "engines": {
140
+ "node": ">=20.9.0"
141
+ },
142
+ "funding": {
143
+ "url": "https://opencollective.com/libvips"
144
+ },
145
+ "optionalDependencies": {
146
+ "@img/sharp-libvips-darwin-x64": "1.3.0"
147
+ }
148
+ },
149
+ "node_modules/@img/sharp-freebsd-wasm32": {
150
+ "version": "0.35.1",
151
+ "resolved": "https://registry.npmjs.org/@img/sharp-freebsd-wasm32/-/sharp-freebsd-wasm32-0.35.1.tgz",
152
+ "integrity": "sha512-MBSQXqNPThW9EcZ905H6N4sEdX5EwZEYzGx5EBq9ncDCGJALMiY1xPFJxNdzuB1iBjLOpIfxajM6YxdvwmQSLA==",
153
+ "license": "Apache-2.0",
154
+ "optional": true,
155
+ "os": [
156
+ "freebsd"
157
+ ],
158
+ "peer": true,
159
+ "dependencies": {
160
+ "@img/sharp-wasm32": "0.35.1"
161
+ },
162
+ "engines": {
163
+ "node": ">=20.9.0"
164
+ },
165
+ "funding": {
166
+ "url": "https://opencollective.com/libvips"
167
+ }
168
+ },
169
+ "node_modules/@img/sharp-libvips-darwin-arm64": {
170
+ "version": "1.3.0",
171
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.3.0.tgz",
172
+ "integrity": "sha512-EKbmBKtyTH+GPFDRw2TgK2oV6hyxxlJVIar4hoTYSNmIwipgMFdxPQqR392GmfdsPGWga0mCFN1cCKjRb9cljw==",
173
+ "cpu": [
174
+ "arm64"
175
+ ],
176
+ "license": "LGPL-3.0-or-later",
177
+ "optional": true,
178
+ "os": [
179
+ "darwin"
180
+ ],
181
+ "peer": true,
182
+ "funding": {
183
+ "url": "https://opencollective.com/libvips"
184
+ }
185
+ },
186
+ "node_modules/@img/sharp-libvips-darwin-x64": {
187
+ "version": "1.3.0",
188
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.3.0.tgz",
189
+ "integrity": "sha512-Pl2OmOvrJ42adUllESxBsG54PfXLo1OYg9i3c5/5Ln/qJ0gZuTM9YMhQJPIbXqwidLRc/c2zuHt4RsrymmNv7A==",
190
+ "cpu": [
191
+ "x64"
192
+ ],
193
+ "license": "LGPL-3.0-or-later",
194
+ "optional": true,
195
+ "os": [
196
+ "darwin"
197
+ ],
198
+ "peer": true,
199
+ "funding": {
200
+ "url": "https://opencollective.com/libvips"
201
+ }
202
+ },
203
+ "node_modules/@img/sharp-libvips-linux-arm": {
204
+ "version": "1.3.0",
205
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.3.0.tgz",
206
+ "integrity": "sha512-A8UpHoUDW4DwnXoV6+q3C1s7QLRAHtPDEjWuNZjwHMyoCNZnm0GeNN8ls9f/bsEYTRQRW96C/n34XJQHJ2fT7A==",
207
+ "cpu": [
208
+ "arm"
209
+ ],
210
+ "libc": [
211
+ "glibc"
212
+ ],
213
+ "license": "LGPL-3.0-or-later",
214
+ "optional": true,
215
+ "os": [
216
+ "linux"
217
+ ],
218
+ "peer": true,
219
+ "funding": {
220
+ "url": "https://opencollective.com/libvips"
221
+ }
222
+ },
223
+ "node_modules/@img/sharp-libvips-linux-arm64": {
224
+ "version": "1.3.0",
225
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.3.0.tgz",
226
+ "integrity": "sha512-C0SqjoFKnszqa44EQ7xoaT48nnO0lOyXEULfXMWi8krrjOPGYkeK30Okzla6ATbBYsyZ0ySinK0FVkpv3DwzfQ==",
227
+ "cpu": [
228
+ "arm64"
229
+ ],
230
+ "libc": [
231
+ "glibc"
232
+ ],
233
+ "license": "LGPL-3.0-or-later",
234
+ "optional": true,
235
+ "os": [
236
+ "linux"
237
+ ],
238
+ "peer": true,
239
+ "funding": {
240
+ "url": "https://opencollective.com/libvips"
241
+ }
242
+ },
243
+ "node_modules/@img/sharp-libvips-linux-ppc64": {
244
+ "version": "1.3.0",
245
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.3.0.tgz",
246
+ "integrity": "sha512-WOpkVxAjFd369iaIzEgNRreFD+gWdUMIGD5zplhNKNeqS6mm5dac3q2AFyCBmzYoAdouzZvRBgxy4z8QHZb4/A==",
247
+ "cpu": [
248
+ "ppc64"
249
+ ],
250
+ "libc": [
251
+ "glibc"
252
+ ],
253
+ "license": "LGPL-3.0-or-later",
254
+ "optional": true,
255
+ "os": [
256
+ "linux"
257
+ ],
258
+ "peer": true,
259
+ "funding": {
260
+ "url": "https://opencollective.com/libvips"
261
+ }
262
+ },
263
+ "node_modules/@img/sharp-libvips-linux-riscv64": {
264
+ "version": "1.3.0",
265
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.3.0.tgz",
266
+ "integrity": "sha512-DRWw0mOHusrCCuw2rqP87oLg6PGlkomVDFqw2hIwsSfwWpu4k3XLcBPaKKl6ct/GtL/cwNkgwjV/tc0Mqht3VA==",
267
+ "cpu": [
268
+ "riscv64"
269
+ ],
270
+ "libc": [
271
+ "glibc"
272
+ ],
273
+ "license": "LGPL-3.0-or-later",
274
+ "optional": true,
275
+ "os": [
276
+ "linux"
277
+ ],
278
+ "peer": true,
279
+ "funding": {
280
+ "url": "https://opencollective.com/libvips"
281
+ }
282
+ },
283
+ "node_modules/@img/sharp-libvips-linux-s390x": {
284
+ "version": "1.3.0",
285
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.3.0.tgz",
286
+ "integrity": "sha512-9APy+nFWhHS+kzLgWZfLcyrUd7YqnAQVa4BPOo4xkoHpdoktOAPG4cEr9+Jpl0TtqfVmcMJimNL5qNTyyOHZNA==",
287
+ "cpu": [
288
+ "s390x"
289
+ ],
290
+ "libc": [
291
+ "glibc"
292
+ ],
293
+ "license": "LGPL-3.0-or-later",
294
+ "optional": true,
295
+ "os": [
296
+ "linux"
297
+ ],
298
+ "peer": true,
299
+ "funding": {
300
+ "url": "https://opencollective.com/libvips"
301
+ }
302
+ },
303
+ "node_modules/@img/sharp-libvips-linux-x64": {
304
+ "version": "1.3.0",
305
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.3.0.tgz",
306
+ "integrity": "sha512-y9RNUYDe2A1UAdhLyfeOodGRszQdaEoe4nfOpp/sNVPl2CWIcUyFaDoCh4vPLPxu19803j2naLqZup2WxDXCLA==",
307
+ "cpu": [
308
+ "x64"
309
+ ],
310
+ "libc": [
311
+ "glibc"
312
+ ],
313
+ "license": "LGPL-3.0-or-later",
314
+ "optional": true,
315
+ "os": [
316
+ "linux"
317
+ ],
318
+ "peer": true,
319
+ "funding": {
320
+ "url": "https://opencollective.com/libvips"
321
+ }
322
+ },
323
+ "node_modules/@img/sharp-libvips-linuxmusl-arm64": {
324
+ "version": "1.3.0",
325
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.3.0.tgz",
326
+ "integrity": "sha512-cC1wkC0Mlucd0KSiGrLkJnB/ZqPvZCntc/Lk7ZnYO5ZSbF2euNek4Xvxafojq+wN1q/W0eprdpUIjUr/EV2PBg==",
327
+ "cpu": [
328
+ "arm64"
329
+ ],
330
+ "libc": [
331
+ "musl"
332
+ ],
333
+ "license": "LGPL-3.0-or-later",
334
+ "optional": true,
335
+ "os": [
336
+ "linux"
337
+ ],
338
+ "peer": true,
339
+ "funding": {
340
+ "url": "https://opencollective.com/libvips"
341
+ }
342
+ },
343
+ "node_modules/@img/sharp-libvips-linuxmusl-x64": {
344
+ "version": "1.3.0",
345
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.3.0.tgz",
346
+ "integrity": "sha512-LiYMhUZicB1QG//+RvmYZpXJO8fYRENfp+MZUCnG9aw+AKvGAy9gPaCnuwsPcBFs8EV66M0NNxj9VHcNklE8zw==",
347
+ "cpu": [
348
+ "x64"
349
+ ],
350
+ "libc": [
351
+ "musl"
352
+ ],
353
+ "license": "LGPL-3.0-or-later",
354
+ "optional": true,
355
+ "os": [
356
+ "linux"
357
+ ],
358
+ "peer": true,
359
+ "funding": {
360
+ "url": "https://opencollective.com/libvips"
361
+ }
362
+ },
363
+ "node_modules/@img/sharp-linux-arm": {
364
+ "version": "0.35.1",
365
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.35.1.tgz",
366
+ "integrity": "sha512-jygmR02PpCYypt7xB7nst1vqjZp/BpRA/Kf9nK7qRponJ/KrLPaZWEG4G15z1d2FZ6XqI+T0350ha3RSnKx24A==",
367
+ "cpu": [
368
+ "arm"
369
+ ],
370
+ "libc": [
371
+ "glibc"
372
+ ],
373
+ "license": "Apache-2.0",
374
+ "optional": true,
375
+ "os": [
376
+ "linux"
377
+ ],
378
+ "peer": true,
379
+ "engines": {
380
+ "node": ">=20.9.0"
381
+ },
382
+ "funding": {
383
+ "url": "https://opencollective.com/libvips"
384
+ },
385
+ "optionalDependencies": {
386
+ "@img/sharp-libvips-linux-arm": "1.3.0"
387
+ }
388
+ },
389
+ "node_modules/@img/sharp-linux-arm64": {
390
+ "version": "0.35.1",
391
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.35.1.tgz",
392
+ "integrity": "sha512-ErCRyGU7LeoaFBZ0xW8hhLlXzhAg80sc4vxePB86qvtEvW1jEhhmbiNBP4oEzZfPMnu6HwHXfzD2W2kBU+RnCw==",
393
+ "cpu": [
394
+ "arm64"
395
+ ],
396
+ "libc": [
397
+ "glibc"
398
+ ],
399
+ "license": "Apache-2.0",
400
+ "optional": true,
401
+ "os": [
402
+ "linux"
403
+ ],
404
+ "peer": true,
405
+ "engines": {
406
+ "node": ">=20.9.0"
407
+ },
408
+ "funding": {
409
+ "url": "https://opencollective.com/libvips"
410
+ },
411
+ "optionalDependencies": {
412
+ "@img/sharp-libvips-linux-arm64": "1.3.0"
413
+ }
414
+ },
415
+ "node_modules/@img/sharp-linux-ppc64": {
416
+ "version": "0.35.1",
417
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.35.1.tgz",
418
+ "integrity": "sha512-LUWZ2+r2UoLCd8j0RLCwQ4gL6w47+Y7igxtVnPIDXOOEjV86LpBkAHq5VpJeg+GHbw0KN/JWlPJOdZjyZnFqFQ==",
419
+ "cpu": [
420
+ "ppc64"
421
+ ],
422
+ "libc": [
423
+ "glibc"
424
+ ],
425
+ "license": "Apache-2.0",
426
+ "optional": true,
427
+ "os": [
428
+ "linux"
429
+ ],
430
+ "peer": true,
431
+ "engines": {
432
+ "node": ">=20.9.0"
433
+ },
434
+ "funding": {
435
+ "url": "https://opencollective.com/libvips"
436
+ },
437
+ "optionalDependencies": {
438
+ "@img/sharp-libvips-linux-ppc64": "1.3.0"
439
+ }
440
+ },
441
+ "node_modules/@img/sharp-linux-riscv64": {
442
+ "version": "0.35.1",
443
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.35.1.tgz",
444
+ "integrity": "sha512-i7x6J3mwF4JgT0sM4V4WlAWdJ0bucPtA9rzO1bTji1n5qgBq/W5nn87RvOQPleuuxahNoLdTngByD8/vDDLArw==",
445
+ "cpu": [
446
+ "riscv64"
447
+ ],
448
+ "libc": [
449
+ "glibc"
450
+ ],
451
+ "license": "Apache-2.0",
452
+ "optional": true,
453
+ "os": [
454
+ "linux"
455
+ ],
456
+ "peer": true,
457
+ "engines": {
458
+ "node": ">=20.9.0"
459
+ },
460
+ "funding": {
461
+ "url": "https://opencollective.com/libvips"
462
+ },
463
+ "optionalDependencies": {
464
+ "@img/sharp-libvips-linux-riscv64": "1.3.0"
465
+ }
466
+ },
467
+ "node_modules/@img/sharp-linux-s390x": {
468
+ "version": "0.35.1",
469
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.35.1.tgz",
470
+ "integrity": "sha512-0zSaTUjTF0kIWTSYxD4EG/nvCU4jez53+3RdURtoY3HvbXtIQ98W90JnrGz/oLRFuEnfIy9+7xeq883euc0ZWw==",
471
+ "cpu": [
472
+ "s390x"
473
+ ],
474
+ "libc": [
475
+ "glibc"
476
+ ],
477
+ "license": "Apache-2.0",
478
+ "optional": true,
479
+ "os": [
480
+ "linux"
481
+ ],
482
+ "peer": true,
483
+ "engines": {
484
+ "node": ">=20.9.0"
485
+ },
486
+ "funding": {
487
+ "url": "https://opencollective.com/libvips"
488
+ },
489
+ "optionalDependencies": {
490
+ "@img/sharp-libvips-linux-s390x": "1.3.0"
491
+ }
492
+ },
493
+ "node_modules/@img/sharp-linux-x64": {
494
+ "version": "0.35.1",
495
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.35.1.tgz",
496
+ "integrity": "sha512-NbJD4mWdeyrNQKluO/tR/wBDOelcowSVGNBWxI0e3ZtlXc6F/UOVKDj1MLD4zl3oHTuvKW3s+MA9N54YTldAYw==",
497
+ "cpu": [
498
+ "x64"
499
+ ],
500
+ "libc": [
501
+ "glibc"
502
+ ],
503
+ "license": "Apache-2.0",
504
+ "optional": true,
505
+ "os": [
506
+ "linux"
507
+ ],
508
+ "peer": true,
509
+ "engines": {
510
+ "node": ">=20.9.0"
511
+ },
512
+ "funding": {
513
+ "url": "https://opencollective.com/libvips"
514
+ },
515
+ "optionalDependencies": {
516
+ "@img/sharp-libvips-linux-x64": "1.3.0"
517
+ }
518
+ },
519
+ "node_modules/@img/sharp-linuxmusl-arm64": {
520
+ "version": "0.35.1",
521
+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.35.1.tgz",
522
+ "integrity": "sha512-VoW2sQCWI+0YIKQEmWJ8vzaQjTg9wIyfkFpvEfAS2h43X6iHu7GTk1hhOgB4IpSzCHe8UwQZIcx7b81VTaOrJA==",
523
+ "cpu": [
524
+ "arm64"
525
+ ],
526
+ "libc": [
527
+ "musl"
528
+ ],
529
+ "license": "Apache-2.0",
530
+ "optional": true,
531
+ "os": [
532
+ "linux"
533
+ ],
534
+ "peer": true,
535
+ "engines": {
536
+ "node": ">=20.9.0"
537
+ },
538
+ "funding": {
539
+ "url": "https://opencollective.com/libvips"
540
+ },
541
+ "optionalDependencies": {
542
+ "@img/sharp-libvips-linuxmusl-arm64": "1.3.0"
543
+ }
544
+ },
545
+ "node_modules/@img/sharp-linuxmusl-x64": {
546
+ "version": "0.35.1",
547
+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.35.1.tgz",
548
+ "integrity": "sha512-LjBoSd/c5JU0/K5MwzDMlgsSRP2bPn98JQGFFQAOLQ0bU/1z4ekxUdSKY9BmlwSh/cA+OrvpgsWqfZyYfVHBRw==",
549
+ "cpu": [
550
+ "x64"
551
+ ],
552
+ "libc": [
553
+ "musl"
554
+ ],
555
+ "license": "Apache-2.0",
556
+ "optional": true,
557
+ "os": [
558
+ "linux"
559
+ ],
560
+ "peer": true,
561
+ "engines": {
562
+ "node": ">=20.9.0"
563
+ },
564
+ "funding": {
565
+ "url": "https://opencollective.com/libvips"
566
+ },
567
+ "optionalDependencies": {
568
+ "@img/sharp-libvips-linuxmusl-x64": "1.3.0"
569
+ }
570
+ },
571
+ "node_modules/@img/sharp-wasm32": {
572
+ "version": "0.35.1",
573
+ "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.35.1.tgz",
574
+ "integrity": "sha512-PCQUoQdZyE8tp3HpbevuihfUmgSP4qWI0FGEPWoeXqaS+cUrFfemabHQiebUmUmlUhCuNnQMxGrQ+CPqK4hnxg==",
575
+ "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT",
576
+ "optional": true,
577
+ "peer": true,
578
+ "dependencies": {
579
+ "@emnapi/runtime": "^1.11.0"
580
+ },
581
+ "engines": {
582
+ "node": ">=20.9.0"
583
+ },
584
+ "funding": {
585
+ "url": "https://opencollective.com/libvips"
586
+ }
587
+ },
588
+ "node_modules/@img/sharp-webcontainers-wasm32": {
589
+ "version": "0.35.1",
590
+ "resolved": "https://registry.npmjs.org/@img/sharp-webcontainers-wasm32/-/sharp-webcontainers-wasm32-0.35.1.tgz",
591
+ "integrity": "sha512-xU2ml2bU2OPxYVvW2A6ae4M1g5QKyhKG06P4FAt+YEaFQQO0919Qx+XxIZEUuWTMoDViLpMws2/dQwoe/VcA6A==",
592
+ "cpu": [
593
+ "wasm32"
594
+ ],
595
+ "license": "Apache-2.0",
596
+ "optional": true,
597
+ "peer": true,
598
+ "dependencies": {
599
+ "@img/sharp-wasm32": "0.35.1"
600
+ },
601
+ "engines": {
602
+ "node": ">=20.9.0"
603
+ },
604
+ "funding": {
605
+ "url": "https://opencollective.com/libvips"
606
+ }
607
+ },
608
+ "node_modules/@img/sharp-win32-arm64": {
609
+ "version": "0.35.1",
610
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.35.1.tgz",
611
+ "integrity": "sha512-IkmHwuFhYpd3bTsN5SAahjwhiAcyXPooBt8vEUgxY3T0IP70sSJ0nU1xiPzZY8AH/OB1XpV3j8aZSVSOSfTbdA==",
612
+ "cpu": [
613
+ "arm64"
614
+ ],
615
+ "license": "Apache-2.0 AND LGPL-3.0-or-later",
616
+ "optional": true,
617
+ "os": [
618
+ "win32"
619
+ ],
620
+ "peer": true,
621
+ "engines": {
622
+ "node": ">=20.9.0"
623
+ },
624
+ "funding": {
625
+ "url": "https://opencollective.com/libvips"
626
+ }
627
+ },
628
+ "node_modules/@img/sharp-win32-ia32": {
629
+ "version": "0.35.1",
630
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.35.1.tgz",
631
+ "integrity": "sha512-wQahqCi9MD8Yxzg4gVM4fNrZxh+r6vD55PyIg+WJPaM5ZRUyF35iQpwJCuma3r6viU9/8Pxlc+XHV+woVa6nCQ==",
632
+ "cpu": [
633
+ "ia32"
634
+ ],
635
+ "license": "Apache-2.0 AND LGPL-3.0-or-later",
636
+ "optional": true,
637
+ "os": [
638
+ "win32"
639
+ ],
640
+ "peer": true,
641
+ "engines": {
642
+ "node": "^20.9.0"
643
+ },
644
+ "funding": {
645
+ "url": "https://opencollective.com/libvips"
646
+ }
647
+ },
648
+ "node_modules/@img/sharp-win32-x64": {
649
+ "version": "0.35.1",
650
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.35.1.tgz",
651
+ "integrity": "sha512-WzBtkYtZHATLPe8XRharxZXxQ9cdLrQWHiwxt+BJ5rBsisQrKeeV86ErxPSVhcG6xCEuNhs0SqLpWr7XDa2k6w==",
652
+ "cpu": [
653
+ "x64"
654
+ ],
655
+ "license": "Apache-2.0 AND LGPL-3.0-or-later",
656
+ "optional": true,
657
+ "os": [
658
+ "win32"
659
+ ],
660
+ "peer": true,
661
+ "engines": {
662
+ "node": ">=20.9.0"
663
+ },
664
+ "funding": {
665
+ "url": "https://opencollective.com/libvips"
666
+ }
667
+ },
668
+ "node_modules/@isaacs/cliui": {
669
+ "version": "8.0.2",
670
+ "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
671
+ "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
672
+ "license": "ISC",
673
+ "dependencies": {
674
+ "string-width": "^5.1.2",
675
+ "string-width-cjs": "npm:string-width@^4.2.0",
676
+ "strip-ansi": "^7.0.1",
677
+ "strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
678
+ "wrap-ansi": "^8.1.0",
679
+ "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
680
+ },
681
+ "engines": {
682
+ "node": ">=12"
683
+ }
684
+ },
685
+ "node_modules/@keyv/bigmap": {
686
+ "version": "1.3.1",
687
+ "resolved": "https://registry.npmjs.org/@keyv/bigmap/-/bigmap-1.3.1.tgz",
688
+ "integrity": "sha512-WbzE9sdmQtKy8vrNPa9BRnwZh5UF4s1KTmSK0KUVLo3eff5BlQNNWDnFOouNpKfPKDnms9xynJjsMYjMaT/aFQ==",
689
+ "license": "MIT",
690
+ "dependencies": {
691
+ "hashery": "^1.4.0",
692
+ "hookified": "^1.15.0"
693
+ },
694
+ "engines": {
695
+ "node": ">= 18"
696
+ },
697
+ "peerDependencies": {
698
+ "keyv": "^5.6.0"
699
+ }
700
+ },
701
+ "node_modules/@keyv/serialize": {
702
+ "version": "1.1.1",
703
+ "resolved": "https://registry.npmjs.org/@keyv/serialize/-/serialize-1.1.1.tgz",
704
+ "integrity": "sha512-dXn3FZhPv0US+7dtJsIi2R+c7qWYiReoEh5zUntWCf4oSpMNib8FDhSoed6m3QyZdx5hK7iLFkYk3rNxwt8vTA==",
705
+ "license": "MIT"
706
+ },
707
+ "node_modules/@pinojs/redact": {
708
+ "version": "0.4.0",
709
+ "resolved": "https://registry.npmjs.org/@pinojs/redact/-/redact-0.4.0.tgz",
710
+ "integrity": "sha512-k2ENnmBugE/rzQfEcdWHcCY+/FM3VLzH9cYEsbdsoqrvzAKRhUZeRNhAZvB8OitQJ1TBed3yqWtdjzS6wJKBwg==",
711
+ "license": "MIT"
712
+ },
713
+ "node_modules/@pkgjs/parseargs": {
714
+ "version": "0.11.0",
715
+ "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
716
+ "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
717
+ "license": "MIT",
718
+ "optional": true,
719
+ "engines": {
720
+ "node": ">=14"
721
+ }
722
+ },
723
+ "node_modules/@protobufjs/aspromise": {
724
+ "version": "1.1.2",
725
+ "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz",
726
+ "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==",
727
+ "license": "BSD-3-Clause"
728
+ },
729
+ "node_modules/@protobufjs/base64": {
730
+ "version": "1.1.2",
731
+ "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz",
732
+ "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==",
733
+ "license": "BSD-3-Clause"
734
+ },
735
+ "node_modules/@protobufjs/codegen": {
736
+ "version": "2.0.5",
737
+ "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.5.tgz",
738
+ "integrity": "sha512-zgXFLzW3Ap33e6d0Wlj4MGIm6Ce8O89n/apUaGNB/jx+hw+ruWEp7EwGUshdLKVRCxZW12fp9r40E1mQrf/34g==",
739
+ "license": "BSD-3-Clause"
740
+ },
741
+ "node_modules/@protobufjs/eventemitter": {
742
+ "version": "1.1.1",
743
+ "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.1.tgz",
744
+ "integrity": "sha512-vW1GmwMZNnL+gMRaovlh9yZX74kc+TTU3FObkkurpMaRtBfLP3ldjS9KQWlwZgraRE0+dheEEoAxdzcJQ8eXZg==",
745
+ "license": "BSD-3-Clause"
746
+ },
747
+ "node_modules/@protobufjs/fetch": {
748
+ "version": "1.1.1",
749
+ "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.1.tgz",
750
+ "integrity": "sha512-GpptLrs57adMSuHi3VNj0mAF8dwh36LMaYF6XyJ6JMWlVsc+t42tm1HSEDmOs3A8fC9yyeisgLhsTVQokOZ0zw==",
751
+ "license": "BSD-3-Clause",
752
+ "dependencies": {
753
+ "@protobufjs/aspromise": "^1.1.1"
754
+ }
755
+ },
756
+ "node_modules/@protobufjs/float": {
757
+ "version": "1.0.2",
758
+ "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz",
759
+ "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==",
760
+ "license": "BSD-3-Clause"
761
+ },
762
+ "node_modules/@protobufjs/path": {
763
+ "version": "1.1.2",
764
+ "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz",
765
+ "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==",
766
+ "license": "BSD-3-Clause"
767
+ },
768
+ "node_modules/@protobufjs/pool": {
769
+ "version": "1.1.0",
770
+ "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz",
771
+ "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==",
772
+ "license": "BSD-3-Clause"
773
+ },
774
+ "node_modules/@protobufjs/utf8": {
775
+ "version": "1.1.1",
776
+ "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.1.tgz",
777
+ "integrity": "sha512-oOAWABowe8EAbMyWKM0tYDKi8Yaox52D+HWZhAIJqQXbqe0xI/GV7FhLWqlEKreMkfDjshR5FKgi3mnle0h6Eg==",
778
+ "license": "BSD-3-Clause"
779
+ },
780
+ "node_modules/@tokenizer/inflate": {
781
+ "version": "0.4.1",
782
+ "resolved": "https://registry.npmjs.org/@tokenizer/inflate/-/inflate-0.4.1.tgz",
783
+ "integrity": "sha512-2mAv+8pkG6GIZiF1kNg1jAjh27IDxEPKwdGul3snfztFerfPGI1LjDezZp3i7BElXompqEtPmoPx6c2wgtWsOA==",
784
+ "license": "MIT",
785
+ "dependencies": {
786
+ "debug": "^4.4.3",
787
+ "token-types": "^6.1.1"
788
+ },
789
+ "engines": {
790
+ "node": ">=18"
791
+ },
792
+ "funding": {
793
+ "type": "github",
794
+ "url": "https://github.com/sponsors/Borewit"
795
+ }
796
+ },
797
+ "node_modules/@tokenizer/token": {
798
+ "version": "0.3.0",
799
+ "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz",
800
+ "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==",
801
+ "license": "MIT"
802
+ },
803
+ "node_modules/@types/node": {
804
+ "version": "25.9.3",
805
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-25.9.3.tgz",
806
+ "integrity": "sha512-603BddQMv3pUcr4U2dhujk83N2tTDVr/34wII2B6bJy6g+8WD6yUb11jszNs0gdi4PesVWl7ABt8nYMVpnLUcg==",
807
+ "license": "MIT",
808
+ "dependencies": {
809
+ "undici-types": ">=7.24.0 <7.24.7"
810
+ }
811
+ },
812
+ "node_modules/@whiskeysockets/baileys": {
813
+ "version": "7.0.0-rc13",
814
+ "resolved": "https://registry.npmjs.org/@whiskeysockets/baileys/-/baileys-7.0.0-rc13.tgz",
815
+ "integrity": "sha512-8JPc8gaaCRykkjW2jxLGQ7/RZGrc7awO7WU+QJocf58eSUI9jAdcuYLynzhAbyU4UWvJJsHImZ+5E/JaZj5ypA==",
816
+ "hasInstallScript": true,
817
+ "license": "MIT",
818
+ "dependencies": {
819
+ "@cacheable/node-cache": "^1.4.0",
820
+ "@hapi/boom": "^9.1.3",
821
+ "async-mutex": "^0.5.0",
822
+ "libsignal": "^6.0.0",
823
+ "lru-cache": "^11.1.0",
824
+ "music-metadata": "^11.12.3",
825
+ "p-queue": "^9.0.0",
826
+ "pino": "^9.6",
827
+ "protobufjs": "^7.5.6",
828
+ "whatsapp-rust-bridge": "0.5.4",
829
+ "ws": "^8.13.0"
830
+ },
831
+ "engines": {
832
+ "node": ">=20.0.0"
833
+ },
834
+ "peerDependencies": {
835
+ "audio-decode": "^2.1.3",
836
+ "jimp": "^1.6.1",
837
+ "link-preview-js": "^3.0.0",
838
+ "sharp": "*"
839
+ },
840
+ "peerDependenciesMeta": {
841
+ "audio-decode": {
842
+ "optional": true
843
+ },
844
+ "jimp": {
845
+ "optional": true
846
+ },
847
+ "link-preview-js": {
848
+ "optional": true
849
+ }
850
+ }
851
+ },
852
+ "node_modules/@whiskeysockets/baileys/node_modules/@hapi/boom": {
853
+ "version": "9.1.4",
854
+ "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-9.1.4.tgz",
855
+ "integrity": "sha512-Ls1oH8jaN1vNsqcaHVYJrKmgMcKsC1wcp8bujvXrHaAqD2iDYq3HoOwsxwo09Cuda5R5nC0o0IxlrlTuvPuzSw==",
856
+ "license": "BSD-3-Clause",
857
+ "dependencies": {
858
+ "@hapi/hoek": "9.x.x"
859
+ }
860
+ },
861
+ "node_modules/@whiskeysockets/baileys/node_modules/@hapi/hoek": {
862
+ "version": "9.3.0",
863
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz",
864
+ "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==",
865
+ "license": "BSD-3-Clause"
866
+ },
867
+ "node_modules/@whiskeysockets/baileys/node_modules/pino": {
868
+ "version": "9.14.0",
869
+ "resolved": "https://registry.npmjs.org/pino/-/pino-9.14.0.tgz",
870
+ "integrity": "sha512-8OEwKp5juEvb/MjpIc4hjqfgCNysrS94RIOMXYvpYCdm/jglrKEiAYmiumbmGhCvs+IcInsphYDFwqrjr7398w==",
871
+ "license": "MIT",
872
+ "dependencies": {
873
+ "@pinojs/redact": "^0.4.0",
874
+ "atomic-sleep": "^1.0.0",
875
+ "on-exit-leak-free": "^2.1.0",
876
+ "pino-abstract-transport": "^2.0.0",
877
+ "pino-std-serializers": "^7.0.0",
878
+ "process-warning": "^5.0.0",
879
+ "quick-format-unescaped": "^4.0.3",
880
+ "real-require": "^0.2.0",
881
+ "safe-stable-stringify": "^2.3.1",
882
+ "sonic-boom": "^4.0.1",
883
+ "thread-stream": "^3.0.0"
884
+ },
885
+ "bin": {
886
+ "pino": "bin.js"
887
+ }
888
+ },
889
+ "node_modules/@whiskeysockets/baileys/node_modules/pino-abstract-transport": {
890
+ "version": "2.0.0",
891
+ "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-2.0.0.tgz",
892
+ "integrity": "sha512-F63x5tizV6WCh4R6RHyi2Ml+M70DNRXt/+HANowMflpgGFMAym/VKm6G7ZOQRjqN7XbGxK1Lg9t6ZrtzOaivMw==",
893
+ "license": "MIT",
894
+ "dependencies": {
895
+ "split2": "^4.0.0"
896
+ }
897
+ },
898
+ "node_modules/@whiskeysockets/baileys/node_modules/thread-stream": {
899
+ "version": "3.2.0",
900
+ "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-3.2.0.tgz",
901
+ "integrity": "sha512-zLBvqpwr4Esa0kRjcrzGU6zL25lePWaCLMx0RQFrmteozIfeNdaMLpG5U7PeHzvlFkAWaRKA9/KVW4F60iB+qw==",
902
+ "license": "MIT",
903
+ "dependencies": {
904
+ "real-require": "^0.2.0"
905
+ }
906
+ },
907
+ "node_modules/agent-base": {
908
+ "version": "7.1.4",
909
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz",
910
+ "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==",
911
+ "license": "MIT",
912
+ "engines": {
913
+ "node": ">= 14"
914
+ }
915
+ },
916
+ "node_modules/ansi-regex": {
917
+ "version": "6.2.2",
918
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz",
919
+ "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==",
920
+ "license": "MIT",
921
+ "engines": {
922
+ "node": ">=12"
923
+ },
924
+ "funding": {
925
+ "url": "https://github.com/chalk/ansi-regex?sponsor=1"
926
+ }
927
+ },
928
+ "node_modules/ansi-styles": {
929
+ "version": "6.2.3",
930
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz",
931
+ "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==",
932
+ "license": "MIT",
933
+ "engines": {
934
+ "node": ">=12"
935
+ },
936
+ "funding": {
937
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
938
+ }
939
+ },
940
+ "node_modules/async-mutex": {
941
+ "version": "0.5.0",
942
+ "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.5.0.tgz",
943
+ "integrity": "sha512-1A94B18jkJ3DYq284ohPxoXbfTA5HsQ7/Mf4DEhcyLx3Bz27Rh59iScbB6EPiP+B+joue6YCxcMXSbFC1tZKwA==",
944
+ "license": "MIT",
945
+ "dependencies": {
946
+ "tslib": "^2.4.0"
947
+ }
948
+ },
949
+ "node_modules/atomic-sleep": {
950
+ "version": "1.0.0",
951
+ "resolved": "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz",
952
+ "integrity": "sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==",
953
+ "license": "MIT",
954
+ "engines": {
955
+ "node": ">=8.0.0"
956
+ }
957
+ },
958
+ "node_modules/balanced-match": {
959
+ "version": "1.0.2",
960
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
961
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
962
+ "license": "MIT"
963
+ },
964
+ "node_modules/base64-js": {
965
+ "version": "1.5.1",
966
+ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
967
+ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
968
+ "funding": [
969
+ {
970
+ "type": "github",
971
+ "url": "https://github.com/sponsors/feross"
972
+ },
973
+ {
974
+ "type": "patreon",
975
+ "url": "https://www.patreon.com/feross"
976
+ },
977
+ {
978
+ "type": "consulting",
979
+ "url": "https://feross.org/support"
980
+ }
981
+ ],
982
+ "license": "MIT"
983
+ },
984
+ "node_modules/bignumber.js": {
985
+ "version": "9.3.1",
986
+ "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.3.1.tgz",
987
+ "integrity": "sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ==",
988
+ "license": "MIT",
989
+ "engines": {
990
+ "node": "*"
991
+ }
992
+ },
993
+ "node_modules/brace-expansion": {
994
+ "version": "2.1.1",
995
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.1.tgz",
996
+ "integrity": "sha512-WR1cURNjuvBLMZBMbqM0UoE+WAfdUcEV1ccD8PVBVOI+Z3ND4+SZbN8RsfT2bMuG1qwz5RFvPukSZm5fF2D5eA==",
997
+ "license": "MIT",
998
+ "dependencies": {
999
+ "balanced-match": "^1.0.0"
1000
+ }
1001
+ },
1002
+ "node_modules/buffer-equal-constant-time": {
1003
+ "version": "1.0.1",
1004
+ "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz",
1005
+ "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==",
1006
+ "license": "BSD-3-Clause"
1007
+ },
1008
+ "node_modules/cacheable": {
1009
+ "version": "2.3.5",
1010
+ "resolved": "https://registry.npmjs.org/cacheable/-/cacheable-2.3.5.tgz",
1011
+ "integrity": "sha512-EQfaKe09tl615iNvq/TBRWTFf1AKJNXYQSsMx0Z3EI0nA+pVsVPS8wJhnRlkbdacKPh1d0qVIhwTc2zsQNFEEg==",
1012
+ "license": "MIT",
1013
+ "dependencies": {
1014
+ "@cacheable/memory": "^2.0.8",
1015
+ "@cacheable/utils": "^2.4.1",
1016
+ "hookified": "^1.15.0",
1017
+ "keyv": "^5.6.0",
1018
+ "qified": "^0.10.1"
1019
+ }
1020
+ },
1021
+ "node_modules/call-bind-apply-helpers": {
1022
+ "version": "1.0.2",
1023
+ "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
1024
+ "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
1025
+ "license": "MIT",
1026
+ "dependencies": {
1027
+ "es-errors": "^1.3.0",
1028
+ "function-bind": "^1.1.2"
1029
+ },
1030
+ "engines": {
1031
+ "node": ">= 0.4"
1032
+ }
1033
+ },
1034
+ "node_modules/call-bound": {
1035
+ "version": "1.0.4",
1036
+ "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
1037
+ "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
1038
+ "license": "MIT",
1039
+ "dependencies": {
1040
+ "call-bind-apply-helpers": "^1.0.2",
1041
+ "get-intrinsic": "^1.3.0"
1042
+ },
1043
+ "engines": {
1044
+ "node": ">= 0.4"
1045
+ },
1046
+ "funding": {
1047
+ "url": "https://github.com/sponsors/ljharb"
1048
+ }
1049
+ },
1050
+ "node_modules/color-convert": {
1051
+ "version": "2.0.1",
1052
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
1053
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
1054
+ "license": "MIT",
1055
+ "dependencies": {
1056
+ "color-name": "~1.1.4"
1057
+ },
1058
+ "engines": {
1059
+ "node": ">=7.0.0"
1060
+ }
1061
+ },
1062
+ "node_modules/color-name": {
1063
+ "version": "1.1.4",
1064
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1065
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
1066
+ "license": "MIT"
1067
+ },
1068
+ "node_modules/content-type": {
1069
+ "version": "2.0.0",
1070
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.0.0.tgz",
1071
+ "integrity": "sha512-j/O/d7GcZCyNl7/hwZAb606rzqkyvaDctLmckbxLzHvFBzTJHuGEdodATcP3yIRoDrLHkIATJuvzbFlp/ki2cQ==",
1072
+ "license": "MIT",
1073
+ "engines": {
1074
+ "node": ">=18"
1075
+ },
1076
+ "funding": {
1077
+ "type": "opencollective",
1078
+ "url": "https://opencollective.com/express"
1079
+ }
1080
+ },
1081
+ "node_modules/cross-spawn": {
1082
+ "version": "7.0.6",
1083
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
1084
+ "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
1085
+ "license": "MIT",
1086
+ "dependencies": {
1087
+ "path-key": "^3.1.0",
1088
+ "shebang-command": "^2.0.0",
1089
+ "which": "^2.0.1"
1090
+ },
1091
+ "engines": {
1092
+ "node": ">= 8"
1093
+ }
1094
+ },
1095
+ "node_modules/curve25519-js": {
1096
+ "version": "0.0.4",
1097
+ "resolved": "https://registry.npmjs.org/curve25519-js/-/curve25519-js-0.0.4.tgz",
1098
+ "integrity": "sha512-axn2UMEnkhyDUPWOwVKBMVIzSQy2ejH2xRGy1wq81dqRwApXfIzfbE3hIX0ZRFBIihf/KDqK158DLwESu4AK1w==",
1099
+ "license": "MIT"
1100
+ },
1101
+ "node_modules/data-uri-to-buffer": {
1102
+ "version": "4.0.1",
1103
+ "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz",
1104
+ "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==",
1105
+ "license": "MIT",
1106
+ "engines": {
1107
+ "node": ">= 12"
1108
+ }
1109
+ },
1110
+ "node_modules/debug": {
1111
+ "version": "4.4.3",
1112
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
1113
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
1114
+ "license": "MIT",
1115
+ "dependencies": {
1116
+ "ms": "^2.1.3"
1117
+ },
1118
+ "engines": {
1119
+ "node": ">=6.0"
1120
+ },
1121
+ "peerDependenciesMeta": {
1122
+ "supports-color": {
1123
+ "optional": true
1124
+ }
1125
+ }
1126
+ },
1127
+ "node_modules/detect-libc": {
1128
+ "version": "2.1.2",
1129
+ "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz",
1130
+ "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==",
1131
+ "license": "Apache-2.0",
1132
+ "peer": true,
1133
+ "engines": {
1134
+ "node": ">=8"
1135
+ }
1136
+ },
1137
+ "node_modules/dunder-proto": {
1138
+ "version": "1.0.1",
1139
+ "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
1140
+ "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
1141
+ "license": "MIT",
1142
+ "dependencies": {
1143
+ "call-bind-apply-helpers": "^1.0.1",
1144
+ "es-errors": "^1.3.0",
1145
+ "gopd": "^1.2.0"
1146
+ },
1147
+ "engines": {
1148
+ "node": ">= 0.4"
1149
+ }
1150
+ },
1151
+ "node_modules/eastasianwidth": {
1152
+ "version": "0.2.0",
1153
+ "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
1154
+ "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
1155
+ "license": "MIT"
1156
+ },
1157
+ "node_modules/ecdsa-sig-formatter": {
1158
+ "version": "1.0.11",
1159
+ "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz",
1160
+ "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==",
1161
+ "license": "Apache-2.0",
1162
+ "dependencies": {
1163
+ "safe-buffer": "^5.0.1"
1164
+ }
1165
+ },
1166
+ "node_modules/emoji-regex": {
1167
+ "version": "9.2.2",
1168
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
1169
+ "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
1170
+ "license": "MIT"
1171
+ },
1172
+ "node_modules/es-define-property": {
1173
+ "version": "1.0.1",
1174
+ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
1175
+ "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
1176
+ "license": "MIT",
1177
+ "engines": {
1178
+ "node": ">= 0.4"
1179
+ }
1180
+ },
1181
+ "node_modules/es-errors": {
1182
+ "version": "1.3.0",
1183
+ "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
1184
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
1185
+ "license": "MIT",
1186
+ "engines": {
1187
+ "node": ">= 0.4"
1188
+ }
1189
+ },
1190
+ "node_modules/es-object-atoms": {
1191
+ "version": "1.1.2",
1192
+ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz",
1193
+ "integrity": "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==",
1194
+ "license": "MIT",
1195
+ "dependencies": {
1196
+ "es-errors": "^1.3.0"
1197
+ },
1198
+ "engines": {
1199
+ "node": ">= 0.4"
1200
+ }
1201
+ },
1202
+ "node_modules/eventemitter3": {
1203
+ "version": "5.0.4",
1204
+ "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.4.tgz",
1205
+ "integrity": "sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==",
1206
+ "license": "MIT"
1207
+ },
1208
+ "node_modules/extend": {
1209
+ "version": "3.0.2",
1210
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
1211
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
1212
+ "license": "MIT"
1213
+ },
1214
+ "node_modules/fetch-blob": {
1215
+ "version": "3.2.0",
1216
+ "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz",
1217
+ "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==",
1218
+ "funding": [
1219
+ {
1220
+ "type": "github",
1221
+ "url": "https://github.com/sponsors/jimmywarting"
1222
+ },
1223
+ {
1224
+ "type": "paypal",
1225
+ "url": "https://paypal.me/jimmywarting"
1226
+ }
1227
+ ],
1228
+ "license": "MIT",
1229
+ "dependencies": {
1230
+ "node-domexception": "^1.0.0",
1231
+ "web-streams-polyfill": "^3.0.3"
1232
+ },
1233
+ "engines": {
1234
+ "node": "^12.20 || >= 14.13"
1235
+ }
1236
+ },
1237
+ "node_modules/file-type": {
1238
+ "version": "21.3.4",
1239
+ "resolved": "https://registry.npmjs.org/file-type/-/file-type-21.3.4.tgz",
1240
+ "integrity": "sha512-Ievi/yy8DS3ygGvT47PjSfdFoX+2isQueoYP1cntFW1JLYAuS4GD7NUPGg4zv2iZfV52uDyk5w5Z0TdpRS6Q1g==",
1241
+ "license": "MIT",
1242
+ "dependencies": {
1243
+ "@tokenizer/inflate": "^0.4.1",
1244
+ "strtok3": "^10.3.4",
1245
+ "token-types": "^6.1.1",
1246
+ "uint8array-extras": "^1.4.0"
1247
+ },
1248
+ "engines": {
1249
+ "node": ">=20"
1250
+ },
1251
+ "funding": {
1252
+ "url": "https://github.com/sindresorhus/file-type?sponsor=1"
1253
+ }
1254
+ },
1255
+ "node_modules/foreground-child": {
1256
+ "version": "3.3.1",
1257
+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz",
1258
+ "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==",
1259
+ "license": "ISC",
1260
+ "dependencies": {
1261
+ "cross-spawn": "^7.0.6",
1262
+ "signal-exit": "^4.0.1"
1263
+ },
1264
+ "engines": {
1265
+ "node": ">=14"
1266
+ },
1267
+ "funding": {
1268
+ "url": "https://github.com/sponsors/isaacs"
1269
+ }
1270
+ },
1271
+ "node_modules/formdata-polyfill": {
1272
+ "version": "4.0.10",
1273
+ "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz",
1274
+ "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==",
1275
+ "license": "MIT",
1276
+ "dependencies": {
1277
+ "fetch-blob": "^3.1.2"
1278
+ },
1279
+ "engines": {
1280
+ "node": ">=12.20.0"
1281
+ }
1282
+ },
1283
+ "node_modules/function-bind": {
1284
+ "version": "1.1.2",
1285
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
1286
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
1287
+ "license": "MIT",
1288
+ "funding": {
1289
+ "url": "https://github.com/sponsors/ljharb"
1290
+ }
1291
+ },
1292
+ "node_modules/gaxios": {
1293
+ "version": "7.1.5",
1294
+ "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-7.1.5.tgz",
1295
+ "integrity": "sha512-5FZy72Rh8LhtjmvDrKkI+lVhrsQrVKVsItxMoDm5mNQE+xR0WVIIs+jzPSJgBvKVsLi24fZhXJIsNI0bihDzFg==",
1296
+ "license": "Apache-2.0",
1297
+ "dependencies": {
1298
+ "extend": "^3.0.2",
1299
+ "https-proxy-agent": "^7.0.1",
1300
+ "node-fetch": "^3.3.2"
1301
+ },
1302
+ "engines": {
1303
+ "node": ">=18"
1304
+ }
1305
+ },
1306
+ "node_modules/gcp-metadata": {
1307
+ "version": "8.1.2",
1308
+ "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-8.1.2.tgz",
1309
+ "integrity": "sha512-zV/5HKTfCeKWnxG0Dmrw51hEWFGfcF2xiXqcA3+J90WDuP0SvoiSO5ORvcBsifmx/FoIjgQN3oNOGaQ5PhLFkg==",
1310
+ "license": "Apache-2.0",
1311
+ "dependencies": {
1312
+ "gaxios": "^7.0.0",
1313
+ "google-logging-utils": "^1.0.0",
1314
+ "json-bigint": "^1.0.0"
1315
+ },
1316
+ "engines": {
1317
+ "node": ">=18"
1318
+ }
1319
+ },
1320
+ "node_modules/get-intrinsic": {
1321
+ "version": "1.3.0",
1322
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
1323
+ "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
1324
+ "license": "MIT",
1325
+ "dependencies": {
1326
+ "call-bind-apply-helpers": "^1.0.2",
1327
+ "es-define-property": "^1.0.1",
1328
+ "es-errors": "^1.3.0",
1329
+ "es-object-atoms": "^1.1.1",
1330
+ "function-bind": "^1.1.2",
1331
+ "get-proto": "^1.0.1",
1332
+ "gopd": "^1.2.0",
1333
+ "has-symbols": "^1.1.0",
1334
+ "hasown": "^2.0.2",
1335
+ "math-intrinsics": "^1.1.0"
1336
+ },
1337
+ "engines": {
1338
+ "node": ">= 0.4"
1339
+ },
1340
+ "funding": {
1341
+ "url": "https://github.com/sponsors/ljharb"
1342
+ }
1343
+ },
1344
+ "node_modules/get-proto": {
1345
+ "version": "1.0.1",
1346
+ "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
1347
+ "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
1348
+ "license": "MIT",
1349
+ "dependencies": {
1350
+ "dunder-proto": "^1.0.1",
1351
+ "es-object-atoms": "^1.0.0"
1352
+ },
1353
+ "engines": {
1354
+ "node": ">= 0.4"
1355
+ }
1356
+ },
1357
+ "node_modules/glob": {
1358
+ "version": "10.5.0",
1359
+ "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz",
1360
+ "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==",
1361
+ "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me",
1362
+ "license": "ISC",
1363
+ "dependencies": {
1364
+ "foreground-child": "^3.1.0",
1365
+ "jackspeak": "^3.1.2",
1366
+ "minimatch": "^9.0.4",
1367
+ "minipass": "^7.1.2",
1368
+ "package-json-from-dist": "^1.0.0",
1369
+ "path-scurry": "^1.11.1"
1370
+ },
1371
+ "bin": {
1372
+ "glob": "dist/esm/bin.mjs"
1373
+ },
1374
+ "funding": {
1375
+ "url": "https://github.com/sponsors/isaacs"
1376
+ }
1377
+ },
1378
+ "node_modules/google-auth-library": {
1379
+ "version": "10.7.0",
1380
+ "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-10.7.0.tgz",
1381
+ "integrity": "sha512-QpTAbNJ36TliZLx3TTtahR8HG0hN9RllL1e3FymOvQSIKK8JmgV58H924ub2wa2DsS3ANjjP1Aw1N+Ramc8hqQ==",
1382
+ "license": "Apache-2.0",
1383
+ "dependencies": {
1384
+ "base64-js": "^1.3.0",
1385
+ "ecdsa-sig-formatter": "^1.0.11",
1386
+ "gaxios": "^7.1.4",
1387
+ "gcp-metadata": "8.1.2",
1388
+ "google-logging-utils": "1.1.3",
1389
+ "jws": "^4.0.0"
1390
+ },
1391
+ "engines": {
1392
+ "node": ">=18"
1393
+ }
1394
+ },
1395
+ "node_modules/google-logging-utils": {
1396
+ "version": "1.1.3",
1397
+ "resolved": "https://registry.npmjs.org/google-logging-utils/-/google-logging-utils-1.1.3.tgz",
1398
+ "integrity": "sha512-eAmLkjDjAFCVXg7A1unxHsLf961m6y17QFqXqAXGj/gVkKFrEICfStRfwUlGNfeCEjNRa32JEWOUTlYXPyyKvA==",
1399
+ "license": "Apache-2.0",
1400
+ "engines": {
1401
+ "node": ">=14"
1402
+ }
1403
+ },
1404
+ "node_modules/googleapis": {
1405
+ "version": "173.0.0",
1406
+ "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-173.0.0.tgz",
1407
+ "integrity": "sha512-xEJJYLZ4qeenVyfzispNfRjCe9bsv7CzBv5zYFLvScOze9snJ8S9W6hjQ729CWPQt5mvn/JrcRaCHzQiukt0ng==",
1408
+ "license": "Apache-2.0",
1409
+ "dependencies": {
1410
+ "google-auth-library": "^10.2.0",
1411
+ "googleapis-common": "^8.0.0"
1412
+ },
1413
+ "engines": {
1414
+ "node": ">=18"
1415
+ }
1416
+ },
1417
+ "node_modules/googleapis-common": {
1418
+ "version": "8.0.2",
1419
+ "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-8.0.2.tgz",
1420
+ "integrity": "sha512-5MXeQzIZaqCH7B+HJWqhQm946VARpZep6acbWSr/fcgF2cQANq7allgX+i/G0EqF0WyUxB277gtWMzRYHMl9tg==",
1421
+ "license": "Apache-2.0",
1422
+ "dependencies": {
1423
+ "extend": "^3.0.2",
1424
+ "gaxios": "7.1.3",
1425
+ "google-auth-library": "10.5.0",
1426
+ "google-logging-utils": "1.1.3",
1427
+ "qs": "^6.7.0",
1428
+ "url-template": "^2.0.8"
1429
+ },
1430
+ "engines": {
1431
+ "node": ">=18.0.0"
1432
+ }
1433
+ },
1434
+ "node_modules/googleapis-common/node_modules/gaxios": {
1435
+ "version": "7.1.3",
1436
+ "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-7.1.3.tgz",
1437
+ "integrity": "sha512-YGGyuEdVIjqxkxVH1pUTMY/XtmmsApXrCVv5EU25iX6inEPbV+VakJfLealkBtJN69AQmh1eGOdCl9Sm1UP6XQ==",
1438
+ "license": "Apache-2.0",
1439
+ "dependencies": {
1440
+ "extend": "^3.0.2",
1441
+ "https-proxy-agent": "^7.0.1",
1442
+ "node-fetch": "^3.3.2",
1443
+ "rimraf": "^5.0.1"
1444
+ },
1445
+ "engines": {
1446
+ "node": ">=18"
1447
+ }
1448
+ },
1449
+ "node_modules/googleapis-common/node_modules/google-auth-library": {
1450
+ "version": "10.5.0",
1451
+ "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-10.5.0.tgz",
1452
+ "integrity": "sha512-7ABviyMOlX5hIVD60YOfHw4/CxOfBhyduaYB+wbFWCWoni4N7SLcV46hrVRktuBbZjFC9ONyqamZITN7q3n32w==",
1453
+ "license": "Apache-2.0",
1454
+ "dependencies": {
1455
+ "base64-js": "^1.3.0",
1456
+ "ecdsa-sig-formatter": "^1.0.11",
1457
+ "gaxios": "^7.0.0",
1458
+ "gcp-metadata": "^8.0.0",
1459
+ "google-logging-utils": "^1.0.0",
1460
+ "gtoken": "^8.0.0",
1461
+ "jws": "^4.0.0"
1462
+ },
1463
+ "engines": {
1464
+ "node": ">=18"
1465
+ }
1466
+ },
1467
+ "node_modules/gopd": {
1468
+ "version": "1.2.0",
1469
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
1470
+ "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
1471
+ "license": "MIT",
1472
+ "engines": {
1473
+ "node": ">= 0.4"
1474
+ },
1475
+ "funding": {
1476
+ "url": "https://github.com/sponsors/ljharb"
1477
+ }
1478
+ },
1479
+ "node_modules/groq-sdk": {
1480
+ "version": "1.2.1",
1481
+ "resolved": "https://registry.npmjs.org/groq-sdk/-/groq-sdk-1.2.1.tgz",
1482
+ "integrity": "sha512-dsDSWJRJf+n2dPiCv7zU3IsJbrh7jfSPqi6vc1q0TTK1oUF6bn+wv4P2VFdynkHpuJ0TTJ57vlpT87judPgVPA==",
1483
+ "license": "Apache-2.0",
1484
+ "bin": {
1485
+ "groq-sdk": "bin/cli"
1486
+ }
1487
+ },
1488
+ "node_modules/gtoken": {
1489
+ "version": "8.0.0",
1490
+ "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-8.0.0.tgz",
1491
+ "integrity": "sha512-+CqsMbHPiSTdtSO14O51eMNlrp9N79gmeqmXeouJOhfucAedHw9noVe/n5uJk3tbKE6a+6ZCQg3RPhVhHByAIw==",
1492
+ "license": "MIT",
1493
+ "dependencies": {
1494
+ "gaxios": "^7.0.0",
1495
+ "jws": "^4.0.0"
1496
+ },
1497
+ "engines": {
1498
+ "node": ">=18"
1499
+ }
1500
+ },
1501
+ "node_modules/has-symbols": {
1502
+ "version": "1.1.0",
1503
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
1504
+ "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
1505
+ "license": "MIT",
1506
+ "engines": {
1507
+ "node": ">= 0.4"
1508
+ },
1509
+ "funding": {
1510
+ "url": "https://github.com/sponsors/ljharb"
1511
+ }
1512
+ },
1513
+ "node_modules/hashery": {
1514
+ "version": "1.5.1",
1515
+ "resolved": "https://registry.npmjs.org/hashery/-/hashery-1.5.1.tgz",
1516
+ "integrity": "sha512-iZyKG96/JwPz1N55vj2Ie2vXbhu440zfUfJvSwEqEbeLluk7NnapfGqa7LH0mOsnDxTF85Mx8/dyR6HfqcbmbQ==",
1517
+ "license": "MIT",
1518
+ "dependencies": {
1519
+ "hookified": "^1.15.0"
1520
+ },
1521
+ "engines": {
1522
+ "node": ">=20"
1523
+ }
1524
+ },
1525
+ "node_modules/hasown": {
1526
+ "version": "2.0.4",
1527
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz",
1528
+ "integrity": "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==",
1529
+ "license": "MIT",
1530
+ "dependencies": {
1531
+ "function-bind": "^1.1.2"
1532
+ },
1533
+ "engines": {
1534
+ "node": ">= 0.4"
1535
+ }
1536
+ },
1537
+ "node_modules/hookified": {
1538
+ "version": "1.15.1",
1539
+ "resolved": "https://registry.npmjs.org/hookified/-/hookified-1.15.1.tgz",
1540
+ "integrity": "sha512-MvG/clsADq1GPM2KGo2nyfaWVyn9naPiXrqIe4jYjXNZQt238kWyOGrsyc/DmRAQ+Re6yeo6yX/yoNCG5KAEVg==",
1541
+ "license": "MIT"
1542
+ },
1543
+ "node_modules/https-proxy-agent": {
1544
+ "version": "7.0.6",
1545
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz",
1546
+ "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
1547
+ "license": "MIT",
1548
+ "dependencies": {
1549
+ "agent-base": "^7.1.2",
1550
+ "debug": "4"
1551
+ },
1552
+ "engines": {
1553
+ "node": ">= 14"
1554
+ }
1555
+ },
1556
+ "node_modules/ieee754": {
1557
+ "version": "1.2.1",
1558
+ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
1559
+ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
1560
+ "funding": [
1561
+ {
1562
+ "type": "github",
1563
+ "url": "https://github.com/sponsors/feross"
1564
+ },
1565
+ {
1566
+ "type": "patreon",
1567
+ "url": "https://www.patreon.com/feross"
1568
+ },
1569
+ {
1570
+ "type": "consulting",
1571
+ "url": "https://feross.org/support"
1572
+ }
1573
+ ],
1574
+ "license": "BSD-3-Clause"
1575
+ },
1576
+ "node_modules/is-fullwidth-code-point": {
1577
+ "version": "3.0.0",
1578
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
1579
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
1580
+ "license": "MIT",
1581
+ "engines": {
1582
+ "node": ">=8"
1583
+ }
1584
+ },
1585
+ "node_modules/isexe": {
1586
+ "version": "2.0.0",
1587
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
1588
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
1589
+ "license": "ISC"
1590
+ },
1591
+ "node_modules/jackspeak": {
1592
+ "version": "3.4.3",
1593
+ "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz",
1594
+ "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
1595
+ "license": "BlueOak-1.0.0",
1596
+ "dependencies": {
1597
+ "@isaacs/cliui": "^8.0.2"
1598
+ },
1599
+ "funding": {
1600
+ "url": "https://github.com/sponsors/isaacs"
1601
+ },
1602
+ "optionalDependencies": {
1603
+ "@pkgjs/parseargs": "^0.11.0"
1604
+ }
1605
+ },
1606
+ "node_modules/json-bigint": {
1607
+ "version": "1.0.0",
1608
+ "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz",
1609
+ "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==",
1610
+ "license": "MIT",
1611
+ "dependencies": {
1612
+ "bignumber.js": "^9.0.0"
1613
+ }
1614
+ },
1615
+ "node_modules/jwa": {
1616
+ "version": "2.0.1",
1617
+ "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.1.tgz",
1618
+ "integrity": "sha512-hRF04fqJIP8Abbkq5NKGN0Bbr3JxlQ+qhZufXVr0DvujKy93ZCbXZMHDL4EOtodSbCWxOqR8MS1tXA5hwqCXDg==",
1619
+ "license": "MIT",
1620
+ "dependencies": {
1621
+ "buffer-equal-constant-time": "^1.0.1",
1622
+ "ecdsa-sig-formatter": "1.0.11",
1623
+ "safe-buffer": "^5.0.1"
1624
+ }
1625
+ },
1626
+ "node_modules/jws": {
1627
+ "version": "4.0.1",
1628
+ "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.1.tgz",
1629
+ "integrity": "sha512-EKI/M/yqPncGUUh44xz0PxSidXFr/+r0pA70+gIYhjv+et7yxM+s29Y+VGDkovRofQem0fs7Uvf4+YmAdyRduA==",
1630
+ "license": "MIT",
1631
+ "dependencies": {
1632
+ "jwa": "^2.0.1",
1633
+ "safe-buffer": "^5.0.1"
1634
+ }
1635
+ },
1636
+ "node_modules/keyv": {
1637
+ "version": "5.6.0",
1638
+ "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz",
1639
+ "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==",
1640
+ "license": "MIT",
1641
+ "dependencies": {
1642
+ "@keyv/serialize": "^1.1.1"
1643
+ }
1644
+ },
1645
+ "node_modules/libsignal": {
1646
+ "version": "6.0.0",
1647
+ "resolved": "https://registry.npmjs.org/libsignal/-/libsignal-6.0.0.tgz",
1648
+ "integrity": "sha512-d/5V3YFtDljbFMufz4ncyUYGYhJl+vzAe+c2EFFBQ6bz1h8Q3IOMEGXYMzlibU60I+e8GagMMpji18iez3P1hA==",
1649
+ "license": "GPL-3.0",
1650
+ "dependencies": {
1651
+ "curve25519-js": "^0.0.4",
1652
+ "protobufjs": "^7.5.5"
1653
+ }
1654
+ },
1655
+ "node_modules/long": {
1656
+ "version": "5.3.2",
1657
+ "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz",
1658
+ "integrity": "sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==",
1659
+ "license": "Apache-2.0"
1660
+ },
1661
+ "node_modules/lru-cache": {
1662
+ "version": "11.5.1",
1663
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.1.tgz",
1664
+ "integrity": "sha512-RPimw/7aMdv2oqRrxKwvZXcPfwBrn/JZ2xYcY9Hus/6LaS3VOAKVWKWgNLCFSiOm1ESXinjsDlidVU7JlnCN2A==",
1665
+ "license": "BlueOak-1.0.0",
1666
+ "engines": {
1667
+ "node": "20 || >=22"
1668
+ }
1669
+ },
1670
+ "node_modules/math-intrinsics": {
1671
+ "version": "1.1.0",
1672
+ "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
1673
+ "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
1674
+ "license": "MIT",
1675
+ "engines": {
1676
+ "node": ">= 0.4"
1677
+ }
1678
+ },
1679
+ "node_modules/media-typer": {
1680
+ "version": "2.0.0",
1681
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-2.0.0.tgz",
1682
+ "integrity": "sha512-kOy3OxT2HH39N70UnKgu4NWDZjLOz8W/mfyvniHjRH/DrL3f2pOfvWQ4p60offbbtDAnXWp0v9LfMIqMec269Q==",
1683
+ "license": "MIT",
1684
+ "engines": {
1685
+ "node": ">=18"
1686
+ },
1687
+ "funding": {
1688
+ "type": "opencollective",
1689
+ "url": "https://opencollective.com/express"
1690
+ }
1691
+ },
1692
+ "node_modules/minimatch": {
1693
+ "version": "9.0.9",
1694
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz",
1695
+ "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==",
1696
+ "license": "ISC",
1697
+ "dependencies": {
1698
+ "brace-expansion": "^2.0.2"
1699
+ },
1700
+ "engines": {
1701
+ "node": ">=16 || 14 >=14.17"
1702
+ },
1703
+ "funding": {
1704
+ "url": "https://github.com/sponsors/isaacs"
1705
+ }
1706
+ },
1707
+ "node_modules/minipass": {
1708
+ "version": "7.1.3",
1709
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz",
1710
+ "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==",
1711
+ "license": "BlueOak-1.0.0",
1712
+ "engines": {
1713
+ "node": ">=16 || 14 >=14.17"
1714
+ }
1715
+ },
1716
+ "node_modules/ms": {
1717
+ "version": "2.1.3",
1718
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
1719
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
1720
+ "license": "MIT"
1721
+ },
1722
+ "node_modules/music-metadata": {
1723
+ "version": "11.13.0",
1724
+ "resolved": "https://registry.npmjs.org/music-metadata/-/music-metadata-11.13.0.tgz",
1725
+ "integrity": "sha512-uXRaov9dfjSpQufXIU7sMxVZnh+FilCQv2mXn+K5EJ/decP3dTWrgvPYa5r6MtRbieNSCE708Da4J0u1UGfQIw==",
1726
+ "funding": [
1727
+ {
1728
+ "type": "github",
1729
+ "url": "https://github.com/sponsors/Borewit"
1730
+ },
1731
+ {
1732
+ "type": "buymeacoffee",
1733
+ "url": "https://buymeacoffee.com/borewit"
1734
+ }
1735
+ ],
1736
+ "license": "MIT",
1737
+ "dependencies": {
1738
+ "@borewit/text-codec": "^0.2.2",
1739
+ "@tokenizer/token": "^0.3.0",
1740
+ "content-type": "^2.0.0",
1741
+ "debug": "^4.4.3",
1742
+ "file-type": "^21.3.4",
1743
+ "media-typer": "^2.0.0",
1744
+ "strtok3": "^10.3.5",
1745
+ "token-types": "^6.1.2",
1746
+ "uint8array-extras": "^1.5.0",
1747
+ "win-guid": "^0.2.1"
1748
+ },
1749
+ "engines": {
1750
+ "node": ">=18"
1751
+ }
1752
+ },
1753
+ "node_modules/node-cron": {
1754
+ "version": "4.4.1",
1755
+ "resolved": "https://registry.npmjs.org/node-cron/-/node-cron-4.4.1.tgz",
1756
+ "integrity": "sha512-1e4Gku1qeKx1ywNnMoA0o5hiZ8iA4klH84TIszTHZAME68xVIjLkiBo5KrtowbcOJn8MQqJG/yWHjC/dFdMWyQ==",
1757
+ "license": "ISC",
1758
+ "engines": {
1759
+ "node": ">=20"
1760
+ }
1761
+ },
1762
+ "node_modules/node-domexception": {
1763
+ "version": "1.0.0",
1764
+ "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz",
1765
+ "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==",
1766
+ "deprecated": "Use your platform's native DOMException instead",
1767
+ "funding": [
1768
+ {
1769
+ "type": "github",
1770
+ "url": "https://github.com/sponsors/jimmywarting"
1771
+ },
1772
+ {
1773
+ "type": "github",
1774
+ "url": "https://paypal.me/jimmywarting"
1775
+ }
1776
+ ],
1777
+ "license": "MIT",
1778
+ "engines": {
1779
+ "node": ">=10.5.0"
1780
+ }
1781
+ },
1782
+ "node_modules/node-fetch": {
1783
+ "version": "3.3.2",
1784
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz",
1785
+ "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==",
1786
+ "license": "MIT",
1787
+ "dependencies": {
1788
+ "data-uri-to-buffer": "^4.0.0",
1789
+ "fetch-blob": "^3.1.4",
1790
+ "formdata-polyfill": "^4.0.10"
1791
+ },
1792
+ "engines": {
1793
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
1794
+ },
1795
+ "funding": {
1796
+ "type": "opencollective",
1797
+ "url": "https://opencollective.com/node-fetch"
1798
+ }
1799
+ },
1800
+ "node_modules/object-inspect": {
1801
+ "version": "1.13.4",
1802
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
1803
+ "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
1804
+ "license": "MIT",
1805
+ "engines": {
1806
+ "node": ">= 0.4"
1807
+ },
1808
+ "funding": {
1809
+ "url": "https://github.com/sponsors/ljharb"
1810
+ }
1811
+ },
1812
+ "node_modules/on-exit-leak-free": {
1813
+ "version": "2.1.2",
1814
+ "resolved": "https://registry.npmjs.org/on-exit-leak-free/-/on-exit-leak-free-2.1.2.tgz",
1815
+ "integrity": "sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==",
1816
+ "license": "MIT",
1817
+ "engines": {
1818
+ "node": ">=14.0.0"
1819
+ }
1820
+ },
1821
+ "node_modules/p-queue": {
1822
+ "version": "9.3.0",
1823
+ "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-9.3.0.tgz",
1824
+ "integrity": "sha512-7NED7xhQ74Ngp4JP/2e0VZHp7vSWfJfqeiR92jPgxsz6m0Se4P03YoTKa9dDXyZ3r6P616gUXttrB6nnHYKang==",
1825
+ "license": "MIT",
1826
+ "dependencies": {
1827
+ "eventemitter3": "^5.0.4",
1828
+ "p-timeout": "^7.0.0"
1829
+ },
1830
+ "engines": {
1831
+ "node": ">=20"
1832
+ },
1833
+ "funding": {
1834
+ "url": "https://github.com/sponsors/sindresorhus"
1835
+ }
1836
+ },
1837
+ "node_modules/p-timeout": {
1838
+ "version": "7.0.1",
1839
+ "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-7.0.1.tgz",
1840
+ "integrity": "sha512-AxTM2wDGORHGEkPCt8yqxOTMgpfbEHqF51f/5fJCmwFC3C/zNcGT63SymH2ttOAaiIws2zVg4+izQCjrakcwHg==",
1841
+ "license": "MIT",
1842
+ "engines": {
1843
+ "node": ">=20"
1844
+ },
1845
+ "funding": {
1846
+ "url": "https://github.com/sponsors/sindresorhus"
1847
+ }
1848
+ },
1849
+ "node_modules/package-json-from-dist": {
1850
+ "version": "1.0.1",
1851
+ "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz",
1852
+ "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==",
1853
+ "license": "BlueOak-1.0.0"
1854
+ },
1855
+ "node_modules/path-key": {
1856
+ "version": "3.1.1",
1857
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
1858
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
1859
+ "license": "MIT",
1860
+ "engines": {
1861
+ "node": ">=8"
1862
+ }
1863
+ },
1864
+ "node_modules/path-scurry": {
1865
+ "version": "1.11.1",
1866
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz",
1867
+ "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==",
1868
+ "license": "BlueOak-1.0.0",
1869
+ "dependencies": {
1870
+ "lru-cache": "^10.2.0",
1871
+ "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
1872
+ },
1873
+ "engines": {
1874
+ "node": ">=16 || 14 >=14.18"
1875
+ },
1876
+ "funding": {
1877
+ "url": "https://github.com/sponsors/isaacs"
1878
+ }
1879
+ },
1880
+ "node_modules/path-scurry/node_modules/lru-cache": {
1881
+ "version": "10.4.3",
1882
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz",
1883
+ "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==",
1884
+ "license": "ISC"
1885
+ },
1886
+ "node_modules/pino": {
1887
+ "version": "10.3.1",
1888
+ "resolved": "https://registry.npmjs.org/pino/-/pino-10.3.1.tgz",
1889
+ "integrity": "sha512-r34yH/GlQpKZbU1BvFFqOjhISRo1MNx1tWYsYvmj6KIRHSPMT2+yHOEb1SG6NMvRoHRF0a07kCOox/9yakl1vg==",
1890
+ "license": "MIT",
1891
+ "dependencies": {
1892
+ "@pinojs/redact": "^0.4.0",
1893
+ "atomic-sleep": "^1.0.0",
1894
+ "on-exit-leak-free": "^2.1.0",
1895
+ "pino-abstract-transport": "^3.0.0",
1896
+ "pino-std-serializers": "^7.0.0",
1897
+ "process-warning": "^5.0.0",
1898
+ "quick-format-unescaped": "^4.0.3",
1899
+ "real-require": "^0.2.0",
1900
+ "safe-stable-stringify": "^2.3.1",
1901
+ "sonic-boom": "^4.0.1",
1902
+ "thread-stream": "^4.0.0"
1903
+ },
1904
+ "bin": {
1905
+ "pino": "bin.js"
1906
+ }
1907
+ },
1908
+ "node_modules/pino-abstract-transport": {
1909
+ "version": "3.0.0",
1910
+ "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-3.0.0.tgz",
1911
+ "integrity": "sha512-wlfUczU+n7Hy/Ha5j9a/gZNy7We5+cXp8YL+X+PG8S0KXxw7n/JXA3c46Y0zQznIJ83URJiwy7Lh56WLokNuxg==",
1912
+ "license": "MIT",
1913
+ "dependencies": {
1914
+ "split2": "^4.0.0"
1915
+ }
1916
+ },
1917
+ "node_modules/pino-std-serializers": {
1918
+ "version": "7.1.0",
1919
+ "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.1.0.tgz",
1920
+ "integrity": "sha512-BndPH67/JxGExRgiX1dX0w1FvZck5Wa4aal9198SrRhZjH3GxKQUKIBnYJTdj2HDN3UQAS06HlfcSbQj2OHmaw==",
1921
+ "license": "MIT"
1922
+ },
1923
+ "node_modules/process-warning": {
1924
+ "version": "5.0.0",
1925
+ "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-5.0.0.tgz",
1926
+ "integrity": "sha512-a39t9ApHNx2L4+HBnQKqxxHNs1r7KF+Intd8Q/g1bUh6q0WIp9voPXJ/x0j+ZL45KF1pJd9+q2jLIRMfvEshkA==",
1927
+ "funding": [
1928
+ {
1929
+ "type": "github",
1930
+ "url": "https://github.com/sponsors/fastify"
1931
+ },
1932
+ {
1933
+ "type": "opencollective",
1934
+ "url": "https://opencollective.com/fastify"
1935
+ }
1936
+ ],
1937
+ "license": "MIT"
1938
+ },
1939
+ "node_modules/protobufjs": {
1940
+ "version": "7.6.4",
1941
+ "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.6.4.tgz",
1942
+ "integrity": "sha512-RJJPTTpvFfHcWLkIa2JFWK4XvtSzS0yEWDmunqHXli1h3JlkbcQZXDZdcWxv+JK3Xsl5/UFDPZ0iGm7DAengYw==",
1943
+ "hasInstallScript": true,
1944
+ "license": "BSD-3-Clause",
1945
+ "dependencies": {
1946
+ "@protobufjs/aspromise": "^1.1.2",
1947
+ "@protobufjs/base64": "^1.1.2",
1948
+ "@protobufjs/codegen": "^2.0.5",
1949
+ "@protobufjs/eventemitter": "^1.1.1",
1950
+ "@protobufjs/fetch": "^1.1.1",
1951
+ "@protobufjs/float": "^1.0.2",
1952
+ "@protobufjs/path": "^1.1.2",
1953
+ "@protobufjs/pool": "^1.1.0",
1954
+ "@protobufjs/utf8": "^1.1.1",
1955
+ "@types/node": ">=13.7.0",
1956
+ "long": "^5.3.2"
1957
+ },
1958
+ "engines": {
1959
+ "node": ">=12.0.0"
1960
+ }
1961
+ },
1962
+ "node_modules/qified": {
1963
+ "version": "0.10.1",
1964
+ "resolved": "https://registry.npmjs.org/qified/-/qified-0.10.1.tgz",
1965
+ "integrity": "sha512-+Owyggi9IxT1ePKGafcI87ubSmxol6smwJ+RAHDQlx9+9cPwFWDiKFFCPuWhr9ignlGpZ9vDQLw67N4dcTVFEA==",
1966
+ "license": "MIT",
1967
+ "dependencies": {
1968
+ "hookified": "^2.1.1"
1969
+ },
1970
+ "engines": {
1971
+ "node": ">=20"
1972
+ }
1973
+ },
1974
+ "node_modules/qified/node_modules/hookified": {
1975
+ "version": "2.2.0",
1976
+ "resolved": "https://registry.npmjs.org/hookified/-/hookified-2.2.0.tgz",
1977
+ "integrity": "sha512-p/LgFzRN5FeoD3DLS6bkUapeye6E4SI6yJs6KetENd18S+FBthqYq2amJUWpt5z0EQwwHemidjY5OqJGEKm5uA==",
1978
+ "license": "MIT"
1979
+ },
1980
+ "node_modules/qrcode-terminal": {
1981
+ "version": "0.12.0",
1982
+ "resolved": "https://registry.npmjs.org/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz",
1983
+ "integrity": "sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==",
1984
+ "bin": {
1985
+ "qrcode-terminal": "bin/qrcode-terminal.js"
1986
+ }
1987
+ },
1988
+ "node_modules/qs": {
1989
+ "version": "6.15.2",
1990
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.2.tgz",
1991
+ "integrity": "sha512-Rzq0KEyX/w/tEybncDgdkZrJgVUsUMk3xjh3t5bv3S1HTAtg+uOYt72+ZfwiQwKdysThkTBdL/rTi6HDmX9Ddw==",
1992
+ "license": "BSD-3-Clause",
1993
+ "dependencies": {
1994
+ "side-channel": "^1.1.0"
1995
+ },
1996
+ "engines": {
1997
+ "node": ">=0.6"
1998
+ },
1999
+ "funding": {
2000
+ "url": "https://github.com/sponsors/ljharb"
2001
+ }
2002
+ },
2003
+ "node_modules/quick-format-unescaped": {
2004
+ "version": "4.0.4",
2005
+ "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz",
2006
+ "integrity": "sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==",
2007
+ "license": "MIT"
2008
+ },
2009
+ "node_modules/real-require": {
2010
+ "version": "0.2.0",
2011
+ "resolved": "https://registry.npmjs.org/real-require/-/real-require-0.2.0.tgz",
2012
+ "integrity": "sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==",
2013
+ "license": "MIT",
2014
+ "engines": {
2015
+ "node": ">= 12.13.0"
2016
+ }
2017
+ },
2018
+ "node_modules/rimraf": {
2019
+ "version": "5.0.10",
2020
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz",
2021
+ "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==",
2022
+ "license": "ISC",
2023
+ "dependencies": {
2024
+ "glob": "^10.3.7"
2025
+ },
2026
+ "bin": {
2027
+ "rimraf": "dist/esm/bin.mjs"
2028
+ },
2029
+ "funding": {
2030
+ "url": "https://github.com/sponsors/isaacs"
2031
+ }
2032
+ },
2033
+ "node_modules/safe-buffer": {
2034
+ "version": "5.2.1",
2035
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
2036
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
2037
+ "funding": [
2038
+ {
2039
+ "type": "github",
2040
+ "url": "https://github.com/sponsors/feross"
2041
+ },
2042
+ {
2043
+ "type": "patreon",
2044
+ "url": "https://www.patreon.com/feross"
2045
+ },
2046
+ {
2047
+ "type": "consulting",
2048
+ "url": "https://feross.org/support"
2049
+ }
2050
+ ],
2051
+ "license": "MIT"
2052
+ },
2053
+ "node_modules/safe-stable-stringify": {
2054
+ "version": "2.5.0",
2055
+ "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz",
2056
+ "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==",
2057
+ "license": "MIT",
2058
+ "engines": {
2059
+ "node": ">=10"
2060
+ }
2061
+ },
2062
+ "node_modules/semver": {
2063
+ "version": "7.8.4",
2064
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.4.tgz",
2065
+ "integrity": "sha512-rUCObTnP32Q08R2uuIrt7r9PlEonuTmtuXYcW6s5kjdlj3xbnwe+21yXptAUYcMAABLkYYTtnmzb3w3EDZfueA==",
2066
+ "license": "ISC",
2067
+ "peer": true,
2068
+ "bin": {
2069
+ "semver": "bin/semver.js"
2070
+ },
2071
+ "engines": {
2072
+ "node": ">=10"
2073
+ }
2074
+ },
2075
+ "node_modules/sharp": {
2076
+ "version": "0.35.1",
2077
+ "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.35.1.tgz",
2078
+ "integrity": "sha512-lW979AMi+ESidzMv/Lnv+F9bknzLyxLqFI05Sm433vOeRcltgxQmXpnfOOFIAlKtwXU/ksupm2srQoFCkR214g==",
2079
+ "license": "Apache-2.0",
2080
+ "peer": true,
2081
+ "dependencies": {
2082
+ "@img/colour": "^1.1.0",
2083
+ "detect-libc": "^2.1.2",
2084
+ "semver": "^7.8.4"
2085
+ },
2086
+ "engines": {
2087
+ "node": ">=20.9.0"
2088
+ },
2089
+ "funding": {
2090
+ "url": "https://opencollective.com/libvips"
2091
+ },
2092
+ "optionalDependencies": {
2093
+ "@img/sharp-darwin-arm64": "0.35.1",
2094
+ "@img/sharp-darwin-x64": "0.35.1",
2095
+ "@img/sharp-freebsd-wasm32": "0.35.1",
2096
+ "@img/sharp-libvips-darwin-arm64": "1.3.0",
2097
+ "@img/sharp-libvips-darwin-x64": "1.3.0",
2098
+ "@img/sharp-libvips-linux-arm": "1.3.0",
2099
+ "@img/sharp-libvips-linux-arm64": "1.3.0",
2100
+ "@img/sharp-libvips-linux-ppc64": "1.3.0",
2101
+ "@img/sharp-libvips-linux-riscv64": "1.3.0",
2102
+ "@img/sharp-libvips-linux-s390x": "1.3.0",
2103
+ "@img/sharp-libvips-linux-x64": "1.3.0",
2104
+ "@img/sharp-libvips-linuxmusl-arm64": "1.3.0",
2105
+ "@img/sharp-libvips-linuxmusl-x64": "1.3.0",
2106
+ "@img/sharp-linux-arm": "0.35.1",
2107
+ "@img/sharp-linux-arm64": "0.35.1",
2108
+ "@img/sharp-linux-ppc64": "0.35.1",
2109
+ "@img/sharp-linux-riscv64": "0.35.1",
2110
+ "@img/sharp-linux-s390x": "0.35.1",
2111
+ "@img/sharp-linux-x64": "0.35.1",
2112
+ "@img/sharp-linuxmusl-arm64": "0.35.1",
2113
+ "@img/sharp-linuxmusl-x64": "0.35.1",
2114
+ "@img/sharp-webcontainers-wasm32": "0.35.1",
2115
+ "@img/sharp-win32-arm64": "0.35.1",
2116
+ "@img/sharp-win32-ia32": "0.35.1",
2117
+ "@img/sharp-win32-x64": "0.35.1"
2118
+ }
2119
+ },
2120
+ "node_modules/shebang-command": {
2121
+ "version": "2.0.0",
2122
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
2123
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
2124
+ "license": "MIT",
2125
+ "dependencies": {
2126
+ "shebang-regex": "^3.0.0"
2127
+ },
2128
+ "engines": {
2129
+ "node": ">=8"
2130
+ }
2131
+ },
2132
+ "node_modules/shebang-regex": {
2133
+ "version": "3.0.0",
2134
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
2135
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
2136
+ "license": "MIT",
2137
+ "engines": {
2138
+ "node": ">=8"
2139
+ }
2140
+ },
2141
+ "node_modules/side-channel": {
2142
+ "version": "1.1.1",
2143
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz",
2144
+ "integrity": "sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==",
2145
+ "license": "MIT",
2146
+ "dependencies": {
2147
+ "es-errors": "^1.3.0",
2148
+ "object-inspect": "^1.13.4",
2149
+ "side-channel-list": "^1.0.1",
2150
+ "side-channel-map": "^1.0.1",
2151
+ "side-channel-weakmap": "^1.0.2"
2152
+ },
2153
+ "engines": {
2154
+ "node": ">= 0.4"
2155
+ },
2156
+ "funding": {
2157
+ "url": "https://github.com/sponsors/ljharb"
2158
+ }
2159
+ },
2160
+ "node_modules/side-channel-list": {
2161
+ "version": "1.0.1",
2162
+ "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz",
2163
+ "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==",
2164
+ "license": "MIT",
2165
+ "dependencies": {
2166
+ "es-errors": "^1.3.0",
2167
+ "object-inspect": "^1.13.4"
2168
+ },
2169
+ "engines": {
2170
+ "node": ">= 0.4"
2171
+ },
2172
+ "funding": {
2173
+ "url": "https://github.com/sponsors/ljharb"
2174
+ }
2175
+ },
2176
+ "node_modules/side-channel-map": {
2177
+ "version": "1.0.1",
2178
+ "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
2179
+ "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
2180
+ "license": "MIT",
2181
+ "dependencies": {
2182
+ "call-bound": "^1.0.2",
2183
+ "es-errors": "^1.3.0",
2184
+ "get-intrinsic": "^1.2.5",
2185
+ "object-inspect": "^1.13.3"
2186
+ },
2187
+ "engines": {
2188
+ "node": ">= 0.4"
2189
+ },
2190
+ "funding": {
2191
+ "url": "https://github.com/sponsors/ljharb"
2192
+ }
2193
+ },
2194
+ "node_modules/side-channel-weakmap": {
2195
+ "version": "1.0.2",
2196
+ "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
2197
+ "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
2198
+ "license": "MIT",
2199
+ "dependencies": {
2200
+ "call-bound": "^1.0.2",
2201
+ "es-errors": "^1.3.0",
2202
+ "get-intrinsic": "^1.2.5",
2203
+ "object-inspect": "^1.13.3",
2204
+ "side-channel-map": "^1.0.1"
2205
+ },
2206
+ "engines": {
2207
+ "node": ">= 0.4"
2208
+ },
2209
+ "funding": {
2210
+ "url": "https://github.com/sponsors/ljharb"
2211
+ }
2212
+ },
2213
+ "node_modules/signal-exit": {
2214
+ "version": "4.1.0",
2215
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
2216
+ "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
2217
+ "license": "ISC",
2218
+ "engines": {
2219
+ "node": ">=14"
2220
+ },
2221
+ "funding": {
2222
+ "url": "https://github.com/sponsors/isaacs"
2223
+ }
2224
+ },
2225
+ "node_modules/sonic-boom": {
2226
+ "version": "4.2.1",
2227
+ "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.2.1.tgz",
2228
+ "integrity": "sha512-w6AxtubXa2wTXAUsZMMWERrsIRAdrK0Sc+FUytWvYAhBJLyuI4llrMIC1DtlNSdI99EI86KZum2MMq3EAZlF9Q==",
2229
+ "license": "MIT",
2230
+ "dependencies": {
2231
+ "atomic-sleep": "^1.0.0"
2232
+ }
2233
+ },
2234
+ "node_modules/split2": {
2235
+ "version": "4.2.0",
2236
+ "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz",
2237
+ "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==",
2238
+ "license": "ISC",
2239
+ "engines": {
2240
+ "node": ">= 10.x"
2241
+ }
2242
+ },
2243
+ "node_modules/string-width": {
2244
+ "version": "5.1.2",
2245
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
2246
+ "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
2247
+ "license": "MIT",
2248
+ "dependencies": {
2249
+ "eastasianwidth": "^0.2.0",
2250
+ "emoji-regex": "^9.2.2",
2251
+ "strip-ansi": "^7.0.1"
2252
+ },
2253
+ "engines": {
2254
+ "node": ">=12"
2255
+ },
2256
+ "funding": {
2257
+ "url": "https://github.com/sponsors/sindresorhus"
2258
+ }
2259
+ },
2260
+ "node_modules/string-width-cjs": {
2261
+ "name": "string-width",
2262
+ "version": "4.2.3",
2263
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
2264
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
2265
+ "license": "MIT",
2266
+ "dependencies": {
2267
+ "emoji-regex": "^8.0.0",
2268
+ "is-fullwidth-code-point": "^3.0.0",
2269
+ "strip-ansi": "^6.0.1"
2270
+ },
2271
+ "engines": {
2272
+ "node": ">=8"
2273
+ }
2274
+ },
2275
+ "node_modules/string-width-cjs/node_modules/ansi-regex": {
2276
+ "version": "5.0.1",
2277
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
2278
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
2279
+ "license": "MIT",
2280
+ "engines": {
2281
+ "node": ">=8"
2282
+ }
2283
+ },
2284
+ "node_modules/string-width-cjs/node_modules/emoji-regex": {
2285
+ "version": "8.0.0",
2286
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
2287
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
2288
+ "license": "MIT"
2289
+ },
2290
+ "node_modules/string-width-cjs/node_modules/strip-ansi": {
2291
+ "version": "6.0.1",
2292
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
2293
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
2294
+ "license": "MIT",
2295
+ "dependencies": {
2296
+ "ansi-regex": "^5.0.1"
2297
+ },
2298
+ "engines": {
2299
+ "node": ">=8"
2300
+ }
2301
+ },
2302
+ "node_modules/strip-ansi": {
2303
+ "version": "7.2.0",
2304
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz",
2305
+ "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==",
2306
+ "license": "MIT",
2307
+ "dependencies": {
2308
+ "ansi-regex": "^6.2.2"
2309
+ },
2310
+ "engines": {
2311
+ "node": ">=12"
2312
+ },
2313
+ "funding": {
2314
+ "url": "https://github.com/chalk/strip-ansi?sponsor=1"
2315
+ }
2316
+ },
2317
+ "node_modules/strip-ansi-cjs": {
2318
+ "name": "strip-ansi",
2319
+ "version": "6.0.1",
2320
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
2321
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
2322
+ "license": "MIT",
2323
+ "dependencies": {
2324
+ "ansi-regex": "^5.0.1"
2325
+ },
2326
+ "engines": {
2327
+ "node": ">=8"
2328
+ }
2329
+ },
2330
+ "node_modules/strip-ansi-cjs/node_modules/ansi-regex": {
2331
+ "version": "5.0.1",
2332
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
2333
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
2334
+ "license": "MIT",
2335
+ "engines": {
2336
+ "node": ">=8"
2337
+ }
2338
+ },
2339
+ "node_modules/strtok3": {
2340
+ "version": "10.3.5",
2341
+ "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-10.3.5.tgz",
2342
+ "integrity": "sha512-ki4hZQfh5rX0QDLLkOCj+h+CVNkqmp/CMf8v8kZpkNVK6jGQooMytqzLZYUVYIZcFZ6yDB70EfD8POcFXiF5oA==",
2343
+ "license": "MIT",
2344
+ "dependencies": {
2345
+ "@tokenizer/token": "^0.3.0"
2346
+ },
2347
+ "engines": {
2348
+ "node": ">=18"
2349
+ },
2350
+ "funding": {
2351
+ "type": "github",
2352
+ "url": "https://github.com/sponsors/Borewit"
2353
+ }
2354
+ },
2355
+ "node_modules/thread-stream": {
2356
+ "version": "4.2.0",
2357
+ "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-4.2.0.tgz",
2358
+ "integrity": "sha512-e2zZ96wSChazBsbENf/Pcm/4swHt2cEKQ92rhUjkL9GCKiTDJIaTBenjE/m9DXi0QBmTMDkFDdOomUy20A1tDQ==",
2359
+ "license": "MIT",
2360
+ "dependencies": {
2361
+ "real-require": "^1.0.0"
2362
+ },
2363
+ "engines": {
2364
+ "node": ">=20"
2365
+ }
2366
+ },
2367
+ "node_modules/thread-stream/node_modules/real-require": {
2368
+ "version": "1.0.0",
2369
+ "resolved": "https://registry.npmjs.org/real-require/-/real-require-1.0.0.tgz",
2370
+ "integrity": "sha512-P4nbQYQfePJxRSmY+v/KINxVucm4NF3p3s7pJveMTtom52FR4YGltUQLB8idDXwDDWW+eYrWDFbuzUnjoWHF7g==",
2371
+ "license": "MIT"
2372
+ },
2373
+ "node_modules/token-types": {
2374
+ "version": "6.1.2",
2375
+ "resolved": "https://registry.npmjs.org/token-types/-/token-types-6.1.2.tgz",
2376
+ "integrity": "sha512-dRXchy+C0IgK8WPC6xvCHFRIWYUbqqdEIKPaKo/AcTUNzwLTK6AH7RjdLWsEZcAN/TBdtfUw3PYEgPr5VPr6ww==",
2377
+ "license": "MIT",
2378
+ "dependencies": {
2379
+ "@borewit/text-codec": "^0.2.1",
2380
+ "@tokenizer/token": "^0.3.0",
2381
+ "ieee754": "^1.2.1"
2382
+ },
2383
+ "engines": {
2384
+ "node": ">=14.16"
2385
+ },
2386
+ "funding": {
2387
+ "type": "github",
2388
+ "url": "https://github.com/sponsors/Borewit"
2389
+ }
2390
+ },
2391
+ "node_modules/tslib": {
2392
+ "version": "2.8.1",
2393
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
2394
+ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
2395
+ "license": "0BSD"
2396
+ },
2397
+ "node_modules/uint8array-extras": {
2398
+ "version": "1.5.0",
2399
+ "resolved": "https://registry.npmjs.org/uint8array-extras/-/uint8array-extras-1.5.0.tgz",
2400
+ "integrity": "sha512-rvKSBiC5zqCCiDZ9kAOszZcDvdAHwwIKJG33Ykj43OKcWsnmcBRL09YTU4nOeHZ8Y2a7l1MgTd08SBe9A8Qj6A==",
2401
+ "license": "MIT",
2402
+ "engines": {
2403
+ "node": ">=18"
2404
+ },
2405
+ "funding": {
2406
+ "url": "https://github.com/sponsors/sindresorhus"
2407
+ }
2408
+ },
2409
+ "node_modules/undici-types": {
2410
+ "version": "7.24.6",
2411
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.24.6.tgz",
2412
+ "integrity": "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==",
2413
+ "license": "MIT"
2414
+ },
2415
+ "node_modules/url-template": {
2416
+ "version": "2.0.8",
2417
+ "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz",
2418
+ "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==",
2419
+ "license": "BSD"
2420
+ },
2421
+ "node_modules/web-streams-polyfill": {
2422
+ "version": "3.3.3",
2423
+ "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz",
2424
+ "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==",
2425
+ "license": "MIT",
2426
+ "engines": {
2427
+ "node": ">= 8"
2428
+ }
2429
+ },
2430
+ "node_modules/whatsapp-rust-bridge": {
2431
+ "version": "0.5.4",
2432
+ "resolved": "https://registry.npmjs.org/whatsapp-rust-bridge/-/whatsapp-rust-bridge-0.5.4.tgz",
2433
+ "integrity": "sha512-yYO1qSs0Fe7tGtnxOFHomocUD6IZtoAgmA4oDFyGIRZ67D3QZk3w7swA6XXFXNQngiyrg2k7tul6IrM3eUFh7A==",
2434
+ "license": "MIT"
2435
+ },
2436
+ "node_modules/which": {
2437
+ "version": "2.0.2",
2438
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
2439
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
2440
+ "license": "ISC",
2441
+ "dependencies": {
2442
+ "isexe": "^2.0.0"
2443
+ },
2444
+ "bin": {
2445
+ "node-which": "bin/node-which"
2446
+ },
2447
+ "engines": {
2448
+ "node": ">= 8"
2449
+ }
2450
+ },
2451
+ "node_modules/win-guid": {
2452
+ "version": "0.2.1",
2453
+ "resolved": "https://registry.npmjs.org/win-guid/-/win-guid-0.2.1.tgz",
2454
+ "integrity": "sha512-gEIQU4mkgl2OPeoNrWflcJFJ3Ae2BPd4eCsHHA/XikslkIVms/nHhvnvzIZV7VLmBvtFlDOzLt9rrZT+n6D67A==",
2455
+ "license": "MIT"
2456
+ },
2457
+ "node_modules/wrap-ansi": {
2458
+ "version": "8.1.0",
2459
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
2460
+ "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
2461
+ "license": "MIT",
2462
+ "dependencies": {
2463
+ "ansi-styles": "^6.1.0",
2464
+ "string-width": "^5.0.1",
2465
+ "strip-ansi": "^7.0.1"
2466
+ },
2467
+ "engines": {
2468
+ "node": ">=12"
2469
+ },
2470
+ "funding": {
2471
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
2472
+ }
2473
+ },
2474
+ "node_modules/wrap-ansi-cjs": {
2475
+ "name": "wrap-ansi",
2476
+ "version": "7.0.0",
2477
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
2478
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
2479
+ "license": "MIT",
2480
+ "dependencies": {
2481
+ "ansi-styles": "^4.0.0",
2482
+ "string-width": "^4.1.0",
2483
+ "strip-ansi": "^6.0.0"
2484
+ },
2485
+ "engines": {
2486
+ "node": ">=10"
2487
+ },
2488
+ "funding": {
2489
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
2490
+ }
2491
+ },
2492
+ "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": {
2493
+ "version": "5.0.1",
2494
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
2495
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
2496
+ "license": "MIT",
2497
+ "engines": {
2498
+ "node": ">=8"
2499
+ }
2500
+ },
2501
+ "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": {
2502
+ "version": "4.3.0",
2503
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
2504
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
2505
+ "license": "MIT",
2506
+ "dependencies": {
2507
+ "color-convert": "^2.0.1"
2508
+ },
2509
+ "engines": {
2510
+ "node": ">=8"
2511
+ },
2512
+ "funding": {
2513
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
2514
+ }
2515
+ },
2516
+ "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": {
2517
+ "version": "8.0.0",
2518
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
2519
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
2520
+ "license": "MIT"
2521
+ },
2522
+ "node_modules/wrap-ansi-cjs/node_modules/string-width": {
2523
+ "version": "4.2.3",
2524
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
2525
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
2526
+ "license": "MIT",
2527
+ "dependencies": {
2528
+ "emoji-regex": "^8.0.0",
2529
+ "is-fullwidth-code-point": "^3.0.0",
2530
+ "strip-ansi": "^6.0.1"
2531
+ },
2532
+ "engines": {
2533
+ "node": ">=8"
2534
+ }
2535
+ },
2536
+ "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": {
2537
+ "version": "6.0.1",
2538
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
2539
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
2540
+ "license": "MIT",
2541
+ "dependencies": {
2542
+ "ansi-regex": "^5.0.1"
2543
+ },
2544
+ "engines": {
2545
+ "node": ">=8"
2546
+ }
2547
+ },
2548
+ "node_modules/ws": {
2549
+ "version": "8.21.0",
2550
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.0.tgz",
2551
+ "integrity": "sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g==",
2552
+ "license": "MIT",
2553
+ "engines": {
2554
+ "node": ">=10.0.0"
2555
+ },
2556
+ "peerDependencies": {
2557
+ "bufferutil": "^4.0.1",
2558
+ "utf-8-validate": ">=5.0.2"
2559
+ },
2560
+ "peerDependenciesMeta": {
2561
+ "bufferutil": {
2562
+ "optional": true
2563
+ },
2564
+ "utf-8-validate": {
2565
+ "optional": true
2566
+ }
2567
+ }
2568
+ }
2569
+ }
2570
+ }
package.json ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "bot-dna-kids",
3
+ "version": "2.0.0",
4
+ "type": "module",
5
+ "main": "index.js",
6
+ "dependencies": {
7
+ "@whiskeysockets/baileys": "^6.6.0",
8
+ "@hapi/boom": "^10.0.1",
9
+ "express": "^4.19.2",
10
+ "pino": "^8.19.0",
11
+ "qrcode-terminal": "^0.12.0",
12
+ "dotenv": "^16.4.5",
13
+ "pg": "^8.11.5"
14
+ }
15
+ }
services/googleSheets.js ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ // services/googleSheets.js
2
+ import { URL_EXPORT_CSV } from '../config/env.js';
3
+
4
+ export let dataJadwalGlobal = "Belum ada data jadwal terunduh.";
5
+
6
+ export async function periksaJadwalOtomatis() {
7
+ try {
8
+ console.log("⏰ [SISTEM] Memulai pengecekan data Google Sheets...");
9
+ const respon = await fetch(URL_EXPORT_CSV);
10
+ const dataTeks = await respon.text();
11
+
12
+ dataJadwalGlobal = dataTeks;
13
+ console.log("📊 [SUKSES] Data Sheet berhasil ditarik.");
14
+ return dataJadwalGlobal;
15
+ } catch (error) {
16
+ console.error("❌ Gagal menjalankan otomatisasi jadwal:", error.message);
17
+ return dataJadwalGlobal;
18
+ }
19
+ }