From fe028d274b3df4406819eae6d5e65a7f13c69dc4 Mon Sep 17 00:00:00 2001 From: x2Skyz Date: Tue, 11 Nov 2025 11:19:13 +0700 Subject: [PATCH] first commit --- .gitignore | 2 + plan-app/bydep.js | 95 + plan-app/bypivot.js | 95 + plan-app/bywork.js | 95 + plan-app/index.html | 253 + plan-app/logo.ico | Bin 0 -> 230350 bytes plan-app/main.js | 67 + plan-app/package-lock.json | 5036 +++++++++++++++++ plan-app/package.json | 30 + plan-app/renderer.js | 32 + templete/.editorconfig | 17 + templete/.gitignore | 42 + templete/.postcssrc.json | 5 + templete/.vscode/extensions.json | 4 + templete/.vscode/launch.json | 33 + templete/.vscode/tasks.json | 42 + templete/README.md | 59 + templete/angular.json | 123 + templete/capacitor.config.ts | 10 + templete/package.json | 80 + templete/public/favicon.ico | Bin 0 -> 15086 bytes templete/public/logo.png | Bin 0 -> 107295 bytes templete/src/app/app-routing.module.ts | 35 + templete/src/app/app.component.css | 0 templete/src/app/app.component.html | 1 + templete/src/app/app.component.ts | 11 + templete/src/app/app.module.ts | 45 + .../license-privacy-terms.component.css | 68 + .../license-privacy-terms.component.html | 82 + .../license-privacy-terms.component.ts | 11 + .../login-forgot/login-forgot.component.css | 290 + .../login-forgot/login-forgot.component.html | 105 + .../login-forgot/login-forgot.component.ts | 91 + .../login-page/login-page.component.css | 289 + .../login-page/login-page.component.html | 55 + .../login-page/login-page.component.ts | 113 + .../main-dashboard.component.css | 0 .../main-dashboard.component.html | 1 + .../main-dashboard.component.ts | 11 + .../component/sidebar/sidebar.component.css | 39 + .../component/sidebar/sidebar.component.html | 62 + .../component/sidebar/sidebar.component.ts | 66 + .../login-content/login-content.component.css | 19 + .../login-content.component.html | 11 + .../login-content/login-content.component.ts | 98 + .../main-dashboard-content.component.css | 0 .../main-dashboard-content.component.html | 1 + .../main-dashboard-content.component.spec.ts | 23 + .../main-dashboard-content.component.ts | 11 + .../sidebar-content.component.css | 11 + .../sidebar-content.component.html | 9 + .../sidebar-content.component.ts | 11 + .../login-control-routing.module.ts | 15 + .../login-control/login-control.module.ts | 25 + .../main-control-routing.module.ts | 28 + .../main-control/main-control.module.ts | 21 + templete/src/app/services/generalservice.ts | 76 + templete/src/index.html | 18 + templete/src/main.ts | 7 + templete/src/styles.css | 179 + templete/tsconfig.app.json | 15 + templete/tsconfig.json | 27 + templete/tsconfig.spec.json | 15 + templete/vite.config.ts | 10 + 64 files changed, 8125 insertions(+) create mode 100644 .gitignore create mode 100644 plan-app/bydep.js create mode 100644 plan-app/bypivot.js create mode 100644 plan-app/bywork.js create mode 100644 plan-app/index.html create mode 100644 plan-app/logo.ico create mode 100644 plan-app/main.js create mode 100644 plan-app/package-lock.json create mode 100644 plan-app/package.json create mode 100644 plan-app/renderer.js create mode 100644 templete/.editorconfig create mode 100644 templete/.gitignore create mode 100644 templete/.postcssrc.json create mode 100644 templete/.vscode/extensions.json create mode 100644 templete/.vscode/launch.json create mode 100644 templete/.vscode/tasks.json create mode 100644 templete/README.md create mode 100644 templete/angular.json create mode 100644 templete/capacitor.config.ts create mode 100644 templete/package.json create mode 100644 templete/public/favicon.ico create mode 100644 templete/public/logo.png create mode 100644 templete/src/app/app-routing.module.ts create mode 100644 templete/src/app/app.component.css create mode 100644 templete/src/app/app.component.html create mode 100644 templete/src/app/app.component.ts create mode 100644 templete/src/app/app.module.ts create mode 100644 templete/src/app/component/license-privacy-terms/license-privacy-terms.component.css create mode 100644 templete/src/app/component/license-privacy-terms/license-privacy-terms.component.html create mode 100644 templete/src/app/component/license-privacy-terms/license-privacy-terms.component.ts create mode 100644 templete/src/app/component/login-forgot/login-forgot.component.css create mode 100644 templete/src/app/component/login-forgot/login-forgot.component.html create mode 100644 templete/src/app/component/login-forgot/login-forgot.component.ts create mode 100644 templete/src/app/component/login-page/login-page.component.css create mode 100644 templete/src/app/component/login-page/login-page.component.html create mode 100644 templete/src/app/component/login-page/login-page.component.ts create mode 100644 templete/src/app/component/main-dashboard/main-dashboard.component.css create mode 100644 templete/src/app/component/main-dashboard/main-dashboard.component.html create mode 100644 templete/src/app/component/main-dashboard/main-dashboard.component.ts create mode 100644 templete/src/app/component/sidebar/sidebar.component.css create mode 100644 templete/src/app/component/sidebar/sidebar.component.html create mode 100644 templete/src/app/component/sidebar/sidebar.component.ts create mode 100644 templete/src/app/content/login-content/login-content.component.css create mode 100644 templete/src/app/content/login-content/login-content.component.html create mode 100644 templete/src/app/content/login-content/login-content.component.ts create mode 100644 templete/src/app/content/main-dashboard-content/main-dashboard-content.component.css create mode 100644 templete/src/app/content/main-dashboard-content/main-dashboard-content.component.html create mode 100644 templete/src/app/content/main-dashboard-content/main-dashboard-content.component.spec.ts create mode 100644 templete/src/app/content/main-dashboard-content/main-dashboard-content.component.ts create mode 100644 templete/src/app/content/sidebar-content/sidebar-content.component.css create mode 100644 templete/src/app/content/sidebar-content/sidebar-content.component.html create mode 100644 templete/src/app/content/sidebar-content/sidebar-content.component.ts create mode 100644 templete/src/app/controls/login-control/login-control-routing.module.ts create mode 100644 templete/src/app/controls/login-control/login-control.module.ts create mode 100644 templete/src/app/controls/main-control/main-control-routing.module.ts create mode 100644 templete/src/app/controls/main-control/main-control.module.ts create mode 100644 templete/src/app/services/generalservice.ts create mode 100644 templete/src/index.html create mode 100644 templete/src/main.ts create mode 100644 templete/src/styles.css create mode 100644 templete/tsconfig.app.json create mode 100644 templete/tsconfig.json create mode 100644 templete/tsconfig.spec.json create mode 100644 templete/vite.config.ts diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..392d65c --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +*/dist +*/node_modules \ No newline at end of file diff --git a/plan-app/bydep.js b/plan-app/bydep.js new file mode 100644 index 0000000..fe3b7e2 --- /dev/null +++ b/plan-app/bydep.js @@ -0,0 +1,95 @@ +const XLSX = require('xlsx'); +const path = require('path'); + +function runBydep(inputPath, outputPath) { + return new Promise((resolve, reject) => { + if (!inputPath) { + return reject(new Error('❌ ไม่พบ path ของไฟล์ Excel')); + } + if (!outputPath) { + return reject(new Error('❌ ไม่พบ path สำหรับบันทึกไฟล์')); + } + + console.log('📂 กำลังอ่านไฟล์ (bydep):', inputPath); + + try { + // 📘 อ่านไฟล์ Excel + const excel = XLSX.readFile(path.resolve(inputPath)); + const sheet = excel.Sheets[excel.SheetNames[0]]; + const data = XLSX.utils.sheet_to_json(sheet); + + // ⚙️ ฟังก์ชันลบตัวเลขและจุดนำหน้า + const cleanSource = (text) => { + if (!text) return ''; + return text.toString().replace(/^\d+\.\s*/, '').trim(); + }; + + // 🧮 เตรียมข้อมูลรวมตาม "แผนกวิชา" + const pivot = {}; + + data.forEach(row => { + const plan = row['แผนกวิชา'] || 'ไม่ระบุแผนกวิชา'; + const source = cleanSource(row['แหล่งงบประมาณ']); + const budget = Number(row['งบประมาณ']) || 0; + + if (!source || !plan) return; + + if (!pivot[plan]) pivot[plan] = {}; + if (!pivot[plan][source]) pivot[plan][source] = 0; + + pivot[plan][source] += budget; + }); + + // 🧾 ดึงชื่อคอลัมน์ (แหล่งงบทั้งหมด) + const allSources = Array.from( + new Set(Object.values(pivot).flatMap(obj => Object.keys(obj))) + ); + + // 📊 ฟังก์ชัน format ตัวเลข + const formatNumber = (num) => + num ? num.toLocaleString('en-US', { minimumFractionDigits: 2, maximumFractionDigits: 2 }) : ''; + + // 🪄 สร้างตารางผลลัพธ์ + const result = []; + let grandTotalAll = 0; + const columnTotals = {}; + + Object.entries(pivot).forEach(([plan, sources]) => { + const row = { 'แผนกวิชา': plan }; + let rowTotal = 0; + + allSources.forEach(source => { + const val = sources[source] || 0; + row[source] = val ? formatNumber(val) : ''; + rowTotal += val; + columnTotals[source] = (columnTotals[source] || 0) + val; + }); + + grandTotalAll += rowTotal; + row['รวมทั้งหมด'] = formatNumber(rowTotal); + result.push(row); + }); + + // ➕ เพิ่มแถวสุดท้าย “รวมทั้งหมด” + const totalRow = { 'แผนกวิชา': 'รวมทั้งหมด' }; + allSources.forEach(source => { + totalRow[source] = columnTotals[source] ? formatNumber(columnTotals[source]) : ''; + }); + totalRow['รวมทั้งหมด'] = formatNumber(grandTotalAll); + result.push(totalRow); + + const newSheet = XLSX.utils.json_to_sheet(result); + const newBook = XLSX.utils.book_new(); + XLSX.utils.book_append_sheet(newBook, newSheet, 'Summary'); + XLSX.writeFile(newBook, outputPath); // ✅ ใช้ outputPath ที่รับเข้ามา + + console.log(`✅ สรุปผลสำเร็จ → ${outputPath}`); + resolve(`✅ บันทึกไฟล์สำเร็จแล้ว`); + } catch (error) { + console.error('❌ เกิดข้อผิดพลาดใน bydep:', error); + reject(error); + } + }); +} + +module.exports = { runBydep }; diff --git a/plan-app/bypivot.js b/plan-app/bypivot.js new file mode 100644 index 0000000..fe7db0c --- /dev/null +++ b/plan-app/bypivot.js @@ -0,0 +1,95 @@ +const XLSX = require('xlsx'); +const path = require('path'); + +function runBypivot(inputPath, outputPath) { + return new Promise((resolve, reject) => { + if (!inputPath) { + return reject(new Error('❌ ไม่พบ path ของไฟล์ Excel')); + } + if (!outputPath) { + return reject(new Error('❌ ไม่พบ path สำหรับบันทึกไฟล์')); + } + + console.log('📂 กำลังอ่านไฟล์ (bypivot):', inputPath); + + try { + // 📘 อ่านไฟล์ Excel + const excel = XLSX.readFile(path.resolve(inputPath)); + const sheet = excel.Sheets[excel.SheetNames[0]]; + const data = XLSX.utils.sheet_to_json(sheet); + + // ⚙️ ฟังก์ชันลบตัวเลขและจุดนำหน้า + const cleanSource = (text) => { + if (!text) return ''; + return text.toString().replace(/^\d+\.\s*/, '').trim(); + }; + + // 🧮 เตรียมข้อมูลรวมตาม "แผนงานในการขอซื้อของจ้าง" + const pivot = {}; + + data.forEach(row => { + const plan = row['แผนงานในการขอซื้อของจ้าง'] || 'ไม่ระบุแผนงาน'; + const source = cleanSource(row['แหล่งงบประมาณ']); + const budget = Number(row['งบประมาณ']) || 0; + + if (!source || !plan) return; + + if (!pivot[plan]) pivot[plan] = {}; + if (!pivot[plan][source]) pivot[plan][source] = 0; + + pivot[plan][source] += budget; + }); + + // 🧾 ดึงชื่อคอลัมน์ (แหล่งงบทั้งหมด) + const allSources = Array.from( + new Set(Object.values(pivot).flatMap(obj => Object.keys(obj))) + ); + + // 📊 ฟังก์ชัน format ตัวเลข + const formatNumber = (num) => + num ? num.toLocaleString('en-US', { minimumFractionDigits: 2, maximumFractionDigits: 2 }) : ''; + + // 🪄 สร้างตารางผลลัพธ์ + const result = []; + let grandTotalAll = 0; + const columnTotals = {}; + + Object.entries(pivot).forEach(([plan, sources]) => { + const row = { 'แผนงานในการขอซื้อของจ้าง': plan }; + let rowTotal = 0; + + allSources.forEach(source => { + const val = sources[source] || 0; + row[source] = val ? formatNumber(val) : ''; + rowTotal += val; + columnTotals[source] = (columnTotals[source] || 0) + val; + }); + + grandTotalAll += rowTotal; + row['รวมทั้งหมด'] = formatNumber(rowTotal); + result.push(row); + }); + + // ➕ เพิ่มแถวสุดท้าย “รวมทั้งหมด” + const totalRow = { 'แผนงานในการขอซื้อของจ้าง': 'รวมทั้งหมด' }; + allSources.forEach(source => { + totalRow[source] = columnTotals[source] ? formatNumber(columnTotals[source]) : ''; + }); + totalRow['รวมทั้งหมด'] = formatNumber(grandTotalAll); + result.push(totalRow); + + const newSheet = XLSX.utils.json_to_sheet(result); + const newBook = XLSX.utils.book_new(); + XLSX.utils.book_append_sheet(newBook, newSheet, 'Summary'); + XLSX.writeFile(newBook, outputPath); // ✅ ใช้ outputPath ที่รับเข้ามา + + console.log(`✅ สรุปผลสำเร็จ → ${outputPath}`); + resolve(`✅ บันทึกไฟล์สำเร็จแล้ว`); + } catch (error) { + console.error('❌ เกิดข้อผิดพลาดใน bypivot:', error); + reject(error); + } + }); +} + +module.exports = { runBypivot }; diff --git a/plan-app/bywork.js b/plan-app/bywork.js new file mode 100644 index 0000000..5e63a5b --- /dev/null +++ b/plan-app/bywork.js @@ -0,0 +1,95 @@ +const XLSX = require('xlsx'); +const path = require('path'); + +function runBywork(inputPath, outputPath) { + return new Promise((resolve, reject) => { + if (!inputPath) { + return reject(new Error('❌ ไม่พบ path ของไฟล์ Excel')); + } + if (!outputPath) { + return reject(new Error('❌ ไม่พบ path สำหรับบันทึกไฟล์')); + } + + console.log('📂 กำลังอ่านไฟล์ (bywork):', inputPath); + + try { + // 📘 อ่านไฟล์ Excel + const excel = XLSX.readFile(path.resolve(inputPath)); + const sheet = excel.Sheets[excel.SheetNames[0]]; + const data = XLSX.utils.sheet_to_json(sheet); + + // ⚙️ ฟังก์ชันลบตัวเลขและจุดนำหน้า + const cleanSource = (text) => { + if (!text) return ''; + return text.toString().replace(/^\d+\.\s*/, '').trim(); + }; + + // 🧮 เตรียมข้อมูลรวมตาม "งาน" + const pivot = {}; + + data.forEach(row => { + const plan = row['งาน'] || 'ไม่ระบุงาน'; + const source = cleanSource(row['แหล่งงบประมาณ']); + const budget = Number(row['งบประมาณ']) || 0; + + if (!source || !plan) return; + + if (!pivot[plan]) pivot[plan] = {}; + if (!pivot[plan][source]) pivot[plan][source] = 0; + + pivot[plan][source] += budget; + }); + + // 🧾 ดึงชื่อคอลัมน์ (แหล่งงบทั้งหมด) + const allSources = Array.from( + new Set(Object.values(pivot).flatMap(obj => Object.keys(obj))) + ); + + // 📊 ฟังก์ชัน format ตัวเลข + const formatNumber = (num) => + num ? num.toLocaleString('en-US', { minimumFractionDigits: 2, maximumFractionDigits: 2 }) : ''; + + // 🪄 สร้างตารางผลลัพธ์ + const result = []; + let grandTotalAll = 0; + const columnTotals = {}; + + Object.entries(pivot).forEach(([plan, sources]) => { + const row = { 'งาน': plan }; + let rowTotal = 0; + + allSources.forEach(source => { + const val = sources[source] || 0; + row[source] = val ? formatNumber(val) : ''; + rowTotal += val; + columnTotals[source] = (columnTotals[source] || 0) + val; + }); + + grandTotalAll += rowTotal; + row['รวมทั้งหมด'] = formatNumber(rowTotal); + result.push(row); + }); + + // ➕ เพิ่มแถวสุดท้าย “รวมทั้งหมด” + const totalRow = { 'งาน': 'รวมทั้งหมด' }; + allSources.forEach(source => { + totalRow[source] = columnTotals[source] ? formatNumber(columnTotals[source]) : ''; + }); + totalRow['รวมทั้งหมด'] = formatNumber(grandTotalAll); + result.push(totalRow); + + const newSheet = XLSX.utils.json_to_sheet(result); + const newBook = XLSX.utils.book_new(); + XLSX.utils.book_append_sheet(newBook, newSheet, 'Summary'); + XLSX.writeFile(newBook, outputPath); // ✅ ใช้ outputPath ที่รับเข้ามา + + console.log(`✅ สรุปผลสำเร็จ → ${outputPath}`); + resolve(`✅ บันทึกไฟล์สำเร็จแล้ว`); + } catch (error) { + console.error('❌ เกิดข้อผิดพลาดใน bywork:', error); + reject(error); + } + }); +} + +module.exports = { runBywork }; diff --git a/plan-app/index.html b/plan-app/index.html new file mode 100644 index 0000000..24fb04a --- /dev/null +++ b/plan-app/index.html @@ -0,0 +1,253 @@ + + + + + + โปรแกรมจำแนกงบประมาณ + + + + +
+
+ +
+

📊 โปรแกรมจำแนกงบประมาณ — รุ่นทดสอบ

+

อัปโหลดไฟล์ Excel แล้วเลือกวิธีการจำแนก จากนั้นกด Export เพื่อสร้างไฟล์ผลลัพธ์

+
+
+ +
+
+

1. เลือกไฟล์ Excel

+
+ + +
+

รองรับ .xlsx, .xls — สามารถลากไฟล์มาวางได้ (ถ้า renderer รองรับ)

+
+ +
+

2. เลือกรูปแบบการจำแนก

+
+ +
+
+ +
+

3. สร้างไฟล์ผลลัพธ์

+

หลังจากกด Export ระบบจะประมวลผลและดาวน์โหลดไฟล์ Excel ที่แบ่งหมวดงบประมาณแล้ว

+
+
+ + + +
เวอร์ชันทดสอบ • เก็บไฟล์ต้นฉบับไว้ก่อนการใช้งาน
+
+ + + + diff --git a/plan-app/logo.ico b/plan-app/logo.ico new file mode 100644 index 0000000000000000000000000000000000000000..84c9324747d411eed327bc142474f88e9109e3a6 GIT binary patch literal 230350 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%0Ago&67@1 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 literal 0 HcmV?d00001 diff --git a/plan-app/main.js b/plan-app/main.js new file mode 100644 index 0000000..56d41c8 --- /dev/null +++ b/plan-app/main.js @@ -0,0 +1,67 @@ +// main.js +const { app, BrowserWindow, ipcMain, dialog } = require('electron'); +const path = require('path'); +const { runBypivot } = require('./bypivot.js'); +const { runBydep } = require('./bydep.js'); +const { runBywork } = require('./bywork.js'); + +const scriptRunners = { + 'bypivot.js': { runner: runBypivot, defaultName: 'output_แผนงานในการขอซื้อของจ้าง.xlsx' }, + 'bydep.js': { runner: runBydep, defaultName: 'output_แผนกวิชา.xlsx' }, + 'bywork.js': { runner: runBywork, defaultName: 'output_งาน.xlsx' }, +}; + +function createWindow() { + const win = new BrowserWindow({ + width: 650, + height: 450, + webPreferences: { + nodeIntegration: true, + contextIsolation: false, + }, + }); + + win.loadFile(path.join(__dirname, 'index.html')); + // win.webContents.openDevTools(); +} + +ipcMain.handle('select-file', async () => { + const result = await dialog.showOpenDialog({ + title: 'เลือกไฟล์ Excel', + filters: [{ name: 'Excel Files', extensions: ['xlsx'] }], + properties: ['openFile'] + }); + + if (result.canceled || result.filePaths.length === 0) { + return null; + } + + return result.filePaths[0]; +}); + +// ✅ ส่วนรันสคริปต์ที่ปรับปรุงใหม่ + เพิ่ม Save Dialog +ipcMain.handle('run-script', async (_, { script, filePath }) => { + const scriptInfo = scriptRunners[script]; + if (!scriptInfo) { + throw new Error(`ไม่พบสคริปต์สำหรับ: ${script}`); + } + + // 🚀 แสดงหน้าต่าง Save Dialog + const saveResult = await dialog.showSaveDialog({ + title: 'เลือกตำแหน่งที่จะบันทึกไฟล์', + defaultPath: scriptInfo.defaultName, + filters: [{ name: 'Excel Files', extensions: ['xlsx'] }] + }); + + // ถ้าผู้ใช้ไม่เลือกที่บันทึก ให้ยกเลิก + if (saveResult.canceled || !saveResult.filePath) { + return 'ยกเลิกการบันทึก'; // ส่งข้อความกลับไปบอกสถานะ + } + + const outputPath = saveResult.filePath; + + // เรียกใช้ฟังก์ชันโดยตรงและส่งทั้ง input และ output path + return scriptInfo.runner(filePath, outputPath); +}); + +app.whenReady().then(createWindow); diff --git a/plan-app/package-lock.json b/plan-app/package-lock.json new file mode 100644 index 0000000..a31fd2a --- /dev/null +++ b/plan-app/package-lock.json @@ -0,0 +1,5036 @@ +{ + "name": "budget-gui", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "budget-gui", + "version": "1.0.0", + "dependencies": { + "electron": "^32.0.0", + "xlsx": "^0.18.5" + }, + "devDependencies": { + "electron-builder": "^26.0.12" + } + }, + "node_modules/@develar/schema-utils": { + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/@develar/schema-utils/-/schema-utils-2.6.5.tgz", + "integrity": "sha512-0cp4PsWQ/9avqTVMCtZ+GirikIA36ikvjtHweU4/j8yLtgObI0+JUPhYFScgwlteveGB1rt3Cm8UhN04XayDig==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.0", + "ajv-keywords": "^3.4.1" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/@electron/asar": { + "version": "3.2.18", + "resolved": "https://registry.npmjs.org/@electron/asar/-/asar-3.2.18.tgz", + "integrity": "sha512-2XyvMe3N3Nrs8cV39IKELRHTYUWFKrmqqSY1U+GMlc0jvqjIVnoxhNd2H4JolWQncbJi1DCvb5TNxZuI2fEjWg==", + "dev": true, + "license": "MIT", + "dependencies": { + "commander": "^5.0.0", + "glob": "^7.1.6", + "minimatch": "^3.0.4" + }, + "bin": { + "asar": "bin/asar.js" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/@electron/asar/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@electron/fuses": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@electron/fuses/-/fuses-1.8.0.tgz", + "integrity": "sha512-zx0EIq78WlY/lBb1uXlziZmDZI4ubcCXIMJ4uGjXzZW0nS19TjSPeXPAjzzTmKQlJUZm0SbmZhPKP7tuQ1SsEw==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.1", + "fs-extra": "^9.0.1", + "minimist": "^1.2.5" + }, + "bin": { + "electron-fuses": "dist/bin.js" + } + }, + "node_modules/@electron/fuses/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/fuses/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/fuses/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/get": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@electron/get/-/get-2.0.3.tgz", + "integrity": "sha512-Qkzpg2s9GnVV2I2BjRksUi43U5e6+zaQMcjoJy0C+C5oxaKl+fmckGDQFtRpZpZV0NQekuZZ+tGz7EA9TVnQtQ==", + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "env-paths": "^2.2.0", + "fs-extra": "^8.1.0", + "got": "^11.8.5", + "progress": "^2.0.3", + "semver": "^6.2.0", + "sumchecker": "^3.0.1" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "global-agent": "^3.0.0" + } + }, + "node_modules/@electron/node-gyp": { + "version": "10.2.0-electron.1", + "resolved": "git+ssh://git@github.com/electron/node-gyp.git#06b29aafb7708acef8b3669835c8a7857ebc92d2", + "integrity": "sha512-4MSBTT8y07YUDqf69/vSh80Hh791epYqGtWHO3zSKhYFwQg+gx9wi1PqbqP6YqC4WMsNxZ5l9oDmnWdK5pfCKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^8.1.0", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.2.1", + "nopt": "^6.0.0", + "proc-log": "^2.0.1", + "semver": "^7.3.5", + "tar": "^6.2.1", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": ">=12.13.0" + } + }, + "node_modules/@electron/node-gyp/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@electron/node-gyp/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@electron/node-gyp/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/node-gyp/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/notarize": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@electron/notarize/-/notarize-2.5.0.tgz", + "integrity": "sha512-jNT8nwH1f9X5GEITXaQ8IF/KdskvIkOFfB2CvwumsveVidzpSc+mvhhTMdAGSYF3O+Nq49lJ7y+ssODRXu06+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^9.0.1", + "promise-retry": "^2.0.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/notarize/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/notarize/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/notarize/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/osx-sign": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@electron/osx-sign/-/osx-sign-1.3.1.tgz", + "integrity": "sha512-BAfviURMHpmb1Yb50YbCxnOY0wfwaLXH5KJ4+80zS0gUkzDX3ec23naTlEqKsN+PwYn+a1cCzM7BJ4Wcd3sGzw==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "compare-version": "^0.1.2", + "debug": "^4.3.4", + "fs-extra": "^10.0.0", + "isbinaryfile": "^4.0.8", + "minimist": "^1.2.6", + "plist": "^3.0.5" + }, + "bin": { + "electron-osx-flat": "bin/electron-osx-flat.js", + "electron-osx-sign": "bin/electron-osx-sign.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@electron/osx-sign/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@electron/osx-sign/node_modules/isbinaryfile": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/@electron/osx-sign/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/osx-sign/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/rebuild": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@electron/rebuild/-/rebuild-3.7.0.tgz", + "integrity": "sha512-VW++CNSlZwMYP7MyXEbrKjpzEwhB5kDNbzGtiPEjwYysqyTCF+YbNJ210Dj3AjWsGSV4iEEwNkmJN9yGZmVvmw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@electron/node-gyp": "git+https://github.com/electron/node-gyp.git#06b29aafb7708acef8b3669835c8a7857ebc92d2", + "@malept/cross-spawn-promise": "^2.0.0", + "chalk": "^4.0.0", + "debug": "^4.1.1", + "detect-libc": "^2.0.1", + "fs-extra": "^10.0.0", + "got": "^11.7.0", + "node-abi": "^3.45.0", + "node-api-version": "^0.2.0", + "ora": "^5.1.0", + "read-binary-file-arch": "^1.0.6", + "semver": "^7.3.5", + "tar": "^6.0.5", + "yargs": "^17.0.1" + }, + "bin": { + "electron-rebuild": "lib/cli.js" + }, + "engines": { + "node": ">=12.13.0" + } + }, + "node_modules/@electron/rebuild/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@electron/rebuild/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/rebuild/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/rebuild/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/universal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@electron/universal/-/universal-2.0.1.tgz", + "integrity": "sha512-fKpv9kg4SPmt+hY7SVBnIYULE9QJl8L3sCfcBsnqbJwwBwAeTLokJ9TRt9y7bK0JAzIW2y78TVVjvnQEms/yyA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@electron/asar": "^3.2.7", + "@malept/cross-spawn-promise": "^2.0.0", + "debug": "^4.3.1", + "dir-compare": "^4.2.0", + "fs-extra": "^11.1.1", + "minimatch": "^9.0.3", + "plist": "^3.1.0" + }, + "engines": { + "node": ">=16.4" + } + }, + "node_modules/@electron/universal/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@electron/universal/node_modules/fs-extra": { + "version": "11.3.2", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.2.tgz", + "integrity": "sha512-Xr9F6z6up6Ws+NjzMCZc6WXg2YFRlrLP9NQDO3VQrWrfiojdhS56TzueT88ze0uBdCTwEIhQ3ptnmKeWGFAe0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@electron/universal/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/universal/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@electron/universal/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/windows-sign": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@electron/windows-sign/-/windows-sign-1.2.2.tgz", + "integrity": "sha512-dfZeox66AvdPtb2lD8OsIIQh12Tp0GNCRUDfBHIKGpbmopZto2/A8nSpYYLoedPIHpqkeblZ/k8OV0Gy7PYuyQ==", + "dev": true, + "license": "BSD-2-Clause", + "optional": true, + "dependencies": { + "cross-dirname": "^0.1.0", + "debug": "^4.3.4", + "fs-extra": "^11.1.1", + "minimist": "^1.2.8", + "postject": "^1.0.0-alpha.6" + }, + "bin": { + "electron-windows-sign": "bin/electron-windows-sign.js" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@electron/windows-sign/node_modules/fs-extra": { + "version": "11.3.2", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.2.tgz", + "integrity": "sha512-Xr9F6z6up6Ws+NjzMCZc6WXg2YFRlrLP9NQDO3VQrWrfiojdhS56TzueT88ze0uBdCTwEIhQ3ptnmKeWGFAe0A==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@electron/windows-sign/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/windows-sign/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@isaacs/balanced-match": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", + "integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@isaacs/brace-expansion": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz", + "integrity": "sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@isaacs/balanced-match": "^4.0.1" + }, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", + "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@malept/cross-spawn-promise": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@malept/cross-spawn-promise/-/cross-spawn-promise-2.0.0.tgz", + "integrity": "sha512-1DpKU0Z5ThltBwjNySMC14g0CkbyhCaz9FkhxqNsZI6uAPJXFS8cMXlBKo26FJ8ZuW6S9GCMcR9IO5k2X5/9Fg==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/malept" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/subscription/pkg/npm-.malept-cross-spawn-promise?utm_medium=referral&utm_source=npm_fund" + } + ], + "license": "Apache-2.0", + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/@malept/flatpak-bundler": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@malept/flatpak-bundler/-/flatpak-bundler-0.4.0.tgz", + "integrity": "sha512-9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^9.0.0", + "lodash": "^4.17.15", + "tmp-promise": "^3.0.2" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@malept/flatpak-bundler/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@malept/flatpak-bundler/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@malept/flatpak-bundler/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@npmcli/fs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", + "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/fs/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/move-file": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", + "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", + "deprecated": "This functionality has been moved to @npmcli/fs", + "dev": true, + "license": "MIT", + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@sindresorhus/is": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "license": "MIT", + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/@types/cacheable-request": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", + "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==", + "license": "MIT", + "dependencies": { + "@types/http-cache-semantics": "*", + "@types/keyv": "^3.1.4", + "@types/node": "*", + "@types/responselike": "^1.0.0" + } + }, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/fs-extra": { + "version": "9.0.13", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.13.tgz", + "integrity": "sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", + "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", + "license": "MIT" + }, + "node_modules/@types/keyv": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", + "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", + "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "20.19.24", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.24.tgz", + "integrity": "sha512-FE5u0ezmi6y9OZEzlJfg37mqqf6ZDSF2V/NLjUyGrR9uTZ7Sb9F7bLNZ03S4XVUNRWGA7Ck4c1kK+YnuWjl+DA==", + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/plist": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/plist/-/plist-3.0.5.tgz", + "integrity": "sha512-E6OCaRmAe4WDmWNsL/9RMqdkkzDCY1etutkflWk4c+AcjDU07Pcz1fQwTX0TQz+Pxqn9i4L1TU3UFpjnrcDgxA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@types/node": "*", + "xmlbuilder": ">=11.0.1" + } + }, + "node_modules/@types/responselike": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz", + "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/verror": { + "version": "1.10.11", + "resolved": "https://registry.npmjs.org/@types/verror/-/verror-1.10.11.tgz", + "integrity": "sha512-RlDm9K7+o5stv0Co8i8ZRGxDbrTxhJtgjqjFyVh/tXQyl/rYtTKlnTvZ88oSTeYREWurwx20Js4kTuKCsFkUtg==", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/@types/yauzl": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", + "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", + "license": "MIT", + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@xmldom/xmldom": { + "version": "0.8.11", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.11.tgz", + "integrity": "sha512-cQzWCtO6C8TQiYl1ruKNn2U6Ao4o4WBBcbL61yJl84x+j5sOWWFU9X7DpND8XZG3daDppSsigMdfAIl2upQBRw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/7zip-bin": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/7zip-bin/-/7zip-bin-5.2.0.tgz", + "integrity": "sha512-ukTPVhqG4jNzMro2qA9HSCSSVJN3aN7tlb+hfqYCt3ER0yWroeA2VR38MNrOHLQ/cVj+DaIMad0kFCtWWowh/A==", + "dev": true, + "license": "MIT" + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true, + "license": "ISC" + }, + "node_modules/adler-32": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/adler-32/-/adler-32-1.3.1.tgz", + "integrity": "sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A==", + "license": "Apache-2.0", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, + "node_modules/agentkeepalive": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.6.0.tgz", + "integrity": "sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/app-builder-bin": { + "version": "5.0.0-alpha.12", + "resolved": "https://registry.npmjs.org/app-builder-bin/-/app-builder-bin-5.0.0-alpha.12.tgz", + "integrity": "sha512-j87o0j6LqPL3QRr8yid6c+Tt5gC7xNfYo6uQIQkorAC6MpeayVMZrEDzKmJJ/Hlv7EnOQpaRm53k6ktDYZyB6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/app-builder-lib": { + "version": "26.0.12", + "resolved": "https://registry.npmjs.org/app-builder-lib/-/app-builder-lib-26.0.12.tgz", + "integrity": "sha512-+/CEPH1fVKf6HowBUs6LcAIoRcjeqgvAeoSE+cl7Y7LndyQ9ViGPYibNk7wmhMHzNgHIuIbw4nWADPO+4mjgWw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@develar/schema-utils": "~2.6.5", + "@electron/asar": "3.2.18", + "@electron/fuses": "^1.8.0", + "@electron/notarize": "2.5.0", + "@electron/osx-sign": "1.3.1", + "@electron/rebuild": "3.7.0", + "@electron/universal": "2.0.1", + "@malept/flatpak-bundler": "^0.4.0", + "@types/fs-extra": "9.0.13", + "async-exit-hook": "^2.0.1", + "builder-util": "26.0.11", + "builder-util-runtime": "9.3.1", + "chromium-pickle-js": "^0.2.0", + "config-file-ts": "0.2.8-rc1", + "debug": "^4.3.4", + "dotenv": "^16.4.5", + "dotenv-expand": "^11.0.6", + "ejs": "^3.1.8", + "electron-publish": "26.0.11", + "fs-extra": "^10.1.0", + "hosted-git-info": "^4.1.0", + "is-ci": "^3.0.0", + "isbinaryfile": "^5.0.0", + "js-yaml": "^4.1.0", + "json5": "^2.2.3", + "lazy-val": "^1.0.5", + "minimatch": "^10.0.0", + "plist": "3.1.0", + "resedit": "^1.7.0", + "semver": "^7.3.8", + "tar": "^6.1.12", + "temp-file": "^3.4.0", + "tiny-async-pool": "1.3.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "dmg-builder": "26.0.12", + "electron-builder-squirrel-windows": "26.0.12" + } + }, + "node_modules/app-builder-lib/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/app-builder-lib/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/app-builder-lib/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/app-builder-lib/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "dev": true, + "license": "MIT" + }, + "node_modules/async-exit-hook": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/async-exit-hook/-/async-exit-hook-2.0.1.tgz", + "integrity": "sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/boolean": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz", + "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "license": "MIT", + "optional": true + }, + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/builder-util": { + "version": "26.0.11", + "resolved": "https://registry.npmjs.org/builder-util/-/builder-util-26.0.11.tgz", + "integrity": "sha512-xNjXfsldUEe153h1DraD0XvDOpqGR0L5eKFkdReB7eFW5HqysDZFfly4rckda6y9dF39N3pkPlOblcfHKGw+uA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/debug": "^4.1.6", + "7zip-bin": "~5.2.0", + "app-builder-bin": "5.0.0-alpha.12", + "builder-util-runtime": "9.3.1", + "chalk": "^4.1.2", + "cross-spawn": "^7.0.6", + "debug": "^4.3.4", + "fs-extra": "^10.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "is-ci": "^3.0.0", + "js-yaml": "^4.1.0", + "sanitize-filename": "^1.6.3", + "source-map-support": "^0.5.19", + "stat-mode": "^1.0.0", + "temp-file": "^3.4.0", + "tiny-async-pool": "1.3.0" + } + }, + "node_modules/builder-util-runtime": { + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/builder-util-runtime/-/builder-util-runtime-9.3.1.tgz", + "integrity": "sha512-2/egrNDDnRaxVwK3A+cJq6UOlqOdedGA7JPqCeJjN2Zjk1/QB/6QUi3b714ScIGS7HafFXTyzJEOr5b44I3kvQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.3.4", + "sax": "^1.2.4" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/builder-util/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/builder-util/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/builder-util/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/cacache": { + "version": "16.1.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", + "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/cacache/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", + "license": "MIT", + "engines": { + "node": ">=10.6.0" + } + }, + "node_modules/cacheable-request": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz", + "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==", + "license": "MIT", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/cfb": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", + "integrity": "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==", + "license": "Apache-2.0", + "dependencies": { + "adler-32": "~1.3.0", + "crc-32": "~1.2.0" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/chromium-pickle-js": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz", + "integrity": "sha512-1R5Fho+jBq0DDydt+/vHWj5KJNJCKdARKOCwZUen84I5BreWoLqRLANH1U87eJy1tiASPtMnGqJJq0ZsLoRPOw==", + "dev": true, + "license": "MIT" + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "license": "MIT", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/codepage": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz", + "integrity": "sha512-3g6NUTPd/YtuuGrhMnOMRjFc+LJw/bnMp3+0r/Wcz3IXUuCosKRJvMphm5+Q+bvTVGcJJuRvVLuYba+WojaFaA==", + "license": "Apache-2.0", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/compare-version": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/compare-version/-/compare-version-0.1.2.tgz", + "integrity": "sha512-pJDh5/4wrEnXX/VWRZvruAGHkzKdr46z11OlTPN+VrATlWWhSKewNCJ1futCO5C7eJB3nPMFZA1LeYtcFboZ2A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/config-file-ts": { + "version": "0.2.8-rc1", + "resolved": "https://registry.npmjs.org/config-file-ts/-/config-file-ts-0.2.8-rc1.tgz", + "integrity": "sha512-GtNECbVI82bT4RiDIzBSVuTKoSHufnU7Ce7/42bkWZJZFLjmDF2WBpVsvRkhKCfKBnTBb3qZrBwPpFBU/Myvhg==", + "dev": true, + "license": "MIT", + "dependencies": { + "glob": "^10.3.12", + "typescript": "^5.4.3" + } + }, + "node_modules/config-file-ts/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/config-file-ts/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/config-file-ts/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/config-file-ts/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/crc": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", + "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "buffer": "^5.1.0" + } + }, + "node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "license": "Apache-2.0", + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/cross-dirname": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/cross-dirname/-/cross-dirname-0.1.0.tgz", + "integrity": "sha512-+R08/oI0nl3vfPcqftZRpytksBXDzOUveBq/NBVx0sUp1axwzPQrKinNx5yd5sxPu8j1wIy8AfnVQ+5eFdha6Q==", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "license": "MIT", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decompress-response/node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "license": "MIT", + "optional": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "license": "MIT", + "optional": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "license": "MIT", + "optional": true + }, + "node_modules/dir-compare": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/dir-compare/-/dir-compare-4.2.0.tgz", + "integrity": "sha512-2xMCmOoMrdQIPHdsTawECdNPwlVFB9zGcz3kuhmBO6U3oU+UQjsue0i8ayLKpgBcm+hcXPMVSGUN9d+pvJ6+VQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimatch": "^3.0.5", + "p-limit": "^3.1.0 " + } + }, + "node_modules/dir-compare/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/dmg-builder": { + "version": "26.0.12", + "resolved": "https://registry.npmjs.org/dmg-builder/-/dmg-builder-26.0.12.tgz", + "integrity": "sha512-59CAAjAhTaIMCN8y9kD573vDkxbs1uhDcrFLHSgutYdPcGOU35Rf95725snvzEOy4BFB7+eLJ8djCNPmGwG67w==", + "dev": true, + "license": "MIT", + "dependencies": { + "app-builder-lib": "26.0.12", + "builder-util": "26.0.11", + "builder-util-runtime": "9.3.1", + "fs-extra": "^10.1.0", + "iconv-lite": "^0.6.2", + "js-yaml": "^4.1.0" + }, + "optionalDependencies": { + "dmg-license": "^1.0.11" + } + }, + "node_modules/dmg-builder/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/dmg-builder/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/dmg-builder/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/dmg-license": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/dmg-license/-/dmg-license-1.0.11.tgz", + "integrity": "sha512-ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "@types/plist": "^3.0.1", + "@types/verror": "^1.10.3", + "ajv": "^6.10.0", + "crc": "^3.8.0", + "iconv-corefoundation": "^1.1.7", + "plist": "^3.0.4", + "smart-buffer": "^4.0.2", + "verror": "^1.10.0" + }, + "bin": { + "dmg-license": "bin/dmg-license.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dotenv": { + "version": "16.6.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz", + "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dotenv-expand": { + "version": "11.0.7", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.7.tgz", + "integrity": "sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "dotenv": "^16.4.5" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true, + "license": "MIT" + }, + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron": { + "version": "32.3.3", + "resolved": "https://registry.npmjs.org/electron/-/electron-32.3.3.tgz", + "integrity": "sha512-7FT8tDg+MueAw8dBn5LJqDvlM4cZkKJhXfgB3w7P5gvSoUQVAY6LIQcXJxgL+vw2rIRY/b9ak7ZBFbCMF2Bk4w==", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@electron/get": "^2.0.0", + "@types/node": "^20.9.0", + "extract-zip": "^2.0.1" + }, + "bin": { + "electron": "cli.js" + }, + "engines": { + "node": ">= 12.20.55" + } + }, + "node_modules/electron-builder": { + "version": "26.0.12", + "resolved": "https://registry.npmjs.org/electron-builder/-/electron-builder-26.0.12.tgz", + "integrity": "sha512-cD1kz5g2sgPTMFHjLxfMjUK5JABq3//J4jPswi93tOPFz6btzXYtK5NrDt717NRbukCUDOrrvmYVOWERlqoiXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "app-builder-lib": "26.0.12", + "builder-util": "26.0.11", + "builder-util-runtime": "9.3.1", + "chalk": "^4.1.2", + "dmg-builder": "26.0.12", + "fs-extra": "^10.1.0", + "is-ci": "^3.0.0", + "lazy-val": "^1.0.5", + "simple-update-notifier": "2.0.0", + "yargs": "^17.6.2" + }, + "bin": { + "electron-builder": "cli.js", + "install-app-deps": "install-app-deps.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/electron-builder-squirrel-windows": { + "version": "26.0.12", + "resolved": "https://registry.npmjs.org/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-26.0.12.tgz", + "integrity": "sha512-kpwXM7c/ayRUbYVErQbsZ0nQZX4aLHQrPEG9C4h9vuJCXylwFH8a7Jgi2VpKIObzCXO7LKHiCw4KdioFLFOgqA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "app-builder-lib": "26.0.12", + "builder-util": "26.0.11", + "electron-winstaller": "5.4.0" + } + }, + "node_modules/electron-builder/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-builder/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/electron-builder/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/electron-publish": { + "version": "26.0.11", + "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-26.0.11.tgz", + "integrity": "sha512-a8QRH0rAPIWH9WyyS5LbNvW9Ark6qe63/LqDB7vu2JXYpi0Gma5Q60Dh4tmTqhOBQt0xsrzD8qE7C+D7j+B24A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/fs-extra": "^9.0.11", + "builder-util": "26.0.11", + "builder-util-runtime": "9.3.1", + "chalk": "^4.1.2", + "form-data": "^4.0.0", + "fs-extra": "^10.1.0", + "lazy-val": "^1.0.5", + "mime": "^2.5.2" + } + }, + "node_modules/electron-publish/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-publish/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/electron-publish/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/electron-winstaller": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/electron-winstaller/-/electron-winstaller-5.4.0.tgz", + "integrity": "sha512-bO3y10YikuUwUuDUQRM4KfwNkKhnpVO7IPdbsrejwN9/AABJzzTQ4GeHwyzNSrVO+tEH3/Np255a3sVZpZDjvg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@electron/asar": "^3.2.1", + "debug": "^4.1.1", + "fs-extra": "^7.0.1", + "lodash": "^4.17.21", + "temp": "^0.9.0" + }, + "engines": { + "node": ">=8.0.0" + }, + "optionalDependencies": { + "@electron/windows-sign": "^1.1.2" + } + }, + "node_modules/electron-winstaller/node_modules/fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz", + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true, + "license": "MIT" + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "license": "MIT", + "optional": true + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/exponential-backoff": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.3.tgz", + "integrity": "sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "license": "BSD-2-Clause", + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/extsprintf": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz", + "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "license": "MIT", + "optional": true + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "license": "MIT", + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "minimatch": "^5.0.1" + } + }, + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dev": true, + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz", + "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==", + "dev": true, + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/frac": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/frac/-/frac-1.1.2.tgz", + "integrity": "sha512-w/XBfkibaTl3YDqASwfDUqkna4Z2p9cFSr1aHDt0WoMTECnRfBOv2WArlZILlqgWlmdIlALXGpM2AOhEk5W3IA==", + "license": "Apache-2.0", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "license": "MIT", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/global-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz", + "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", + "license": "BSD-3-Clause", + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + }, + "engines": { + "node": ">=10.0" + } + }, + "node_modules/global-agent/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "license": "ISC", + "optional": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "license": "MIT", + "optional": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/got": { + "version": "11.8.6", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", + "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", + "license": "MIT", + "dependencies": { + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.2", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=10.19.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "license": "MIT", + "optional": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==", + "license": "BSD-2-Clause" + }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "license": "MIT", + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/iconv-corefoundation": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz", + "integrity": "sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "cli-truncate": "^2.1.0", + "node-addon-api": "^1.6.3" + }, + "engines": { + "node": "^8.11.2 || >=10" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true, + "license": "ISC" + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/ip-address": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.0.1.tgz", + "integrity": "sha512-NWv9YLW4PoW2B7xtzaS3NCot75m6nK7Icdv0o3lfMceJVRfSoQwqD4wEH5rLwoKJwUiZ/rfpiVBhnaF0FK4HoA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, + "node_modules/is-ci": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", + "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ci-info": "^3.2.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isbinaryfile": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.6.tgz", + "integrity": "sha512-I+NmIfBHUl+r2wcDd6JwE9yWje/PIVY/R5/CmV8dXLZd5K+L9X2klAOwfAHNnondLXkbHyTAleQAWonpTJBTtw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 18.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jake": { + "version": "10.9.4", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.4.tgz", + "integrity": "sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "async": "^3.2.6", + "filelist": "^1.0.4", + "picocolors": "^1.1.1" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "license": "ISC", + "optional": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "license": "MIT", + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/lazy-val": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/lazy-val/-/lazy-val-1.0.5.tgz", + "integrity": "sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true, + "license": "MIT" + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-fetch-happen": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", + "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", + "dev": true, + "license": "ISC", + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/make-fetch-happen/node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/make-fetch-happen/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "license": "MIT", + "optional": true, + "dependencies": { + "escape-string-regexp": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.1.1.tgz", + "integrity": "sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/brace-expansion": "^5.0.0" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", + "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/negotiator": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/node-abi": { + "version": "3.80.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.80.0.tgz", + "integrity": "sha512-LyPuZJcI9HVwzXK1GPxWNzrr+vr8Hp/3UqlmWxxh8p54U1ZbclOqbSog9lWHaCX+dBaiGi6n/hIX+mKu74GmPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-abi/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-addon-api": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-1.7.2.tgz", + "integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/node-api-version": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/node-api-version/-/node-api-version-0.2.1.tgz", + "integrity": "sha512-2xP/IGGMmmSQpI1+O/k72jF/ykvZ89JeuKX3TLJAYPDVLUalrshrLHkeVcCCZqG/eEa635cr8IBYzgnDvM2O8Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.3.5" + } + }, + "node_modules/node-api-version/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "dev": true, + "license": "ISC", + "dependencies": { + "abbrev": "^1.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true, + "license": "BlueOak-1.0.0" + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/path-scurry/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/pe-library": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/pe-library/-/pe-library-0.4.1.tgz", + "integrity": "sha512-eRWB5LBz7PpDu4PUlwT0PhnQfTQJlDDdPa35urV4Osrm0t0AqQFGn+UIkU3klZvwJ8KPO3VbBFsXquA6p6kqZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12", + "npm": ">=6" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jet2jet" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/plist": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz", + "integrity": "sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@xmldom/xmldom": "^0.8.8", + "base64-js": "^1.5.1", + "xmlbuilder": "^15.1.1" + }, + "engines": { + "node": ">=10.4.0" + } + }, + "node_modules/postject": { + "version": "1.0.0-alpha.6", + "resolved": "https://registry.npmjs.org/postject/-/postject-1.0.0-alpha.6.tgz", + "integrity": "sha512-b9Eb8h2eVqNE8edvKdwqkrY6O7kAwmI8kcnBv1NScolYJbo59XUF0noFq+lxbC1yN20bmC0WBEbDC5H/7ASb0A==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "commander": "^9.4.0" + }, + "bin": { + "postject": "dist/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/postject/node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/proc-log": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", + "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", + "dev": true, + "license": "ISC", + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/pump": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz", + "integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==", + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-binary-file-arch": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/read-binary-file-arch/-/read-binary-file-arch-1.0.6.tgz", + "integrity": "sha512-BNg9EN3DD3GsDXX7Aa8O4p92sryjkmzYYgmgTAc6CA4uGLEDzFfxOxugu21akOxpcXHiEgsYkC6nPsQvLLLmEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.3.4" + }, + "bin": { + "read-binary-file-arch": "cli.js" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resedit": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/resedit/-/resedit-1.7.2.tgz", + "integrity": "sha512-vHjcY2MlAITJhC0eRD/Vv8Vlgmu9Sd3LX9zZvtGzU5ZImdTN3+d6e/4mnTyV8vEbyf1sgNIrWxhWlrys52OkEA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pe-library": "^0.4.1" + }, + "engines": { + "node": ">=12", + "npm": ">=6" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jet2jet" + } + }, + "node_modules/resolve-alpn": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", + "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", + "license": "MIT" + }, + "node_modules/responselike": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", + "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", + "license": "MIT", + "dependencies": { + "lowercase-keys": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/roarr": { + "version": "2.15.4", + "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", + "license": "BSD-3-Clause", + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "license": "MIT" + }, + "node_modules/sanitize-filename": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz", + "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==", + "dev": true, + "license": "WTFPL OR ISC", + "dependencies": { + "truncate-utf8-bytes": "^1.0.0" + } + }, + "node_modules/sax": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.3.tgz", + "integrity": "sha512-yqYn1JhPczigF94DMS+shiDMjDowYO6y9+wB/4WgO0Y19jWYk0lQ4tuG5KI7kj4FTp1wxPj5IFfcrz/s1c3jjQ==", + "dev": true, + "license": "BlueOak-1.0.0" + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "license": "MIT", + "optional": true + }, + "node_modules/serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "license": "MIT", + "optional": true, + "dependencies": { + "type-fest": "^0.13.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/simple-update-notifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", + "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/simple-update-notifier/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.8.7", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.7.tgz", + "integrity": "sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ip-address": "^10.0.1", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", + "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/socks-proxy-agent/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "license": "BSD-3-Clause", + "optional": true + }, + "node_modules/ssf": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/ssf/-/ssf-0.11.2.tgz", + "integrity": "sha512-+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g==", + "license": "Apache-2.0", + "dependencies": { + "frac": "~1.1.2" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/ssri": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/stat-mode": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stat-mode/-/stat-mode-1.0.0.tgz", + "integrity": "sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/sumchecker": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-3.0.1.tgz", + "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", + "license": "Apache-2.0", + "dependencies": { + "debug": "^4.1.0" + }, + "engines": { + "node": ">= 8.0" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dev": true, + "license": "ISC", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=8" + } + }, + "node_modules/temp": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/temp/-/temp-0.9.4.tgz", + "integrity": "sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "mkdirp": "^0.5.1", + "rimraf": "~2.6.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/temp-file": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/temp-file/-/temp-file-3.4.0.tgz", + "integrity": "sha512-C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg==", + "dev": true, + "license": "MIT", + "dependencies": { + "async-exit-hook": "^2.0.1", + "fs-extra": "^10.0.0" + } + }, + "node_modules/temp-file/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/temp-file/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/temp-file/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/temp/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/temp/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/tiny-async-pool": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/tiny-async-pool/-/tiny-async-pool-1.3.0.tgz", + "integrity": "sha512-01EAw5EDrcVrdgyCLgoSPvqznC0sVxDSVeiOz09FUpjh71G79VCqneOr+xvt7T1r76CF6ZZfPjHorN2+d+3mqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^5.5.0" + } + }, + "node_modules/tiny-async-pool/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/tmp": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.5.tgz", + "integrity": "sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.14" + } + }, + "node_modules/tmp-promise": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/tmp-promise/-/tmp-promise-3.0.3.tgz", + "integrity": "sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "tmp": "^0.2.0" + } + }, + "node_modules/truncate-utf8-bytes": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", + "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==", + "dev": true, + "license": "WTFPL", + "dependencies": { + "utf8-byte-length": "^1.0.1" + } + }, + "node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "license": "(MIT OR CC0-1.0)", + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "license": "MIT" + }, + "node_modules/unique-filename": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", + "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", + "dev": true, + "license": "ISC", + "dependencies": { + "unique-slug": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/unique-slug": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", + "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "license": "MIT", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/utf8-byte-length": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.5.tgz", + "integrity": "sha512-Xn0w3MtiQ6zoz2vFyUVruaCL53O/DwUvkEeOvj+uulMm0BkUGYWmBYVyElqZaSLhY6ZD0ulfU3aBra2aVT4xfA==", + "dev": true, + "license": "(WTFPL OR MIT)" + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true, + "license": "MIT" + }, + "node_modules/verror": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz", + "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "license": "MIT", + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wmf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wmf/-/wmf-1.0.2.tgz", + "integrity": "sha512-/p9K7bEh0Dj6WbXg4JG0xvLQmIadrner1bi45VMJTfnbVHsc7yIajZyoSoK60/dtVBs12Fm6WkUI5/3WAVsNMw==", + "license": "Apache-2.0", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/word": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/word/-/word-0.3.0.tgz", + "integrity": "sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA==", + "license": "Apache-2.0", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "license": "ISC" + }, + "node_modules/xlsx": { + "version": "0.18.5", + "resolved": "https://registry.npmjs.org/xlsx/-/xlsx-0.18.5.tgz", + "integrity": "sha512-dmg3LCjBPHZnQp5/F/+nnTa+miPJxUXB6vtk42YjBBKayDNagxGEeIdWApkYPOf3Z3pm3k62Knjzp7lMeTEtFQ==", + "license": "Apache-2.0", + "dependencies": { + "adler-32": "~1.3.0", + "cfb": "~1.2.1", + "codepage": "~1.15.0", + "crc-32": "~1.2.1", + "ssf": "~0.11.2", + "wmf": "~1.0.1", + "word": "~0.3.0" + }, + "bin": { + "xlsx": "bin/xlsx.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/xmlbuilder": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "license": "MIT", + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/plan-app/package.json b/plan-app/package.json new file mode 100644 index 0000000..c745afe --- /dev/null +++ b/plan-app/package.json @@ -0,0 +1,30 @@ +{ + "name": "budget-classifier", + "version": "1.0.0", + "description": "โปรแกรมจำแนกงบประมาณ (Electron GUI)", + "main": "main.js", + "scripts": { + "start": "electron .", + "build": "electron-builder" + }, + "build": { + "appId": "com.yourcompany.budgetclassifier", + "productName": "Budget Classifier", + "win": { + "target": "nsis", + "icon": "./logo.ico" + }, + "files": [ + "**/*", + "!node_modules/.cache/**/*", + "!*.log" + ] + }, + "dependencies": { + "xlsx": "^0.18.5" + }, + "devDependencies": { + "electron": "^32.0.0", + "electron-builder": "^24.13.3" + } +} diff --git a/plan-app/renderer.js b/plan-app/renderer.js new file mode 100644 index 0000000..31fd168 --- /dev/null +++ b/plan-app/renderer.js @@ -0,0 +1,32 @@ +// renderer.js +const { ipcRenderer } = require('electron'); + +document.getElementById('btnSelect').addEventListener('click', async () => { + console.log('🟢 clicked select'); // Debug + const filePath = await ipcRenderer.invoke('select-file'); + console.log('📁 File selected:', filePath); + if (filePath) document.getElementById('filePath').value = filePath; +}); + +document.getElementById('btnRun').addEventListener('click', async () => { + const filePath = document.getElementById('filePath').value; + const mode = document.getElementById('mode').value; + if (!filePath) { + document.getElementById('status').innerText = '⚠️ กรุณาเลือกไฟล์ Excel ก่อน'; + return; + } + + document.getElementById('status').innerText = 'กำลังประมวลผล...'; + try { + const resultMessage = await ipcRenderer.invoke('run-script', { script: mode, filePath }); + + // ตรวจสอบข้อความที่ส่งกลับมาจาก main process + if (resultMessage === 'ยกเลิกการบันทึก') { + document.getElementById('status').innerText = 'สถานะ: ยกเลิกโดยผู้ใช้'; + } else { + document.getElementById('status').innerText = `✅ ${resultMessage}`; // แสดงข้อความสำเร็จที่ได้รับ + } + } catch (err) { + document.getElementById('status').innerText = '❌ เกิดข้อผิดพลาด: ' + err; + } +}); diff --git a/templete/.editorconfig b/templete/.editorconfig new file mode 100644 index 0000000..f166060 --- /dev/null +++ b/templete/.editorconfig @@ -0,0 +1,17 @@ +# Editor configuration, see https://editorconfig.org +root = true + +[*] +charset = utf-8 +indent_style = space +indent_size = 2 +insert_final_newline = true +trim_trailing_whitespace = true + +[*.ts] +quote_type = single +ij_typescript_use_double_quotes = false + +[*.md] +max_line_length = off +trim_trailing_whitespace = false diff --git a/templete/.gitignore b/templete/.gitignore new file mode 100644 index 0000000..cc7b141 --- /dev/null +++ b/templete/.gitignore @@ -0,0 +1,42 @@ +# See https://docs.github.com/get-started/getting-started-with-git/ignoring-files for more about ignoring files. + +# Compiled output +/dist +/tmp +/out-tsc +/bazel-out + +# Node +/node_modules +npm-debug.log +yarn-error.log + +# IDEs and editors +.idea/ +.project +.classpath +.c9/ +*.launch +.settings/ +*.sublime-workspace + +# Visual Studio Code +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +.history/* + +# Miscellaneous +/.angular/cache +.sass-cache/ +/connect.lock +/coverage +/libpeerconnection.log +testem.log +/typings + +# System files +.DS_Store +Thumbs.db diff --git a/templete/.postcssrc.json b/templete/.postcssrc.json new file mode 100644 index 0000000..e092dc7 --- /dev/null +++ b/templete/.postcssrc.json @@ -0,0 +1,5 @@ +{ + "plugins": { + "@tailwindcss/postcss": {} + } +} diff --git a/templete/.vscode/extensions.json b/templete/.vscode/extensions.json new file mode 100644 index 0000000..77b3745 --- /dev/null +++ b/templete/.vscode/extensions.json @@ -0,0 +1,4 @@ +{ + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=827846 + "recommendations": ["angular.ng-template"] +} diff --git a/templete/.vscode/launch.json b/templete/.vscode/launch.json new file mode 100644 index 0000000..e8e08f9 --- /dev/null +++ b/templete/.vscode/launch.json @@ -0,0 +1,33 @@ +// { +// // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 +// "version": "0.2.0", +// "configurations": [ +// { +// "name": "ng serve", +// "type": "chrome", +// "request": "launch", +// "preLaunchTask": "npm: start", +// "url": "http://localhost:4200/" +// }, +// { +// "name": "ng test", +// "type": "chrome", +// "request": "launch", +// "preLaunchTask": "npm: test", +// "url": "http://localhost:9876/debug.html" +// } +// ] +// } +{ + "version": "0.2.0", + "configurations": [ + + { + "name": "Launch Chrome against localhost", + "type": "chrome", + "request": "launch", + "url": "http://localhost:4200", + "webRoot": "${workspaceFolder}" + } + ] +} diff --git a/templete/.vscode/tasks.json b/templete/.vscode/tasks.json new file mode 100644 index 0000000..a298b5b --- /dev/null +++ b/templete/.vscode/tasks.json @@ -0,0 +1,42 @@ +{ + // For more information, visit: https://go.microsoft.com/fwlink/?LinkId=733558 + "version": "2.0.0", + "tasks": [ + { + "type": "npm", + "script": "start", + "isBackground": true, + "problemMatcher": { + "owner": "typescript", + "pattern": "$tsc", + "background": { + "activeOnStart": true, + "beginsPattern": { + "regexp": "(.*?)" + }, + "endsPattern": { + "regexp": "bundle generation complete" + } + } + } + }, + { + "type": "npm", + "script": "test", + "isBackground": true, + "problemMatcher": { + "owner": "typescript", + "pattern": "$tsc", + "background": { + "activeOnStart": true, + "beginsPattern": { + "regexp": "(.*?)" + }, + "endsPattern": { + "regexp": "bundle generation complete" + } + } + } + } + ] +} diff --git a/templete/README.md b/templete/README.md new file mode 100644 index 0000000..e51cb70 --- /dev/null +++ b/templete/README.md @@ -0,0 +1,59 @@ +# AccountingNgNuttakit + +This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 19.2.18. + +## Development server + +To start a local development server, run: + +```bash +ng serve +``` + +Once the server is running, open your browser and navigate to `http://localhost:4200/`. The application will automatically reload whenever you modify any of the source files. + +## Code scaffolding + +Angular CLI includes powerful code scaffolding tools. To generate a new component, run: + +```bash +ng generate component component-name +``` + +For a complete list of available schematics (such as `components`, `directives`, or `pipes`), run: + +```bash +ng generate --help +``` + +## Building + +To build the project run: + +```bash +ng build +``` + +This will compile your project and store the build artifacts in the `dist/` directory. By default, the production build optimizes your application for performance and speed. + +## Running unit tests + +To execute unit tests with the [Karma](https://karma-runner.github.io) test runner, use the following command: + +```bash +ng test +``` + +## Running end-to-end tests + +For end-to-end (e2e) testing, run: + +```bash +ng e2e +``` + +Angular CLI does not come with an end-to-end testing framework by default. You can choose one that suits your needs. + +## Additional Resources + +For more information on using the Angular CLI, including detailed command references, visit the [Angular CLI Overview and Command Reference](https://angular.dev/tools/cli) page. diff --git a/templete/angular.json b/templete/angular.json new file mode 100644 index 0000000..e6b8664 --- /dev/null +++ b/templete/angular.json @@ -0,0 +1,123 @@ +{ + "$schema": "./node_modules/@angular/cli/lib/config/schema.json", + "version": 1, + "newProjectRoot": "projects", + "projects": { + "accounting-ng-nuttakit": { + "projectType": "application", + "schematics": { + "@schematics/angular:component": { + "standalone": false + }, + "@schematics/angular:directive": { + "standalone": false + }, + "@schematics/angular:pipe": { + "standalone": false + } + }, + "root": "", + "sourceRoot": "src", + "prefix": "app", + "architect": { + "build": { + "builder": "@angular-devkit/build-angular:application", + "options": { + "outputPath": "dist/accounting-ng-nuttakit", + "index": "src/index.html", + "browser": "src/main.ts", + "polyfills": [ + "zone.js" + ], + "tsConfig": "tsconfig.app.json", + "assets": [ + { + "glob": "**/*", + "input": "public" + } + ], + "styles": [ + "node_modules/bootstrap/dist/css/bootstrap.min.css", + "node_modules/@fortawesome/fontawesome-free/css/all.min.css", + "src/styles.css" + ], + "scripts": [ + "node_modules/bootstrap/dist/js/bootstrap.bundle.min.js" + ] + }, + "configurations": { + "production": { + "budgets": [ + { + "type": "initial", + "maximumWarning": "500kB", + "maximumError": "1MB" + }, + { + "type": "anyComponentStyle", + "maximumWarning": "4kB", + "maximumError": "8kB" + } + ], + "outputHashing": "all" + }, + "development": { + "optimization": false, + "extractLicenses": false, + "sourceMap": true + } + }, + "defaultConfiguration": "production" + }, + "serve": { + "builder": "@angular-devkit/build-angular:dev-server", + "options": { + "host": "0.0.0.0", + "allowedHosts": [ + "accounting.nuttakit.work" + ] + }, + "configurations": { + "production": { + "buildTarget": "accounting-ng-nuttakit:build:production" + }, + "development": { + "buildTarget": "accounting-ng-nuttakit:build:development" + } + }, + "defaultConfiguration": "development" + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n" + }, + "test": { + "builder": "@angular-devkit/build-angular:karma", + "options": { + "polyfills": [ + "zone.js", + "zone.js/testing" + ], + "tsConfig": "tsconfig.spec.json", + "assets": [ + { + "glob": "**/*", + "input": "public" + } + ], + "styles": [ + "node_modules/bootstrap/dist/css/bootstrap.min.css", + "node_modules/@fortawesome/fontawesome-free/css/all.min.css", + "src/styles.css" + ], + "scripts": [ + "node_modules/bootstrap/dist/js/bootstrap.bundle.min.js" + ] + } + } + } + } + }, + "cli": { + "analytics": false + } +} diff --git a/templete/capacitor.config.ts b/templete/capacitor.config.ts new file mode 100644 index 0000000..c03e6da --- /dev/null +++ b/templete/capacitor.config.ts @@ -0,0 +1,10 @@ +import type { CapacitorConfig } from '@capacitor/cli'; + +const config: CapacitorConfig = { + appId: 'accounting.nuttakit.work', + appName: 'accounting-ng-nuttakit', + webDir: "dist/accounting-ng-nuttakit/browser" + bundledWebRuntime: false +}; + +export default config; diff --git a/templete/package.json b/templete/package.json new file mode 100644 index 0000000..71ff2a5 --- /dev/null +++ b/templete/package.json @@ -0,0 +1,80 @@ +{ + "name": "accounting-ng-nuttakit", + "version": "1.0.0", + "main": "electron/main.js", + "author": "Nuttakit", + "scripts": { + "ng": "ng", + "start": "ng serve", + "build": "ng build", + "watch": "ng build --watch --configuration development", + "test": "ng test", + "electron": "ng build --base-href ./ && electron .", + "dist": "ng build --configuration production && electron-builder" + }, + "build": { + "appId": "accounting.nuttakit.work", + "productName": "accounting-nuttakit", + "asar": false, + "directories": { + "output": "dist_electron" + }, + "files": [ + "dist/accounting-ng-nuttakit/browser/**/*", + "electron/**/*" + ], + "win": { + "target": ["nsis", "msi"], + "icon": "public/favicon.ico" + }, + "nsis": { + "oneClick": false, + "perMachine": true, + "allowElevation": true, + "runAfterFinish": false + } + }, + "private": true, + "dependencies": { + "@angular/animations": "^19.2.15", + "@angular/common": "^19.2.0", + "@angular/compiler": "^19.2.0", + "@angular/core": "^19.2.0", + "@angular/forms": "^19.2.0", + "@angular/platform-browser": "^19.2.0", + "@angular/platform-browser-dynamic": "^19.2.0", + "@angular/router": "^19.2.0", + "@capacitor/android": "^7.4.4", + "@capacitor/angular": "^2.0.3", + "@capacitor/core": "latest", + "@fortawesome/angular-fontawesome": "^1.0.0", + "@fortawesome/fontawesome-free": "^7.1.0", + "@fortawesome/fontawesome-svg-core": "^7.1.0", + "@fortawesome/free-brands-svg-icons": "^7.1.0", + "@fortawesome/free-regular-svg-icons": "^7.1.0", + "@fortawesome/free-solid-svg-icons": "^7.1.0", + "@tailwindcss/postcss": "^4.1.16", + "bootstrap": "^5.3.8", + "postcss": "^8.5.6", + "rxjs": "~7.8.0", + "tailwindcss": "^4.1.16", + "tslib": "^2.3.0", + "zone.js": "~0.15.0" + }, + "devDependencies": { + "@angular-devkit/build-angular": "^19.2.18", + "@angular/cli": "^19.2.18", + "@angular/compiler-cli": "^19.2.0", + "@capacitor/cli": "latest", + "@types/jasmine": "~5.1.0", + "electron": "^39.0.0", + "electron-builder": "^26.0.12", + "jasmine-core": "~5.6.0", + "karma": "~6.4.0", + "karma-chrome-launcher": "~3.2.0", + "karma-coverage": "~2.2.0", + "karma-jasmine": "~5.1.0", + "karma-jasmine-html-reporter": "~2.1.0", + "typescript": "~5.7.2" + } +} diff --git a/templete/public/favicon.ico b/templete/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..57614f9c967596fad0a3989bec2b1deff33034f6 GIT binary patch literal 15086 zcmd^G33O9Omi+`8$@{|M-I6TH3wzF-p5CV8o}7f~KxR60LK+ApEFB<$bcciv%@SmA zV{n>g85YMFFeU*Uvl=i4v)C*qgnb;$GQ=3XTe9{Y%c`mO%su)noNCCQ*@t1WXn|B(hQ7i~ zrUK8|pUkD6#lNo!bt$6)jR!&C?`P5G(`e((P($RaLeq+o0Vd~f11;qB05kdbAOm?r zXv~GYr_sibQO9NGTCdT;+G(!{4Xs@4fPak8#L8PjgJwcs-Mm#nR_Z0s&u?nDX5^~@ z+A6?}g0|=4e_LoE69pPFO`yCD@BCjgKpzMH0O4Xs{Ahc?K3HC5;l=f zg>}alhBXX&);z$E-wai+9TTRtBX-bWYY@cl$@YN#gMd~tM_5lj6W%8ah4;uZ;jP@Q zVbuel1rPA?2@x9Y+u?e`l{Z4ngfG5q5BLH5QsEu4GVpt{KIp1?U)=3+KQ;%7ec8l* zdV=zZgN5>O3G(3L2fqj3;oBbZZw$Ij@`Juz@?+yy#OPw)>#wsTewVgTK9BGt5AbZ&?K&B3GVF&yu?@(Xj3fR3n+ZP0%+wo)D9_xp>Z$`A4 zfV>}NWjO#3lqumR0`gvnffd9Ka}JJMuHS&|55-*mCD#8e^anA<+sFZVaJe7{=p*oX zE_Uv?1>e~ga=seYzh{9P+n5<+7&9}&(kwqSaz;1aD|YM3HBiy<))4~QJSIryyqp| z8nGc(8>3(_nEI4n)n7j(&d4idW1tVLjZ7QbNLXg;LB ziHsS5pXHEjGJZb59KcvS~wv;uZR-+4qEqow`;JCfB*+b^UL^3!?;-^F%yt=VjU|v z39SSqKcRu_NVvz!zJzL0CceJaS6%!(eMshPv_0U5G`~!a#I$qI5Ic(>IONej@aH=f z)($TAT#1I{iCS4f{D2+ApS=$3E7}5=+y(rA9mM#;Cky%b*Gi0KfFA`ofKTzu`AV-9 znW|y@19rrZ*!N2AvDi<_ZeR3O2R{#dh1#3-d%$k${Rx42h+i&GZo5!C^dSL34*AKp z27mTd>k>?V&X;Nl%GZ(>0s`1UN~Hfyj>KPjtnc|)xM@{H_B9rNr~LuH`Gr5_am&Ep zTjZA8hljNj5H1Ipm-uD9rC}U{-vR!eay5&6x6FkfupdpT*84MVwGpdd(}ib)zZ3Ky z7C$pnjc82(W_y_F{PhYj?o!@3__UUvpX)v69aBSzYj3 zdi}YQkKs^SyXyFG2LTRz9{(w}y~!`{EuAaUr6G1M{*%c+kP1olW9z23dSH!G4_HSK zzae-DF$OGR{ofP*!$a(r^5Go>I3SObVI6FLY)N@o<*gl0&kLo-OT{Tl*7nCz>Iq=? zcigIDHtj|H;6sR?or8Wd_a4996GI*CXGU}o;D9`^FM!AT1pBY~?|4h^61BY#_yIfO zKO?E0 zJ{Pc`9rVEI&$xxXu`<5E)&+m(7zX^v0rqofLs&bnQT(1baQkAr^kEsk)15vlzAZ-l z@OO9RF<+IiJ*O@HE256gCt!bF=NM*vh|WVWmjVawcNoksRTMvR03H{p@cjwKh(CL4 z7_PB(dM=kO)!s4fW!1p0f93YN@?ZSG` z$B!JaAJCtW$B97}HNO9(x-t30&E}Mo1UPi@Av%uHj~?T|!4JLwV;KCx8xO#b9IlUW zI6+{a@Wj|<2Y=U;a@vXbxqZNngH8^}LleE_4*0&O7#3iGxfJ%Id>+sb;7{L=aIic8 z|EW|{{S)J-wr@;3PmlxRXU8!e2gm_%s|ReH!reFcY8%$Hl4M5>;6^UDUUae?kOy#h zk~6Ee_@ZAn48Bab__^bNmQ~+k=02jz)e0d9Z3>G?RGG!65?d1>9}7iG17?P*=GUV-#SbLRw)Hu{zx*azHxWkGNTWl@HeWjA?39Ia|sCi{e;!^`1Oec zb>Z|b65OM*;eC=ZLSy?_fg$&^2xI>qSLA2G*$nA3GEnp3$N-)46`|36m*sc#4%C|h zBN<2U;7k>&G_wL4=Ve5z`ubVD&*Hxi)r@{4RCDw7U_D`lbC(9&pG5C*z#W>8>HU)h z!h3g?2UL&sS!oY5$3?VlA0Me9W5e~V;2jds*fz^updz#AJ%G8w2V}AEE?E^=MK%Xt z__Bx1cr7+DQmuHmzn*|hh%~eEc9@m05@clWfpEFcr+06%0&dZJH&@8^&@*$qR@}o3 z@Tuuh2FsLz^zH+dN&T&?0G3I?MpmYJ;GP$J!EzjeM#YLJ!W$}MVNb0^HfOA>5Fe~UNn%Zk(PT@~9}1dt)1UQ zU*B5K?Dl#G74qmg|2>^>0WtLX#Jz{lO4NT`NYB*(L#D|5IpXr9v&7a@YsGp3vLR7L zHYGHZg7{ie6n~2p$6Yz>=^cEg7tEgk-1YRl%-s7^cbqFb(U7&Dp78+&ut5!Tn(hER z|Gp4Ed@CnOPeAe|N>U(dB;SZ?NU^AzoD^UAH_vamp6Ws}{|mSq`^+VP1g~2B{%N-!mWz<`)G)>V-<`9`L4?3dM%Qh6<@kba+m`JS{Ya@9Fq*m6$$ zA1%Ogc~VRH33|S9l%CNb4zM%k^EIpqY}@h{w(aBcJ9c05oiZx#SK9t->5lSI`=&l~ z+-Ic)a{FbBhXV$Xt!WRd`R#Jk-$+_Z52rS>?Vpt2IK<84|E-SBEoIw>cs=a{BlQ7O z-?{Fy_M&84&9|KM5wt~)*!~i~E=(6m8(uCO)I=)M?)&sRbzH$9Rovzd?ZEY}GqX+~ zFbEbLz`BZ49=2Yh-|<`waK-_4!7`ro@zlC|r&I4fc4oyb+m=|c8)8%tZ-z5FwhzDt zL5kB@u53`d@%nHl0Sp)Dw`(QU&>vujEn?GPEXUW!Wi<+4e%BORl&BIH+SwRcbS}X@ z01Pk|vA%OdJKAs17zSXtO55k!;%m9>1eW9LnyAX4uj7@${O6cfii`49qTNItzny5J zH&Gj`e}o}?xjQ}r?LrI%FjUd@xflT3|7LA|ka%Q3i}a8gVm<`HIWoJGH=$EGClX^C0lysQJ>UO(q&;`T#8txuoQ_{l^kEV9CAdXuU1Ghg8 zN_6hHFuy&1x24q5-(Z7;!poYdt*`UTdrQOIQ!2O7_+AHV2hgXaEz7)>$LEdG z<8vE^Tw$|YwZHZDPM!SNOAWG$?J)MdmEk{U!!$M#fp7*Wo}jJ$Q(=8>R`Ats?e|VU?Zt7Cdh%AdnfyN3MBWw{ z$OnREvPf7%z6`#2##_7id|H%Y{vV^vWXb?5d5?a_y&t3@p9t$ncHj-NBdo&X{wrfJ zamN)VMYROYh_SvjJ=Xd!Ga?PY_$;*L=SxFte!4O6%0HEh%iZ4=gvns7IWIyJHa|hT z2;1+e)`TvbNb3-0z&DD_)Jomsg-7p_Uh`wjGnU1urmv1_oVqRg#=C?e?!7DgtqojU zWoAB($&53;TsXu^@2;8M`#z{=rPy?JqgYM0CDf4v@z=ZD|ItJ&8%_7A#K?S{wjxgd z?xA6JdJojrWpB7fr2p_MSsU4(R7=XGS0+Eg#xR=j>`H@R9{XjwBmqAiOxOL` zt?XK-iTEOWV}f>Pz3H-s*>W z4~8C&Xq25UQ^xH6H9kY_RM1$ch+%YLF72AA7^b{~VNTG}Tj#qZltz5Q=qxR`&oIlW Nr__JTFzvMr^FKp4S3v*( literal 0 HcmV?d00001 diff --git a/templete/public/logo.png b/templete/public/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..b4b482ad889fac09f1ae41f4c0d3d26e9dc3bb65 GIT binary patch literal 107295 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%0Aa#EEy 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ⅇ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 import('./controls/login-control/login-control.module').then(m => m.LoginControlModule) }, + + { path: 'license', component: LicensePrivacyTermsComponent}, + + { + path: 'main', + component: SidebarContentComponent, // ✅ ใช้ layout นี้โดยตรง + children: [ + { + path: '', + loadChildren: () => + import('./controls/main-control/main-control.module').then( + (m) => m.MainControlModule + ), + }, + ], + }, + + { path: '', redirectTo: 'login', pathMatch: 'full' }, + + { path: '**', redirectTo: 'login' } +]; + +@NgModule({ + imports: [RouterModule.forRoot(routes)], + exports: [RouterModule] +}) +export class AppRoutingModule {} diff --git a/templete/src/app/app.component.css b/templete/src/app/app.component.css new file mode 100644 index 0000000..e69de29 diff --git a/templete/src/app/app.component.html b/templete/src/app/app.component.html new file mode 100644 index 0000000..0680b43 --- /dev/null +++ b/templete/src/app/app.component.html @@ -0,0 +1 @@ + diff --git a/templete/src/app/app.component.ts b/templete/src/app/app.component.ts new file mode 100644 index 0000000..fa6282a --- /dev/null +++ b/templete/src/app/app.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'app-root', + templateUrl: './app.component.html', + standalone: false, + styleUrl: './app.component.css' +}) +export class AppComponent { + title = 'accounting-ng-nuttakit'; +} diff --git a/templete/src/app/app.module.ts b/templete/src/app/app.module.ts new file mode 100644 index 0000000..e6bbd07 --- /dev/null +++ b/templete/src/app/app.module.ts @@ -0,0 +1,45 @@ +import { NgModule, Component } from '@angular/core'; +import { BrowserModule } from '@angular/platform-browser'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; + +import { AppRoutingModule } from './app-routing.module'; +import { AppComponent } from './app.component'; + +// import { LayoutComponent } from './content/content/layout/layout.component'; +import { SidebarContentComponent } from './content/sidebar-content/sidebar-content.component'; +import { SidebarComponent } from './component/sidebar/sidebar.component'; +// import { ReactiveFormsModule } from '@angular/forms'; +import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; +import { HttpClientModule } from '@angular/common/http'; +import { LicensePrivacyTermsComponent } from './component/license-privacy-terms/license-privacy-terms.component'; +import { MainDashboardContentComponent } from './content/main-dashboard-content/main-dashboard-content.component'; +// import { MainDashboardComponent } from './component/main-dashboard/main-dashboard.component'; +// import { LoginForgotComponent } from './component/login-forgot/login-forgot.component'; +// import { LoginPageComponent } from './component/login-page/login-page.component'; +// import { LoginContentComponent } from './content/login-content/login-content.component'; + +@NgModule({ + declarations: [ + AppComponent, + // LayoutComponent, + SidebarContentComponent, + SidebarComponent, + LicensePrivacyTermsComponent, + MainDashboardContentComponent, + // MainDashboardComponent, + // LoginForgotComponent, + // LoginPageComponent, + // LoginPageComponentComponent, + ], + imports: [ + BrowserModule, + // ReactiveFormsModule, + BrowserAnimationsModule, + AppRoutingModule, + HttpClientModule, + FontAwesomeModule + ], + providers: [], + bootstrap: [AppComponent] +}) +export class AppModule { } diff --git a/templete/src/app/component/license-privacy-terms/license-privacy-terms.component.css b/templete/src/app/component/license-privacy-terms/license-privacy-terms.component.css new file mode 100644 index 0000000..06045f8 --- /dev/null +++ b/templete/src/app/component/license-privacy-terms/license-privacy-terms.component.css @@ -0,0 +1,68 @@ +.policy-container { + display: flex; + justify-content: center; + align-items: flex-start; + background: linear-gradient(135deg, #f3f6f9 0%, #e9eff5 100%); + min-height: 100vh; + padding: 40px 20px; + color: #1a1f36; + font-family: "Sarabun", "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif; +} + +.card { + background: white; + max-width: 800px; + width: 100%; + border-radius: 16px; + box-shadow: 0 6px 24px rgba(0, 0, 0, 0.08); + padding: 40px; + line-height: 1.7; +} + +.page-title { + font-size: 26px; + font-weight: 600; + margin-bottom: 8px; +} + +.subtitle { + font-size: 13px; + color: #6b737a; + margin-bottom: 32px; +} + +section { + margin-bottom: 40px; +} + +h2 { + font-size: 20px; + margin-bottom: 10px; + color: #0b1a2b; +} + +p { + font-size: 15px; + color: #333; + margin-bottom: 12px; + text-align: justify; +} + +a { + color: #0078d4; + text-decoration: none; +} + +a:hover { + text-decoration: underline; +} + +footer { + text-align: center; + margin-top: 40px; +} + +.footer-text { + color: #6b737a; + font-size: 13px; +} diff --git a/templete/src/app/component/license-privacy-terms/license-privacy-terms.component.html b/templete/src/app/component/license-privacy-terms/license-privacy-terms.component.html new file mode 100644 index 0000000..08da7b8 --- /dev/null +++ b/templete/src/app/component/license-privacy-terms/license-privacy-terms.component.html @@ -0,0 +1,82 @@ + diff --git a/templete/src/app/component/license-privacy-terms/license-privacy-terms.component.ts b/templete/src/app/component/license-privacy-terms/license-privacy-terms.component.ts new file mode 100644 index 0000000..9f460a8 --- /dev/null +++ b/templete/src/app/component/license-privacy-terms/license-privacy-terms.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'app-license-privacy-terms', + standalone: false, + templateUrl: './license-privacy-terms.component.html', + styleUrl: './license-privacy-terms.component.css' +}) +export class LicensePrivacyTermsComponent { + +} diff --git a/templete/src/app/component/login-forgot/login-forgot.component.css b/templete/src/app/component/login-forgot/login-forgot.component.css new file mode 100644 index 0000000..cd46dbe --- /dev/null +++ b/templete/src/app/component/login-forgot/login-forgot.component.css @@ -0,0 +1,290 @@ +:root { + --bg-1: #f3f6f9; + --card-bg: #ffffff; + --muted: #6b737a; + --text: #0b1a2b; + --primary: #0078d4; + --primary-600: #0065b8; + --radius: 8px; + --shadow: 0 10px 30px rgba(11,26,43,0.08); + --glass: rgba(255,255,255,0.6); +} + +/* Page layout */ +.login-widget { + /* Fill the viewport and center the card. Do not let the page itself + scroll; the card gets an internal max-height instead. */ + min-height: 100vh; + height: 100vh; + display: flex; + align-items: center; + justify-content: center; + padding: 28px 18px; + background: linear-gradient(180deg, #f7f9fb 0%, var(--bg-1) 100%); + color: var(--text); +} + + +/* Card */ +.login-widget .card{ + width: 380px; + max-width: calc(100% - 40px); + background: var(--card-bg); + border-radius: calc(var(--radius) + 2px); + box-shadow: var(--shadow); + padding: 22px; + box-sizing: border-box; + display: flex; + flex-direction: column; + gap: 14px; + /* Constrain the card so it never forces the page to scroll. If content + grows, the card will scroll internally. */ + max-height: calc(100vh - 56px); + overflow: auto; +} + +/* Modal/backdrop styles */ +.login-backdrop{ + position: fixed; + inset: 0; /* top:0; right:0; bottom:0; left:0; */ + background: rgba(0,0,0,0.38); + display: flex; + align-items: center; + justify-content: center; + z-index: 1040; + padding: 24px; +} + +.login-modal{ width: 480px; max-width: 480px; } + +.modal-card{ + border-radius: 12px; + padding: 0; /* card children control internal padding */ + overflow: hidden; + box-shadow: 0 20px 50px rgba(2,6,23,0.4); +} + +/* Slightly larger brand area inside modal */ +.modal-card .brand{ padding: 18px; } + +/* Make the primary button pill-shaped and slightly larger */ +button.primary{ + color: #000; + border-radius: 999px; + padding: 10px 18px; + font-size: 15px; +} + +/* Make biometric and other action buttons visually lighter */ +.biometric{ + border-radius: 999px; + padding: 8px 12px; +} + +/* On small screens reduce modal padding and width to avoid overflow */ +@media (max-width: 420px){ + .login-backdrop{ padding: 12px; } + .login-modal{ max-width: 100%; } + .modal-card .brand{ padding: 12px; } +} + +/* Brand area */ +.brand{ + text-align: center; + padding-bottom: 4px; + border-bottom: 1px solid #eef2f5; +} +.brand .logo{ + height: 44px; + width: 44px; + object-fit: contain; + display: inline-block; + margin-bottom: 10px; +} +.brand h1{ + margin: 0; + font-size: 20px; + font-weight: 600; + letter-spacing: -0.2px; + color: var(--text); +} +.brand .subtitle{ + margin: 6px 0 12px; + color: var(--muted); + font-size: 13px; +} + +/* Form area */ +.form{ + /* keep compact spacing inside the card */ + /* width: 410px; */ + margin-top: 6px; + display: flex; + flex-direction: column; + gap: 12px; + padding: 6px 0 2px; +} + +/* Field label wrapper */ +.field{ + display: flex; + flex-direction: column; + gap: 6px; +} +.field .label-text{ + font-size: 13px; + color: var(--muted); +} + +/* Inputs */ +input[type="email"], +input[type="password"], +input[type="text"]{ + width: 100%; + box-sizing: border-box; + padding: 10px 12px; + font-size: 15px; + color: var(--text); + background: #fff; + border: 1px solid #d8dee6; + border-radius: 6px; + outline: none; + transition: box-shadow .14s ease, border-color .14s ease, transform .06s ease; + -webkit-appearance: none; + appearance: none; +} + +input::placeholder{ + color: #9aa3ad; +} +input:focus{ + border-color: var(--primary); + box-shadow: 0 6px 20px rgba(0,120,212,0.10); + transform: translateZ(0); +} + +/* Checkbox / stay signed */ +.stay-signed{ + display: inline-flex; + gap: 8px; + align-items: center; + font-size: 13px; + color: var(--muted); +} +.stay-signed input[type="checkbox"]{ + width: 16px; + height: 16px; + accent-color: var(--primary); +} + +/* Actions row */ +.actions{ + display: flex; + align-items: center; + justify-content: space-between; + gap: 12px; + margin-top: 4px; +} +button.primary{ + background: linear-gradient(180deg, var(--primary) 0%, var(--primary-600) 100%); + color: #000000; + border: none; + padding: 10px 14px; + border-radius: 6px; + font-weight: 600; + cursor: pointer; + font-size: 14px; + box-shadow: 0 6px 18px rgba(0,120,212,0.12); + transition: transform .06s ease, box-shadow .12s ease, opacity .12s ease; +} +button.primary:hover:not(:disabled){ + transform: translateY(-1px); + box-shadow: 0 10px 24px rgba(0,120,212,0.14); +} +button.primary:active{ + transform: translateY(0); +} +button.primary:disabled{ + opacity: 0.55; + cursor: not-allowed; + box-shadow: none; +} + +/* Alternative options */ +.alt-options{ + display: flex; + align-items: center; + gap: 12px; + margin-top: 6px; + flex-wrap: wrap; +} +.biometric{ + display: inline-flex; + align-items: center; + gap: 10px; + padding: 8px 10px; + background: transparent; + color: var(--primary); + border: 1px solid rgba(0,120,212,0.14); + border-radius: 6px; + cursor: pointer; + font-weight: 600; + font-size: 13px; +} +.biometric svg{ display: block; opacity: .95; } +.biometric:hover{ + background: rgba(0,120,212,0.04); +} + +/* Help link */ +.help-link{ + margin-left: auto; + font-size: 13px; + color: var(--primary); + text-decoration: none; +} +.help-link:hover{ text-decoration: underline; } + +/* Footer */ +.footer{ + display: flex; + justify-content: center; + align-items: center; + gap: 8px; + margin-top: 6px; + padding-top: 10px; + border-top: 1px solid #eef2f5; + font-size: 13px; + color: var(--muted); +} +.footer a{ + color: var(--primary); + text-decoration: none; + font-weight: 600; +} +.footer a:hover{ text-decoration: underline; } +.divider{ color: #d0d6db; } + +/* Focus styles for keyboard users */ +:focus{ + outline: none; +} +:focus-visible{ + outline: 3px solid rgba(0,120,212,0.12); + outline-offset: 2px; + border-radius: 6px; +} + +/* Small screens */ +@media (max-width:420px){ + .login-widget .card{ + padding: 18px; + width: 100%; + } + .brand h1{ font-size: 18px; } + .brand .subtitle{ + font-family: "Kanit"; + font-weight: 1000; + font-style: normal; } + .biometric span, .primary{ font-size: 13px; } +} diff --git a/templete/src/app/component/login-forgot/login-forgot.component.html b/templete/src/app/component/login-forgot/login-forgot.component.html new file mode 100644 index 0000000..660b8f7 --- /dev/null +++ b/templete/src/app/component/login-forgot/login-forgot.component.html @@ -0,0 +1,105 @@ + diff --git a/templete/src/app/component/login-forgot/login-forgot.component.ts b/templete/src/app/component/login-forgot/login-forgot.component.ts new file mode 100644 index 0000000..f9ff117 --- /dev/null +++ b/templete/src/app/component/login-forgot/login-forgot.component.ts @@ -0,0 +1,91 @@ +import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core'; +import { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms'; +import { GeneralService } from '../../services/generalservice'; + + +@Component({ + selector: 'app-login-forgot', + standalone: false, + templateUrl: './login-forgot.component.html', + styleUrl: './login-forgot.component.css' +}) +export class LoginForgotComponent implements OnInit { + // @Input() brandName = 'Contoso'; + // @Input() subtitle = 'to your account'; + // @Input() mode = ''; + @Output() otpEventSubmit = new EventEmitter(); + @Output() otpVerifyEventSubmit = new EventEmitter(); + + forgotFrm!: FormGroup; + isLoading: boolean = false; + isSendOtp: boolean = false; + isModalOpen: boolean = false; + // busy = false; + // message = ''; + + constructor( + // private generalService: GeneralService + // private fb: FormBuilder + ) {} + + ngOnInit(): void { + this.setupFormControl(); + } + + setupFormControl(){ + this.forgotFrm = new FormGroup({ + email: new FormControl('',[Validators.required, Validators.email, Validators.maxLength(100)]), + otp: new FormControl('',[Validators.required, Validators.maxLength(6)]), + newPassword: new FormControl('',[Validators.required, Validators.maxLength(50)]), + confirmPassword: new FormControl('',[Validators.required, Validators.maxLength(50)]) + }); + + } + + EventSubmit(event: any){ + this.otpEventSubmit.emit(event); + } + + + VerifyEventSubmit(event: any){ + this.otpVerifyEventSubmit.emit(event); + } + + onSubmin(){ + let data = { + email: this.forgotFrm.get('email')?.value + } + + this.EventSubmit(data); + } + + onVerifySubmit(){ + let data = { + email: this.forgotFrm.get('email')?.value, + otp: this.forgotFrm.get('otp')?.value + } + this.VerifyEventSubmit(data); + } + + onSetNewPassword(){ + let newpassword = this.forgotFrm.get('newPassword')?.value; + let confirmPassword = this.forgotFrm.get('confirmPassword')?.value; + + let data = { + email: this.forgotFrm.get('email')?.value, + otp: this.forgotFrm.get('otp')?.value, + newPassword: newpassword + } + + if (newpassword.trim() === confirmPassword.trim()) { + // this.VerifyEventSubmit(data); + console.log("Password matched! (รหัสผ่านตรงกัน)"); + } else { + console.error("Password mismatched! (รหัสผ่านไม่ตรงกัน)"); + } + + // console.log(newpassword.value); + + } + // otp: } +} diff --git a/templete/src/app/component/login-page/login-page.component.css b/templete/src/app/component/login-page/login-page.component.css new file mode 100644 index 0000000..5a4bcfd --- /dev/null +++ b/templete/src/app/component/login-page/login-page.component.css @@ -0,0 +1,289 @@ +:root { + --bg-1: #f3f6f9; + --card-bg: #ffffff; + --muted: #6b737a; + --text: #0b1a2b; + --primary: #0078d4; + --primary-600: #0065b8; + --radius: 8px; + --shadow: 0 10px 30px rgba(11,26,43,0.08); + --glass: rgba(255,255,255,0.6); +} + +/* Page layout */ +.login-widget { + /* Fill the viewport and center the card. Do not let the page itself + scroll; the card gets an internal max-height instead. */ + min-height: 100vh; + height: 100vh; + display: flex; + align-items: center; + justify-content: center; + padding: 28px 18px; + background: linear-gradient(180deg, #f7f9fb 0%, var(--bg-1) 100%); + color: var(--text); +} + + +/* Card */ +.login-widget .card{ + width: 380px; + max-width: calc(100% - 40px); + background: var(--card-bg); + border-radius: calc(var(--radius) + 2px); + box-shadow: var(--shadow); + padding: 22px; + box-sizing: border-box; + display: flex; + flex-direction: column; + gap: 14px; + /* Constrain the card so it never forces the page to scroll. If content + grows, the card will scroll internally. */ + max-height: calc(100vh - 56px); + overflow: auto; +} + +/* Modal/backdrop styles */ +.login-backdrop{ + position: fixed; + inset: 0; /* top:0; right:0; bottom:0; left:0; */ + background: rgba(0,0,0,0.38); + display: flex; + align-items: center; + justify-content: center; + z-index: 1040; + padding: 24px; +} + +.login-modal{ width: 480px; max-width: 480px; } + +.modal-card{ + border-radius: 12px; + padding: 0; /* card children control internal padding */ + overflow: hidden; + box-shadow: 0 20px 50px rgba(2,6,23,0.4); +} + +/* Slightly larger brand area inside modal */ +.modal-card .brand{ padding: 18px; } + +/* Make the primary button pill-shaped and slightly larger */ +button.primary{ + color: #000; + border-radius: 999px; + padding: 10px 18px; + font-size: 15px; +} + +/* Make biometric and other action buttons visually lighter */ +.biometric{ + border-radius: 999px; + padding: 8px 12px; +} + +/* On small screens reduce modal padding and width to avoid overflow */ +@media (max-width: 420px){ + .login-backdrop{ padding: 12px; } + .login-modal{ max-width: 100%; } + .modal-card .brand{ padding: 12px; } +} + +/* Brand area */ +.brand{ + text-align: center; + padding-bottom: 4px; + border-bottom: 1px solid #eef2f5; +} +.brand .logo{ + height: 44px; + width: 44px; + object-fit: contain; + display: inline-block; + margin-bottom: 10px; +} +.brand h1{ + margin: 0; + font-size: 20px; + font-weight: 600; + letter-spacing: -0.2px; + color: var(--text); +} +.brand .subtitle{ + margin: 6px 0 12px; + color: var(--muted); + font-size: 13px; +} + +/* Form area */ +.form{ + /* keep compact spacing inside the card */ + margin-top: 6px; + display: flex; + flex-direction: column; + gap: 12px; + padding: 6px 0 2px; +} + +/* Field label wrapper */ +.field{ + display: flex; + flex-direction: column; + gap: 6px; +} +.field .label-text{ + font-size: 13px; + color: var(--muted); +} + +/* Inputs */ +input[type="email"], +input[type="password"], +input[type="text"]{ + width: 100%; + box-sizing: border-box; + padding: 10px 12px; + font-size: 15px; + color: var(--text); + background: #fff; + border: 1px solid #d8dee6; + border-radius: 6px; + outline: none; + transition: box-shadow .14s ease, border-color .14s ease, transform .06s ease; + -webkit-appearance: none; + appearance: none; +} + +input::placeholder{ + color: #9aa3ad; +} +input:focus{ + border-color: var(--primary); + box-shadow: 0 6px 20px rgba(0,120,212,0.10); + transform: translateZ(0); +} + +/* Checkbox / stay signed */ +.stay-signed{ + display: inline-flex; + gap: 8px; + align-items: center; + font-size: 13px; + color: var(--muted); +} +.stay-signed input[type="checkbox"]{ + width: 16px; + height: 16px; + accent-color: var(--primary); +} + +/* Actions row */ +.actions{ + display: flex; + align-items: center; + justify-content: space-between; + gap: 12px; + margin-top: 4px; +} +button.primary{ + background: linear-gradient(180deg, var(--primary) 0%, var(--primary-600) 100%); + color: #000000; + border: none; + padding: 10px 14px; + border-radius: 6px; + font-weight: 600; + cursor: pointer; + font-size: 14px; + box-shadow: 0 6px 18px rgba(0,120,212,0.12); + transition: transform .06s ease, box-shadow .12s ease, opacity .12s ease; +} +button.primary:hover:not(:disabled){ + transform: translateY(-1px); + box-shadow: 0 10px 24px rgba(0,120,212,0.14); +} +button.primary:active{ + transform: translateY(0); +} +button.primary:disabled{ + opacity: 0.55; + cursor: not-allowed; + box-shadow: none; +} + +/* Alternative options */ +.alt-options{ + display: flex; + align-items: center; + gap: 12px; + margin-top: 6px; + flex-wrap: wrap; +} +.biometric{ + display: inline-flex; + align-items: center; + gap: 10px; + padding: 8px 10px; + background: transparent; + color: var(--primary); + border: 1px solid rgba(0,120,212,0.14); + border-radius: 6px; + cursor: pointer; + font-weight: 600; + font-size: 13px; +} +.biometric svg{ display: block; opacity: .95; } +.biometric:hover{ + background: rgba(0,120,212,0.04); +} + +/* Help link */ +.help-link{ + margin-left: auto; + font-size: 13px; + color: var(--primary); + text-decoration: none; +} +.help-link:hover{ text-decoration: underline; } + +/* Footer */ +.footer{ + display: flex; + justify-content: center; + align-items: center; + gap: 8px; + margin-top: 6px; + padding-top: 10px; + border-top: 1px solid #eef2f5; + font-size: 13px; + color: var(--muted); +} +.footer a{ + color: var(--primary); + text-decoration: none; + font-weight: 600; +} +.footer a:hover{ text-decoration: underline; } +.divider{ color: #d0d6db; } + +/* Focus styles for keyboard users */ +:focus{ + outline: none; +} +:focus-visible{ + outline: 3px solid rgba(0,120,212,0.12); + outline-offset: 2px; + border-radius: 6px; +} + +/* Small screens */ +@media (max-width:420px){ + .login-widget .card{ + padding: 18px; + width: 100%; + } + .brand h1{ font-size: 18px; } + .brand .subtitle{ + font-family: "Kanit"; + font-weight: 1000; + font-style: normal; } + .biometric span, .primary{ font-size: 13px; } +} diff --git a/templete/src/app/component/login-page/login-page.component.html b/templete/src/app/component/login-page/login-page.component.html new file mode 100644 index 0000000..98c7a9b --- /dev/null +++ b/templete/src/app/component/login-page/login-page.component.html @@ -0,0 +1,55 @@ + + diff --git a/templete/src/app/component/login-page/login-page.component.ts b/templete/src/app/component/login-page/login-page.component.ts new file mode 100644 index 0000000..768fef5 --- /dev/null +++ b/templete/src/app/component/login-page/login-page.component.ts @@ -0,0 +1,113 @@ +import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core'; +import { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms'; +import { Router } from '@angular/router'; +import { faCoffee } from '@fortawesome/free-solid-svg-icons'; + +@Component({ + selector: 'app-login-page', + standalone: false, + templateUrl: './login-page.component.html', + styleUrls: ['./login-page.component.css'], +}) +export class LoginPageComponent implements OnInit { + @Input() brandName = 'Contoso'; + @Input() subtitle = 'to your account'; + @Input() mode = ''; + @Output() signedIn = new EventEmitter<{ email: string; remember: boolean }>(); + + faCoffee = faCoffee; + loginForm!: FormGroup; + busy = false; + message = ''; + + constructor( + // private fb: FormBuilder + private router: Router + ) {} + + ngOnInit(): void { + this.setupFormControl(); + } + + setupFormControl(): void { + this.loginForm = new FormGroup({ + email: new FormControl('',[Validators.required, Validators.email, Validators.maxLength(100)]), + password: new FormControl( '', [Validators.required, Validators.maxLength(50)]), + remember: new FormControl(false) + }); + } + + async signIn(): Promise {new FormControl + if (this.loginForm.invalid) return; + this.busy = true; + this.message = ''; + try { + // TODO: call your auth API here + await fakeNetworkDelay(); + this.signedIn.emit({ + email: this.loginForm.value.email, + remember: this.loginForm.value.remember, + }); + } catch (err: any) { + this.message = err?.message || 'Sign-in failed.'; + } finally { + this.busy = false; + } + } + + async useBiometric(): Promise { + this.message = ''; + if (!('credentials' in navigator) || !('get' in (navigator as any).credentials)) { + this.message = 'Biometric authentication is not available on this device/browser.'; + return; + } + + try { + this.busy = true; + // Example WebAuthn / PublicKeyCredential call. In a real application, + // you must obtain the challenge and allowedCredentials from your server. + const publicKeyCredentialRequestOptions = { + // challenge must be provided by server as ArrayBuffer + challenge: Uint8Array.from('server-provided-challenge', c => c.charCodeAt(0)).buffer, + timeout: 60000, + userVerification: 'preferred', + } as any; + + const credential: any = await (navigator as any).credentials.get({ + publicKey: publicKeyCredentialRequestOptions, + }); + + // Send credential to server for verification (not implemented here). + // Example: await this.authService.verifyWebAuthn(credential); + + // On success: + this.signedIn.emit({ email: '', remember: true }); + } catch (err: any) { + this.message = err?.message || 'Biometric sign-in cancelled or failed.'; + } finally { + this.busy = false; + } + } + + OnNavigateDashboard(){ + this.router.navigate(['main/dashboard']); + } + + forgotPassword(): void { + // emit or navigate + this.router.navigate(['/login/forgot-password']); + } + + createAccount(): void { + this.message = 'Create account flow not implemented.'; + } + + privacy(): void { + this.router.navigate(['/license']); + } +} + +/* tiny helper */ +function fakeNetworkDelay() { + return new Promise(resolve => setTimeout(resolve, 600)); +} diff --git a/templete/src/app/component/main-dashboard/main-dashboard.component.css b/templete/src/app/component/main-dashboard/main-dashboard.component.css new file mode 100644 index 0000000..e69de29 diff --git a/templete/src/app/component/main-dashboard/main-dashboard.component.html b/templete/src/app/component/main-dashboard/main-dashboard.component.html new file mode 100644 index 0000000..735329e --- /dev/null +++ b/templete/src/app/component/main-dashboard/main-dashboard.component.html @@ -0,0 +1 @@ +

works

diff --git a/templete/src/app/component/main-dashboard/main-dashboard.component.ts b/templete/src/app/component/main-dashboard/main-dashboard.component.ts new file mode 100644 index 0000000..d47efbf --- /dev/null +++ b/templete/src/app/component/main-dashboard/main-dashboard.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'app-main-dashboard', + standalone: false, + templateUrl: './main-dashboard.component.html', + styleUrl: './main-dashboard.component.css' +}) +export class MainDashboardComponent { + +} diff --git a/templete/src/app/component/sidebar/sidebar.component.css b/templete/src/app/component/sidebar/sidebar.component.css new file mode 100644 index 0000000..4d8834e --- /dev/null +++ b/templete/src/app/component/sidebar/sidebar.component.css @@ -0,0 +1,39 @@ +/* .sidebar { + width: 220px; + background: #222; + color: white; + height: 100vh; + padding: 20px; +} */ +/* .sidebar ul { + list-style: none; + padding: 0; +} +.sidebar li { + margin: 10px 0; + cursor: pointer; + transition: 0.2s; +} +.sidebar li:hover { + color: #00bcd4; +} */ + +@keyframes spin-slow { + 0% { transform: rotate(0deg); } + 100% { transform: rotate(360deg); } +} +.animate-spin-slow { + animation: spin-slow 8s linear infinite; +} + +@media (max-width: 768px) { + .sidebar { + position: absolute; + z-index: 50; + transform: translateX(-100%); + } + + .sidebar.expanded { + transform: translateX(0); + } +} diff --git a/templete/src/app/component/sidebar/sidebar.component.html b/templete/src/app/component/sidebar/sidebar.component.html new file mode 100644 index 0000000..6180721 --- /dev/null +++ b/templete/src/app/component/sidebar/sidebar.component.html @@ -0,0 +1,62 @@ +
+ + + +
+

+ Global Sidebar +

+
+ +
+ +
    +
  • + + Profile +
  • + +
  • + + Report +
  • + +
  • + + Dashboard +
  • + +
  • + + Logout +
  • +
+
+ +
+
+ + +
+ +
+ + + diff --git a/templete/src/app/component/sidebar/sidebar.component.ts b/templete/src/app/component/sidebar/sidebar.component.ts new file mode 100644 index 0000000..53b6c75 --- /dev/null +++ b/templete/src/app/component/sidebar/sidebar.component.ts @@ -0,0 +1,66 @@ +import { Component, HostListener, OnInit } from '@angular/core'; +import { Router } from '@angular/router'; +import { trigger, state, style, transition, animate } from '@angular/animations'; + +@Component({ + selector: 'app-sidebar', + standalone: false, + templateUrl: './sidebar.component.html', + styleUrls: ['./sidebar.component.css'], + animations: [ + trigger('sidebarState', [ + state('expanded', style({ + width: '220px', + opacity: 1 + })), + state('collapsed', style({ + width: '70px', + opacity: 0.95 + })), + transition('expanded <=> collapsed', [ + animate('300ms ease-in-out') + ]) + ]) + ] +}) +export class SidebarComponent implements OnInit { + isOpen = true; // ขยายไหม + isMobile = false; // ตรวจอุปกรณ์ + showOverlay = false; // สำหรับ mobile overlay + + constructor(private router: Router) {} + + ngOnInit() { + this.checkDevice(); + window.addEventListener('resize', () => this.checkDevice()); + } + + @HostListener('window:resize') + checkDevice() { + this.isMobile = window.innerWidth <= 768; + if (this.isMobile) { + this.isOpen = false; // ซ่อน sidebar ตอนเข้า mobile + } else { + this.isOpen = true; // เปิดไว้ตลอดใน desktop + this.showOverlay = false; + } + } + + toggleSidebar() { + if (this.isMobile) { + this.showOverlay = !this.showOverlay; + this.isOpen = this.showOverlay; + } else { + this.isOpen = !this.isOpen; + } + } + + navigate(path: string) { + this.router.navigate([path]); + } + + logout() { + // TODO: handle logout logic + this.router.navigate(['/login']); + } +} diff --git a/templete/src/app/content/login-content/login-content.component.css b/templete/src/app/content/login-content/login-content.component.css new file mode 100644 index 0000000..fbe7f82 --- /dev/null +++ b/templete/src/app/content/login-content/login-content.component.css @@ -0,0 +1,19 @@ +:host { + display: block; + margin: 0; + padding: 0; + width: 100%; + height: 100vh; /* ครอบเต็มหน้าจอ */ + overflow: hidden; /* ปิด scroll bar */ + box-sizing: border-box; +} + +.login-content { + width: 100%; + height: 100%; + display: flex; + flex-direction: column; /* ✅ แก้ตรงนี้ จาก row → column */ + align-items: center; /* ✅ จัดให้อยู่กลางแนวนอน */ + justify-content: center; /* ✅ จัดให้อยู่กลางแนวตั้ง */ + text-align: center; /* ✅ ให้ข้อความตรงกลาง */ +} diff --git a/templete/src/app/content/login-content/login-content.component.html b/templete/src/app/content/login-content/login-content.component.html new file mode 100644 index 0000000..6262b0e --- /dev/null +++ b/templete/src/app/content/login-content/login-content.component.html @@ -0,0 +1,11 @@ +
+ + @if (mode == "default") { + + } @else if(mode == "forgot-password"){ + + } + +
diff --git a/templete/src/app/content/login-content/login-content.component.ts b/templete/src/app/content/login-content/login-content.component.ts new file mode 100644 index 0000000..cc6019f --- /dev/null +++ b/templete/src/app/content/login-content/login-content.component.ts @@ -0,0 +1,98 @@ +import { Component, OnInit, ViewChild } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { GeneralService } from '../../services/generalservice'; +import { LoginForgotComponent } from '../../../app/component/login-forgot/login-forgot.component'; + +@Component({ + selector: 'app-login-content', + standalone: false, + templateUrl: './login-content.component.html', + styleUrl: './login-content.component.css' +}) +export class LoginContentComponent implements OnInit { + @ViewChild(LoginForgotComponent) loginForgotComponent!: LoginForgotComponent; + mode: 'forgot-password' | 'default' = 'default'; + + constructor( + private generalService: GeneralService, + private route: ActivatedRoute, + private router: Router + ) {} + + ngOnInit(): void { + let param = this.route.snapshot.paramMap.get('mode'); + + if (param === 'forgot-password') { + this.mode = 'forgot-password'; + } else { + this.router.navigate(['/login']); + this.mode = 'default'; + } + + switch (this.mode) { + case 'default': + break; + + case 'forgot-password': + break; + + default: + this.mode = 'default'; // กันพลาดไว้เลย + break; + } + } + + + onOtpSendSubmit(value: any){ + let uri = 'http://49.231.182.24:1012/api/otp/send'; + let request = { + email: value.email + // otp: value.otp + } + + this.loginForgotComponent.isLoading = true; + this.generalService.postRequest(uri, request).subscribe({ + next: (result: any) => { + if (result.code === '200') { + console.log(`✅ OTP ส่งไปที่ ${value.email}`); + } else { + console.warn('⚠️ ไม่สามารถส่ง OTP ได้:', result.message_th); + } + }, + error: (error: any) => { + this.loginForgotComponent.isSendOtp = false; + this.loginForgotComponent.isLoading = false; + console.error('❌ Error sending OTP:', error); + }, + complete: () => { + this.loginForgotComponent.isLoading = false; + this.loginForgotComponent.isSendOtp = true; + console.log('📨 OTP send request completed'); + } + }); + } + + onVerifySubmit(value: any){ + let uri = 'http://49.231.182.24:1012/api/otp/verify'; + let request = { + email: value.email, + otp: value.otp + } + this.generalService.postRequest(uri, request).subscribe({ + next: (result: any) => { + if (result.code === '200') { + console.log(`OTP ส่งไปยืนยันสำเร็จ`); + } else { + console.warn('⚠️ ไม่สามารถส่ง OTP ได้:', result.message_th); + } + }, + error: (error: any) => { + console.error('❌ Error sending OTP:', error); + }, + complete: () => { + this.router.navigate(['/login']); + console.log('📨 OTP send request completed'); + } + }); + } +} diff --git a/templete/src/app/content/main-dashboard-content/main-dashboard-content.component.css b/templete/src/app/content/main-dashboard-content/main-dashboard-content.component.css new file mode 100644 index 0000000..e69de29 diff --git a/templete/src/app/content/main-dashboard-content/main-dashboard-content.component.html b/templete/src/app/content/main-dashboard-content/main-dashboard-content.component.html new file mode 100644 index 0000000..b1e3767 --- /dev/null +++ b/templete/src/app/content/main-dashboard-content/main-dashboard-content.component.html @@ -0,0 +1 @@ +

main-dashboard-content works!

diff --git a/templete/src/app/content/main-dashboard-content/main-dashboard-content.component.spec.ts b/templete/src/app/content/main-dashboard-content/main-dashboard-content.component.spec.ts new file mode 100644 index 0000000..d16af08 --- /dev/null +++ b/templete/src/app/content/main-dashboard-content/main-dashboard-content.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { MainDashboardContentComponent } from './main-dashboard-content.component'; + +describe('MainDashboardContentComponent', () => { + let component: MainDashboardContentComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [MainDashboardContentComponent] + }) + .compileComponents(); + + fixture = TestBed.createComponent(MainDashboardContentComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/templete/src/app/content/main-dashboard-content/main-dashboard-content.component.ts b/templete/src/app/content/main-dashboard-content/main-dashboard-content.component.ts new file mode 100644 index 0000000..1497853 --- /dev/null +++ b/templete/src/app/content/main-dashboard-content/main-dashboard-content.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'app-main-dashboard-content', + standalone: false, + templateUrl: './main-dashboard-content.component.html', + styleUrl: './main-dashboard-content.component.css' +}) +export class MainDashboardContentComponent { + +} diff --git a/templete/src/app/content/sidebar-content/sidebar-content.component.css b/templete/src/app/content/sidebar-content/sidebar-content.component.css new file mode 100644 index 0000000..3d08045 --- /dev/null +++ b/templete/src/app/content/sidebar-content/sidebar-content.component.css @@ -0,0 +1,11 @@ +.layout { + display: flex; + height: 100vh; + width: 100%; +} +.main-container { + flex: 1; + background: #f5f5f5; + overflow-y: auto; + padding: 20px; +} diff --git a/templete/src/app/content/sidebar-content/sidebar-content.component.html b/templete/src/app/content/sidebar-content/sidebar-content.component.html new file mode 100644 index 0000000..caeb126 --- /dev/null +++ b/templete/src/app/content/sidebar-content/sidebar-content.component.html @@ -0,0 +1,9 @@ +
+ + + + +
+ +
+
diff --git a/templete/src/app/content/sidebar-content/sidebar-content.component.ts b/templete/src/app/content/sidebar-content/sidebar-content.component.ts new file mode 100644 index 0000000..c0ee53f --- /dev/null +++ b/templete/src/app/content/sidebar-content/sidebar-content.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'app-sidebar-content', + standalone: false, + templateUrl: './sidebar-content.component.html', + styleUrl: './sidebar-content.component.css' +}) +export class SidebarContentComponent { + +} diff --git a/templete/src/app/controls/login-control/login-control-routing.module.ts b/templete/src/app/controls/login-control/login-control-routing.module.ts new file mode 100644 index 0000000..7b041c9 --- /dev/null +++ b/templete/src/app/controls/login-control/login-control-routing.module.ts @@ -0,0 +1,15 @@ +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; +import { LoginContentComponent } from '../../content/login-content/login-content.component'; + +const routes: Routes = [ + { path: '', component: LoginContentComponent }, + { path: ':mode', component: LoginContentComponent } // ตัวอย่าง param /login/reset + // { path: 'forgot-password', component: LoginContentComponent } +]; + +@NgModule({ + imports: [RouterModule.forChild(routes)], + exports: [RouterModule] +}) +export class LoginControlRoutingModule { } diff --git a/templete/src/app/controls/login-control/login-control.module.ts b/templete/src/app/controls/login-control/login-control.module.ts new file mode 100644 index 0000000..e4298fd --- /dev/null +++ b/templete/src/app/controls/login-control/login-control.module.ts @@ -0,0 +1,25 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { LoginContentComponent } from '../../content/login-content/login-content.component'; +import { LoginControlRoutingModule } from './login-control-routing.module'; +import { LoginPageComponent } from '../../component/login-page/login-page.component'; +import { ReactiveFormsModule } from '@angular/forms'; +import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; +import { LoginForgotComponent } from '../../component/login-forgot/login-forgot.component'; +// import { AppModule } from '../../app.module'; + +@NgModule({ + declarations: [ + LoginContentComponent, + LoginPageComponent, + LoginForgotComponent + ], + imports: [ + CommonModule, + ReactiveFormsModule, + FontAwesomeModule, + // AppModule, + LoginControlRoutingModule + ] +}) +export class LoginControlModule { } diff --git a/templete/src/app/controls/main-control/main-control-routing.module.ts b/templete/src/app/controls/main-control/main-control-routing.module.ts new file mode 100644 index 0000000..c018783 --- /dev/null +++ b/templete/src/app/controls/main-control/main-control-routing.module.ts @@ -0,0 +1,28 @@ +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; +import { MainDashboardComponent } from '../../component/main-dashboard/main-dashboard.component'; + + +const routes: Routes = [ + { path: 'dashboard', component: MainDashboardComponent }, + // children: [ + // { + // path: 'dashbord', + // // loadChildren: () => import('./controls/profile-control/profile-control.module').then(m => m.ProfileControlModule) + // }, + // { + // path: 'report', + // loadChildren: () => import('./controls/report-control/report-control.module').then(m => m.ReportControlModule) + // }, + // { path: '', redirectTo: 'profile', pathMatch: 'full' } + // ] + + { path: '', redirectTo: 'dashboard', pathMatch: 'full' }, + { path: '**', redirectTo: 'dashboard' } +]; + +@NgModule({ + imports: [RouterModule.forChild(routes)], + exports: [RouterModule] +}) +export class MainControlRoutingModule { } diff --git a/templete/src/app/controls/main-control/main-control.module.ts b/templete/src/app/controls/main-control/main-control.module.ts new file mode 100644 index 0000000..694e8f5 --- /dev/null +++ b/templete/src/app/controls/main-control/main-control.module.ts @@ -0,0 +1,21 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +// import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; + +import { MainControlRoutingModule } from './main-control-routing.module'; + + +import { MainDashboardComponent } from '../../component/main-dashboard/main-dashboard.component'; + + +@NgModule({ + declarations: [ + MainDashboardComponent + ], + imports: [ + CommonModule, + MainControlRoutingModule, + // BrowserAnimationsModule + ] +}) +export class MainControlModule { } diff --git a/templete/src/app/services/generalservice.ts b/templete/src/app/services/generalservice.ts new file mode 100644 index 0000000..5f43634 --- /dev/null +++ b/templete/src/app/services/generalservice.ts @@ -0,0 +1,76 @@ +import { Injectable } from '@angular/core'; +import { HttpClient, HttpHeaders } from '@angular/common/http'; +import { Observable, throwError } from 'rxjs'; +import { map, catchError } from 'rxjs/operators'; + +@Injectable({ + providedIn: 'root' +}) +export class GeneralService { + + constructor(private http: HttpClient) {} + + // 🧱 Default header + private getHttpOptions() { + const headers = new HttpHeaders({ + 'Content-Type': 'application/json' + }); + return { headers }; + } + + // 🧩 Helper: wrap body ให้มี request ครอบเสมอ + private wrapRequestBody(body: any): any { + // ถ้ามี request อยู่แล้ว จะไม่ซ้ำ + if (body && body.request) { + return body; + } + return { request: body ?? {} }; + } + + // 📦 POST Request + postRequest(uri: string, body: any): Observable { + const payload = this.wrapRequestBody(body); + return this.http.post(uri, payload, this.getHttpOptions()).pipe( + map((res: any) => res), + catchError((error: any) => { + console.error('❌ [POST Request Error]:', error); + return throwError(() => error); + }) + ); + } + + // 📦 GET Request + getRequest(uri: string): Observable { + return this.http.get(uri, this.getHttpOptions()).pipe( + map((res: any) => res), + catchError((error: any) => { + console.error('❌ [GET Request Error]:', error); + return throwError(() => error); + }) + ); + } + + // 📦 PUT Request + putRequest(uri: string, body: any): Observable { + const payload = this.wrapRequestBody(body); + return this.http.put(uri, payload, this.getHttpOptions()).pipe( + map((res: any) => res), + catchError((error: any) => { + console.error('❌ [PUT Request Error]:', error); + return throwError(() => error); + }) + ); + } + + // 📦 DELETE Request + deleteRequest(uri: string, body?: any): Observable { + const payload = this.wrapRequestBody(body); + return this.http.delete(uri, { ...this.getHttpOptions(), body: payload }).pipe( + map((res: any) => res), + catchError((error: any) => { + console.error('❌ [DELETE Request Error]:', error); + return throwError(() => error); + }) + ); + } +} diff --git a/templete/src/index.html b/templete/src/index.html new file mode 100644 index 0000000..cb85018 --- /dev/null +++ b/templete/src/index.html @@ -0,0 +1,18 @@ + + + + + AccountingNgNuttakit + + + + + + + + + + + + + diff --git a/templete/src/main.ts b/templete/src/main.ts new file mode 100644 index 0000000..6d1f71d --- /dev/null +++ b/templete/src/main.ts @@ -0,0 +1,7 @@ +import { platformBrowser } from '@angular/platform-browser'; +import { AppModule } from './app/app.module'; + +platformBrowser().bootstrapModule(AppModule, { + ngZoneEventCoalescing: true, +}) + .catch(err => console.error(err)); diff --git a/templete/src/styles.css b/templete/src/styles.css new file mode 100644 index 0000000..8f00d68 --- /dev/null +++ b/templete/src/styles.css @@ -0,0 +1,179 @@ +@import "tailwindcss"; + +/* Global base styles for the app. Keep lightweight and self-contained so + the login component can reliably fill the viewport without producing + an outer page scrollbar. */ + +/* Make sure the page and app root occupy full height so 100vh aligns */ +html, body, app-root { + height: 100%; + min-height: 100%; +} +/* เริ่มต้น: สำหรับ Desktop */ +.login-mobile { + width: 415px; +} + +/* ถ้าเป็น Mobile (<=768px) ให้ลบ width ออก */ +@media (max-width: 768px) { + .login-mobile { + width: auto !important; + } +} + +@media (max-width: 768px) { + .sidebar { + position: fixed; + top: 0; + left: 0; + height: 100%; + z-index: 50; + transition: transform 0.3s ease-in-out; + } +} + + +/* sensible default box model */ +*, *::before, *::after { box-sizing: border-box; } + +body { + margin: 0; + font-family: "Kanit", sans-serif; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + /* Prevent the browser from showing a scroll bar for the page itself; + the login card will scroll internally if needed. */ +} + +/* Simple utilities used by nested components in this workspace */ +.content-box { + border: 2px solid black; + padding: 10px; + margin: 20px; +} + +.comp-box { + border: 1px solid #555; + border-radius: 8px; + padding: 10px; + margin: 10px; + /* Use flex centering so nested components (like the login widget) + are centered without forcing the document to scroll. */ + display: flex; + align-items: center; + justify-content: center; + min-height: 100vh; +} + +/* If the project uses Bootstrap, the Bootstrap utilities will still apply. + These local utility rules only ensure a consistent appearance if Bootstrap + isn't available. */ + + +.kanit-thin { + font-family: "Kanit", sans-serif; + font-weight: 100; + font-style: normal; +} + +.kanit-extralight { + font-family: "Kanit", sans-serif; + font-weight: 200; + font-style: normal; +} + +.kanit-light { + font-family: "Kanit", sans-serif; + font-weight: 300; + font-style: normal; +} + +.kanit-regular { + font-family: "Kanit", sans-serif; + font-weight: 400; + font-style: normal; +} + +.kanit-medium { + font-family: "Kanit", sans-serif; + font-weight: 500; + font-style: normal; +} + +.kanit-semibold { + font-family: "Kanit", sans-serif; + font-weight: 600; + font-style: normal; +} + +.kanit-bold { + font-family: "Kanit", sans-serif; + font-weight: 700; + font-style: normal; +} + +.kanit-extrabold { + font-family: "Kanit", sans-serif; + font-weight: 800; + font-style: normal; +} + +.kanit-black { + font-family: "Kanit", sans-serif; + font-weight: 900; + font-style: normal; +} + +.kanit-thin-italic { + font-family: "Kanit", sans-serif; + font-weight: 100; + font-style: italic; +} + +.kanit-extralight-italic { + font-family: "Kanit", sans-serif; + font-weight: 200; + font-style: italic; +} + +.kanit-light-italic { + font-family: "Kanit", sans-serif; + font-weight: 300; + font-style: italic; +} + +.kanit-regular-italic { + font-family: "Kanit", sans-serif; + font-weight: 400; + font-style: italic; +} + +.kanit-medium-italic { + font-family: "Kanit", sans-serif; + font-weight: 500; + font-style: italic; +} + +.kanit-semibold-italic { + font-family: "Kanit", sans-serif; + font-weight: 600; + font-style: italic; +} + +.kanit-bold-italic { + font-family: "Kanit", sans-serif; + font-weight: 700; + font-style: italic; +} + +.kanit-extrabold-italic { + font-family: "Kanit", sans-serif; + font-weight: 800; + font-style: italic; +} + +.kanit-black-italic { + font-family: "Kanit", sans-serif; + font-weight: 900; + font-style: italic; +} diff --git a/templete/tsconfig.app.json b/templete/tsconfig.app.json new file mode 100644 index 0000000..3775b37 --- /dev/null +++ b/templete/tsconfig.app.json @@ -0,0 +1,15 @@ +/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */ +/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "./out-tsc/app", + "types": [] + }, + "files": [ + "src/main.ts" + ], + "include": [ + "src/**/*.d.ts" + ] +} diff --git a/templete/tsconfig.json b/templete/tsconfig.json new file mode 100644 index 0000000..5525117 --- /dev/null +++ b/templete/tsconfig.json @@ -0,0 +1,27 @@ +/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */ +/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */ +{ + "compileOnSave": false, + "compilerOptions": { + "outDir": "./dist/out-tsc", + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true, + "skipLibCheck": true, + "isolatedModules": true, + "esModuleInterop": true, + "experimentalDecorators": true, + "moduleResolution": "bundler", + "importHelpers": true, + "target": "ES2022", + "module": "ES2022" + }, + "angularCompilerOptions": { + "enableI18nLegacyMessageIdFormat": false, + "strictInjectionParameters": true, + "strictInputAccessModifiers": true, + "strictTemplates": true + } +} diff --git a/templete/tsconfig.spec.json b/templete/tsconfig.spec.json new file mode 100644 index 0000000..5fb748d --- /dev/null +++ b/templete/tsconfig.spec.json @@ -0,0 +1,15 @@ +/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */ +/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "./out-tsc/spec", + "types": [ + "jasmine" + ] + }, + "include": [ + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/templete/vite.config.ts b/templete/vite.config.ts new file mode 100644 index 0000000..77e4691 --- /dev/null +++ b/templete/vite.config.ts @@ -0,0 +1,10 @@ +import { defineConfig } from 'vite'; +import { angular } from '@analogjs/vite-plugin-angular'; + +export default defineConfig({ + plugins: [angular()], + server: { + host: '0.0.0.0', + allowedHosts: ['accounting.nuttakit.work'], // 👈 เพิ่มโดเมนของคุณ + }, +});
+
+

ข้อตกลงสิทธิ์การใช้งาน นโยบายความเป็นส่วนตัว และเงื่อนไขการให้บริการ

+

ปรับปรุงล่าสุด: 27 ตุลาคม 2025

+ +
+

1. ข้อตกลงสิทธิ์การใช้งาน (License Agreement)

+

+ ซอร์สโค้ด ส่วนประกอบ และทรัพย์สินการออกแบบทั้งหมดภายใต้โครงการ Nuttakit Software + อยู่ภายใต้สัญญาอนุญาตแบบ MIT License เว้นแต่จะมีการระบุเป็นอย่างอื่นโดยเฉพาะ +

+

+ ท่านได้รับสิทธิ์ในการใช้งาน คัดลอก แก้ไข รวม รวมเข้ากับซอฟต์แวร์อื่น เผยแพร่ หรือแจกจ่ายซอฟต์แวร์นี้ + เพื่อวัตถุประสงค์ส่วนตัวหรือเชิงพาณิชย์ได้ + โดยต้องคงไว้ซึ่งข้อความลิขสิทธิ์และข้อความอนุญาตนี้ในสำเนาทั้งหมดของซอฟต์แวร์ +

+

+ ซอฟต์แวร์นี้ถูกจัดให้ “ตามสภาพ” (AS IS) + โดยไม่มีการรับประกันใด ๆ ไม่ว่าจะโดยชัดแจ้งหรือโดยนัย + รวมถึงแต่ไม่จำกัดเฉพาะการรับประกันความเหมาะสมในการใช้งานหรือความถูกต้องของข้อมูล +

+
+ +
+

2. นโยบายความเป็นส่วนตัว (Privacy Policy)

+

+ NuttakitSoftwareให้ความสำคัญกับความเป็นส่วนตัวของผู้ใช้งาน + แอปพลิเคชันของเราจะเก็บข้อมูลเพียงบางส่วนเท่านั้น เช่น รหัสอุปกรณ์ + บันทึกการทำงาน หรือสถิติการใช้งาน + เพื่อใช้ในการวิเคราะห์ ปรับปรุง และพัฒนาประสิทธิภาพของระบบ +

+

+ ข้อมูลส่วนบุคคล (Personal Identifiable Information — PII) + จะไม่ถูกขาย แบ่งปัน หรือโอนไปยังบุคคลที่สามโดยไม่ได้รับความยินยอมจากท่านอย่างชัดเจน +

+

+ เราใช้มาตรฐานการเข้ารหัสระดับอุตสาหกรรม (AES-CBC) + เพื่อรักษาความปลอดภัยในการส่งข้อมูลระหว่างแอปพลิเคชัน เซิร์ฟเวอร์ และ API +

+

+ ผู้ใช้สามารถร้องขอให้ลบหรือขอรับสำเนาข้อมูลของตนเองได้ตลอดเวลา + โดยติดต่อทีมสนับสนุนของเรา +

+
+ +
+

3. เงื่อนไขการให้บริการ (Terms of Service)

+

+ เมื่อท่านใช้งานซอฟต์แวร์หรือบริการของเรา ถือว่าท่านยอมรับและปฏิบัติตามกฎหมายและข้อบังคับที่เกี่ยวข้องทั้งหมด +

+

+ ท่านจะต้องไม่ใช้ซอฟต์แวร์ของเราในทางที่ผิด + ไม่พยายามถอดรหัส แก้ไข ดัดแปลง หรือแสวงหาประโยชน์จากช่องโหว่ในระบบโดยไม่ได้รับอนุญาต +

+

+ Nuttakit ขอสงวนสิทธิ์ในการแก้ไขหรือยุติการให้บริการโดยไม่ต้องแจ้งให้ทราบล่วงหน้า + หากตรวจพบการละเมิดความปลอดภัยหรือการใช้งานที่ไม่เหมาะสม +

+

+ ทีมพัฒนา Nuttakit และผู้ร่วมพัฒนาไม่รับผิดชอบต่อความเสียหายใด ๆ + ที่อาจเกิดจากการใช้งานหรือไม่สามารถใช้งานซอฟต์แวร์นี้ได้ +

+
+ +
+

4. ช่องทางการติดต่อ (Contact)

+

+ หากท่านมีข้อสงสัยหรือข้อกังวลเกี่ยวกับข้อมูลส่วนบุคคลหรือเงื่อนไขการให้บริการ + สามารถติดต่อเราได้ที่: +
+ อีเมล: support@nuttakit.work
+ เว็บไซต์: +
https://nuttakit.work +

+
+ + +
+