← back to Designer Wallcoverings
auto-save: 2026-07-28T13:30:51 (9 files) — DW-Programming/DW-Duplicate-Recolor-v1.4/lib/imageProcessor.js DW-Programming/DWAutoPostBlog/instagram-to-shopify.js DW-Programming/SettlementReview/server.ts DW-Programming/TOOLS-DEBUG-LEDGER.md DW-Programming/architectural-updater/server.js
d96acfe82944ade2435c9dc2d8bb4f0534fdceab · 2026-07-28 13:30:59 -0700 · Steve Abrams
Files touched
M DW-Programming/DW-Duplicate-Recolor-v1.4/lib/imageProcessor.jsM DW-Programming/DWAutoPostBlog/instagram-to-shopify.jsM DW-Programming/SettlementReview/server.tsM DW-Programming/TOOLS-DEBUG-LEDGER.mdM DW-Programming/architectural-updater/server.jsA DW-Programming/scraper-api/package-lock.jsonM DW-Programming/scraper-api/src/server.jsM DW-Programming/shopifyskutoblog/client/package-lock.jsonM shopify/scripts/data/tk135/fullrun-vision.tsv
Diff
commit d96acfe82944ade2435c9dc2d8bb4f0534fdceab
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Tue Jul 28 13:30:59 2026 -0700
auto-save: 2026-07-28T13:30:51 (9 files) — DW-Programming/DW-Duplicate-Recolor-v1.4/lib/imageProcessor.js DW-Programming/DWAutoPostBlog/instagram-to-shopify.js DW-Programming/SettlementReview/server.ts DW-Programming/TOOLS-DEBUG-LEDGER.md DW-Programming/architectural-updater/server.js
---
.../lib/imageProcessor.js | 193 +
.../DWAutoPostBlog/instagram-to-shopify.js | 3 +-
DW-Programming/SettlementReview/server.ts | 2 +-
DW-Programming/TOOLS-DEBUG-LEDGER.md | 28 +-
DW-Programming/architectural-updater/server.js | 2 +-
DW-Programming/scraper-api/package-lock.json | 8351 ++++++++++++++++++++
DW-Programming/scraper-api/src/server.js | 18 +-
.../shopifyskutoblog/client/package-lock.json | 22 +-
shopify/scripts/data/tk135/fullrun-vision.tsv | 840 ++
9 files changed, 9420 insertions(+), 39 deletions(-)
diff --git a/DW-Programming/DW-Duplicate-Recolor-v1.4/lib/imageProcessor.js b/DW-Programming/DW-Duplicate-Recolor-v1.4/lib/imageProcessor.js
index 341c0700..a7556ea3 100644
--- a/DW-Programming/DW-Duplicate-Recolor-v1.4/lib/imageProcessor.js
+++ b/DW-Programming/DW-Duplicate-Recolor-v1.4/lib/imageProcessor.js
@@ -1,3 +1,4 @@
+const Jimp = require('jimp');
const Color = require('color');
const axios = require('axios');
const fs = require('fs').promises;
@@ -18,6 +19,198 @@ class ImageProcessor {
}
}
+ // ---- Ported from v1.3 (methods lost in v1.4 refactor; server.js still calls them) ----
+ async analyzeImage(imageUrl) {
+ try {
+ const image = await Jimp.read(imageUrl);
+ const width = image.bitmap.width;
+ const height = image.bitmap.height;
+
+ // Simple heuristic to determine if image is a design or room setting
+ // Design images tend to be square or have specific aspect ratios
+ const aspectRatio = width / height;
+ const isLikelyDesign = (aspectRatio > 0.8 && aspectRatio < 1.2) ||
+ width < 2000 ||
+ this.hasUniformBackground(image);
+
+ return {
+ width,
+ height,
+ aspectRatio,
+ isLikelyDesign,
+ url: imageUrl
+ };
+ } catch (error) {
+ console.error('Error analyzing image:', error);
+ return null;
+ }
+ }
+
+ hasUniformBackground(image) {
+ // Check corners for similar colors (indicating uniform background)
+ const corners = [
+ image.getPixelColor(0, 0),
+ image.getPixelColor(image.bitmap.width - 1, 0),
+ image.getPixelColor(0, image.bitmap.height - 1),
+ image.getPixelColor(image.bitmap.width - 1, image.bitmap.height - 1)
+ ];
+
+ const threshold = 30; // Color difference threshold
+ const firstColor = Jimp.intToRGBA(corners[0]);
+
+ return corners.every(corner => {
+ const color = Jimp.intToRGBA(corner);
+ const diff = Math.abs(color.r - firstColor.r) +
+ Math.abs(color.g - firstColor.g) +
+ Math.abs(color.b - firstColor.b);
+ return diff < threshold;
+ });
+ }
+
+ async recolorImage(imageUrl, targetColor, colorMappings = null) {
+ try {
+ const image = await Jimp.read(imageUrl);
+
+ if (colorMappings && Object.keys(colorMappings).length > 0) {
+ // Use selective color replacement based on mappings
+ await this.selectiveColorReplace(image, colorMappings);
+ } else {
+ // Fallback to full image recoloring if no mappings provided
+ const targetColorObj = Color(targetColor);
+ const targetHSL = targetColorObj.hsl().array();
+
+ // Apply color transformation
+ image.scan(0, 0, image.bitmap.width, image.bitmap.height, function(x, y, idx) {
+ const red = this.bitmap.data[idx + 0];
+ const green = this.bitmap.data[idx + 1];
+ const blue = this.bitmap.data[idx + 2];
+ const alpha = this.bitmap.data[idx + 3];
+
+ if (alpha > 0) {
+ const pixelColor = Color.rgb(red, green, blue);
+ const pixelHSL = pixelColor.hsl().array();
+
+ // Preserve luminosity but change hue and adjust saturation
+ const newHue = targetHSL[0];
+ const newSaturation = (pixelHSL[1] + targetHSL[1]) / 2;
+ const preservedLightness = pixelHSL[2];
+
+ const newColor = Color.hsl(newHue, newSaturation, preservedLightness);
+ const newRGB = newColor.rgb().array();
+
+ this.bitmap.data[idx + 0] = Math.round(newRGB[0]);
+ this.bitmap.data[idx + 1] = Math.round(newRGB[1]);
+ this.bitmap.data[idx + 2] = Math.round(newRGB[2]);
+ }
+ });
+ }
+
+ // Save to temp file and convert to base64
+ const tempFilePath = path.join(this.tempDir, `recolored_${Date.now()}.jpg`);
+ await image.quality(90).writeAsync(tempFilePath);
+
+ const imageBuffer = await fs.readFile(tempFilePath);
+ const base64Image = imageBuffer.toString('base64');
+
+ // Clean up temp file
+ await fs.unlink(tempFilePath);
+
+ return {
+ attachment: base64Image,
+ filename: `recolored_${targetColor ? targetColor.replace(/\s+/g, '_') : 'custom'}.jpg`
+ };
+ } catch (error) {
+ console.error('Error recoloring image:', error);
+ throw error;
+ }
+ }
+
+ async selectiveColorReplace(image, colorMappings) {
+ // Convert color mappings to parsed colors
+ const mappings = {};
+ for (const [originalHex, replacementColor] of Object.entries(colorMappings)) {
+ try {
+ const replacementHex = this.parseColorName(replacementColor);
+ const replacementColorObj = Color(replacementHex);
+ mappings[originalHex] = {
+ hex: replacementHex,
+ hsl: replacementColorObj.hsl().array()
+ };
+ } catch (e) {
+ console.warn(`Could not parse color: ${replacementColor}`);
+ }
+ }
+
+ // Store reference to this for use in scan callback
+ const self = this;
+
+ // Apply selective color replacement
+ image.scan(0, 0, image.bitmap.width, image.bitmap.height, function(x, y, idx) {
+ const red = this.bitmap.data[idx + 0];
+ const green = this.bitmap.data[idx + 1];
+ const blue = this.bitmap.data[idx + 2];
+ const alpha = this.bitmap.data[idx + 3];
+
+ if (alpha > 0) {
+ const pixelHex = '#' + ((red << 16) | (green << 8) | blue).toString(16).padStart(6, '0');
+
+ // Check if this pixel color matches any of our source colors
+ for (const [sourceHex, replacement] of Object.entries(mappings)) {
+ // Use color similarity check with 20% tolerance (RGB distance of ~51)
+ // 20% of max RGB distance (255 * sqrt(3) ≈ 441) is about 88
+ if (self.colorsAreSimilar(pixelHex, sourceHex, 88)) {
+ // Direct color replacement - use the exact replacement color
+ // Parse the replacement hex to get RGB values directly
+ const replacementRGB = replacement.hex.match(/[A-Fa-f0-9]{2}/g).map(v => parseInt(v, 16));
+
+ this.bitmap.data[idx + 0] = replacementRGB[0];
+ this.bitmap.data[idx + 1] = replacementRGB[1];
+ this.bitmap.data[idx + 2] = replacementRGB[2];
+ break; // Stop checking once we've found a match
+ }
+ }
+ }
+ });
+ }
+
+ async processProductImages(images, targetColor, colorMappings = null) {
+ const processedImages = [];
+
+ for (const imageEdge of images) {
+ const image = imageEdge.node;
+ const analysis = await this.analyzeImage(image.originalSrc);
+
+ if (analysis && analysis.isLikelyDesign) {
+ // This is likely a design image, recolor it
+ try {
+ const recoloredImage = await this.recolorImage(image.originalSrc, targetColor, colorMappings);
+ processedImages.push({
+ ...recoloredImage,
+ alt: image.altText || `${targetColor} variant`,
+ position: processedImages.length + 1
+ });
+ } catch (error) {
+ console.error('Failed to recolor image:', error);
+ // Fall back to original image
+ processedImages.push({
+ src: image.originalSrc,
+ alt: image.altText || '',
+ position: processedImages.length + 1
+ });
+ }
+ } else {
+ // Room setting or other image, keep original
+ processedImages.push({
+ src: image.originalSrc,
+ alt: image.altText || '',
+ position: processedImages.length + 1
+ });
+ }
+ }
+
+ return processedImages;
+ }
+
getSimpleColorName(hex) {
// Convert hex to RGB
const r = parseInt(hex.slice(1, 3), 16);
diff --git a/DW-Programming/DWAutoPostBlog/instagram-to-shopify.js b/DW-Programming/DWAutoPostBlog/instagram-to-shopify.js
index 09481b6b..4f1e4847 100644
--- a/DW-Programming/DWAutoPostBlog/instagram-to-shopify.js
+++ b/DW-Programming/DWAutoPostBlog/instagram-to-shopify.js
@@ -3,7 +3,8 @@ const axios = require('axios');
require('dotenv').config();
const SHOPIFY_STORE = process.env.SHOPIFY_STORE || 'designer-laboratory-sandbox';
-const SHOPIFY_ACCESS_TOKEN = process.env.SHOPIFY_ACCESS_TOKEN || '6e7415e524f78f937dc7b980c0e7da42';
+const SHOPIFY_ACCESS_TOKEN = process.env.SHOPIFY_ACCESS_TOKEN || '';
+if (!SHOPIFY_ACCESS_TOKEN) console.warn('WARN: SHOPIFY_ACCESS_TOKEN not set — Shopify calls will fail (hardcoded fallback removed 2026-07-28)');
const INSTAGRAM_ACCOUNT = process.env.INSTAGRAM_ACCOUNT || 'DesignerWallcoverings';
const SHOPIFY_API_URL = `https://${SHOPIFY_STORE}.myshopify.com/admin/api/2024-01`;
diff --git a/DW-Programming/SettlementReview/server.ts b/DW-Programming/SettlementReview/server.ts
index 6ec342ae..a4a34708 100644
--- a/DW-Programming/SettlementReview/server.ts
+++ b/DW-Programming/SettlementReview/server.ts
@@ -2,7 +2,7 @@ import express from 'express';
import { checkSettlementCompliance, shouldCheckSettlement } from '../ImportNewSkufromURL/lib/settlement-checker';
const app = express();
-const PORT = 9877;
+const PORT = Number(process.env.PORT) || 8122;
const SHOPIFY_STORE = process.env.SHOPIFY_STORE_DOMAIN || 'designer-laboratory-sandbox.myshopify.com';
const SHOPIFY_TOKEN = process.env.SHOPIFY_ADMIN_ACCESS_TOKEN || '';
diff --git a/DW-Programming/TOOLS-DEBUG-LEDGER.md b/DW-Programming/TOOLS-DEBUG-LEDGER.md
index 1100fbc8..e1efa34a 100644
--- a/DW-Programming/TOOLS-DEBUG-LEDGER.md
+++ b/DW-Programming/TOOLS-DEBUG-LEDGER.md
@@ -9,29 +9,29 @@ Rules: set DOING before touching a tool; advance a checkbox ONLY on evidence pro
| system-dashboard | P1 | VERIFIED | 8116 | x | x | x | x | x | x | e7c8ee3 | marker "DW System Dashboard"; PORT env||8116; functional /api/pm2 = real pm2 jlist data; /api/system uses Linux-only uptime -p/free -m — degrades gracefully on macOS (non-fatal) |
| VendorDashboard-V2 | P1 | VERIFIED | 8115 | x | x | x | x | x | x | e1fe286 | marker "Vendor Dashboard V2 - Streamlined"; deps OK (npm ls clean, no install needed); PORT env||8115 (was 9832); functional /api/vendors = 463 live vendors from dw_unified registry+scraper join |
| pm2-dashboard | P1 | VERIFIED | 8117 | x | x | x | x | x | x | 917040e | marker "DW PM2 Dashboard"; own basic auth admin/ADMIN_PASSWORD env (401 unauth, 200 auth) — start env needs ADMIN_PASSWORD; PORT env||8117 (was 7401); functional /api/pm2 = 82 live pm2 processes |
-| ThibautTagger | P1 | VERIFIED | 8110 | x | x | x | x | x | x | 26a2a89 | marker "Thibaut Wallpaper Tagger"; P1 fixed env-key artifact + dead vendor query ("Thibaut Wallpaper"→"Thibaut", 4956 products) + DRY_RUN guard (012f591); P2+ ported analyze Claude→Gemini gemini-3.5-flash per DTD i2 verdict B 4-0 (repo vision mandate; also unblocks zero-credit Anthropic gate); functional: real Gemini tag JSON on 7865534906419 (Sage/Olive/Ivory, Muted), DRY_RUN no write |
+| ThibautTagger | P1 | VERIFIED | 8110 | x | x | x | x | x | x | 26a2a89 | marker "Thibaut Wallpaper Tagger"; P1 fixed env-key artifact + dead vendor query ("Thibaut Wallpaper"→"Thibaut", 4956 products) + DRY_RUN guard (012f591); P2+ ported analyze Claude→Gemini gemini-3.5-flash per DTD i2 verdict B 4-0 (repo vision mandate; also unblocks zero-credit Anthropic gate); functional: real Gemini tag JSON on 7865534906419 (Sage/Olive/Ivory, Muted), DRY_RUN no write; EVIDENCE NOTE (Cody gate): authoritative post-fix log = /tmp/fleet-revival/thibaut.log (12:27, Gemini success, 1 min before commit 26a2a89); ThibautTagger.log + tt-analyze.json are PRE-fix Anthropic-failure artifacts — disregard |
| PhillipeRomanoTagger | P1 | VERIFIED | 8111 | x | x | x | x | x | x | 18bb2ad | marker "Philippe Romano Tagger - Gemini AI"; better-sqlite3 11.x gyp-failed on node 26 → bumped to 12.11.1 (builds clean); fixed undefined SHOPIFY_API_URL (refresh-ai ReferenceError), 3rd token var → SHOPIFY_TOKEN, bad default domain designer-wallcoverings→designer-laboratory-sandbox, literal ${GOOGLE_API_KEY} fallback → env+warn; PORT env||8111 (was 3160); own basic auth admin/ADMIN_PASSWORD (401/200); functional: GET /api/refresh-ai/7877188452403 (read-only) → valid Gemini tag JSON (Warm Taupe/Horizontal Stria/Grasscloth, 15 tags), no Shopify write |
| schumacher-updater-dashboard | P1 | VERIFIED | 8113 | x | x | x | x | x | x | 25e41a2 | marker "Schumacher DWSW Updater"; PORT env||8113 (was 9898); START ENV MUST SET ADMIN_PASSWORD (basic auth admin/$ADMIN_PASSWORD; tested with DW2024!, 401/200); functional: start→update→status round-trip reflected in-memory state (processed=1, active=1), then reset; pure progress receiver — no DB/external APIs |
| architectural-updater | P1 | VERIFIED | 8114 | x | x | x | x | x | x | bc35f04 | marker "Architectural Wallcoverings Updater"; PORT chain ARCH_UPDATER_PORT||PORT||8114 (was ||9897); own basic auth admin/ADMIN_PASSWORD (401/200); functional: /api/vendors = 250 live vendors via Shopify GraphQL (read-only); dotenv hardcodes /root/... Kamatera path (no-op on Mac — env passed at start instead, noted not fixed) |
| DW-Dashboard | P1 | STATIC-OK | 8118 | | x | x | x | x | x | 0809d22 | marker "Fortune 2000 Product Inquiries"; STATIC (no server, no install — a n/a); fixed fetch filename /fortune-inquiries.json → /fortune-companies-emails.json (data file on disk); json serves 200 with 356 records; KNOWN LIMITATION: /api/get-email/:id backend never existed (email-body modal will error — not a defect to fix); tested via throwaway python3 -m http.server 8118, stopped |
| KravetDesignTagger | P2 | VERIFIED | 8109 | x | x | x | x | x | x | 1da18d9 | marker "Kravet Design Wallpaper Tagger"; literal "${ANTHROPIC_API_KEY}" artifact removed; analyze ported Claude→Gemini gemini-3.5-flash per DTD i2 verdict B (4-0); PORT env||8109 (was 3851); DRY_RUN guard added; npm install 70 pkgs clean; functional: real Gemini tag JSON on DWKK-153878 / W3606-3 (Sage Green/Ivory/Celadon, Botanical), DRY_RUN no write |
| maya-romanoff-updater | P2 | VERIFIED | 8112 | x | x | x | x | x | x | 4b60d50 | marker "Maya Romanoff Enhanced Updater"; literal '${GOOGLE_API_KEY}'/'${SLACK_WEBHOOK_URL}' → env reads + startup warns + Slack-send guard; PORT env||8112 (was 9900); NOTE survey wrong: NO /root/ paths or dotenv load exist in server.js (dotenv is an unused dep; env passed at start); CREATE INDEX on mirror table died 42501 (repl_user owns maya_romanoff_updates) → made non-fatal .catch like the ALTER; own basic auth admin/ADMIN_PASSWORD (401/200); functional: GET /api/recrawl/preview = 250 real active Maya Romanoff products via Shopify GraphQL read-only (94 flagged needing recrawl), NO writes; puppeteer postinstall blocked by npm allow-scripts (Chromium not downloaded — scrape paths would need it, not exercised) |
-| 150dpi | P2 | VERIFIED | 8108 | x | x | x | x | x | x | dadaaa9 | marker "150 DPI Converter - 24\" Wide"; resolveChrome() (CHROME_PATH env → darwin app → linux → puppeteer default) replaced 4 hardcoded sites; PORT env||8108 (was 3150); FOUND+FIXED real bug: dead resetBtn ref (id removed in past redesign) crashed EVERY conversion inside toBlob callback; functional E2E: headless Chrome drove real client, 1200×1200 → 3600×3600 = 24"@150dpi sips-verified; images DB = PG dw_unified (15 rows); Spoonflower upload untouched (gated) |
-| ImportNewSkufromURL | P3 | VERIFIED | 8101 | x | x | x | x | x | x | | marker title "Displaying Vendor Data"; re-port only: package.json dev/start -p 3002→8101 (kept -H 0.0.0.0); deps+.next already healthy, Ready in 891ms; session-cookie auth (any `session` cookie passes middleware — that's how the API was driven); functional per DTD i3 verdict A (4-0 codex/kimi/grok/qwen: scrape+preview ONLY, no Shopify write): POST /api/import/sku {source: thibautdesign.com/products/wallcoverings/T19631} → 200 in 49s, preview JSON title "COASTLINE Wallcoverings", sku T19631 captured (excluded from title per house rule), 1 image (cdn.thibautdesign.com), specs+tags+settlement-clear, sample price 4.25 (code commit 466769b); would-create payload captured → /tmp/fleet-revival/insku-wouldcreate.json; NO write (create-product endpoint never called); extraction = claude CLI Max plan + Ollama fallback ($0 metered); plaintext secrets present in .env.local (4 secret-looking lines incl. shpat_) — /secrets rotation queued |
+| 150dpi | P2 | VERIFIED | 8108 | x | x | x | x | x | x | dadaaa9 | marker "150 DPI Converter - 24\" Wide"; resolveChrome() (CHROME_PATH env → darwin app → linux → puppeteer default) replaced 4 hardcoded sites; PORT env||8108 (was 3150); FOUND+FIXED real bug: dead resetBtn ref (id removed in past redesign) crashed EVERY conversion inside toBlob callback; functional E2E: headless Chrome drove real client, 1200×1200 → 3600×3600 = 24"@150dpi sips-verified; images DB = PG dw_unified (15 rows); Spoonflower upload untouched (gated); EVIDENCE NOTE: /tmp/fleet-revival has TWO outputs — e2e-converted.png 3600x3600 (the E2E claim, square input) and 150dpi-output.png 3600x3528 (earlier 500x490 input, 490/500*3600=3528 exact — aspect preserved, consistent) |
+| ImportNewSkufromURL | P3 | VERIFIED | 8101 | x | x | x | x | x | x | | marker title "Displaying Vendor Data"; re-port only: package.json dev/start -p 3002→8101 (kept -H 0.0.0.0); deps+.next already healthy, Ready in 891ms; session-cookie auth (any `session` cookie passes middleware — that's how the API was driven); functional per DTD i3 verdict A (4-0 codex/kimi/grok/qwen: scrape+preview ONLY, no Shopify write): POST /api/import/sku {source: thibautdesign.com/products/wallcoverings/T19631} → 200 in 49s, preview JSON title "COASTLINE Wallcoverings", sku T19631 captured (excluded from title per house rule), 1 image (cdn.thibautdesign.com), specs+tags+settlement-clear, sample price 4.25 (code commit 466769b); would-create payload → /tmp/fleet-revival/insku-wouldcreate.json; COMPLIANCE FLAG (Cody gate): payload carries banned word "wallpaper" in tags/product_type — cleanWallpaper (TK-00134 brand-aware) MUST be applied in the create path before the write gate is ever opened captured → /tmp/fleet-revival/insku-wouldcreate.json; NO write (create-product endpoint never called); extraction = claude CLI Max plan + Ollama fallback ($0 metered); plaintext secrets present in .env.local (4 secret-looking lines incl. shpat_) — /secrets rotation queued |
| ImagetoRoomSetting | P3 | BLOCKED-GATED | 8105 | x | x | x | x | x | | 56d5ff6 | marker title "AI Room Designer"; npm install clean; scripts re-ported 3004→8105; SURVEY FEAR UNFOUNDED: components/ModelRankingPanel.tsx + ModelComparison.tsx EXIST and load; UI 200 + /api/models/image-generation returns REAL live HF-hub model rankings (SD-v1-5 et al); GENERATION PATH UPSTREAM-DEAD: all 4 API routes hardcode legacy api-inference.huggingface.co which no longer RESOLVES (ENOTFOUND); router.huggingface.co replacement tested with the .env token (valid, whoami 200) → hf-inference provider returns 410 "model deprecated" and has ZERO live image-output models — HF retired serverless image gen entirely; revival requires re-platform to a paid router provider (fal/together/replicate, new API shape + billing) = provider+spend decision, Steve-gated → BLOCKED-GATED; 2 attempts spent per rails, $0 actual (no inference ran); HF token plaintext in .env — /secrets rotation queued |
| SearchByColorWheel | P3 | VERIFIED | 8107 | x | x | x | x | x | x | e90d860 | marker title "Admin Login - Designer Wallcoverings"; npm install clean (sharp postinstall blocked by allow-scripts — non-fatal, sharp unused on the exercised paths); scripts pinned -p 8107 (was bare `next dev`, .env PORT=3020 stale); WHAT IT IS: root = client-side-pw ("2025") admin color-TAG updater UI; the color-search feed = GET /api/products (color-ordered, Red-first, filters to color-tagged); functional READ-ONLY: /api/products → 200 in 2.8s, 135 real products from live store sorted by color bucket (Zuber Gold/Blue rows first), SHOPIFY_API_VERSION=2025-10; admin WRITE endpoints (pages/api/admin) NOT exercised — write-gated; .env holds live SHOPIFY_ACCESS_TOKEN plaintext — /secrets rotation queued |
| ShopifyCalendarNext | P3 | VERIFIED | 8119 | x | x | x | x | x | x | 6f32b04 | marker title "Shopify Launch Calendar \| DW"; Next 15 — plain npm install ERESOLVEs (lucide-react 0.344 peer wants react≤18) → --legacy-peer-deps (no dep upgrades); scripts 9958→8119; START ENV MUST SET ADMIN_PASSWORD (basic auth admin/$ADMIN_PASSWORD, 401 without); FIXED real bug: initDatabase ran CREATE TABLE/INDEX unconditionally → 42501 "must be owner of scheduled_launches" (repl_user owns mirror tables) 500-ing EVERY read → wrapped all DDL non-fatal (same class as maya-romanoff 4b60d50); functional READ-ONLY: /api/launches?start=2026-01-01&end=2026-12-31 → 200, 30 real launches (27 scheduled/3 activated, Feb 2026 window) from dw_unified; note: default no-param call returns current-week window (empty) — not a bug; non-blocking warn: @next/swc 15.5.7 vs next 15.5.11 mismatch |
| nextjs-liquid-app | P3 | VERIFIED | 8120 | x | x | x | x | x | x | 0ca6a1e | marker title "Master Product Listings"; WHAT IT IS (name misleads): the multi-vendor MASTER PRODUCT LISTINGS admin dashboard — 16-vendor curation UI (arte/koroseal/maya/thibaut/kravet/... catalog tables) w/ analyze-image/accept-analysis (Arte-dashboard API family), calendar, bulk-import, product-action; reads dw_unified through its OWN companion db-proxy (db-proxy/server.js on 127.0.0.1:9662 — NOTE 9662 = MCC's port on Kamatera, fine locally, don't deploy both to one box); npm install clean; scripts 9660→8120; FIXED real bug: lib/db.ts module-load `Buffer.from(process.env.BASIC_AUTH)` crashed ERR_INVALID_ARG_TYPE → 500 on EVERY API when env unset → guarded + warn; START ENV: ADMIN_PASSWORD + BASIC_AUTH='admin:$PW' (+ db-proxy running with same ADMIN_PASSWORD); functional READ-ONLY: /api/auth/login 200 → authed / 200; /api/products → 200, 500 real rows (Donghia/Maya Romanoff titles) via db-proxy from dw_unified; no Shopify writes exercised |
| room-setting-app | P3 | VERIFIED | 8106 | x | x | x | x | x | x | b683cde | marker title "Room Visualizer — Designer Wallcoverings"; npm install clean; scripts 3075→8106; ModelComparison.tsx:38 pinned gemini-2.0-flash-exp→gemini-2.5-flash (only that occurrence, runtime code untouched); FOUND+FIXED the real render-killer: gemini-room-generator.ts:931 constructed the BILLED image-gen client with the LITERAL secret-strip artifact '${GOOGLE_API_KEY}' → every render API_KEY_INVALID no matter the env (misdiagnosable as bad key — the .env.local GEMINI key is ALSO dead, 400 on models.list; secrets-manager key valid) → env-first fallback + warn; START ENV: NEXTAUTH_URL=http://localhost:8106 + GEMINI_API_KEY + SHOPIFY_ADMIN_TOKEN from secrets-manager (start-env only, never files); functional: POST /api/generate-room (middleware-whitelisted by design for 150dpi integration) with existing product photo → 200 in 8.7s, real 1024×1024 PNG room render via gemini-2.5-flash-image; OAuth sign-in BLOCKED-GATED (no GOOGLE_CLIENT_ID/SECRET) but degrades gracefully — /login 200, /api/auth/session+providers 200, no crash; cost 2 renders $0.028 logged to cost-ledger; FOLLOW-UPS: room-setting-generator SKILL.md update classifier-blocked (queued for Steve), dead .env.local GEMINI key + plaintext secrets → /secrets rotation queued |
-| DW-Duplicate-Recolor-v1.4 | P4 | PENDING | 8102 | | | | | | | | CANONICAL; full functional |
-| DW-Duplicate-Recolor-v1.3 | P4 | PENDING | 8103 | | | | | | | | onDemand: install + smoke + stop |
-| DW-Duplicate-Recolor | P4 | PENDING | 8104 | | | | | | | | onDemand: install + smoke + stop |
-| shopifyskutoblog | P5 | PENDING | 8121 | | | | | | | | dual install root + client/ |
-| SettlementReview | P5 | PENDING | 8122 | | | | | | | | tsx server.ts |
-| scraper-api | P5 | PENDING | 8123 | | | | | | | | src/server.js |
-| DWAutoPostBlog | P5 | PENDING | cli | | | | | | | | NEVER npm start (posts!); dry-run/require-check only |
-| DWLegalTeam | P5 | PENDING | cli | | | | | | | | dry-run/--help exit 0 |
-| RemoveDuplicatesInShopify | P5 | PENDING | cli | | | | | | | | dry-run only — destructive tool |
+| DW-Duplicate-Recolor-v1.4 | P4 | VERIFIED | 8102 | x | x | x | x | x | x | e059c5a | CANONICAL, left HOT on 8102 (nohup, per locked plan); marker "Login - DW Duplicate & Recolor Tool", /api/health 200 healthy, root 302→login (expected auth); FOUND+FIXED real regression: v1.4 refactor DROPPED recolorImage/selectiveColorReplace/processProductImages/analyzeImage/hasUniformBackground from lib/imageProcessor.js while server.js still calls them (both recolor endpoints would TypeError) → ported 190 lines verbatim from v1.3 + Jimp import; npm install clean (sharp postinstall allow-scripts-blocked but prebuilt binary loads fine); functional E2E through the tool's own flow: session login → POST /api/mockup on library pattern-damask.png with mapping #2c3e50→#2e6b4f → output 512×512 (dims preserved), target pixels exactly (46,107,78) = forest green #2e6b4f as mapped, background untouched — $0 local, NO Shopify write (mockup path never writes; duplicate-recolor product-create path NOT called); CAVEAT: v1.4's own extractTopColors returns misleading #808080 avg-gray on this image (v1.3's version reads true palette) — preview color chips may be off, noted not fixed; plaintext secrets in .env (shpat_/Gemini/OpenAI/XAI) — /secrets rotation queued |
+| DW-Duplicate-Recolor-v1.3 | P4 | ON-DEMAND-OK | 8103 | x | x | x | x | x | | d8ca9d0 | marker "DW Duplicate & Recolor"; npm install clean (exit 0, sharp postinstall allow-scripts warn only); PORT env||3000 untouched — started PORT=8103, root 200 no auth wall, 10s smoke, stopped, lsof confirms 8103 freed; no functional per plan (onDemand); NOTE: this is the source of the recolor methods ported into v1.4 |
+| DW-Duplicate-Recolor | P4 | ON-DEMAND-OK | 8104 | x | x | x | x | x | | 39f8985 | marker "DW Duplicate & Recolor" (v1); npm install clean exit 0; PORT env||3000 — started PORT=8104, root 200, 10s smoke, stopped, lsof confirms 8104 freed; no functional per plan (onDemand) |
+| shopifyskutoblog | P5 | VERIFIED | 8121 | x | x | x | x | x | x | a852be5 | WHAT IT IS: Shopify product→blog-post converter (picks recent products, generates draft articles w/ 1h-gap scheduling); marker "Shopify Blog Creator"; dual install clean (root 155 pkgs + client 1326 CRA); client/build was MISSING (GET / would 500) → npm run build compiled clean, server now serves UI; PORT env||5000 — started PORT=8121; GOTCHA: its .env SHOPIFY_ACCESS_TOKEN (…c227) is DEAD (401, July token-sweep casualty) → started with secrets-manager SHOPIFY_ADMIN_TOKEN via start-env only (dotenv doesn't override process env), .env untouched; functional READ-ONLY: /api/shopify/products/recent → 10 real products (Hollywood Wallcoverings ids 79014475…); /api/shopify/blogs 403 with products-token — blog scopes live on the DW-Write-Content app (SHOPIFY_CONTENT_TOKEN), start with that token for blog ops; blog PUBLISH (POST /create-blogs) = prod write, NOT called — would-publish shape captured → /tmp/fleet-revival/skutoblog-wouldpublish.json; stopped, lsof 8121 freed; dead .env token → /secrets rotation queued |
+| SettlementReview | P5 | VERIFIED | 8122 | x | x | x | x | x | x | be48618 | marker "Settlement Compliance Review"; npm install clean (esbuild postinstall allow-scripts-blocked, tsx still runs via prebuilt @esbuild/darwin-arm64); hardcoded PORT=9877 → Number(process.env.PORT)||8122; imports ../ImportNewSkufromURL/lib/settlement-checker cross-project (resolves fine); START ENV: SHOPIFY_ADMIN_ACCESS_TOKEN (from secrets-manager, start-env only); functional READ-ONLY: /api/scan-keyword/zuber → GraphQL search, 194 real products scanned, needsReview populated (settlement-relevant bird/chinoiserie items flagged); /api/settlement-tagged works but paginates the ENTIRE catalog (~145k, 250/page + 500ms sleeps ≈ 10min) before tag-filter — known perf wart, noted not fixed; settlement-checker vision path is stubbed (claude-cli text-only → flags manual review, warns "Needs a Gemini vision path"); write endpoints (remove/draft/approve/bulk) NOT exercised — prod writes; stopped, lsof 8122 freed |
+| scraper-api | P5 | VERIFIED | 8123 | x | x | x | x | x | x | db9cbb5 | marker "DW Scraper API Documentation" (swagger /api/docs 200) + /health 200 healthy; npm install clean 660 pkgs (puppeteer/msgpackr postinstalls allow-scripts-blocked — scrape paths not exercised); FIXED startup hard-dependency: startServer awaited MongoDB+Redis and process.exit(1)'d — neither exists on Mac2 → wrapped connectDatabase/connectRedis/initializeQueues/websocket non-fatal (maya 4b60d50 class), server always listens, honest DEGRADED warns; PORT env||3002 — started PORT=8123; functional status read: /api/status/health → {"status":"degraded","checks":{database:false,redis:false,queue:false}} = tool's own status route reporting true infra state; DB-backed routes (e.g. /api/status/vendors) error as expected without Mongo — full revival needs Mongo+Redis provisioning (infra decision, not code); stopped, lsof 8123 freed |
+| DWAutoPostBlog | P5 | CLI-OK | cli | x | | | | x | | 480a755 | NEVER started (posts to Shopify blog) — install + parse evidence only per rails; npm install clean 162 pkgs (puppeteer postinstall allow-scripts-blocked, Chromium not downloaded); node --check instagram-to-shopify.js = syntax OK; main() guarded by require.main===module (safe by construction); no --help/dry-run flag exists; SECURITY FIX: hardcoded SHOPIFY_ACCESS_TOKEN fallback '6e74…da42' stripped → env read + startup warn (grep confirms no other copies) — that token → /secrets rotation queued; KNOWN LIMITATION (node 26): require chain crashes in deps (puppeteer@21 → extensionless yargs/yargs loaded as ESM, ReferenceError require) — tool would crash at launch on node 26; revival needs puppeteer ≥24 bump (dep upgrade, out of scope + tool is post-gated anyway) |
+| DWLegalTeam | P5 | CLI-OK | cli | x | | | | x | | cbc4f8d | npm install clean 110 pkgs; npx tsx v4.20.6 sanity OK; legal-agent.ts has import-time side effects (app.listen on hardcoded 9878 + module-level Anthropic client) → per rails NO tsx import — esbuild parse-check instead: syntax OK, exit 0; WHAT IT IS: settlement-compliance monitor dashboard (Part A/B criteria server, scan endpoints are mostly stubs returning scanned:0); NOTE if ever promoted to a port tool: hardcoded PORT 9878 needs env-parametrizing + it constructs an Anthropic API client (house rule: no Anthropic API — needs claude CLI/Gemini port like ThibautTagger DTD i2) |
+| RemoveDuplicatesInShopify | P5 | CLI-OK | cli | x | | | | x | | bde59d4 | DESTRUCTIVE tool (image dedup/delete) — NEVER executed per rails; npm install clean 38 pkgs; full `npx tsc --noEmit --skipLibCheck` on find-duplicate-images.ts = exit 0 (syntax + types clean, stronger than parse-only); npm scripts: find→tsx find-duplicate-images.ts, delete→tsx delete-duplicates.ts — both stay human-gated |
| RoomSetting Creator | P5 | MISSING-SOURCE | — | | | | | | | | empty directory; note for Steve |
| DW Style Tag Updater | P5 | MISSING-SOURCE | — | | | | | | | | server.js never existed in git history; note for Steve |
@@ -45,6 +45,10 @@ Rules: set DOING before touching a tool; advance a checkbox ONLY on evidence pro
| 2026-07-28 | room-setting-app | Gemini gemini-2.5-flash-image (2 renders: 1 direct verify + 1 app E2E) + 1 negligible text ping | 0.08 | 0.028 (cost-ledger, api room_render) |
| 2026-07-28 | ImportNewSkufromURL | claude CLI (Max plan) extraction + local scrape | 0.00 | 0.00 (unmetered subscription) |
| 2026-07-28 | ImagetoRoomSetting | HF inference attempted (ENOTFOUND/410 — no inference ran) | 0.04 | 0.00 |
+| 2026-07-28 | DW-Duplicate-Recolor-v1.4 | none — Jimp pixel recolor, all local | 0.00 | 0.00 ($0 local) |
+| 2026-07-28 | shopifyskutoblog | Shopify Admin REST reads only (free) | 0.00 | 0.00 ($0 local) |
+| 2026-07-28 | SettlementReview | Shopify GraphQL reads only (free); vision path stubbed, no LLM ran | 0.00 | 0.00 ($0 local) |
+| 2026-07-28 | scraper-api / P5 CLI trio | no paid APIs invoked | 0.00 | 0.00 ($0 local) |
## Gated items drafted (pending-approval)
(none yet)
diff --git a/DW-Programming/architectural-updater/server.js b/DW-Programming/architectural-updater/server.js
index 61b598d4..cab0053a 100644
--- a/DW-Programming/architectural-updater/server.js
+++ b/DW-Programming/architectural-updater/server.js
@@ -1,4 +1,4 @@
-require('dotenv').config({ path: '/root/Projects/Designer-Wallcoverings/.env' });
+require('dotenv').config({ path: process.env.DW_ENV_PATH || require('path').join(__dirname, '..', '..', '.env') });
const express = require('express');
const fs = require('fs');
diff --git a/DW-Programming/scraper-api/package-lock.json b/DW-Programming/scraper-api/package-lock.json
new file mode 100644
index 00000000..5a7c5b85
--- /dev/null
+++ b/DW-Programming/scraper-api/package-lock.json
@@ -0,0 +1,8351 @@
+{
+ "name": "dw-centralized-scraper-api",
+ "version": "1.0.0",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "dw-centralized-scraper-api",
+ "version": "1.0.0",
+ "license": "ISC",
+ "dependencies": {
+ "axios": "^1.6.0",
+ "bcryptjs": "^2.4.3",
+ "bull": "^4.12.2",
+ "cheerio": "^1.0.0-rc.12",
+ "compression": "^1.7.4",
+ "cors": "^2.8.5",
+ "dotenv": "^16.3.1",
+ "express": "^4.18.2",
+ "express-rate-limit": "^7.1.5",
+ "express-validator": "^7.0.1",
+ "helmet": "^7.1.0",
+ "jsonwebtoken": "^9.0.2",
+ "mongoose": "^7.6.3",
+ "node-cron": "^3.0.3",
+ "playwright": "^1.40.0",
+ "puppeteer": "^21.5.2",
+ "redis": "^4.6.10",
+ "socket.io": "^4.7.4",
+ "swagger-jsdoc": "^6.2.8",
+ "swagger-ui-express": "^5.0.0",
+ "uuid": "^9.0.1",
+ "winston": "^3.11.0"
+ },
+ "devDependencies": {
+ "jest": "^29.7.0",
+ "nodemon": "^3.0.1",
+ "supertest": "^6.3.3"
+ }
+ },
+ "node_modules/@apidevtools/json-schema-ref-parser": {
+ "version": "14.0.1",
+ "resolved": "https://registry.npmjs.org/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-14.0.1.tgz",
+ "integrity": "sha512-Oc96zvmxx1fqoSEdUmfmvvb59/KDOnUoJ7s2t7bISyAn0XEz57LCCw8k2Y4Pf3mwKaZLMciESALORLgfe2frCw==",
+ "license": "MIT",
+ "dependencies": {
+ "@types/json-schema": "^7.0.15",
+ "js-yaml": "^4.1.0"
+ },
+ "engines": {
+ "node": ">= 16"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/philsturgeon"
+ }
+ },
+ "node_modules/@apidevtools/json-schema-ref-parser/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==",
+ "license": "Python-2.0"
+ },
+ "node_modules/@apidevtools/json-schema-ref-parser/node_modules/js-yaml": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz",
+ "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/puzrin"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/nodeca"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "argparse": "^2.0.1"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "node_modules/@apidevtools/openapi-schemas": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/@apidevtools/openapi-schemas/-/openapi-schemas-2.1.0.tgz",
+ "integrity": "sha512-Zc1AlqrJlX3SlpupFGpiLi2EbteyP7fXmUOGup6/DnkRgjP9bgMM/ag+n91rsv0U1Gpz0H3VILA/o3bW7Ua6BQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@apidevtools/swagger-methods": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@apidevtools/swagger-methods/-/swagger-methods-3.0.2.tgz",
+ "integrity": "sha512-QAkD5kK2b1WfjDS/UQn/qQkbwF31uqRjPTrsCs5ZG9BQGAkjwvqGFjjPqAuzac/IYzpPtRzjCP1WrTuAIjMrXg==",
+ "license": "MIT"
+ },
+ "node_modules/@apidevtools/swagger-parser": {
+ "version": "12.1.0",
+ "resolved": "https://registry.npmjs.org/@apidevtools/swagger-parser/-/swagger-parser-12.1.0.tgz",
+ "integrity": "sha512-e5mJoswsnAX0jG+J09xHFYQXb/bUc5S3pLpMxUuRUA2H8T2kni3yEoyz2R3Dltw5f4A6j6rPNMpWTK+iVDFlng==",
+ "license": "MIT",
+ "dependencies": {
+ "@apidevtools/json-schema-ref-parser": "14.0.1",
+ "@apidevtools/openapi-schemas": "^2.1.0",
+ "@apidevtools/swagger-methods": "^3.0.2",
+ "ajv": "^8.17.1",
+ "ajv-draft-04": "^1.0.0",
+ "call-me-maybe": "^1.0.2"
+ },
+ "peerDependencies": {
+ "openapi-types": ">=7"
+ }
+ },
+ "node_modules/@babel/code-frame": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.7.tgz",
+ "integrity": "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==",
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-validator-identifier": "^7.29.7",
+ "js-tokens": "^4.0.0",
+ "picocolors": "^1.1.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/compat-data": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.7.tgz",
+ "integrity": "sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/core": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.7.tgz",
+ "integrity": "sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/code-frame": "^7.29.7",
+ "@babel/generator": "^7.29.7",
+ "@babel/helper-compilation-targets": "^7.29.7",
+ "@babel/helper-module-transforms": "^7.29.7",
+ "@babel/helpers": "^7.29.7",
+ "@babel/parser": "^7.29.7",
+ "@babel/template": "^7.29.7",
+ "@babel/traverse": "^7.29.7",
+ "@babel/types": "^7.29.7",
+ "@jridgewell/remapping": "^2.3.5",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
+ }
+ },
+ "node_modules/@babel/core/node_modules/debug": {
+ "version": "4.4.3",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@babel/core/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==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@babel/core/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/@babel/generator": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz",
+ "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/parser": "^7.29.7",
+ "@babel/types": "^7.29.7",
+ "@jridgewell/gen-mapping": "^0.3.12",
+ "@jridgewell/trace-mapping": "^0.3.28",
+ "jsesc": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-compilation-targets": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.29.7.tgz",
+ "integrity": "sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/compat-data": "^7.29.7",
+ "@babel/helper-validator-option": "^7.29.7",
+ "browserslist": "^4.24.0",
+ "lru-cache": "^5.1.1",
+ "semver": "^6.3.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-compilation-targets/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/@babel/helper-globals": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz",
+ "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-module-imports": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz",
+ "integrity": "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/traverse": "^7.29.7",
+ "@babel/types": "^7.29.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-module-transforms": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz",
+ "integrity": "sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-module-imports": "^7.29.7",
+ "@babel/helper-validator-identifier": "^7.29.7",
+ "@babel/traverse": "^7.29.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
+ }
+ },
+ "node_modules/@babel/helper-plugin-utils": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.29.7.tgz",
+ "integrity": "sha512-G7sHYigPY17oO5SYWnfD/0MTBwVR781S/JI643e/JhUYgVgWE/61SoW3NH9KWUKyKq5LVh3npif99Wkt6j86Jw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-string-parser": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz",
+ "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-validator-identifier": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz",
+ "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-validator-option": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz",
+ "integrity": "sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helpers": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.7.tgz",
+ "integrity": "sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/template": "^7.29.7",
+ "@babel/types": "^7.29.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/parser": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.7.tgz",
+ "integrity": "sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/types": "^7.29.7"
+ },
+ "bin": {
+ "parser": "bin/babel-parser.js"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-async-generators": {
+ "version": "7.8.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
+ "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-bigint": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz",
+ "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-class-properties": {
+ "version": "7.12.13",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
+ "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.12.13"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-class-static-block": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz",
+ "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-import-attributes": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.29.7.tgz",
+ "integrity": "sha512-zGYcYfq/WmZ4V+kBIXQon9dSSc8ircGZqw9ZaNhhGj9nZkeBu1jHLBDQqYYi5WA9uawvA2sIMbry2nCFhf5Djg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.29.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-import-meta": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
+ "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-json-strings": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
+ "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-jsx": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.29.7.tgz",
+ "integrity": "sha512-TSu8+mHCoEaaCDEZ0I3+6mvTBYR4PCxQwf2z9/r5Tbztv6NaLR3B9thGTTxX2WGuGHJqRiAbKPeGTJ5XWXVg6A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.29.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-logical-assignment-operators": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
+ "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
+ "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-numeric-separator": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
+ "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-object-rest-spread": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
+ "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-optional-catch-binding": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
+ "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-optional-chaining": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
+ "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-private-property-in-object": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz",
+ "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-top-level-await": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz",
+ "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-typescript": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.29.7.tgz",
+ "integrity": "sha512-ngr+82Sh0xMz25TPCZi+nC2iTzjfCdWS2ONXTp/PtSCHCgaCNBpdMqgvJ2ccdLlClVZ7sisIgB914j/JFe+RZA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.29.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/template": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz",
+ "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/code-frame": "^7.29.7",
+ "@babel/parser": "^7.29.7",
+ "@babel/types": "^7.29.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/traverse": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz",
+ "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/code-frame": "^7.29.7",
+ "@babel/generator": "^7.29.7",
+ "@babel/helper-globals": "^7.29.7",
+ "@babel/parser": "^7.29.7",
+ "@babel/template": "^7.29.7",
+ "@babel/types": "^7.29.7",
+ "debug": "^4.3.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/traverse/node_modules/debug": {
+ "version": "4.4.3",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@babel/traverse/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==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@babel/types": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz",
+ "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-string-parser": "^7.29.7",
+ "@babel/helper-validator-identifier": "^7.29.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@bcoe/v8-coverage": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz",
+ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@colors/colors": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz",
+ "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.1.90"
+ }
+ },
+ "node_modules/@dabh/diagnostics": {
+ "version": "2.0.8",
+ "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.8.tgz",
+ "integrity": "sha512-R4MSXTVnuMzGD7bzHdW2ZhhdPC/igELENcq5IjEverBvq5hn1SXCWcsi6eSsdWP0/Ur+SItRRjAktmdoX/8R/Q==",
+ "license": "MIT",
+ "dependencies": {
+ "@so-ric/colorspace": "^1.1.6",
+ "enabled": "2.0.x",
+ "kuler": "^2.0.0"
+ }
+ },
+ "node_modules/@ioredis/commands": {
+ "version": "1.10.0",
+ "resolved": "https://registry.npmjs.org/@ioredis/commands/-/commands-1.10.0.tgz",
+ "integrity": "sha512-UmeW7z4LfctwoQ5wkhVzgq8tXkreED2xZGpX+Bg+zA+WJFZCT6c062AfCK/Dfk81xZnnwdhJCUMkitihRaoC2Q==",
+ "license": "MIT"
+ },
+ "node_modules/@isaacs/cliui": {
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-9.0.0.tgz",
+ "integrity": "sha512-AokJm4tuBHillT+FpMtxQ60n8ObyXBatq7jD2/JA9dxbDDokKQm8KMht5ibGzLVU9IJDIKK4TPKgMHEYMn3lMg==",
+ "license": "BlueOak-1.0.0",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@istanbuljs/load-nyc-config": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
+ "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "camelcase": "^5.3.1",
+ "find-up": "^4.1.0",
+ "get-package-type": "^0.1.0",
+ "js-yaml": "^3.13.1",
+ "resolve-from": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@istanbuljs/schema": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.6.tgz",
+ "integrity": "sha512-+Sg6GCR/wy1oSmQDFq4LQDAhm3ETKnorxN+y5nbLULOR3P0c14f2Wurzj3/xqPXtasLFfHd5iRFQ7AJt4KH2cw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/console": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz",
+ "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/types": "^29.6.3",
+ "@types/node": "*",
+ "chalk": "^4.0.0",
+ "jest-message-util": "^29.7.0",
+ "jest-util": "^29.7.0",
+ "slash": "^3.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/core": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz",
+ "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/console": "^29.7.0",
+ "@jest/reporters": "^29.7.0",
+ "@jest/test-result": "^29.7.0",
+ "@jest/transform": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "@types/node": "*",
+ "ansi-escapes": "^4.2.1",
+ "chalk": "^4.0.0",
+ "ci-info": "^3.2.0",
+ "exit": "^0.1.2",
+ "graceful-fs": "^4.2.9",
+ "jest-changed-files": "^29.7.0",
+ "jest-config": "^29.7.0",
+ "jest-haste-map": "^29.7.0",
+ "jest-message-util": "^29.7.0",
+ "jest-regex-util": "^29.6.3",
+ "jest-resolve": "^29.7.0",
+ "jest-resolve-dependencies": "^29.7.0",
+ "jest-runner": "^29.7.0",
+ "jest-runtime": "^29.7.0",
+ "jest-snapshot": "^29.7.0",
+ "jest-util": "^29.7.0",
+ "jest-validate": "^29.7.0",
+ "jest-watcher": "^29.7.0",
+ "micromatch": "^4.0.4",
+ "pretty-format": "^29.7.0",
+ "slash": "^3.0.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
+ },
+ "peerDependenciesMeta": {
+ "node-notifier": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@jest/environment": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz",
+ "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/fake-timers": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "@types/node": "*",
+ "jest-mock": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/expect": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz",
+ "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "expect": "^29.7.0",
+ "jest-snapshot": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/expect-utils": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz",
+ "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "jest-get-type": "^29.6.3"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/fake-timers": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz",
+ "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/types": "^29.6.3",
+ "@sinonjs/fake-timers": "^10.0.2",
+ "@types/node": "*",
+ "jest-message-util": "^29.7.0",
+ "jest-mock": "^29.7.0",
+ "jest-util": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/globals": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz",
+ "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/environment": "^29.7.0",
+ "@jest/expect": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "jest-mock": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/reporters": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz",
+ "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@bcoe/v8-coverage": "^0.2.3",
+ "@jest/console": "^29.7.0",
+ "@jest/test-result": "^29.7.0",
+ "@jest/transform": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "@jridgewell/trace-mapping": "^0.3.18",
+ "@types/node": "*",
+ "chalk": "^4.0.0",
+ "collect-v8-coverage": "^1.0.0",
+ "exit": "^0.1.2",
+ "glob": "^7.1.3",
+ "graceful-fs": "^4.2.9",
+ "istanbul-lib-coverage": "^3.0.0",
+ "istanbul-lib-instrument": "^6.0.0",
+ "istanbul-lib-report": "^3.0.0",
+ "istanbul-lib-source-maps": "^4.0.0",
+ "istanbul-reports": "^3.1.3",
+ "jest-message-util": "^29.7.0",
+ "jest-util": "^29.7.0",
+ "jest-worker": "^29.7.0",
+ "slash": "^3.0.0",
+ "string-length": "^4.0.1",
+ "strip-ansi": "^6.0.0",
+ "v8-to-istanbul": "^9.0.1"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
+ },
+ "peerDependenciesMeta": {
+ "node-notifier": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@jest/schemas": {
+ "version": "29.6.3",
+ "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz",
+ "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@sinclair/typebox": "^0.27.8"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/source-map": {
+ "version": "29.6.3",
+ "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz",
+ "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/trace-mapping": "^0.3.18",
+ "callsites": "^3.0.0",
+ "graceful-fs": "^4.2.9"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/test-result": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz",
+ "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/console": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "@types/istanbul-lib-coverage": "^2.0.0",
+ "collect-v8-coverage": "^1.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/test-sequencer": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz",
+ "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/test-result": "^29.7.0",
+ "graceful-fs": "^4.2.9",
+ "jest-haste-map": "^29.7.0",
+ "slash": "^3.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/transform": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz",
+ "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/core": "^7.11.6",
+ "@jest/types": "^29.6.3",
+ "@jridgewell/trace-mapping": "^0.3.18",
+ "babel-plugin-istanbul": "^6.1.1",
+ "chalk": "^4.0.0",
+ "convert-source-map": "^2.0.0",
+ "fast-json-stable-stringify": "^2.1.0",
+ "graceful-fs": "^4.2.9",
+ "jest-haste-map": "^29.7.0",
+ "jest-regex-util": "^29.6.3",
+ "jest-util": "^29.7.0",
+ "micromatch": "^4.0.4",
+ "pirates": "^4.0.4",
+ "slash": "^3.0.0",
+ "write-file-atomic": "^4.0.2"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/types": {
+ "version": "29.6.3",
+ "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz",
+ "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/schemas": "^29.6.3",
+ "@types/istanbul-lib-coverage": "^2.0.0",
+ "@types/istanbul-reports": "^3.0.0",
+ "@types/node": "*",
+ "@types/yargs": "^17.0.8",
+ "chalk": "^4.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jridgewell/gen-mapping": {
+ "version": "0.3.13",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz",
+ "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/sourcemap-codec": "^1.5.0",
+ "@jridgewell/trace-mapping": "^0.3.24"
+ }
+ },
+ "node_modules/@jridgewell/remapping": {
+ "version": "2.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz",
+ "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.24"
+ }
+ },
+ "node_modules/@jridgewell/resolve-uri": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+ "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/sourcemap-codec": {
+ "version": "1.5.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz",
+ "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@jridgewell/trace-mapping": {
+ "version": "0.3.31",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz",
+ "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
+ }
+ },
+ "node_modules/@mongodb-js/saslprep": {
+ "version": "1.4.13",
+ "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.4.13.tgz",
+ "integrity": "sha512-E3Sv4eCYAlKYUTx8S3ioQcDUscOif+8zZ5OnW1IzJ+Tt+EO+ke8mn+Y3FX6N1H79picwbdOavVOb1jPi2EOyrg==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "sparse-bitfield": "^3.0.3"
+ }
+ },
+ "node_modules/@msgpackr-extract/msgpackr-extract-darwin-arm64": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-3.0.4.tgz",
+ "integrity": "sha512-LCkGo6JDfaBhgST7UpPWgNgLINpcpabaHfyz5OBx75nUYxBsaEPxjnyNjWpeb/xBup/682QnBfRBy2/LvPutZQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ]
+ },
+ "node_modules/@msgpackr-extract/msgpackr-extract-darwin-x64": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-x64/-/msgpackr-extract-darwin-x64-3.0.4.tgz",
+ "integrity": "sha512-zExlW9zUJKZH/tOtVMttwjKa4Xm/3KcNjnE3dPN92uCktwavMxpgCA3MoJK/DOnTWsQgo224OaST27/mPNAf+w==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ]
+ },
+ "node_modules/@msgpackr-extract/msgpackr-extract-linux-arm": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm/-/msgpackr-extract-linux-arm-3.0.4.tgz",
+ "integrity": "sha512-Tg3yX65f5GbtXLkrYEHE5oibZG9epyYWas7FogTTEJeDEF9JlXJzKgXaNhT3UXlTOeA+AfZpYZYZ0uPj7Cfquw==",
+ "cpu": [
+ "arm"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@msgpackr-extract/msgpackr-extract-linux-arm64": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm64/-/msgpackr-extract-linux-arm64-3.0.4.tgz",
+ "integrity": "sha512-dgX0P/9wGPJeHFBG+ZmhgE6bmtMt7NP5CRBGyyktpopdk/mW4POnrpQsSLtKI1dwpc+pPLuXHDh6vvskyQE/sw==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@msgpackr-extract/msgpackr-extract-linux-x64": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-3.0.4.tgz",
+ "integrity": "sha512-8TNXMEjJc3QEy7R/x1INhgiU+XakDAFUzBhaz7+Rbrs8NH5UQeHQxxmzsSBJGyV6I1jW79undiQm8tOI+D+8FQ==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@msgpackr-extract/msgpackr-extract-win32-x64": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-3.0.4.tgz",
+ "integrity": "sha512-CmCXPQrkbwExx3j946/PtHWHbYJiCRBRDl4BlkRQcJB/YOwQxJRTpoo7aTsortjgoJ1x7opzTSxn7C+ASSLVjQ==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ]
+ },
+ "node_modules/@noble/hashes": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz",
+ "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@paralleldrive/cuid2": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/@paralleldrive/cuid2/-/cuid2-2.3.1.tgz",
+ "integrity": "sha512-XO7cAxhnTZl0Yggq6jOgjiOHhbgcO4NqFqwSmQpjK3b6TEE6Uj/jfSk6wzYyemh3+I0sHirKSetjQwn5cZktFw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "^1.1.5"
+ }
+ },
+ "node_modules/@puppeteer/browsers": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.9.1.tgz",
+ "integrity": "sha512-PuvK6xZzGhKPvlx3fpfdM2kYY3P/hB1URtK8wA7XUJ6prn6pp22zvJHu48th0SGcHL9SutbPHrFuQgfXTFobWA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "debug": "4.3.4",
+ "extract-zip": "2.0.1",
+ "progress": "2.0.3",
+ "proxy-agent": "6.3.1",
+ "tar-fs": "3.0.4",
+ "unbzip2-stream": "1.4.3",
+ "yargs": "17.7.2"
+ },
+ "bin": {
+ "browsers": "lib/cjs/main-cli.js"
+ },
+ "engines": {
+ "node": ">=16.3.0"
+ }
+ },
+ "node_modules/@puppeteer/browsers/node_modules/debug": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "license": "MIT",
+ "dependencies": {
+ "ms": "2.1.2"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@puppeteer/browsers/node_modules/ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "license": "MIT"
+ },
+ "node_modules/@puppeteer/browsers/node_modules/yargs": {
+ "version": "17.7.2",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
+ "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
+ "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/@redis/bloom": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@redis/bloom/-/bloom-1.2.0.tgz",
+ "integrity": "sha512-HG2DFjYKbpNmVXsa0keLHp/3leGJz1mjh09f2RLGGLQZzSHpkmZWuwJbAvo3QcRY8p80m5+ZdXZdYOSBLlp7Cg==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@redis/client": "^1.0.0"
+ }
+ },
+ "node_modules/@redis/client": {
+ "version": "1.6.1",
+ "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.6.1.tgz",
+ "integrity": "sha512-/KCsg3xSlR+nCK8/8ZYSknYxvXHwubJrU82F3Lm1Fp6789VQ0/3RJKfsmRXjqfaTA++23CvC3hqmqe/2GEt6Kw==",
+ "license": "MIT",
+ "dependencies": {
+ "cluster-key-slot": "1.1.2",
+ "generic-pool": "3.9.0",
+ "yallist": "4.0.0"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/@redis/client/node_modules/cluster-key-slot": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.2.tgz",
+ "integrity": "sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==",
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/@redis/client/node_modules/yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "license": "ISC"
+ },
+ "node_modules/@redis/graph": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@redis/graph/-/graph-1.1.1.tgz",
+ "integrity": "sha512-FEMTcTHZozZciLRl6GiiIB4zGm5z5F3F6a6FZCyrfxdKOhFlGkiAqlexWMBzCi4DcRoyiOsuLfW+cjlGWyExOw==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@redis/client": "^1.0.0"
+ }
+ },
+ "node_modules/@redis/json": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/@redis/json/-/json-1.0.7.tgz",
+ "integrity": "sha512-6UyXfjVaTBTJtKNG4/9Z8PSpKE6XgSyEb8iwaqDcy+uKrd/DGYHTWkUdnQDyzm727V7p21WUMhsqz5oy65kPcQ==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@redis/client": "^1.0.0"
+ }
+ },
+ "node_modules/@redis/search": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@redis/search/-/search-1.2.0.tgz",
+ "integrity": "sha512-tYoDBbtqOVigEDMAcTGsRlMycIIjwMCgD8eR2t0NANeQmgK/lvxNAvYyb6bZDD4frHRhIHkJu2TBRvB0ERkOmw==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@redis/client": "^1.0.0"
+ }
+ },
+ "node_modules/@redis/time-series": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@redis/time-series/-/time-series-1.1.0.tgz",
+ "integrity": "sha512-c1Q99M5ljsIuc4YdaCwfUEXsofakb9c8+Zse2qxTadu8TalLXuAESzLvFAvNVbkmSlvlzIQOLpBCmWI9wTOt+g==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@redis/client": "^1.0.0"
+ }
+ },
+ "node_modules/@scarf/scarf": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/@scarf/scarf/-/scarf-1.4.0.tgz",
+ "integrity": "sha512-xxeapPiUXdZAE3che6f3xogoJPeZgig6omHEy1rIY5WVsB3H2BHNnZH+gHG6x91SCWyQCzWGsuL2Hh3ClO5/qQ==",
+ "hasInstallScript": true,
+ "license": "Apache-2.0"
+ },
+ "node_modules/@sinclair/typebox": {
+ "version": "0.27.12",
+ "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.12.tgz",
+ "integrity": "sha512-hhyNJ+nbR6ZR7pToHvllEFun9TL0sbL+tk/ON75lo+Xas054uez98qRbsuNt7MBCyZKK4+8Yli/OAGZhmfBZ/g==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@sinonjs/commons": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
+ "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "type-detect": "4.0.8"
+ }
+ },
+ "node_modules/@sinonjs/fake-timers": {
+ "version": "10.3.0",
+ "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz",
+ "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "@sinonjs/commons": "^3.0.0"
+ }
+ },
+ "node_modules/@so-ric/colorspace": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/@so-ric/colorspace/-/colorspace-1.1.6.tgz",
+ "integrity": "sha512-/KiKkpHNOBgkFJwu9sh48LkHSMYGyuTcSFK/qMBdnOAlrRJzRSXAOFB5qwzaVQuDl8wAvHVMkaASQDReTahxuw==",
+ "license": "MIT",
+ "dependencies": {
+ "color": "^5.0.2",
+ "text-hex": "1.0.x"
+ }
+ },
+ "node_modules/@socket.io/component-emitter": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz",
+ "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==",
+ "license": "MIT"
+ },
+ "node_modules/@tootallnate/quickjs-emscripten": {
+ "version": "0.23.0",
+ "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz",
+ "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==",
+ "license": "MIT"
+ },
+ "node_modules/@types/babel__core": {
+ "version": "7.20.5",
+ "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz",
+ "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/parser": "^7.20.7",
+ "@babel/types": "^7.20.7",
+ "@types/babel__generator": "*",
+ "@types/babel__template": "*",
+ "@types/babel__traverse": "*"
+ }
+ },
+ "node_modules/@types/babel__generator": {
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz",
+ "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/types": "^7.0.0"
+ }
+ },
+ "node_modules/@types/babel__template": {
+ "version": "7.4.4",
+ "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz",
+ "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/parser": "^7.1.0",
+ "@babel/types": "^7.0.0"
+ }
+ },
+ "node_modules/@types/babel__traverse": {
+ "version": "7.28.0",
+ "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz",
+ "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/types": "^7.28.2"
+ }
+ },
+ "node_modules/@types/cors": {
+ "version": "2.8.19",
+ "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.19.tgz",
+ "integrity": "sha512-mFNylyeyqN93lfe/9CSxOGREz8cpzAhH+E93xJ4xWQf62V8sQ/24reV2nyzUWM6H6Xji+GGHpkbLe7pVoUEskg==",
+ "license": "MIT",
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/graceful-fs": {
+ "version": "4.1.9",
+ "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz",
+ "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/istanbul-lib-coverage": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz",
+ "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/istanbul-lib-report": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz",
+ "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/istanbul-lib-coverage": "*"
+ }
+ },
+ "node_modules/@types/istanbul-reports": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz",
+ "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/istanbul-lib-report": "*"
+ }
+ },
+ "node_modules/@types/json-schema": {
+ "version": "7.0.15",
+ "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz",
+ "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
+ "license": "MIT"
+ },
+ "node_modules/@types/node": {
+ "version": "26.1.2",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-26.1.2.tgz",
+ "integrity": "sha512-Vu4a5UFA9rIIFJ7rB/Vaafh9lrCQszopTCx6KjFboXTGQbPNasehVR5TEiithSDGyd1DEiUByggTZsg8jukeIg==",
+ "license": "MIT",
+ "dependencies": {
+ "undici-types": "~8.3.0"
+ }
+ },
+ "node_modules/@types/stack-utils": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz",
+ "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/triple-beam": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz",
+ "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==",
+ "license": "MIT"
+ },
+ "node_modules/@types/webidl-conversions": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz",
+ "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==",
+ "license": "MIT"
+ },
+ "node_modules/@types/whatwg-url": {
+ "version": "8.2.2",
+ "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz",
+ "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==",
+ "license": "MIT",
+ "dependencies": {
+ "@types/node": "*",
+ "@types/webidl-conversions": "*"
+ }
+ },
+ "node_modules/@types/ws": {
+ "version": "8.18.1",
+ "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz",
+ "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==",
+ "license": "MIT",
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/yargs": {
+ "version": "17.0.35",
+ "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.35.tgz",
+ "integrity": "sha512-qUHkeCyQFxMXg79wQfTtfndEC+N9ZZg76HJftDJp+qH2tV7Gj4OJi7l+PiWwJ+pWtW8GwSmqsDj/oymhrTWXjg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/yargs-parser": "*"
+ }
+ },
+ "node_modules/@types/yargs-parser": {
+ "version": "21.0.3",
+ "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz",
+ "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "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/accepts": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
+ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
+ "license": "MIT",
+ "dependencies": {
+ "mime-types": "~2.1.34",
+ "negotiator": "0.6.3"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/accepts/node_modules/negotiator": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "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==",
+ "license": "MIT",
+ "dependencies": {
+ "debug": "4"
+ },
+ "engines": {
+ "node": ">= 6.0.0"
+ }
+ },
+ "node_modules/agent-base/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/agent-base/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/ajv": {
+ "version": "8.20.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz",
+ "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==",
+ "license": "MIT",
+ "dependencies": {
+ "fast-deep-equal": "^3.1.3",
+ "fast-uri": "^3.0.1",
+ "json-schema-traverse": "^1.0.0",
+ "require-from-string": "^2.0.2"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/epoberezkin"
+ }
+ },
+ "node_modules/ajv-draft-04": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/ajv-draft-04/-/ajv-draft-04-1.0.0.tgz",
+ "integrity": "sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==",
+ "license": "MIT",
+ "peerDependencies": {
+ "ajv": "^8.5.0"
+ },
+ "peerDependenciesMeta": {
+ "ajv": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/ansi-escapes": {
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
+ "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "type-fest": "^0.21.3"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "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==",
+ "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==",
+ "license": "MIT",
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/anymatch": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
+ "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "normalize-path": "^3.0.0",
+ "picomatch": "^2.0.4"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "sprintf-js": "~1.0.2"
+ }
+ },
+ "node_modules/array-flatten": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
+ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==",
+ "license": "MIT"
+ },
+ "node_modules/asap": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
+ "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/ast-types": {
+ "version": "0.13.4",
+ "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz",
+ "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==",
+ "license": "MIT",
+ "dependencies": {
+ "tslib": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/async": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz",
+ "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==",
+ "license": "MIT"
+ },
+ "node_modules/asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
+ "license": "MIT"
+ },
+ "node_modules/axios": {
+ "version": "1.18.1",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.18.1.tgz",
+ "integrity": "sha512-3nTvFlvpn9Zu/RkHUqtc7/+al4UpRW5az71ap5zccp6e8RAYEzhMTecX8Dz1wWDYrPpUoB1HAQEGEAEvUr7S9g==",
+ "license": "MIT",
+ "dependencies": {
+ "follow-redirects": "^1.16.0",
+ "form-data": "^4.0.5",
+ "https-proxy-agent": "^5.0.1",
+ "proxy-from-env": "^2.1.0"
+ }
+ },
+ "node_modules/b4a": {
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.8.1.tgz",
+ "integrity": "sha512-aiqre1Nr0B/6DgE2N5vwTc+2/oQZ4Wh1t4NznYY4E00y8LCt6NqdRv81so00oo27D8MVKTpUa/MwUUtBLXCoDw==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "react-native-b4a": "*"
+ },
+ "peerDependenciesMeta": {
+ "react-native-b4a": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/babel-jest": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz",
+ "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/transform": "^29.7.0",
+ "@types/babel__core": "^7.1.14",
+ "babel-plugin-istanbul": "^6.1.1",
+ "babel-preset-jest": "^29.6.3",
+ "chalk": "^4.0.0",
+ "graceful-fs": "^4.2.9",
+ "slash": "^3.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.8.0"
+ }
+ },
+ "node_modules/babel-plugin-istanbul": {
+ "version": "6.1.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz",
+ "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.0.0",
+ "@istanbuljs/load-nyc-config": "^1.0.0",
+ "@istanbuljs/schema": "^0.1.2",
+ "istanbul-lib-instrument": "^5.0.4",
+ "test-exclude": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz",
+ "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "@babel/core": "^7.12.3",
+ "@babel/parser": "^7.14.7",
+ "@istanbuljs/schema": "^0.1.2",
+ "istanbul-lib-coverage": "^3.2.0",
+ "semver": "^6.3.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/babel-plugin-istanbul/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/babel-plugin-jest-hoist": {
+ "version": "29.6.3",
+ "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz",
+ "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/template": "^7.3.3",
+ "@babel/types": "^7.3.3",
+ "@types/babel__core": "^7.1.14",
+ "@types/babel__traverse": "^7.0.6"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/babel-preset-current-node-syntax": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz",
+ "integrity": "sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32Qc4iRiz425d8vM++2fg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/plugin-syntax-async-generators": "^7.8.4",
+ "@babel/plugin-syntax-bigint": "^7.8.3",
+ "@babel/plugin-syntax-class-properties": "^7.12.13",
+ "@babel/plugin-syntax-class-static-block": "^7.14.5",
+ "@babel/plugin-syntax-import-attributes": "^7.24.7",
+ "@babel/plugin-syntax-import-meta": "^7.10.4",
+ "@babel/plugin-syntax-json-strings": "^7.8.3",
+ "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
+ "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
+ "@babel/plugin-syntax-numeric-separator": "^7.10.4",
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
+ "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
+ "@babel/plugin-syntax-optional-chaining": "^7.8.3",
+ "@babel/plugin-syntax-private-property-in-object": "^7.14.5",
+ "@babel/plugin-syntax-top-level-await": "^7.14.5"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0 || ^8.0.0-0"
+ }
+ },
+ "node_modules/babel-preset-jest": {
+ "version": "29.6.3",
+ "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz",
+ "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "babel-plugin-jest-hoist": "^29.6.3",
+ "babel-preset-current-node-syntax": "^1.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.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/bare-events": {
+ "version": "2.9.1",
+ "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.9.1.tgz",
+ "integrity": "sha512-Z0oHEHAFDZkffN8Qc39zNZjQlMDkPJRyyyZieU1VH7u8c5S+qHZ2S8ixdKIAxEjfHO7FJxXmJWgteOghVanIsg==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "bare-abort-controller": "*"
+ },
+ "peerDependenciesMeta": {
+ "bare-abort-controller": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/bare-fs": {
+ "version": "4.7.4",
+ "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-4.7.4.tgz",
+ "integrity": "sha512-y1kC+ffIx/tPLdTE693uNjHfzTfr+ravR5tvWlMXe25nELbkqV400S71qHDwbkAQ1FVEZobB1NFRzFbCCcyBCQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "bare-events": "^2.5.4",
+ "bare-path": "^3.0.0",
+ "bare-stream": "^2.6.4",
+ "bare-url": "^2.2.2",
+ "fast-fifo": "^1.3.2"
+ },
+ "engines": {
+ "bare": ">=1.16.0"
+ },
+ "peerDependencies": {
+ "bare-buffer": "*"
+ },
+ "peerDependenciesMeta": {
+ "bare-buffer": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/bare-path": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/bare-path/-/bare-path-3.1.1.tgz",
+ "integrity": "sha512-JprUlveX3QjApC1cTpsUOiscADftCGVWkzitbHsRqv84hzYwYHw2mbluddsq5TvI8mH/8Ov1f4BiMAdcB0oYnQ==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/bare-stream": {
+ "version": "2.13.3",
+ "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.13.3.tgz",
+ "integrity": "sha512-Kc+brLqvEqGkjyfiwJmImAOqLZL7OsoLKuavx+hJjgVV3nLTOjloJyPMFxjUPerGGHrNH0fLU06jjykMLWrERQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "b4a": "^1.8.1",
+ "streamx": "^2.25.0",
+ "teex": "^1.0.1"
+ },
+ "peerDependencies": {
+ "bare-abort-controller": "*",
+ "bare-buffer": "*",
+ "bare-events": "*"
+ },
+ "peerDependenciesMeta": {
+ "bare-abort-controller": {
+ "optional": true
+ },
+ "bare-buffer": {
+ "optional": true
+ },
+ "bare-events": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/bare-url": {
+ "version": "2.4.6",
+ "resolved": "https://registry.npmjs.org/bare-url/-/bare-url-2.4.6.tgz",
+ "integrity": "sha512-iQxPClE07hETVpbRoX7JXX3v/ZQViCxe/SYCxylRLzdEx1xJAufPptfiOqR8tqiCtmbtMDANKWszzjLu1PMAZQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "bare-path": "^3.0.0"
+ }
+ },
+ "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==",
+ "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/base64id": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz",
+ "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==",
+ "license": "MIT",
+ "engines": {
+ "node": "^4.5.0 || >= 5.9"
+ }
+ },
+ "node_modules/baseline-browser-mapping": {
+ "version": "2.11.6",
+ "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.6.tgz",
+ "integrity": "sha512-69D/imtToCsIcAl8WBS2YaRwA4jO/j0HhU+hELqMEu9f54MoUtI6+XH5mrKU8rEFNEk/Ui1I2MK4/JkWacclGw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "bin": {
+ "baseline-browser-mapping": "dist/cli.cjs"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/basic-ftp": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.3.1.tgz",
+ "integrity": "sha512-bopVNp6ugyA150DDuZfPFdt1KZ5a94ZDiwX4hMgZDzF+GttD80lEy8kj98kbyhLXnPvhtIo93mdnLIjpCAeeOw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
+ "node_modules/bcryptjs": {
+ "version": "2.4.3",
+ "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz",
+ "integrity": "sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==",
+ "license": "MIT"
+ },
+ "node_modules/binary-extensions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz",
+ "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/body-parser": {
+ "version": "1.20.6",
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.6.tgz",
+ "integrity": "sha512-p5tAzS57i5MV9fZFDj9LeIiTZEufbSe2eDozP+ElheSUq1m74CRq1jI4mYNDdVs9vQztXFLuk/Gd6BWTdwRJ5g==",
+ "license": "MIT",
+ "dependencies": {
+ "bytes": "~3.1.2",
+ "content-type": "~1.0.5",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "~1.2.0",
+ "http-errors": "~2.0.1",
+ "iconv-lite": "~0.4.24",
+ "on-finished": "~2.4.1",
+ "qs": "~6.15.1",
+ "raw-body": "~2.5.3",
+ "type-is": "~1.6.18",
+ "unpipe": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
+ }
+ },
+ "node_modules/body-parser/node_modules/iconv-lite": {
+ "version": "0.4.24",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
+ "license": "MIT",
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/boolbase": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
+ "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==",
+ "license": "ISC"
+ },
+ "node_modules/brace-expansion": {
+ "version": "1.1.16",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz",
+ "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/braces": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "fill-range": "^7.1.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/browserslist": {
+ "version": "4.28.7",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.7.tgz",
+ "integrity": "sha512-JxV13hNrFxqjOc8alRbq9dK1MM79NEXYpma2B2J4wAtpWS5zIEIKqWPGCl7N4o7Uc7B7itylh7SuDujATRyyTw==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "baseline-browser-mapping": "^2.10.44",
+ "caniuse-lite": "^1.0.30001806",
+ "electron-to-chromium": "^1.5.393",
+ "node-releases": "^2.0.51",
+ "update-browserslist-db": "^1.2.3"
+ },
+ "bin": {
+ "browserslist": "cli.js"
+ },
+ "engines": {
+ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
+ }
+ },
+ "node_modules/bser": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
+ "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "node-int64": "^0.4.0"
+ }
+ },
+ "node_modules/bson": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/bson/-/bson-5.5.1.tgz",
+ "integrity": "sha512-ix0EwukN2EpC0SRWIj/7B5+A6uQMQy6KMREI9qQqvgpkV2frH63T0UDVd1SYedL6dNCmDBYB3QtXi4ISk9YT+g==",
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=14.20.1"
+ }
+ },
+ "node_modules/buffer": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
+ "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
+ "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-equal-constant-time": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz",
+ "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==",
+ "license": "BSD-3-Clause"
+ },
+ "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/bull": {
+ "version": "4.16.5",
+ "resolved": "https://registry.npmjs.org/bull/-/bull-4.16.5.tgz",
+ "integrity": "sha512-lDsx2BzkKe7gkCYiT5Acj02DpTwDznl/VNN7Psn7M3USPG7Vs/BaClZJJTAG+ufAR9++N1/NiUTdaFBWDIl5TQ==",
+ "license": "MIT",
+ "dependencies": {
+ "cron-parser": "^4.9.0",
+ "get-port": "^5.1.1",
+ "ioredis": "^5.3.2",
+ "lodash": "^4.17.21",
+ "msgpackr": "^1.11.2",
+ "semver": "^7.5.2",
+ "uuid": "^8.3.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/bull/node_modules/uuid": {
+ "version": "8.3.2",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
+ "deprecated": "uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028).",
+ "license": "MIT",
+ "bin": {
+ "uuid": "dist/bin/uuid"
+ }
+ },
+ "node_modules/bytes": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
+ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.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==",
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/call-bound": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
+ "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
+ "license": "MIT",
+ "dependencies": {
+ "call-bind-apply-helpers": "^1.0.2",
+ "get-intrinsic": "^1.3.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/call-me-maybe": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz",
+ "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==",
+ "license": "MIT"
+ },
+ "node_modules/callsites": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/camelcase": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/caniuse-lite": {
+ "version": "1.0.30001806",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001806.tgz",
+ "integrity": "sha512-72Cuvd95zbSYPKq6Fhg8eDJRlzgWDf7/mtoZv6Qe/DYNCEBdNxoA3+rZAU2ZhGCpZlns3EssFavaZomckT5Uuw==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "CC-BY-4.0"
+ },
+ "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/char-regex": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz",
+ "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/cheerio": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.2.0.tgz",
+ "integrity": "sha512-WDrybc/gKFpTYQutKIK6UvfcuxijIZfMfXaYm8NMsPQxSYvf+13fXUJ4rztGGbJcBQ/GF55gvrZ0Bc0bj/mqvg==",
+ "license": "MIT",
+ "dependencies": {
+ "cheerio-select": "^2.1.0",
+ "dom-serializer": "^2.0.0",
+ "domhandler": "^5.0.3",
+ "domutils": "^3.2.2",
+ "encoding-sniffer": "^0.2.1",
+ "htmlparser2": "^10.1.0",
+ "parse5": "^7.3.0",
+ "parse5-htmlparser2-tree-adapter": "^7.1.0",
+ "parse5-parser-stream": "^7.1.2",
+ "undici": "^7.19.0",
+ "whatwg-mimetype": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=20.18.1"
+ },
+ "funding": {
+ "url": "https://github.com/cheeriojs/cheerio?sponsor=1"
+ }
+ },
+ "node_modules/cheerio-select": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz",
+ "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==",
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "boolbase": "^1.0.0",
+ "css-select": "^5.1.0",
+ "css-what": "^6.1.0",
+ "domelementtype": "^2.3.0",
+ "domhandler": "^5.0.3",
+ "domutils": "^3.0.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/fb55"
+ }
+ },
+ "node_modules/chokidar": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
+ "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.2",
+ "glob-parent": "~5.1.2",
+ "is-binary-path": "~2.1.0",
+ "is-glob": "~4.0.1",
+ "normalize-path": "~3.0.0",
+ "readdirp": "~3.6.0"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/chromium-bidi": {
+ "version": "0.5.8",
+ "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.5.8.tgz",
+ "integrity": "sha512-blqh+1cEQbHBKmok3rVJkBlBxt9beKBgOsxbFgs7UJcoVbbeZ+K7+6liAsjgpc8l1Xd55cQUy14fXZdGSb4zIw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "mitt": "3.0.1",
+ "urlpattern-polyfill": "10.0.0"
+ },
+ "peerDependencies": {
+ "devtools-protocol": "*"
+ }
+ },
+ "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/cjs-module-lexer": {
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz",
+ "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "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==",
+ "license": "ISC",
+ "dependencies": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.1",
+ "wrap-ansi": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/cluster-key-slot": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.1.tgz",
+ "integrity": "sha512-rwHwUfXL40Chm1r08yrhU3qpUvdVlgkKNeyeGPOxnW8/SyVDvgRaed/Uz54AqWNaTCAThlj6QAs3TZcKI0xDEw==",
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/co": {
+ "version": "4.6.0",
+ "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
+ "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "iojs": ">= 1.0.0",
+ "node": ">= 0.12.0"
+ }
+ },
+ "node_modules/collect-v8-coverage": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz",
+ "integrity": "sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/color": {
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/color/-/color-5.0.3.tgz",
+ "integrity": "sha512-ezmVcLR3xAVp8kYOm4GS45ZLLgIE6SPAFoduLr6hTDajwb3KZ2F46gulK3XpcwRFb5KKGCSezCBAY4Dw4HsyXA==",
+ "license": "MIT",
+ "dependencies": {
+ "color-convert": "^3.1.3",
+ "color-string": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "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==",
+ "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==",
+ "license": "MIT"
+ },
+ "node_modules/color-string": {
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/color-string/-/color-string-2.1.4.tgz",
+ "integrity": "sha512-Bb6Cq8oq0IjDOe8wJmi4JeNn763Xs9cfrBcaylK1tPypWzyoy2G3l90v9k64kjphl/ZJjPIShFztenRomi8WTg==",
+ "license": "MIT",
+ "dependencies": {
+ "color-name": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/color-string/node_modules/color-name": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-2.1.1.tgz",
+ "integrity": "sha512-p2FdgwVx1a9yWBHP2wI0VgShkDpgN4kZISkxdNipGBJWpa5G6b04OINlVWCyJj0JmfvcPrgqt95E9k8yvaOJFg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=12.20"
+ }
+ },
+ "node_modules/color/node_modules/color-convert": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-3.1.3.tgz",
+ "integrity": "sha512-fasDH2ont2GqF5HpyO4w0+BcewlhHEZOFn9c1ckZdHpJ56Qb7MHhH/IcJZbBGgvdtwdwNbLvxiBEdg336iA9Sg==",
+ "license": "MIT",
+ "dependencies": {
+ "color-name": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=14.6"
+ }
+ },
+ "node_modules/color/node_modules/color-name": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-2.1.1.tgz",
+ "integrity": "sha512-p2FdgwVx1a9yWBHP2wI0VgShkDpgN4kZISkxdNipGBJWpa5G6b04OINlVWCyJj0JmfvcPrgqt95E9k8yvaOJFg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=12.20"
+ }
+ },
+ "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==",
+ "license": "MIT",
+ "dependencies": {
+ "delayed-stream": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/commander": {
+ "version": "6.2.0",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.0.tgz",
+ "integrity": "sha512-zP4jEKbe8SHzKJYQmq8Y9gYjtO/POJLgIdKgV7B9qNmABVFVc+ctqSX6iXh4mCpJfRBOabiZ2YKPg8ciDw6C+Q==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/component-emitter": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz",
+ "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/compressible": {
+ "version": "2.0.18",
+ "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz",
+ "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==",
+ "license": "MIT",
+ "dependencies": {
+ "mime-db": ">= 1.43.0 < 2"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/compression": {
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/compression/-/compression-1.8.1.tgz",
+ "integrity": "sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w==",
+ "license": "MIT",
+ "dependencies": {
+ "bytes": "3.1.2",
+ "compressible": "~2.0.18",
+ "debug": "2.6.9",
+ "negotiator": "~0.6.4",
+ "on-headers": "~1.1.0",
+ "safe-buffer": "5.2.1",
+ "vary": "~1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.8.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/content-disposition": {
+ "version": "0.5.4",
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
+ "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
+ "license": "MIT",
+ "dependencies": {
+ "safe-buffer": "5.2.1"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/content-type": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
+ "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/cookie": {
+ "version": "0.7.2",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz",
+ "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/cookie-signature": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz",
+ "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==",
+ "license": "MIT"
+ },
+ "node_modules/cookiejar": {
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz",
+ "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/cors": {
+ "version": "2.8.6",
+ "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.6.tgz",
+ "integrity": "sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw==",
+ "license": "MIT",
+ "dependencies": {
+ "object-assign": "^4",
+ "vary": "^1"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/express"
+ }
+ },
+ "node_modules/cosmiconfig": {
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz",
+ "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==",
+ "license": "MIT",
+ "dependencies": {
+ "env-paths": "^2.2.1",
+ "import-fresh": "^3.3.0",
+ "js-yaml": "^4.1.0",
+ "parse-json": "^5.2.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/d-fischer"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.9.5"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/cosmiconfig/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==",
+ "license": "Python-2.0"
+ },
+ "node_modules/cosmiconfig/node_modules/js-yaml": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz",
+ "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/puzrin"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/nodeca"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "argparse": "^2.0.1"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "node_modules/create-jest": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz",
+ "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/types": "^29.6.3",
+ "chalk": "^4.0.0",
+ "exit": "^0.1.2",
+ "graceful-fs": "^4.2.9",
+ "jest-config": "^29.7.0",
+ "jest-util": "^29.7.0",
+ "prompts": "^2.0.1"
+ },
+ "bin": {
+ "create-jest": "bin/create-jest.js"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/cron-parser": {
+ "version": "4.9.0",
+ "resolved": "https://registry.npmjs.org/cron-parser/-/cron-parser-4.9.0.tgz",
+ "integrity": "sha512-p0SaNjrHOnQeR8/VnfGbmg9te2kfyYSQ7Sc/j/6DtPL3JQvKxmjO9TSjNFpujqV3vEYYBvNNvXSxzyksBWAx1Q==",
+ "license": "MIT",
+ "dependencies": {
+ "luxon": "^3.2.1"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
+ "node_modules/cross-fetch": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz",
+ "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==",
+ "license": "MIT",
+ "dependencies": {
+ "node-fetch": "^2.6.12"
+ }
+ },
+ "node_modules/cross-spawn": {
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
+ "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
+ "license": "MIT",
+ "dependencies": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/css-select": {
+ "version": "5.2.2",
+ "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.2.2.tgz",
+ "integrity": "sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==",
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "boolbase": "^1.0.0",
+ "css-what": "^6.1.0",
+ "domhandler": "^5.0.2",
+ "domutils": "^3.0.1",
+ "nth-check": "^2.0.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/fb55"
+ }
+ },
+ "node_modules/css-what": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.2.2.tgz",
+ "integrity": "sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==",
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">= 6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/fb55"
+ }
+ },
+ "node_modules/data-uri-to-buffer": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz",
+ "integrity": "sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "license": "MIT",
+ "dependencies": {
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/dedent": {
+ "version": "1.7.2",
+ "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.7.2.tgz",
+ "integrity": "sha512-WzMx3mW98SN+zn3hgemf4OzdmyNhhhKz5Ay0pUfQiMQ3e1g+xmTJWp/pKdwKVXhdSkAEGIIzqeuWrL3mV/AXbA==",
+ "dev": true,
+ "license": "MIT",
+ "peerDependencies": {
+ "babel-plugin-macros": "^3.1.0"
+ },
+ "peerDependenciesMeta": {
+ "babel-plugin-macros": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/deepmerge": {
+ "version": "4.3.1",
+ "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
+ "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/degenerator": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz",
+ "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==",
+ "license": "MIT",
+ "dependencies": {
+ "ast-types": "^0.13.4",
+ "escodegen": "^2.1.0",
+ "esprima": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/denque": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz",
+ "integrity": "sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==",
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/depd": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/destroy": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
+ "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
+ }
+ },
+ "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==",
+ "license": "Apache-2.0",
+ "optional": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/detect-newline": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz",
+ "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/devtools-protocol": {
+ "version": "0.0.1232444",
+ "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1232444.tgz",
+ "integrity": "sha512-pM27vqEfxSxRkTMnF+XCmxSEb6duO5R+t8A9DEEJgy4Wz2RVanje2mmj99B6A3zv2r/qGfYlOvYznUhuokizmg==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/dezalgo": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz",
+ "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "asap": "^2.0.0",
+ "wrappy": "1"
+ }
+ },
+ "node_modules/diff-sequences": {
+ "version": "29.6.3",
+ "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz",
+ "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/doctrine": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
+ "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "esutils": "^2.0.2"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/dom-serializer": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
+ "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==",
+ "license": "MIT",
+ "dependencies": {
+ "domelementtype": "^2.3.0",
+ "domhandler": "^5.0.2",
+ "entities": "^4.2.0"
+ },
+ "funding": {
+ "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
+ }
+ },
+ "node_modules/domelementtype": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
+ "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/fb55"
+ }
+ ],
+ "license": "BSD-2-Clause"
+ },
+ "node_modules/domhandler": {
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz",
+ "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "domelementtype": "^2.3.0"
+ },
+ "engines": {
+ "node": ">= 4"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/domhandler?sponsor=1"
+ }
+ },
+ "node_modules/domutils": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz",
+ "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==",
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "dom-serializer": "^2.0.0",
+ "domelementtype": "^2.3.0",
+ "domhandler": "^5.0.3"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/domutils?sponsor=1"
+ }
+ },
+ "node_modules/dotenv": {
+ "version": "16.6.1",
+ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz",
+ "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==",
+ "license": "BSD-2-Clause",
+ "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==",
+ "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/ecdsa-sig-formatter": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz",
+ "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "node_modules/ee-first": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
+ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==",
+ "license": "MIT"
+ },
+ "node_modules/electron-to-chromium": {
+ "version": "1.5.397",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.397.tgz",
+ "integrity": "sha512-khGTy9U9x02KEtsKM8vx5A62BsRmcOsIgDpWr1ImE32Ax8GxHGPHZf+Eu9H8zOOyHJnB0jTbseyTHbq2XCT8yw==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/emittery": {
+ "version": "0.13.1",
+ "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz",
+ "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sindresorhus/emittery?sponsor=1"
+ }
+ },
+ "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==",
+ "license": "MIT"
+ },
+ "node_modules/enabled": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz",
+ "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==",
+ "license": "MIT"
+ },
+ "node_modules/encodeurl": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
+ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/encoding-sniffer": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.1.tgz",
+ "integrity": "sha512-5gvq20T6vfpekVtqrYQsSCFZ1wEg5+wW0/QaZMWkFr6BqD3NfKs0rLCx4rrVlSWJeZb5NBJgVLswK/w2MWU+Gw==",
+ "license": "MIT",
+ "dependencies": {
+ "iconv-lite": "^0.6.3",
+ "whatwg-encoding": "^3.1.1"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/encoding-sniffer?sponsor=1"
+ }
+ },
+ "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/engine.io": {
+ "version": "6.6.9",
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.9.tgz",
+ "integrity": "sha512-clKkw4C7nJ22mGgoVcCg6V/W/TxdNyIOTr89k2ONZu81qqkddPFDF0LXcbAwhzPD8DjkiRCjzuiO6Y+fkpD4vg==",
+ "license": "MIT",
+ "dependencies": {
+ "@types/cors": "^2.8.12",
+ "@types/node": ">=10.0.0",
+ "@types/ws": "^8.5.12",
+ "accepts": "~1.3.4",
+ "base64id": "2.0.0",
+ "cookie": "~0.7.2",
+ "cors": "~2.8.5",
+ "debug": "~4.4.1",
+ "engine.io-parser": "~5.2.1",
+ "ws": "~8.21.0"
+ },
+ "engines": {
+ "node": ">=10.2.0"
+ }
+ },
+ "node_modules/engine.io-parser": {
+ "version": "5.2.3",
+ "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.3.tgz",
+ "integrity": "sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
+ "node_modules/engine.io/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/engine.io/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/engine.io/node_modules/ws": {
+ "version": "8.21.1",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.1.tgz",
+ "integrity": "sha512-+0NTnW77fFN/DjQi6k/Sq/Yvk4Sgajw7urW8V+asjXnRgDs9gyGkdb7EzgfhA4goXsRIZKE28fzIXBHEzhuiWw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/entities": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
+ "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=0.12"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/entities?sponsor=1"
+ }
+ },
+ "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/error-ex": {
+ "version": "1.3.4",
+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz",
+ "integrity": "sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==",
+ "license": "MIT",
+ "dependencies": {
+ "is-arrayish": "^0.2.1"
+ }
+ },
+ "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==",
+ "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==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/es-object-atoms": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz",
+ "integrity": "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==",
+ "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==",
+ "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/escalade": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
+ "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/escape-html": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
+ "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==",
+ "license": "MIT"
+ },
+ "node_modules/escape-string-regexp": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
+ "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/escodegen": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz",
+ "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==",
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "esprima": "^4.0.1",
+ "estraverse": "^5.2.0",
+ "esutils": "^2.0.2"
+ },
+ "bin": {
+ "escodegen": "bin/escodegen.js",
+ "esgenerate": "bin/esgenerate.js"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "optionalDependencies": {
+ "source-map": "~0.6.1"
+ }
+ },
+ "node_modules/esprima": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
+ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
+ "license": "BSD-2-Clause",
+ "bin": {
+ "esparse": "bin/esparse.js",
+ "esvalidate": "bin/esvalidate.js"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/estraverse": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/esutils": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
+ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/etag": {
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
+ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/events-universal": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/events-universal/-/events-universal-1.0.1.tgz",
+ "integrity": "sha512-LUd5euvbMLpwOF8m6ivPCbhQeSiYVNb8Vs0fQ8QjXo0JTkEHpz8pxdQf0gStltaPpw0Cca8b39KxvK9cfKRiAw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "bare-events": "^2.7.0"
+ }
+ },
+ "node_modules/execa": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz",
+ "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "cross-spawn": "^7.0.3",
+ "get-stream": "^6.0.0",
+ "human-signals": "^2.1.0",
+ "is-stream": "^2.0.0",
+ "merge-stream": "^2.0.0",
+ "npm-run-path": "^4.0.1",
+ "onetime": "^5.1.2",
+ "signal-exit": "^3.0.3",
+ "strip-final-newline": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sindresorhus/execa?sponsor=1"
+ }
+ },
+ "node_modules/exit": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
+ "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/expect": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz",
+ "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/expect-utils": "^29.7.0",
+ "jest-get-type": "^29.6.3",
+ "jest-matcher-utils": "^29.7.0",
+ "jest-message-util": "^29.7.0",
+ "jest-util": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/express": {
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/express/-/express-4.22.2.tgz",
+ "integrity": "sha512-IuL+Elrou2ZvCFHs18/CIzy2Nzvo25nZ1/D2eIZlz7c+QUayAcYoiM2BthCjs+EBHVpjYjcuLDAiCWgeIX3X1Q==",
+ "license": "MIT",
+ "dependencies": {
+ "accepts": "~1.3.8",
+ "array-flatten": "1.1.1",
+ "body-parser": "~1.20.5",
+ "content-disposition": "~0.5.4",
+ "content-type": "~1.0.4",
+ "cookie": "~0.7.1",
+ "cookie-signature": "~1.0.6",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "encodeurl": "~2.0.0",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "finalhandler": "~1.3.1",
+ "fresh": "~0.5.2",
+ "http-errors": "~2.0.0",
+ "merge-descriptors": "1.0.3",
+ "methods": "~1.1.2",
+ "on-finished": "~2.4.1",
+ "parseurl": "~1.3.3",
+ "path-to-regexp": "~0.1.12",
+ "proxy-addr": "~2.0.7",
+ "qs": "~6.15.1",
+ "range-parser": "~1.2.1",
+ "safe-buffer": "5.2.1",
+ "send": "~0.19.0",
+ "serve-static": "~1.16.2",
+ "setprototypeof": "1.2.0",
+ "statuses": "~2.0.1",
+ "type-is": "~1.6.18",
+ "utils-merge": "1.0.1",
+ "vary": "~1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.10.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/express"
+ }
+ },
+ "node_modules/express-rate-limit": {
+ "version": "7.5.1",
+ "resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-7.5.1.tgz",
+ "integrity": "sha512-7iN8iPMDzOMHPUYllBEsQdWVB6fPDMPqwjBaFrgr4Jgr/+okjvzAy+UHlYYL/Vs0OsOrMkwS6PJDkFlJwoxUnw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 16"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/express-rate-limit"
+ },
+ "peerDependencies": {
+ "express": ">= 4.11"
+ }
+ },
+ "node_modules/express-validator": {
+ "version": "7.3.2",
+ "resolved": "https://registry.npmjs.org/express-validator/-/express-validator-7.3.2.tgz",
+ "integrity": "sha512-ctLw1Vl6dXVH62dIQMDdTAQkrh480mkFuG6/SGXOaVlwPNukhRAe7EgJIMJ2TSAni8iwHBRp530zAZE5ZPF2IA==",
+ "license": "MIT",
+ "dependencies": {
+ "lodash": "^4.18.1",
+ "validator": "~13.15.23"
+ },
+ "engines": {
+ "node": ">= 8.0.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/extract-zip/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/extract-zip/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/extract-zip/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/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==",
+ "license": "MIT"
+ },
+ "node_modules/fast-fifo": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz",
+ "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==",
+ "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/fast-safe-stringify": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz",
+ "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/fast-uri": {
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.4.tgz",
+ "integrity": "sha512-8JnbkQ4juDyvYs4mgFGQqg4yCYtFDtUtmp2QIQq11ZZe5CFQ5wcqm1rqDgAh/QdMySuBnPzMUiJUNZG5N/AiQw==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/fastify"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/fastify"
+ }
+ ],
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/fb-watchman": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz",
+ "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "bser": "2.1.1"
+ }
+ },
+ "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/fecha": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz",
+ "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==",
+ "license": "MIT"
+ },
+ "node_modules/fill-range": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "to-regex-range": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/finalhandler": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.2.tgz",
+ "integrity": "sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg==",
+ "license": "MIT",
+ "dependencies": {
+ "debug": "2.6.9",
+ "encodeurl": "~2.0.0",
+ "escape-html": "~1.0.3",
+ "on-finished": "~2.4.1",
+ "parseurl": "~1.3.3",
+ "statuses": "~2.0.2",
+ "unpipe": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/find-up": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "locate-path": "^5.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/fn.name": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz",
+ "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==",
+ "license": "MIT"
+ },
+ "node_modules/follow-redirects": {
+ "version": "1.16.0",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.0.tgz",
+ "integrity": "sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==",
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://github.com/sponsors/RubenVerborgh"
+ }
+ ],
+ "license": "MIT",
+ "engines": {
+ "node": ">=4.0"
+ },
+ "peerDependenciesMeta": {
+ "debug": {
+ "optional": true
+ }
+ }
+ },
+ "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==",
+ "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==",
+ "license": "ISC",
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/form-data": {
+ "version": "4.0.6",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.6.tgz",
+ "integrity": "sha512-vKatAh4SlVfgbv+YtmhiRjhEMJsYpsG1Y2rMQtR+SVSbytsSD1YGzDIcrAJmdFec88u/+VoGmxnl+80gL1tRCQ==",
+ "license": "MIT",
+ "dependencies": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.8",
+ "es-set-tostringtag": "^2.1.0",
+ "hasown": "^2.0.4",
+ "mime-types": "^2.1.35"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/formidable": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.5.tgz",
+ "integrity": "sha512-Oz5Hwvwak/DCaXVVUtPn4oLMLLy1CdclLKO1LFgU7XzDpVMUU5UjlSLpGMocyQNNk8F6IJW9M/YdooSn2MRI+Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@paralleldrive/cuid2": "^2.2.2",
+ "dezalgo": "^1.0.4",
+ "once": "^1.4.0",
+ "qs": "^6.11.0"
+ },
+ "funding": {
+ "url": "https://ko-fi.com/tunnckoCore/commissions"
+ }
+ },
+ "node_modules/forwarded": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
+ "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/fresh": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
+ "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "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/fsevents": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
+ "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
+ "dev": true,
+ "hasInstallScript": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "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==",
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/generic-pool": {
+ "version": "3.9.0",
+ "resolved": "https://registry.npmjs.org/generic-pool/-/generic-pool-3.9.0.tgz",
+ "integrity": "sha512-hymDOu5B53XvN4QT9dBmZxPX4CWhBPPLguTZ9MMFeFa/Kg0xWVfylOVNlJji/E7yTZWFd/q9GO5TxDLq156D7g==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 4"
+ }
+ },
+ "node_modules/gensync": {
+ "version": "1.0.0-beta.2",
+ "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
+ "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "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==",
+ "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==",
+ "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-package-type": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
+ "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8.0.0"
+ }
+ },
+ "node_modules/get-port": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz",
+ "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "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==",
+ "license": "MIT",
+ "dependencies": {
+ "dunder-proto": "^1.0.1",
+ "es-object-atoms": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/get-stream": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
+ "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/get-uri": {
+ "version": "6.0.5",
+ "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.5.tgz",
+ "integrity": "sha512-b1O07XYq8eRuVzBNgJLstU6FYc1tS6wnMtF1I1D9lE8LxZSOGZ7LhxN54yPP6mGw5f2CkXY2BQUL9Fx41qvcIg==",
+ "license": "MIT",
+ "dependencies": {
+ "basic-ftp": "^5.0.2",
+ "data-uri-to-buffer": "^6.0.2",
+ "debug": "^4.3.4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/get-uri/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/get-uri/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/glob": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+ "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me",
+ "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-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/gopd": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
+ "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "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==",
+ "dev": true,
+ "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-symbols": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
+ "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
+ "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==",
+ "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.4",
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz",
+ "integrity": "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==",
+ "license": "MIT",
+ "dependencies": {
+ "function-bind": "^1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/helmet": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/helmet/-/helmet-7.2.0.tgz",
+ "integrity": "sha512-ZRiwvN089JfMXokizgqEPXsl2Guk094yExfoDXR0cBYWxtBbaSww/w+vT4WEJsBW2iTUi1GgZ6swmoug3Oy4Xw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/html-escaper": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
+ "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/htmlparser2": {
+ "version": "10.1.0",
+ "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.1.0.tgz",
+ "integrity": "sha512-VTZkM9GWRAtEpveh7MSF6SjjrpNVNNVJfFup7xTY3UpFtm67foy9HDVXneLtFVt4pMz5kZtgNcvCniNFb1hlEQ==",
+ "funding": [
+ "https://github.com/fb55/htmlparser2?sponsor=1",
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/fb55"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "domelementtype": "^2.3.0",
+ "domhandler": "^5.0.3",
+ "domutils": "^3.2.2",
+ "entities": "^7.0.1"
+ }
+ },
+ "node_modules/htmlparser2/node_modules/entities": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz",
+ "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==",
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=0.12"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/entities?sponsor=1"
+ }
+ },
+ "node_modules/http-errors": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz",
+ "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==",
+ "license": "MIT",
+ "dependencies": {
+ "depd": "~2.0.0",
+ "inherits": "~2.0.4",
+ "setprototypeof": "~1.2.0",
+ "statuses": "~2.0.2",
+ "toidentifier": "~1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/express"
+ }
+ },
+ "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==",
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.1.0",
+ "debug": "^4.3.4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/http-proxy-agent/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==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/http-proxy-agent/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/http-proxy-agent/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/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==",
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "6",
+ "debug": "4"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/https-proxy-agent/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/https-proxy-agent/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/human-signals": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
+ "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=10.17.0"
+ }
+ },
+ "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==",
+ "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==",
+ "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/ignore-by-default": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz",
+ "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/import-fresh": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz",
+ "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==",
+ "license": "MIT",
+ "dependencies": {
+ "parent-module": "^1.0.0",
+ "resolve-from": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/import-fresh/node_modules/resolve-from": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/import-local": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz",
+ "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "pkg-dir": "^4.2.0",
+ "resolve-cwd": "^3.0.0"
+ },
+ "bin": {
+ "import-local-fixture": "fixtures/cli.js"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "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/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==",
+ "license": "ISC"
+ },
+ "node_modules/ioredis": {
+ "version": "5.11.1",
+ "resolved": "https://registry.npmjs.org/ioredis/-/ioredis-5.11.1.tgz",
+ "integrity": "sha512-ehuGcf94bQXhfagULNXrJdfnWO38v070jxSx/qE87Kjzmu2fU7ro5EFAb+OPituLqgfyuQaym5DlrNydW2sJ9A==",
+ "license": "MIT",
+ "dependencies": {
+ "@ioredis/commands": "1.10.0",
+ "cluster-key-slot": "1.1.1",
+ "debug": "4.4.3",
+ "denque": "2.1.0",
+ "redis-errors": "1.2.0",
+ "redis-parser": "3.0.0",
+ "standard-as-callback": "2.1.0"
+ },
+ "engines": {
+ "node": ">=12.22.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/ioredis"
+ }
+ },
+ "node_modules/ioredis/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/ioredis/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/ip-address": {
+ "version": "10.3.1",
+ "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.3.1.tgz",
+ "integrity": "sha512-1e9d3kb97NHJTIJDZW9rKqW2h6+dFa50Dy0fpPSMQp2ADje5gvKsXmdiK6dwY5t76TaTt5+P5N1Y/LoToIxP6g==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 12"
+ }
+ },
+ "node_modules/ipaddr.js": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
+ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
+ "node_modules/is-arrayish": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
+ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==",
+ "license": "MIT"
+ },
+ "node_modules/is-binary-path": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
+ "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "binary-extensions": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/is-core-module": {
+ "version": "2.16.2",
+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.2.tgz",
+ "integrity": "sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "hasown": "^2.0.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "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==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/is-generator-fn": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz",
+ "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/is-glob": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-extglob": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-number": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.12.0"
+ }
+ },
+ "node_modules/is-stream": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/isexe": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
+ "license": "ISC"
+ },
+ "node_modules/istanbul-lib-coverage": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz",
+ "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/istanbul-lib-instrument": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz",
+ "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "@babel/core": "^7.23.9",
+ "@babel/parser": "^7.23.9",
+ "@istanbuljs/schema": "^0.1.3",
+ "istanbul-lib-coverage": "^3.2.0",
+ "semver": "^7.5.4"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/istanbul-lib-report": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz",
+ "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "istanbul-lib-coverage": "^3.0.0",
+ "make-dir": "^4.0.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/istanbul-lib-source-maps": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz",
+ "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "debug": "^4.1.1",
+ "istanbul-lib-coverage": "^3.0.0",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/istanbul-lib-source-maps/node_modules/debug": {
+ "version": "4.4.3",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/istanbul-lib-source-maps/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==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/istanbul-reports": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz",
+ "integrity": "sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "html-escaper": "^2.0.0",
+ "istanbul-lib-report": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jackspeak": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.2.3.tgz",
+ "integrity": "sha512-ykkVRwrYvFm1nb2AJfKKYPr0emF6IiXDYUaFx4Zn9ZuIH7MrzEZ3sD5RlqGXNRpHtvUHJyOnCEFxOlNDtGo7wg==",
+ "license": "BlueOak-1.0.0",
+ "dependencies": {
+ "@isaacs/cliui": "^9.0.0"
+ },
+ "engines": {
+ "node": "20 || >=22"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/jest": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz",
+ "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/core": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "import-local": "^3.0.2",
+ "jest-cli": "^29.7.0"
+ },
+ "bin": {
+ "jest": "bin/jest.js"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
+ },
+ "peerDependenciesMeta": {
+ "node-notifier": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/jest-changed-files": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz",
+ "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "execa": "^5.0.0",
+ "jest-util": "^29.7.0",
+ "p-limit": "^3.1.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-circus": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz",
+ "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/environment": "^29.7.0",
+ "@jest/expect": "^29.7.0",
+ "@jest/test-result": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "@types/node": "*",
+ "chalk": "^4.0.0",
+ "co": "^4.6.0",
+ "dedent": "^1.0.0",
+ "is-generator-fn": "^2.0.0",
+ "jest-each": "^29.7.0",
+ "jest-matcher-utils": "^29.7.0",
+ "jest-message-util": "^29.7.0",
+ "jest-runtime": "^29.7.0",
+ "jest-snapshot": "^29.7.0",
+ "jest-util": "^29.7.0",
+ "p-limit": "^3.1.0",
+ "pretty-format": "^29.7.0",
+ "pure-rand": "^6.0.0",
+ "slash": "^3.0.0",
+ "stack-utils": "^2.0.3"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-cli": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz",
+ "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/core": "^29.7.0",
+ "@jest/test-result": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "chalk": "^4.0.0",
+ "create-jest": "^29.7.0",
+ "exit": "^0.1.2",
+ "import-local": "^3.0.2",
+ "jest-config": "^29.7.0",
+ "jest-util": "^29.7.0",
+ "jest-validate": "^29.7.0",
+ "yargs": "^17.3.1"
+ },
+ "bin": {
+ "jest": "bin/jest.js"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
+ },
+ "peerDependenciesMeta": {
+ "node-notifier": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/jest-config": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz",
+ "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/core": "^7.11.6",
+ "@jest/test-sequencer": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "babel-jest": "^29.7.0",
+ "chalk": "^4.0.0",
+ "ci-info": "^3.2.0",
+ "deepmerge": "^4.2.2",
+ "glob": "^7.1.3",
+ "graceful-fs": "^4.2.9",
+ "jest-circus": "^29.7.0",
+ "jest-environment-node": "^29.7.0",
+ "jest-get-type": "^29.6.3",
+ "jest-regex-util": "^29.6.3",
+ "jest-resolve": "^29.7.0",
+ "jest-runner": "^29.7.0",
+ "jest-util": "^29.7.0",
+ "jest-validate": "^29.7.0",
+ "micromatch": "^4.0.4",
+ "parse-json": "^5.2.0",
+ "pretty-format": "^29.7.0",
+ "slash": "^3.0.0",
+ "strip-json-comments": "^3.1.1"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "@types/node": "*",
+ "ts-node": ">=9.0.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/node": {
+ "optional": true
+ },
+ "ts-node": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/jest-diff": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz",
+ "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "chalk": "^4.0.0",
+ "diff-sequences": "^29.6.3",
+ "jest-get-type": "^29.6.3",
+ "pretty-format": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-docblock": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz",
+ "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "detect-newline": "^3.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-each": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz",
+ "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/types": "^29.6.3",
+ "chalk": "^4.0.0",
+ "jest-get-type": "^29.6.3",
+ "jest-util": "^29.7.0",
+ "pretty-format": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-environment-node": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz",
+ "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/environment": "^29.7.0",
+ "@jest/fake-timers": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "@types/node": "*",
+ "jest-mock": "^29.7.0",
+ "jest-util": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-get-type": {
+ "version": "29.6.3",
+ "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz",
+ "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-haste-map": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz",
+ "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/types": "^29.6.3",
+ "@types/graceful-fs": "^4.1.3",
+ "@types/node": "*",
+ "anymatch": "^3.0.3",
+ "fb-watchman": "^2.0.0",
+ "graceful-fs": "^4.2.9",
+ "jest-regex-util": "^29.6.3",
+ "jest-util": "^29.7.0",
+ "jest-worker": "^29.7.0",
+ "micromatch": "^4.0.4",
+ "walker": "^1.0.8"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "^2.3.2"
+ }
+ },
+ "node_modules/jest-leak-detector": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz",
+ "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "jest-get-type": "^29.6.3",
+ "pretty-format": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-matcher-utils": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz",
+ "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "chalk": "^4.0.0",
+ "jest-diff": "^29.7.0",
+ "jest-get-type": "^29.6.3",
+ "pretty-format": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-message-util": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz",
+ "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/code-frame": "^7.12.13",
+ "@jest/types": "^29.6.3",
+ "@types/stack-utils": "^2.0.0",
+ "chalk": "^4.0.0",
+ "graceful-fs": "^4.2.9",
+ "micromatch": "^4.0.4",
+ "pretty-format": "^29.7.0",
+ "slash": "^3.0.0",
+ "stack-utils": "^2.0.3"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-mock": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz",
+ "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/types": "^29.6.3",
+ "@types/node": "*",
+ "jest-util": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-pnp-resolver": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz",
+ "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ },
+ "peerDependencies": {
+ "jest-resolve": "*"
+ },
+ "peerDependenciesMeta": {
+ "jest-resolve": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/jest-regex-util": {
+ "version": "29.6.3",
+ "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz",
+ "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-resolve": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz",
+ "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "chalk": "^4.0.0",
+ "graceful-fs": "^4.2.9",
+ "jest-haste-map": "^29.7.0",
+ "jest-pnp-resolver": "^1.2.2",
+ "jest-util": "^29.7.0",
+ "jest-validate": "^29.7.0",
+ "resolve": "^1.20.0",
+ "resolve.exports": "^2.0.0",
+ "slash": "^3.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-resolve-dependencies": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz",
+ "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "jest-regex-util": "^29.6.3",
+ "jest-snapshot": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-runner": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz",
+ "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/console": "^29.7.0",
+ "@jest/environment": "^29.7.0",
+ "@jest/test-result": "^29.7.0",
+ "@jest/transform": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "@types/node": "*",
+ "chalk": "^4.0.0",
+ "emittery": "^0.13.1",
+ "graceful-fs": "^4.2.9",
+ "jest-docblock": "^29.7.0",
+ "jest-environment-node": "^29.7.0",
+ "jest-haste-map": "^29.7.0",
+ "jest-leak-detector": "^29.7.0",
+ "jest-message-util": "^29.7.0",
+ "jest-resolve": "^29.7.0",
+ "jest-runtime": "^29.7.0",
+ "jest-util": "^29.7.0",
+ "jest-watcher": "^29.7.0",
+ "jest-worker": "^29.7.0",
+ "p-limit": "^3.1.0",
+ "source-map-support": "0.5.13"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-runtime": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz",
+ "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/environment": "^29.7.0",
+ "@jest/fake-timers": "^29.7.0",
+ "@jest/globals": "^29.7.0",
+ "@jest/source-map": "^29.6.3",
+ "@jest/test-result": "^29.7.0",
+ "@jest/transform": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "@types/node": "*",
+ "chalk": "^4.0.0",
+ "cjs-module-lexer": "^1.0.0",
+ "collect-v8-coverage": "^1.0.0",
+ "glob": "^7.1.3",
+ "graceful-fs": "^4.2.9",
+ "jest-haste-map": "^29.7.0",
+ "jest-message-util": "^29.7.0",
+ "jest-mock": "^29.7.0",
+ "jest-regex-util": "^29.6.3",
+ "jest-resolve": "^29.7.0",
+ "jest-snapshot": "^29.7.0",
+ "jest-util": "^29.7.0",
+ "slash": "^3.0.0",
+ "strip-bom": "^4.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-snapshot": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz",
+ "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/core": "^7.11.6",
+ "@babel/generator": "^7.7.2",
+ "@babel/plugin-syntax-jsx": "^7.7.2",
+ "@babel/plugin-syntax-typescript": "^7.7.2",
+ "@babel/types": "^7.3.3",
+ "@jest/expect-utils": "^29.7.0",
+ "@jest/transform": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "babel-preset-current-node-syntax": "^1.0.0",
+ "chalk": "^4.0.0",
+ "expect": "^29.7.0",
+ "graceful-fs": "^4.2.9",
+ "jest-diff": "^29.7.0",
+ "jest-get-type": "^29.6.3",
+ "jest-matcher-utils": "^29.7.0",
+ "jest-message-util": "^29.7.0",
+ "jest-util": "^29.7.0",
+ "natural-compare": "^1.4.0",
+ "pretty-format": "^29.7.0",
+ "semver": "^7.5.3"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-util": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz",
+ "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/types": "^29.6.3",
+ "@types/node": "*",
+ "chalk": "^4.0.0",
+ "ci-info": "^3.2.0",
+ "graceful-fs": "^4.2.9",
+ "picomatch": "^2.2.3"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-validate": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz",
+ "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/types": "^29.6.3",
+ "camelcase": "^6.2.0",
+ "chalk": "^4.0.0",
+ "jest-get-type": "^29.6.3",
+ "leven": "^3.1.0",
+ "pretty-format": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-validate/node_modules/camelcase": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
+ "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/jest-watcher": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz",
+ "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/test-result": "^29.7.0",
+ "@jest/types": "^29.6.3",
+ "@types/node": "*",
+ "ansi-escapes": "^4.2.1",
+ "chalk": "^4.0.0",
+ "emittery": "^0.13.1",
+ "jest-util": "^29.7.0",
+ "string-length": "^4.0.1"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-worker": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz",
+ "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/node": "*",
+ "jest-util": "^29.7.0",
+ "merge-stream": "^2.0.0",
+ "supports-color": "^8.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-worker/node_modules/supports-color": {
+ "version": "8.1.1",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
+ "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/supports-color?sponsor=1"
+ }
+ },
+ "node_modules/js-tokens": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
+ "license": "MIT"
+ },
+ "node_modules/js-yaml": {
+ "version": "3.15.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.15.0.tgz",
+ "integrity": "sha512-ttBQIIQPDeLjpPOohtUdXuXUVoA2uIB6fEH9HyJ7234s5mBJ5wTx20njxplLZQgLaOfpmPQA7X2t5AX6tIPbog==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "node_modules/jsesc": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz",
+ "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "jsesc": "bin/jsesc"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/json-parse-even-better-errors": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
+ "license": "MIT"
+ },
+ "node_modules/json-schema-traverse": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
+ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
+ "license": "MIT"
+ },
+ "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/jsonwebtoken": {
+ "version": "9.0.3",
+ "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.3.tgz",
+ "integrity": "sha512-MT/xP0CrubFRNLNKvxJ2BYfy53Zkm++5bX9dtuPbqAeQpTVe0MQTFhao8+Cp//EmJp244xt6Drw/GVEGCUj40g==",
+ "license": "MIT",
+ "dependencies": {
+ "jws": "^4.0.1",
+ "lodash.includes": "^4.3.0",
+ "lodash.isboolean": "^3.0.3",
+ "lodash.isinteger": "^4.0.4",
+ "lodash.isnumber": "^3.0.3",
+ "lodash.isplainobject": "^4.0.6",
+ "lodash.isstring": "^4.0.1",
+ "lodash.once": "^4.0.0",
+ "ms": "^2.1.1",
+ "semver": "^7.5.4"
+ },
+ "engines": {
+ "node": ">=12",
+ "npm": ">=6"
+ }
+ },
+ "node_modules/jsonwebtoken/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/jwa": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.1.tgz",
+ "integrity": "sha512-hRF04fqJIP8Abbkq5NKGN0Bbr3JxlQ+qhZufXVr0DvujKy93ZCbXZMHDL4EOtodSbCWxOqR8MS1tXA5hwqCXDg==",
+ "license": "MIT",
+ "dependencies": {
+ "buffer-equal-constant-time": "^1.0.1",
+ "ecdsa-sig-formatter": "1.0.11",
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "node_modules/jws": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.1.tgz",
+ "integrity": "sha512-EKI/M/yqPncGUUh44xz0PxSidXFr/+r0pA70+gIYhjv+et7yxM+s29Y+VGDkovRofQem0fs7Uvf4+YmAdyRduA==",
+ "license": "MIT",
+ "dependencies": {
+ "jwa": "^2.0.1",
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "node_modules/kareem": {
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.5.1.tgz",
+ "integrity": "sha512-7jFxRVm+jD+rkq3kY0iZDJfsO2/t4BBPeEb2qKn2lR/9KhuksYk5hxzfRYWMPV8P/x2d0kHD306YyWLzjjH+uA==",
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
+ "node_modules/kleur": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz",
+ "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/kuler": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz",
+ "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==",
+ "license": "MIT"
+ },
+ "node_modules/leven": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
+ "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/lines-and-columns": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
+ "license": "MIT"
+ },
+ "node_modules/locate-path": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-locate": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/lodash": {
+ "version": "4.18.1",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz",
+ "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==",
+ "license": "MIT"
+ },
+ "node_modules/lodash.includes": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz",
+ "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==",
+ "license": "MIT"
+ },
+ "node_modules/lodash.isboolean": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz",
+ "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==",
+ "license": "MIT"
+ },
+ "node_modules/lodash.isinteger": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz",
+ "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==",
+ "license": "MIT"
+ },
+ "node_modules/lodash.isnumber": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz",
+ "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==",
+ "license": "MIT"
+ },
+ "node_modules/lodash.isplainobject": {
+ "version": "4.0.6",
+ "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
+ "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==",
+ "license": "MIT"
+ },
+ "node_modules/lodash.isstring": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz",
+ "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==",
+ "license": "MIT"
+ },
+ "node_modules/lodash.mergewith": {
+ "version": "4.6.2",
+ "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz",
+ "integrity": "sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==",
+ "license": "MIT"
+ },
+ "node_modules/lodash.once": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz",
+ "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==",
+ "license": "MIT"
+ },
+ "node_modules/logform": {
+ "version": "2.7.0",
+ "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz",
+ "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@colors/colors": "1.6.0",
+ "@types/triple-beam": "^1.3.2",
+ "fecha": "^4.2.0",
+ "ms": "^2.1.1",
+ "safe-stable-stringify": "^2.3.1",
+ "triple-beam": "^1.3.0"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/logform/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/lru-cache": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
+ "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "yallist": "^3.0.2"
+ }
+ },
+ "node_modules/luxon": {
+ "version": "3.7.2",
+ "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.7.2.tgz",
+ "integrity": "sha512-vtEhXh/gNjI9Yg1u4jX/0YVPMvxzHuGgCm6tC5kZyb08yjGWGnqAjGJvcXbqQR2P3MyMEFnRbpcdFS6PBcLqew==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/make-dir": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz",
+ "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "semver": "^7.5.3"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/makeerror": {
+ "version": "1.0.12",
+ "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz",
+ "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "tmpl": "1.0.5"
+ }
+ },
+ "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==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/media-typer": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
+ "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/memory-pager": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz",
+ "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==",
+ "license": "MIT",
+ "optional": true
+ },
+ "node_modules/merge-descriptors": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz",
+ "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==",
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/merge-stream": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
+ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/methods": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
+ "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/micromatch": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
+ "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "braces": "^3.0.3",
+ "picomatch": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=8.6"
+ }
+ },
+ "node_modules/mime": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
+ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
+ "license": "MIT",
+ "bin": {
+ "mime": "cli.js"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/mime-db": {
+ "version": "1.54.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz",
+ "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==",
+ "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==",
+ "license": "MIT",
+ "dependencies": {
+ "mime-db": "1.52.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mime-types/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==",
+ "license": "MIT",
+ "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/minimatch": {
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz",
+ "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/minipass": {
+ "version": "7.1.3",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz",
+ "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==",
+ "license": "BlueOak-1.0.0",
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ }
+ },
+ "node_modules/mitt": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz",
+ "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==",
+ "license": "MIT"
+ },
+ "node_modules/mkdirp-classic": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz",
+ "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==",
+ "license": "MIT"
+ },
+ "node_modules/mongodb": {
+ "version": "5.9.2",
+ "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.9.2.tgz",
+ "integrity": "sha512-H60HecKO4Bc+7dhOv4sJlgvenK4fQNqqUIlXxZYQNbfEWSALGAwGoyJd/0Qwk4TttFXUOHJ2ZJQe/52ScaUwtQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "bson": "^5.5.0",
+ "mongodb-connection-string-url": "^2.6.0",
+ "socks": "^2.7.1"
+ },
+ "engines": {
+ "node": ">=14.20.1"
+ },
+ "optionalDependencies": {
+ "@mongodb-js/saslprep": "^1.1.0"
+ },
+ "peerDependencies": {
+ "@aws-sdk/credential-providers": "^3.188.0",
+ "@mongodb-js/zstd": "^1.0.0",
+ "kerberos": "^1.0.0 || ^2.0.0",
+ "mongodb-client-encryption": ">=2.3.0 <3",
+ "snappy": "^7.2.2"
+ },
+ "peerDependenciesMeta": {
+ "@aws-sdk/credential-providers": {
+ "optional": true
+ },
+ "@mongodb-js/zstd": {
+ "optional": true
+ },
+ "kerberos": {
+ "optional": true
+ },
+ "mongodb-client-encryption": {
+ "optional": true
+ },
+ "snappy": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/mongodb-connection-string-url": {
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz",
+ "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@types/whatwg-url": "^8.2.1",
+ "whatwg-url": "^11.0.0"
+ }
+ },
+ "node_modules/mongoose": {
+ "version": "7.8.11",
+ "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-7.8.11.tgz",
+ "integrity": "sha512-ZONFEna6npklSbhDGvCRAdeGMvYwLnVUGfvgZv01zzYoxh5BOsvftROtFl5iozqss5UL8wgJsken6ze7VuHVQg==",
+ "license": "MIT",
+ "dependencies": {
+ "bson": "^5.5.0",
+ "kareem": "2.5.1",
+ "mongodb": "5.9.2",
+ "mpath": "0.9.0",
+ "mquery": "5.0.0",
+ "ms": "2.1.3",
+ "sift": "16.0.1"
+ },
+ "engines": {
+ "node": ">=14.20.1"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/mongoose"
+ }
+ },
+ "node_modules/mongoose/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/mpath": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz",
+ "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=4.0.0"
+ }
+ },
+ "node_modules/mquery": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/mquery/-/mquery-5.0.0.tgz",
+ "integrity": "sha512-iQMncpmEK8R8ncT8HJGsGc9Dsp8xcgYMVSbs5jgnm1lFHTZqMJTUWTDx1LBO8+mK3tPNZWFLBghQEIOULSTHZg==",
+ "license": "MIT",
+ "dependencies": {
+ "debug": "4.x"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/mquery/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/mquery/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/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "license": "MIT"
+ },
+ "node_modules/msgpackr": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.12.1.tgz",
+ "integrity": "sha512-4EUH9tQHnMmEgzW/MdAP0KIfa1T9AF+htl0ffe2n5vb2EKn9y2co8ccpgWko6S52Jy1PQZKwRnx5/KkYjtd9MQ==",
+ "license": "MIT",
+ "optionalDependencies": {
+ "msgpackr-extract": "^3.0.2"
+ }
+ },
+ "node_modules/msgpackr-extract": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/msgpackr-extract/-/msgpackr-extract-3.0.4.tgz",
+ "integrity": "sha512-4kmO/MdyUIkLIvTPr8VHLil4AtoKIoniWPIEk5+CDy0xnWC84azhSFmuJ7PxZdsYtiP5kEeQsORAVIeMgxT+Hw==",
+ "hasInstallScript": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "node-gyp-build-optional-packages": "5.2.2"
+ },
+ "bin": {
+ "download-msgpackr-prebuilds": "bin/download-prebuilds.js"
+ },
+ "optionalDependencies": {
+ "@msgpackr-extract/msgpackr-extract-darwin-arm64": "3.0.4",
+ "@msgpackr-extract/msgpackr-extract-darwin-x64": "3.0.4",
+ "@msgpackr-extract/msgpackr-extract-linux-arm": "3.0.4",
+ "@msgpackr-extract/msgpackr-extract-linux-arm64": "3.0.4",
+ "@msgpackr-extract/msgpackr-extract-linux-x64": "3.0.4",
+ "@msgpackr-extract/msgpackr-extract-win32-x64": "3.0.4"
+ }
+ },
+ "node_modules/natural-compare": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
+ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/negotiator": {
+ "version": "0.6.4",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz",
+ "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/netmask": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.1.1.tgz",
+ "integrity": "sha512-eonl3sLUha+S1GzTPxychyhnUzKyeQkZ7jLjKrBagJgPla13F+uQ71HgpFefyHgqrjEbCPkDArxYsjY8/+gLKA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4.0"
+ }
+ },
+ "node_modules/node-cron": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/node-cron/-/node-cron-3.0.3.tgz",
+ "integrity": "sha512-dOal67//nohNgYWb+nWmg5dkFdIwDm8EpeGYMekPMrngV3637lqnX0lbUcCtgibHTz6SEz7DAIjKvKDFYCnO1A==",
+ "license": "ISC",
+ "dependencies": {
+ "uuid": "8.3.2"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/node-cron/node_modules/uuid": {
+ "version": "8.3.2",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
+ "deprecated": "uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028).",
+ "license": "MIT",
+ "bin": {
+ "uuid": "dist/bin/uuid"
+ }
+ },
+ "node_modules/node-fetch": {
+ "version": "2.7.0",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz",
+ "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==",
+ "license": "MIT",
+ "dependencies": {
+ "whatwg-url": "^5.0.0"
+ },
+ "engines": {
+ "node": "4.x || >=6.0.0"
+ },
+ "peerDependencies": {
+ "encoding": "^0.1.0"
+ },
+ "peerDependenciesMeta": {
+ "encoding": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/node-fetch/node_modules/tr46": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
+ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==",
+ "license": "MIT"
+ },
+ "node_modules/node-fetch/node_modules/webidl-conversions": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
+ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==",
+ "license": "BSD-2-Clause"
+ },
+ "node_modules/node-fetch/node_modules/whatwg-url": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
+ "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
+ "license": "MIT",
+ "dependencies": {
+ "tr46": "~0.0.3",
+ "webidl-conversions": "^3.0.0"
+ }
+ },
+ "node_modules/node-gyp-build-optional-packages": {
+ "version": "5.2.2",
+ "resolved": "https://registry.npmjs.org/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.2.2.tgz",
+ "integrity": "sha512-s+w+rBWnpTMwSFbaE0UXsRlg7hU4FjekKU4eyAih5T8nJuNZT1nNsskXpxmeqSK9UzkBl6UgRlnKc8hz8IEqOw==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "detect-libc": "^2.0.1"
+ },
+ "bin": {
+ "node-gyp-build-optional-packages": "bin.js",
+ "node-gyp-build-optional-packages-optional": "optional.js",
+ "node-gyp-build-optional-packages-test": "build-test.js"
+ }
+ },
+ "node_modules/node-int64": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
+ "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/node-releases": {
+ "version": "2.0.51",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.51.tgz",
+ "integrity": "sha512-wRNIrw4DmVLKQlbgOMdkMx27Wrpzes2hh5Jtbi2bjPd+4wJstWIqP5A+lscnqbm0xxmT5Bpg8Lec5ItEBwx6BQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/nodemon": {
+ "version": "3.1.14",
+ "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.14.tgz",
+ "integrity": "sha512-jakjZi93UtB3jHMWsXL68FXSAosbLfY0In5gtKq3niLSkrWznrVBzXFNOEMJUfc9+Ke7SHWoAZsiMkNP3vq6Jw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "chokidar": "^3.5.2",
+ "debug": "^4",
+ "ignore-by-default": "^1.0.1",
+ "minimatch": "^10.2.1",
+ "pstree.remy": "^1.1.8",
+ "semver": "^7.5.3",
+ "simple-update-notifier": "^2.0.0",
+ "supports-color": "^5.5.0",
+ "touch": "^3.1.0",
+ "undefsafe": "^2.0.5"
+ },
+ "bin": {
+ "nodemon": "bin/nodemon.js"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/nodemon"
+ }
+ },
+ "node_modules/nodemon/node_modules/balanced-match": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
+ "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "18 || 20 || >=22"
+ }
+ },
+ "node_modules/nodemon/node_modules/brace-expansion": {
+ "version": "5.0.8",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.8.tgz",
+ "integrity": "sha512-JZyDyq3D4AUifKTPOB7DELf6XsB3WdPuNxCtob1vFXPsSXhdAiHBWJ/tJ8HAc9aH84BK+5JFZLNkJKx3G9kzQg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^4.0.2"
+ },
+ "engines": {
+ "node": "20 || >=22"
+ }
+ },
+ "node_modules/nodemon/node_modules/debug": {
+ "version": "4.4.3",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/nodemon/node_modules/has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/nodemon/node_modules/minimatch": {
+ "version": "10.2.6",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.6.tgz",
+ "integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==",
+ "dev": true,
+ "license": "BlueOak-1.0.0",
+ "dependencies": {
+ "brace-expansion": "^5.0.8"
+ },
+ "engines": {
+ "node": "18 || 20 || >=22"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/nodemon/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==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/nodemon/node_modules/supports-color": {
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "has-flag": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/normalize-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/npm-run-path": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
+ "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "path-key": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/nth-check": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
+ "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "boolbase": "^1.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/nth-check?sponsor=1"
+ }
+ },
+ "node_modules/object-assign": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object-inspect": {
+ "version": "1.13.4",
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
+ "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/on-finished": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
+ "license": "MIT",
+ "dependencies": {
+ "ee-first": "1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/on-headers": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.1.0.tgz",
+ "integrity": "sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "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/one-time": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz",
+ "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==",
+ "license": "MIT",
+ "dependencies": {
+ "fn.name": "1.x.x"
+ }
+ },
+ "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/openapi-types": {
+ "version": "12.1.3",
+ "resolved": "https://registry.npmjs.org/openapi-types/-/openapi-types-12.1.3.tgz",
+ "integrity": "sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw==",
+ "license": "MIT",
+ "peer": true
+ },
+ "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-locate": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-limit": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/p-locate/node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-try": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/pac-proxy-agent": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.2.0.tgz",
+ "integrity": "sha512-TEB8ESquiLMc0lV8vcd5Ql/JAKAoyzHFXaStwjkzpOpC5Yv+pIzLfHvjTSdf3vpa2bMiUQrg9i6276yn8666aA==",
+ "license": "MIT",
+ "dependencies": {
+ "@tootallnate/quickjs-emscripten": "^0.23.0",
+ "agent-base": "^7.1.2",
+ "debug": "^4.3.4",
+ "get-uri": "^6.0.1",
+ "http-proxy-agent": "^7.0.0",
+ "https-proxy-agent": "^7.0.6",
+ "pac-resolver": "^7.0.1",
+ "socks-proxy-agent": "^8.0.5"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/pac-proxy-agent/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==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/pac-proxy-agent/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/pac-proxy-agent/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==",
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.1.2",
+ "debug": "4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/pac-proxy-agent/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/pac-resolver": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.1.tgz",
+ "integrity": "sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==",
+ "license": "MIT",
+ "dependencies": {
+ "degenerator": "^5.0.0",
+ "netmask": "^2.0.2"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "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==",
+ "license": "BlueOak-1.0.0"
+ },
+ "node_modules/parent-module": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
+ "license": "MIT",
+ "dependencies": {
+ "callsites": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/parse-json": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
+ "license": "MIT",
+ "dependencies": {
+ "@babel/code-frame": "^7.0.0",
+ "error-ex": "^1.3.1",
+ "json-parse-even-better-errors": "^2.3.0",
+ "lines-and-columns": "^1.1.6"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/parse5": {
+ "version": "7.3.0",
+ "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz",
+ "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==",
+ "license": "MIT",
+ "dependencies": {
+ "entities": "^6.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/inikulin/parse5?sponsor=1"
+ }
+ },
+ "node_modules/parse5-htmlparser2-tree-adapter": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.1.0.tgz",
+ "integrity": "sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==",
+ "license": "MIT",
+ "dependencies": {
+ "domhandler": "^5.0.3",
+ "parse5": "^7.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/inikulin/parse5?sponsor=1"
+ }
+ },
+ "node_modules/parse5-parser-stream": {
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/parse5-parser-stream/-/parse5-parser-stream-7.1.2.tgz",
+ "integrity": "sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==",
+ "license": "MIT",
+ "dependencies": {
+ "parse5": "^7.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/inikulin/parse5?sponsor=1"
+ }
+ },
+ "node_modules/parse5/node_modules/entities": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz",
+ "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==",
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=0.12"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/entities?sponsor=1"
+ }
+ },
+ "node_modules/parseurl": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
+ "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/path-exists": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "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==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/path-parse": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/path-scurry": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.2.tgz",
+ "integrity": "sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg==",
+ "license": "BlueOak-1.0.0",
+ "dependencies": {
+ "lru-cache": "^11.0.0",
+ "minipass": "^7.1.2"
+ },
+ "engines": {
+ "node": "18 || 20 || >=22"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/path-scurry/node_modules/lru-cache": {
+ "version": "11.5.2",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.2.tgz",
+ "integrity": "sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==",
+ "license": "BlueOak-1.0.0",
+ "engines": {
+ "node": "20 || >=22"
+ }
+ },
+ "node_modules/path-to-regexp": {
+ "version": "0.1.13",
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.13.tgz",
+ "integrity": "sha512-A/AGNMFN3c8bOlvV9RreMdrv7jsmF9XIfDeCd87+I8RNg6s78BhJxMu69NEMHBSJFxKidViTEdruRwEk/WIKqA==",
+ "license": "MIT"
+ },
+ "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==",
+ "license": "ISC"
+ },
+ "node_modules/picomatch": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz",
+ "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/pirates": {
+ "version": "4.0.7",
+ "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz",
+ "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/pkg-dir": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
+ "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "find-up": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/playwright": {
+ "version": "1.62.0",
+ "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.62.0.tgz",
+ "integrity": "sha512-Z14dG305dgaLu6foB1TXQagFiW8JfSUIUaUuPaKQ6NtBPKF1P/qXcqfh6c6K/icPqdy37JmjbiBXf6JNg6Sylw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "playwright-core": "1.62.0"
+ },
+ "bin": {
+ "playwright": "cli.js"
+ },
+ "engines": {
+ "node": ">=20"
+ },
+ "optionalDependencies": {
+ "fsevents": "2.3.2"
+ }
+ },
+ "node_modules/playwright-core": {
+ "version": "1.62.0",
+ "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.62.0.tgz",
+ "integrity": "sha512-nsNRyq0r2zsG8AcRHWknc9QRA5XCueC7gWMrs+Gx2tlZn9hcl8zudfh00lhJPY1DE7NmZ6bDsT9g2yey8mXljA==",
+ "license": "Apache-2.0",
+ "bin": {
+ "playwright-core": "cli.js"
+ },
+ "engines": {
+ "node": ">=20"
+ }
+ },
+ "node_modules/playwright/node_modules/fsevents": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
+ "hasInstallScript": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "node_modules/pretty-format": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz",
+ "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/schemas": "^29.6.3",
+ "ansi-styles": "^5.0.0",
+ "react-is": "^18.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/pretty-format/node_modules/ansi-styles": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
+ "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "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/prompts": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz",
+ "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "kleur": "^3.0.3",
+ "sisteransi": "^1.0.5"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/proxy-addr": {
+ "version": "2.0.7",
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz",
+ "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==",
+ "license": "MIT",
+ "dependencies": {
+ "forwarded": "0.2.0",
+ "ipaddr.js": "1.9.1"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
+ "node_modules/proxy-agent": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.1.tgz",
+ "integrity": "sha512-Rb5RVBy1iyqOtNl15Cw/llpeLH8bsb37gM1FUfKQ+Wck6xHlbAhWGUFiTRHtkjqGTA5pSHz6+0hrPW/oECihPQ==",
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.0.2",
+ "debug": "^4.3.4",
+ "http-proxy-agent": "^7.0.0",
+ "https-proxy-agent": "^7.0.2",
+ "lru-cache": "^7.14.1",
+ "pac-proxy-agent": "^7.0.1",
+ "proxy-from-env": "^1.1.0",
+ "socks-proxy-agent": "^8.0.2"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/proxy-agent/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==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/proxy-agent/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/proxy-agent/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==",
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.1.2",
+ "debug": "4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/proxy-agent/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==",
+ "license": "ISC",
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/proxy-agent/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/proxy-agent/node_modules/proxy-from-env": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
+ "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
+ "license": "MIT"
+ },
+ "node_modules/proxy-from-env": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-2.1.0.tgz",
+ "integrity": "sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/pstree.remy": {
+ "version": "1.1.8",
+ "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz",
+ "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/pump": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.4.tgz",
+ "integrity": "sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA==",
+ "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==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/puppeteer": {
+ "version": "21.11.0",
+ "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-21.11.0.tgz",
+ "integrity": "sha512-9jTHuYe22TD3sNxy0nEIzC7ZrlRnDgeX3xPkbS7PnbdwYjl2o/z/YuCrRBwezdKpbTDTJ4VqIggzNyeRcKq3cg==",
+ "deprecated": "< 24.15.0 is no longer supported",
+ "hasInstallScript": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@puppeteer/browsers": "1.9.1",
+ "cosmiconfig": "9.0.0",
+ "puppeteer-core": "21.11.0"
+ },
+ "bin": {
+ "puppeteer": "lib/esm/puppeteer/node/cli.js"
+ },
+ "engines": {
+ "node": ">=16.13.2"
+ }
+ },
+ "node_modules/puppeteer-core": {
+ "version": "21.11.0",
+ "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-21.11.0.tgz",
+ "integrity": "sha512-ArbnyA3U5SGHokEvkfWjW+O8hOxV1RSJxOgriX/3A4xZRqixt9ZFHD0yPgZQF05Qj0oAqi8H/7stDorjoHY90Q==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@puppeteer/browsers": "1.9.1",
+ "chromium-bidi": "0.5.8",
+ "cross-fetch": "4.0.0",
+ "debug": "4.3.4",
+ "devtools-protocol": "0.0.1232444",
+ "ws": "8.16.0"
+ },
+ "engines": {
+ "node": ">=16.13.2"
+ }
+ },
+ "node_modules/puppeteer-core/node_modules/debug": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "license": "MIT",
+ "dependencies": {
+ "ms": "2.1.2"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/puppeteer-core/node_modules/ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "license": "MIT"
+ },
+ "node_modules/pure-rand": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz",
+ "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://github.com/sponsors/dubzzz"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/fast-check"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/qs": {
+ "version": "6.15.3",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.3.tgz",
+ "integrity": "sha512-O9gl3zCl5h5blw1KGUzQKhA5oUXSl8rwUIM5o0S3nCXMliSvy5Dzx7/DJcI+SwgICv+IneSZwhBh1oSyEHA71A==",
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "es-define-property": "^1.0.1",
+ "side-channel": "^1.1.1"
+ },
+ "engines": {
+ "node": ">=0.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/range-parser": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
+ "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/raw-body": {
+ "version": "2.5.3",
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.3.tgz",
+ "integrity": "sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==",
+ "license": "MIT",
+ "dependencies": {
+ "bytes": "~3.1.2",
+ "http-errors": "~2.0.1",
+ "iconv-lite": "~0.4.24",
+ "unpipe": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/raw-body/node_modules/iconv-lite": {
+ "version": "0.4.24",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
+ "license": "MIT",
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/react-is": {
+ "version": "18.3.1",
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz",
+ "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "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==",
+ "license": "MIT",
+ "dependencies": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/readdirp": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
+ "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "picomatch": "^2.2.1"
+ },
+ "engines": {
+ "node": ">=8.10.0"
+ }
+ },
+ "node_modules/redis": {
+ "version": "4.7.1",
+ "resolved": "https://registry.npmjs.org/redis/-/redis-4.7.1.tgz",
+ "integrity": "sha512-S1bJDnqLftzHXHP8JsT5II/CtHWQrASX5K96REjWjlmWKrviSOLWmM7QnRLstAWsu1VBBV1ffV6DzCvxNP0UJQ==",
+ "license": "MIT",
+ "workspaces": [
+ "./packages/*"
+ ],
+ "dependencies": {
+ "@redis/bloom": "1.2.0",
+ "@redis/client": "1.6.1",
+ "@redis/graph": "1.1.1",
+ "@redis/json": "1.0.7",
+ "@redis/search": "1.2.0",
+ "@redis/time-series": "1.1.0"
+ }
+ },
+ "node_modules/redis-errors": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/redis-errors/-/redis-errors-1.2.0.tgz",
+ "integrity": "sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/redis-parser": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-3.0.0.tgz",
+ "integrity": "sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A==",
+ "license": "MIT",
+ "dependencies": {
+ "redis-errors": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "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==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/require-from-string": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
+ "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/resolve": {
+ "version": "1.22.12",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.12.tgz",
+ "integrity": "sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "is-core-module": "^2.16.1",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
+ },
+ "bin": {
+ "resolve": "bin/resolve"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/resolve-cwd": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
+ "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "resolve-from": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/resolve-from": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/resolve.exports": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz",
+ "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "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==",
+ "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/safe-stable-stringify": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz",
+ "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/safer-buffer": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
+ "license": "MIT"
+ },
+ "node_modules/semver": {
+ "version": "7.8.5",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz",
+ "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==",
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/send": {
+ "version": "0.19.2",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.19.2.tgz",
+ "integrity": "sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg==",
+ "license": "MIT",
+ "dependencies": {
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "encodeurl": "~2.0.0",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "fresh": "~0.5.2",
+ "http-errors": "~2.0.1",
+ "mime": "1.6.0",
+ "ms": "2.1.3",
+ "on-finished": "~2.4.1",
+ "range-parser": "~1.2.1",
+ "statuses": "~2.0.2"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/send/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/serve-static": {
+ "version": "1.16.3",
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.3.tgz",
+ "integrity": "sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA==",
+ "license": "MIT",
+ "dependencies": {
+ "encodeurl": "~2.0.0",
+ "escape-html": "~1.0.3",
+ "parseurl": "~1.3.3",
+ "send": "~0.19.1"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/setprototypeof": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
+ "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
+ "license": "ISC"
+ },
+ "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==",
+ "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==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/side-channel": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz",
+ "integrity": "sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==",
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "object-inspect": "^1.13.4",
+ "side-channel-list": "^1.0.1",
+ "side-channel-map": "^1.0.1",
+ "side-channel-weakmap": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/side-channel-list": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz",
+ "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==",
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "object-inspect": "^1.13.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/side-channel-map": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
+ "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.2",
+ "es-errors": "^1.3.0",
+ "get-intrinsic": "^1.2.5",
+ "object-inspect": "^1.13.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/side-channel-weakmap": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
+ "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.2",
+ "es-errors": "^1.3.0",
+ "get-intrinsic": "^1.2.5",
+ "object-inspect": "^1.13.3",
+ "side-channel-map": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/sift": {
+ "version": "16.0.1",
+ "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz",
+ "integrity": "sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==",
+ "license": "MIT"
+ },
+ "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/sisteransi": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
+ "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/slash": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
+ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
+ "dev": true,
+ "license": "MIT",
+ "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==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 6.0.0",
+ "npm": ">= 3.0.0"
+ }
+ },
+ "node_modules/socket.io": {
+ "version": "4.8.3",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.8.3.tgz",
+ "integrity": "sha512-2Dd78bqzzjE6KPkD5fHZmDAKRNe3J15q+YHDrIsy9WEkqttc7GY+kT9OBLSMaPbQaEd0x1BjcmtMtXkfpc+T5A==",
+ "license": "MIT",
+ "dependencies": {
+ "accepts": "~1.3.4",
+ "base64id": "~2.0.0",
+ "cors": "~2.8.5",
+ "debug": "~4.4.1",
+ "engine.io": "~6.6.0",
+ "socket.io-adapter": "~2.5.2",
+ "socket.io-parser": "~4.2.4"
+ },
+ "engines": {
+ "node": ">=10.2.0"
+ }
+ },
+ "node_modules/socket.io-adapter": {
+ "version": "2.5.8",
+ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.8.tgz",
+ "integrity": "sha512-6Oy52pbg+kvdCVvjcN+FnY7BvxZ7cIHNScbvztT/It5d0vbwoJoVZmF2gjJmnV0/4WlXRfG15zc45ySk9Ah8bw==",
+ "license": "MIT",
+ "dependencies": {
+ "debug": "~4.4.1",
+ "ws": "~8.21.0"
+ }
+ },
+ "node_modules/socket.io-adapter/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/socket.io-adapter/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/socket.io-adapter/node_modules/ws": {
+ "version": "8.21.1",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.1.tgz",
+ "integrity": "sha512-+0NTnW77fFN/DjQi6k/Sq/Yvk4Sgajw7urW8V+asjXnRgDs9gyGkdb7EzgfhA4goXsRIZKE28fzIXBHEzhuiWw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/socket.io-parser": {
+ "version": "4.2.7",
+ "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.7.tgz",
+ "integrity": "sha512-IH/iSeO9T6gz1KkFleGDWkG9N3dl4jXVYUtMhIqH10Md0ttMer8nUNWiP1DKuNrybD2xBrixLJdCC9J6ECoYkg==",
+ "license": "MIT",
+ "dependencies": {
+ "@socket.io/component-emitter": "~3.1.0",
+ "debug": "~4.4.1"
+ },
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
+ "node_modules/socket.io-parser/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/socket.io-parser/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/socket.io/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/socket.io/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/socks": {
+ "version": "2.8.9",
+ "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.9.tgz",
+ "integrity": "sha512-LJhUYUvItdQ0LkJTmPeaEObWXAqFyfmP85x0tch/ez9cahmhlBBLbIqDFnvBnUJGagb0JbIQrkBs1wJ+yRYpEw==",
+ "license": "MIT",
+ "dependencies": {
+ "ip-address": "^10.1.1",
+ "smart-buffer": "^4.2.0"
+ },
+ "engines": {
+ "node": ">= 10.0.0",
+ "npm": ">= 3.0.0"
+ }
+ },
+ "node_modules/socks-proxy-agent": {
+ "version": "8.0.5",
+ "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz",
+ "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==",
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.1.2",
+ "debug": "^4.3.4",
+ "socks": "^2.8.3"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/socks-proxy-agent/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==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/socks-proxy-agent/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/socks-proxy-agent/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/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "devOptional": true,
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/source-map-support": {
+ "version": "0.5.13",
+ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz",
+ "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "buffer-from": "^1.0.0",
+ "source-map": "^0.6.0"
+ }
+ },
+ "node_modules/sparse-bitfield": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz",
+ "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "memory-pager": "^1.0.2"
+ }
+ },
+ "node_modules/sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
+ "dev": true,
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/stack-trace": {
+ "version": "0.0.10",
+ "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz",
+ "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==",
+ "license": "MIT",
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/stack-utils": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz",
+ "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "escape-string-regexp": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/standard-as-callback": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/standard-as-callback/-/standard-as-callback-2.1.0.tgz",
+ "integrity": "sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==",
+ "license": "MIT"
+ },
+ "node_modules/statuses": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz",
+ "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/streamx": {
+ "version": "2.28.0",
+ "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.28.0.tgz",
+ "integrity": "sha512-1Yowhzjf0ivGMrTIkY9hav5TxobO9qIVqUE41fiCGMGgc3CLlf4MY+9AHmZqBWgDTue0fY9zWjYFVyf6Diuobw==",
+ "license": "MIT",
+ "dependencies": {
+ "events-universal": "^1.0.0",
+ "fast-fifo": "^1.3.2",
+ "text-decoder": "^1.1.0"
+ }
+ },
+ "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==",
+ "license": "MIT",
+ "dependencies": {
+ "safe-buffer": "~5.2.0"
+ }
+ },
+ "node_modules/string-length": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz",
+ "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "char-regex": "^1.0.2",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "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==",
+ "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==",
+ "license": "MIT",
+ "dependencies": {
+ "ansi-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-bom": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
+ "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-final-newline": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
+ "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/strip-json-comments": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
+ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/superagent": {
+ "version": "8.1.2",
+ "resolved": "https://registry.npmjs.org/superagent/-/superagent-8.1.2.tgz",
+ "integrity": "sha512-6WTxW1EB6yCxV5VFOIPQruWGHqc3yI7hEmZK6h+pyk69Lk/Ut7rLUY6W/ONF2MjBuGjvmMiIpsrVJ2vjrHlslA==",
+ "deprecated": "Please upgrade to superagent v10.2.2+, see release notes at https://github.com/forwardemail/superagent/releases/tag/v10.2.2 - maintenance is supported by Forward Email @ https://forwardemail.net",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "component-emitter": "^1.3.0",
+ "cookiejar": "^2.1.4",
+ "debug": "^4.3.4",
+ "fast-safe-stringify": "^2.1.1",
+ "form-data": "^4.0.0",
+ "formidable": "^2.1.2",
+ "methods": "^1.1.2",
+ "mime": "2.6.0",
+ "qs": "^6.11.0",
+ "semver": "^7.3.8"
+ },
+ "engines": {
+ "node": ">=6.4.0 <13 || >=14"
+ }
+ },
+ "node_modules/superagent/node_modules/debug": {
+ "version": "4.4.3",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/superagent/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/superagent/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==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/supertest": {
+ "version": "6.3.4",
+ "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.3.4.tgz",
+ "integrity": "sha512-erY3HFDG0dPnhw4U+udPfrzXa4xhSG+n4rxfRuZWCUvjFWwKl+OxWf/7zk50s84/fAAs7vf5QAb9uRa0cCykxw==",
+ "deprecated": "Please upgrade to supertest v7.1.3+, see release notes at https://github.com/forwardemail/supertest/releases/tag/v7.1.3 - maintenance is supported by Forward Email @ https://forwardemail.net",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "methods": "^1.1.2",
+ "superagent": "^8.1.2"
+ },
+ "engines": {
+ "node": ">=6.4.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/supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/swagger-jsdoc": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/swagger-jsdoc/-/swagger-jsdoc-6.3.0.tgz",
+ "integrity": "sha512-I+iQjVGV3t28pOkQUJv2MncthvOtkEactOn8R76SvSYhxgtIn7FoqfDHwQaN+GBnQdXQLrhgDXseKitmJcHMsA==",
+ "license": "MIT",
+ "dependencies": {
+ "@apidevtools/swagger-parser": "^12.1.0",
+ "commander": "6.2.0",
+ "doctrine": "3.0.0",
+ "glob": "11.1.0",
+ "lodash.mergewith": "^4.6.2",
+ "yaml": "2.0.0-1"
+ },
+ "bin": {
+ "swagger-jsdoc": "bin/swagger-jsdoc.js"
+ },
+ "engines": {
+ "node": ">=20.0.0"
+ }
+ },
+ "node_modules/swagger-jsdoc/node_modules/balanced-match": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
+ "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
+ "license": "MIT",
+ "engines": {
+ "node": "18 || 20 || >=22"
+ }
+ },
+ "node_modules/swagger-jsdoc/node_modules/brace-expansion": {
+ "version": "5.0.8",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.8.tgz",
+ "integrity": "sha512-JZyDyq3D4AUifKTPOB7DELf6XsB3WdPuNxCtob1vFXPsSXhdAiHBWJ/tJ8HAc9aH84BK+5JFZLNkJKx3G9kzQg==",
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^4.0.2"
+ },
+ "engines": {
+ "node": "20 || >=22"
+ }
+ },
+ "node_modules/swagger-jsdoc/node_modules/glob": {
+ "version": "11.1.0",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-11.1.0.tgz",
+ "integrity": "sha512-vuNwKSaKiqm7g0THUBu2x7ckSs3XJLXE+2ssL7/MfTGPLLcrJQ/4Uq1CjPTtO5cCIiRxqvN6Twy1qOwhL0Xjcw==",
+ "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me",
+ "license": "BlueOak-1.0.0",
+ "dependencies": {
+ "foreground-child": "^3.3.1",
+ "jackspeak": "^4.1.1",
+ "minimatch": "^10.1.1",
+ "minipass": "^7.1.2",
+ "package-json-from-dist": "^1.0.0",
+ "path-scurry": "^2.0.0"
+ },
+ "bin": {
+ "glob": "dist/esm/bin.mjs"
+ },
+ "engines": {
+ "node": "20 || >=22"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/swagger-jsdoc/node_modules/minimatch": {
+ "version": "10.2.6",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.6.tgz",
+ "integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==",
+ "license": "BlueOak-1.0.0",
+ "dependencies": {
+ "brace-expansion": "^5.0.8"
+ },
+ "engines": {
+ "node": "18 || 20 || >=22"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/swagger-ui-dist": {
+ "version": "5.32.11",
+ "resolved": "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-5.32.11.tgz",
+ "integrity": "sha512-NEZzRuxHHQkbG3GCjNbzz+XRDoM7AztnXyzc2VCW5RXUvZBDW7bb3W29/SPfvav3yOzqnDTOLP2Xzbjxo0bldQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@scarf/scarf": "=1.4.0"
+ }
+ },
+ "node_modules/swagger-ui-express": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/swagger-ui-express/-/swagger-ui-express-5.0.1.tgz",
+ "integrity": "sha512-SrNU3RiBGTLLmFU8GIJdOdanJTl4TOmT27tt3bWWHppqYmAZ6IDuEuBvMU6nZq0zLEe6b/1rACXCgLZqO6ZfrA==",
+ "license": "MIT",
+ "dependencies": {
+ "swagger-ui-dist": ">=5.0.0"
+ },
+ "engines": {
+ "node": ">= v0.10.32"
+ },
+ "peerDependencies": {
+ "express": ">=4.0.0 || >=5.0.0-beta"
+ }
+ },
+ "node_modules/tar-fs": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz",
+ "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==",
+ "license": "MIT",
+ "dependencies": {
+ "mkdirp-classic": "^0.5.2",
+ "pump": "^3.0.0",
+ "tar-stream": "^3.1.5"
+ }
+ },
+ "node_modules/tar-stream": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.2.0.tgz",
+ "integrity": "sha512-ojzvCvVaNp6aOTFmG7jaRD0meowIAuPc3cMMhSgKiVWws1GyHbGd/xvnyuRKcKlMpt3qvxx6r0hreCNITP9hIg==",
+ "license": "MIT",
+ "dependencies": {
+ "b4a": "^1.6.4",
+ "bare-fs": "^4.5.5",
+ "fast-fifo": "^1.2.0",
+ "streamx": "^2.15.0"
+ }
+ },
+ "node_modules/teex": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/teex/-/teex-1.0.1.tgz",
+ "integrity": "sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg==",
+ "license": "MIT",
+ "dependencies": {
+ "streamx": "^2.12.5"
+ }
+ },
+ "node_modules/test-exclude": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
+ "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "@istanbuljs/schema": "^0.1.2",
+ "glob": "^7.1.4",
+ "minimatch": "^3.0.4"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/text-decoder": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.7.tgz",
+ "integrity": "sha512-vlLytXkeP4xvEq2otHeJfSQIRyWxo/oZGEbXrtEEF9Hnmrdly59sUbzZ/QgyWuLYHctCHxFF4tRQZNQ9k60ExQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "b4a": "^1.6.4"
+ }
+ },
+ "node_modules/text-hex": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz",
+ "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==",
+ "license": "MIT"
+ },
+ "node_modules/through": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
+ "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==",
+ "license": "MIT"
+ },
+ "node_modules/tmpl": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz",
+ "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==",
+ "dev": true,
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-number": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=8.0"
+ }
+ },
+ "node_modules/toidentifier": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
+ "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.6"
+ }
+ },
+ "node_modules/touch": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.1.tgz",
+ "integrity": "sha512-r0eojU4bI8MnHr8c5bNo7lJDdI2qXlWWJk6a9EAFG7vbhTjElYhBVS3/miuE0uOuoLdb8Mc/rVfsmm6eo5o9GA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "nodetouch": "bin/nodetouch.js"
+ }
+ },
+ "node_modules/tr46": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz",
+ "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==",
+ "license": "MIT",
+ "dependencies": {
+ "punycode": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/triple-beam": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz",
+ "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 14.0.0"
+ }
+ },
+ "node_modules/tslib": {
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
+ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
+ "license": "0BSD"
+ },
+ "node_modules/type-detect": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
+ "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/type-fest": {
+ "version": "0.21.3",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
+ "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
+ "dev": true,
+ "license": "(MIT OR CC0-1.0)",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/type-is": {
+ "version": "1.6.18",
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
+ "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
+ "license": "MIT",
+ "dependencies": {
+ "media-typer": "0.3.0",
+ "mime-types": "~2.1.24"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/unbzip2-stream": {
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz",
+ "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==",
+ "license": "MIT",
+ "dependencies": {
+ "buffer": "^5.2.1",
+ "through": "^2.3.8"
+ }
+ },
+ "node_modules/undefsafe": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz",
+ "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/undici": {
+ "version": "7.29.0",
+ "resolved": "https://registry.npmjs.org/undici/-/undici-7.29.0.tgz",
+ "integrity": "sha512-IDxfleLmmbSskfWSUATiN1nfn2rDuvnMOqb5CWR92iIfojA0Ud+ulOAAEQ57LPr9rWmsreUyf5lwyao+7GNNVw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.1"
+ }
+ },
+ "node_modules/undici-types": {
+ "version": "8.3.0",
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-8.3.0.tgz",
+ "integrity": "sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==",
+ "license": "MIT"
+ },
+ "node_modules/unpipe": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
+ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/update-browserslist-db": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz",
+ "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "escalade": "^3.2.0",
+ "picocolors": "^1.1.1"
+ },
+ "bin": {
+ "update-browserslist-db": "cli.js"
+ },
+ "peerDependencies": {
+ "browserslist": ">= 4.21.0"
+ }
+ },
+ "node_modules/urlpattern-polyfill": {
+ "version": "10.0.0",
+ "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-10.0.0.tgz",
+ "integrity": "sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==",
+ "license": "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==",
+ "license": "MIT"
+ },
+ "node_modules/utils-merge": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
+ "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4.0"
+ }
+ },
+ "node_modules/uuid": {
+ "version": "9.0.1",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
+ "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
+ "deprecated": "uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028).",
+ "funding": [
+ "https://github.com/sponsors/broofa",
+ "https://github.com/sponsors/ctavan"
+ ],
+ "license": "MIT",
+ "bin": {
+ "uuid": "dist/bin/uuid"
+ }
+ },
+ "node_modules/v8-to-istanbul": {
+ "version": "9.3.0",
+ "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz",
+ "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "@jridgewell/trace-mapping": "^0.3.12",
+ "@types/istanbul-lib-coverage": "^2.0.1",
+ "convert-source-map": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10.12.0"
+ }
+ },
+ "node_modules/validator": {
+ "version": "13.15.35",
+ "resolved": "https://registry.npmjs.org/validator/-/validator-13.15.35.tgz",
+ "integrity": "sha512-TQ5pAGhd5whStmqWvYF4OjQROlmv9SMFVt37qoCBdqRffuuklWYQlCNnEs2ZaIBD1kZRNnikiZOS1eqgkar0iw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
+ "node_modules/vary": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/walker": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz",
+ "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "makeerror": "1.0.12"
+ }
+ },
+ "node_modules/webidl-conversions": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz",
+ "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==",
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/whatwg-encoding": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz",
+ "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==",
+ "deprecated": "Use @exodus/bytes instead for a more spec-conformant and faster implementation",
+ "license": "MIT",
+ "dependencies": {
+ "iconv-lite": "0.6.3"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/whatwg-mimetype": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz",
+ "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/whatwg-url": {
+ "version": "11.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz",
+ "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==",
+ "license": "MIT",
+ "dependencies": {
+ "tr46": "^3.0.0",
+ "webidl-conversions": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/which": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+ "license": "ISC",
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "node-which": "bin/node-which"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/winston": {
+ "version": "3.19.0",
+ "resolved": "https://registry.npmjs.org/winston/-/winston-3.19.0.tgz",
+ "integrity": "sha512-LZNJgPzfKR+/J3cHkxcpHKpKKvGfDZVPS4hfJCc4cCG0CgYzvlD6yE/S3CIL/Yt91ak327YCpiF/0MyeZHEHKA==",
+ "license": "MIT",
+ "dependencies": {
+ "@colors/colors": "^1.6.0",
+ "@dabh/diagnostics": "^2.0.8",
+ "async": "^3.2.3",
+ "is-stream": "^2.0.0",
+ "logform": "^2.7.0",
+ "one-time": "^1.0.0",
+ "readable-stream": "^3.4.0",
+ "safe-stable-stringify": "^2.3.1",
+ "stack-trace": "0.0.x",
+ "triple-beam": "^1.3.0",
+ "winston-transport": "^4.9.0"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/winston-transport": {
+ "version": "4.9.0",
+ "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz",
+ "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==",
+ "license": "MIT",
+ "dependencies": {
+ "logform": "^2.7.0",
+ "readable-stream": "^3.6.2",
+ "triple-beam": "^1.3.0"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "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==",
+ "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/write-file-atomic": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz",
+ "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "imurmurhash": "^0.1.4",
+ "signal-exit": "^3.0.7"
+ },
+ "engines": {
+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
+ }
+ },
+ "node_modules/ws": {
+ "version": "8.16.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz",
+ "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/y18n": {
+ "version": "5.0.8",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
+ "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
+ "license": "ISC",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/yallist": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
+ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/yaml": {
+ "version": "2.0.0-1",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.0.0-1.tgz",
+ "integrity": "sha512-W7h5dEhywMKenDJh2iX/LABkbFnBxasD27oyXWDS/feDsxiw0dD5ncXdYXgkvAsXIY2MpW/ZKkr9IU30DBdMNQ==",
+ "license": "ISC",
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/yargs": {
+ "version": "17.7.3",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.3.tgz",
+ "integrity": "sha512-GZtjxm/J/4TSxuL3FNYjCmLktBTnIw/rVmKSIyKeYAZpmJB2ig9VauCC5xsa82GNKVKDAqpOn3KVzNt0zmrU0g==",
+ "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==",
+ "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/DW-Programming/scraper-api/src/server.js b/DW-Programming/scraper-api/src/server.js
index 7d848125..bf7959c3 100644
--- a/DW-Programming/scraper-api/src/server.js
+++ b/DW-Programming/scraper-api/src/server.js
@@ -181,15 +181,21 @@ global.io = io;
// Initialize services and start server
async function startServer() {
try {
- // Connect to databases
- await connectDatabase();
- await connectRedis();
+ // Connect to databases — non-fatal: server still serves /health, docs and
+ // non-DB routes when Mongo/Redis are absent (degraded mode)
+ await connectDatabase().catch(err =>
+ logger.warn(`DEGRADED: MongoDB unavailable (${err.message}) — DB-backed routes will error`));
+ await connectRedis().catch(err =>
+ logger.warn(`DEGRADED: Redis unavailable (${err.message}) — queue routes will error`));
- // Initialize queue system
- await initializeQueues();
+ // Initialize queue system (needs Redis)
+ await Promise.resolve().then(initializeQueues).catch(err =>
+ logger.warn(`DEGRADED: queue init failed (${err.message})`));
// Setup WebSocket handlers
- setupWebSocketHandlers(io);
+ try { setupWebSocketHandlers(io); } catch (err) {
+ logger.warn(`DEGRADED: websocket handlers failed (${err.message})`);
+ }
const PORT = process.env.PORT || 3002;
server.listen(PORT, '0.0.0.0', () => {
diff --git a/DW-Programming/shopifyskutoblog/client/package-lock.json b/DW-Programming/shopifyskutoblog/client/package-lock.json
index 913f75e8..0af6bd53 100644
--- a/DW-Programming/shopifyskutoblog/client/package-lock.json
+++ b/DW-Programming/shopifyskutoblog/client/package-lock.json
@@ -15760,20 +15760,6 @@
}
}
},
- "node_modules/tailwindcss/node_modules/yaml": {
- "version": "2.8.1",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.1.tgz",
- "integrity": "sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==",
- "license": "ISC",
- "optional": true,
- "peer": true,
- "bin": {
- "yaml": "bin.mjs"
- },
- "engines": {
- "node": ">= 14.6"
- }
- },
"node_modules/tapable": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.0.tgz",
@@ -16218,9 +16204,9 @@
}
},
"node_modules/typescript": {
- "version": "5.9.3",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
- "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
+ "version": "4.9.5",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz",
+ "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==",
"license": "Apache-2.0",
"peer": true,
"bin": {
@@ -16228,7 +16214,7 @@
"tsserver": "bin/tsserver"
},
"engines": {
- "node": ">=14.17"
+ "node": ">=4.2.0"
}
},
"node_modules/unbox-primitive": {
diff --git a/shopify/scripts/data/tk135/fullrun-vision.tsv b/shopify/scripts/data/tk135/fullrun-vision.tsv
index 44f9df13..e9649aa8 100644
--- a/shopify/scripts/data/tk135/fullrun-vision.tsv
+++ b/shopify/scripts/data/tk135/fullrun-vision.tsv
@@ -38057,3 +38057,843 @@ gid://shopify/Product/1499722940528 Abstract https://cdn.shopify.com/s/files/1/0
gid://shopify/Product/7882843488307 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/79539b553bf3fee118647783d5bdb268.jpg?v=1783881852 vision:qwen2.5vl:7b
gid://shopify/Product/7375658582067 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_dedc281a-b5c4-4c99-a716-b1e685236f35.png?v=1722466180 vision:qwen2.5vl:7b
gid://shopify/Product/6679762141235 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/products/234-87_image2.jpg?v=1646100094 vision:qwen2.5vl:7b
+gid://shopify/Product/7822325088307 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0068547_soho-linen-skyline_650.jpg?v=1776902653 vision:qwen2.5vl:7b
+gid://shopify/Product/7866351190067 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/couleurs-med-m2511-1-wallpapersmural-coordonne.jpg?v=1782183129 vision:qwen2.5vl:7b
+gid://shopify/Product/7882821992499 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/76f20df2ab846e0f17149b3d0dc20994.jpg?v=1783880351 vision:qwen2.5vl:7b
+gid://shopify/Product/7882828906547 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/98f22f2e4c5304d76f0e3bd7e463e406.jpg?v=1783880905 vision:qwen2.5vl:7b
+gid://shopify/Product/7822322171955 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0067921_roma-leather-27-tawny_650.jpg?v=1776902535 vision:qwen2.5vl:7b
+gid://shopify/Product/7855827845171 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R21507_interior1.jpg?v=1781029425 vision:qwen2.5vl:7b
+gid://shopify/Product/6936710021171 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-ZG-24_f6acf9e2-fbd3-4f5d-979d-fc5d284cd587.jpg?v=1733889956 vision:qwen2.5vl:7b
+gid://shopify/Product/7859488456755 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/WOOD_N_003_LIME.jpg?v=1781282777 vision:qwen2.5vl:7b
+gid://shopify/Product/7884562464819 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T5070.jpg?v=1784014813 vision:qwen2.5vl:7b
+gid://shopify/Product/7375630794803 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_1ddd67b6-2a0e-4712-baf3-f345120f4c3d.png?v=1722468219 vision:qwen2.5vl:7b
+gid://shopify/Product/7855838986291 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R19831_interior1.jpg?v=1781030051 vision:qwen2.5vl:7b
+gid://shopify/Product/1497316065392 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/821c9226d605a220d13020c7dfb9eb40.jpg?v=1572309637 vision:qwen2.5vl:7b
+gid://shopify/Product/1497320128624 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/13bbf70e8090eed230005886a0ec0c64.jpg?v=1572309646 vision:qwen2.5vl:7b
+gid://shopify/Product/7297479770163 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/NW44802.jpg?v=1748376326 vision:qwen2.5vl:7b
+gid://shopify/Product/7896534974515 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/EJA9202.jpg?v=1784746228 vision:qwen2.5vl:7b
+gid://shopify/Product/7897395691571 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/TWW34048_94d57800-4afc-4d11-a1b6-e84a036598ba.jpg?v=1784864416 vision:qwen2.5vl:7b
+gid://shopify/Product/7297392574515 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/HG11120.jpg?v=1748377051 vision:qwen2.5vl:7b
+gid://shopify/Product/7584985251891 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/u421-18_7419db63-abda-468f-98bd-6d528115e615.jpg?v=1751949272 vision:qwen2.5vl:7b
+gid://shopify/Product/7388491415603 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ILS-02_f7adafe6-da70-40e8-a54b-c4bb128b9da9.jpg?v=1736208483 vision:qwen2.5vl:7b
+gid://shopify/Product/6679666098227 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R16831_image2.jpg?v=1756326997 vision:qwen2.5vl:7b
+gid://shopify/Product/7420785524787 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3967_16_166a0cf1-69e4-4fee-840a-51c3c8c285b0.jpg?v=1753321915 vision:qwen2.5vl:7b
+gid://shopify/Product/7877750194227 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0154940_tillie-grey-diamond-floral-wallpaper.jpg?v=1783424419 vision:qwen2.5vl:7b
+gid://shopify/Product/7584986726451 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/INTERLOOM_SCHOOL_COLLECTION_HAZE_NM23-05_0b486bd2-b83e-4542-b92f-a720dee1d3b3.jpg?v=1751949224 vision:qwen2.5vl:7b
+gid://shopify/Product/6936684691507 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-BL-10_7f795e71-dca0-4498-835b-08df64f873d7.jpg?v=1733891643 vision:qwen2.5vl:7b
+gid://shopify/Product/7430795460659 Chinoiserie https://cdn.shopify.com/s/files/1/0015/4117/7456/files/RARE_ARTIFACTS_156x100_WP20600_1_26835e64-d5ca-4599-a5ea-bfdd3aa4fbee.jpg?v=1748367560 vision:qwen2.5vl:7b
+gid://shopify/Product/7887506178099 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0161597_road-traffic-blue-cars-wallpaper.jpg?v=1784295442 vision:qwen2.5vl:7b
+gid://shopify/Product/1497313116272 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/fdddeb52f1999b9a12f616adf95acc68.jpg?v=1572309637 vision:qwen2.5vl:7b
+gid://shopify/Product/7864790122547 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/az52966im.jpg?v=1781894348 vision:qwen2.5vl:7b
+gid://shopify/Product/7878221103155 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/oFHwOfYvLhPiuprVGKj9.webp?v=1783464215 vision:qwen2.5vl:7b
+gid://shopify/Product/7880969846835 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DWGL-100100.jpg?v=1783750350 vision:qwen2.5vl:7b
+gid://shopify/Product/7297373962291 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/LN20702.jpg?v=1748377240 vision:qwen2.5vl:7b
+gid://shopify/Product/6679747952691 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS16831_image1.jpg?v=1756312357 vision:qwen2.5vl:7b
+gid://shopify/Product/7855832498227 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R20808_interior1.webp?v=1781029726 vision:qwen2.5vl:7b
+gid://shopify/Product/7833332547635 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Palms_Cornwall-blue_Wallpaper_0200351e-7d62-42f9-a47b-7f5ef062ac1a.jpg?v=1778629962 vision:qwen2.5vl:7b
+gid://shopify/Product/7896580456499 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/KT-COUNTER_POINT-003_0.jpg?v=1784752991 vision:qwen2.5vl:7b
+gid://shopify/Product/7297350008883 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/SG10700.jpg?v=1748377475 vision:qwen2.5vl:7b
+gid://shopify/Product/7871018893363 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/36569.24.0.jpg?v=1784728259 vision:qwen2.5vl:7b
+gid://shopify/Product/7882746232883 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0159205_indra-grey-striated-wallpaper.jpg?v=1783865452 vision:qwen2.5vl:7b
+gid://shopify/Product/7792235348019 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Aire-Bio_Native_Cocoa_b79d7cf0-a9d1-4a81-ba24-835012d8830f.jpg?v=1772654751 vision:qwen2.5vl:7b
+gid://shopify/Product/7896503746611 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1305.jpg?v=1784743399 vision:qwen2.5vl:7b
+gid://shopify/Product/7896513085491 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DG1318.jpg?v=1784744291 vision:qwen2.5vl:7b
+gid://shopify/Product/7864785600563 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/az53125lv.jpg?v=1781894201 vision:qwen2.5vl:7b
+gid://shopify/Product/7896510791731 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1126.jpg?v=1784744055 vision:qwen2.5vl:7b
+gid://shopify/Product/7896508334131 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1295.jpg?v=1784743834 vision:qwen2.5vl:7b
+gid://shopify/Product/7897181388851 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/NarmadaCollection-Calacatta.jpg?v=1784829491 vision:qwen2.5vl:7b
+gid://shopify/Product/7887542288435 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T88770_38b54b89-de85-4b6f-9901-412b970ceea5.jpg?v=1784302806 vision:qwen2.5vl:7b
+gid://shopify/Product/7896507842611 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1218.jpg?v=1784743766 vision:qwen2.5vl:7b
+gid://shopify/Product/7896507285555 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1176.jpg?v=1784743688 vision:qwen2.5vl:7b
+gid://shopify/Product/7896512135219 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1255.jpg?v=1784744167 vision:qwen2.5vl:7b
+gid://shopify/Product/7896503648307 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1280.jpg?v=1784743390 vision:qwen2.5vl:7b
+gid://shopify/Product/7896508203059 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1230.jpg?v=1784743819 vision:qwen2.5vl:7b
+gid://shopify/Product/7297406763059 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/NW33408.jpg?v=1748376898 vision:qwen2.5vl:7b
+gid://shopify/Product/7864795234355 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/az52851un.jpg?v=1781894482 vision:qwen2.5vl:7b
+gid://shopify/Product/7864796872755 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/az52702ma.jpg?v=1781894603 vision:qwen2.5vl:7b
+gid://shopify/Product/7882819665971 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/5df6c69fb737ad57e25823d625e57104.jpg?v=1783880276 vision:qwen2.5vl:7b
+gid://shopify/Product/6829062225971 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920567-mks-006.jpg?v=1781716150 vision:qwen2.5vl:7b
+gid://shopify/Product/7297283063859 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PP10400_48791228-e323-4305-99a0-ee79b7489366.jpg?v=1748378047 vision:qwen2.5vl:7b
+gid://shopify/Product/1502492393584 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0ebffe38665b4004bbc17b0f237b9bd3.jpg?v=1783356708 vision:qwen2.5vl:7b
+gid://shopify/Product/7375729459251 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_d010e921-a523-49c1-b216-945493195b65.png?v=1722462165 vision:qwen2.5vl:7b
+gid://shopify/Product/7375752364083 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_561c0022-2688-4975-ac32-6787723284d3.png?v=1722461280 vision:qwen2.5vl:7b
+gid://shopify/Product/7897174212659 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Crystalline_Emb_-_Emerald_Emb.jpg?v=1784829042 vision:qwen2.5vl:7b
+gid://shopify/Product/7375756951603 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_fb5a21d3-775b-4198-933b-23e907f0f8f2.png?v=1722461197 vision:qwen2.5vl:7b
+gid://shopify/Product/7808271515699 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/1022-11_4d54ceb6-e969-49c4-a656-9272f5dfb296.jpg?v=1774894334 vision:qwen2.5vl:7b
+gid://shopify/Product/7866353156147 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/poissons-m2501-7-wallpapersmural-coordonne.jpg?v=1782183180 vision:qwen2.5vl:7b
+gid://shopify/Product/7870419992627 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Beton-cire-3-450x270-9-zilver-med-CC8015S.jpg?v=1782733247 vision:qwen2.5vl:7b
+gid://shopify/Product/7883955175475 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0099466_essex-dark-blue-geometric-wallpaper.jpg?v=1783970457 vision:qwen2.5vl:7b
+gid://shopify/Product/7897184829491 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/tarrant_pantego.jpg?v=1784829767 vision:qwen2.5vl:7b
+gid://shopify/Product/7898836828211 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1128_a2ecf7b9-be8e-4a97-a269-1b829728dec8.jpg?v=1785083596 vision:qwen2.5vl:7b
+gid://shopify/Product/1500474278000 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/products/b74e5831229baa86a6ca842b181f3d83_f51da264-7e76-4586-9ea4-bae49a7a0121.jpg?v=1572310387 vision:qwen2.5vl:7b
+gid://shopify/Product/7880968798259 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DWGL-100068.jpg?v=1783750231 vision:qwen2.5vl:7b
+gid://shopify/Product/7822347501619 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0075307_bay-deep-seas_650.jpg?v=1776905567 vision:qwen2.5vl:7b
+gid://shopify/Product/7855832530995 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R22042_interior1.jpg?v=1781029730 vision:qwen2.5vl:7b
+gid://shopify/Product/7421492887603 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/117_6019_CS_8ab07f73-871d-4ac9-8e4a-52faa54b45fc.jpg?v=1753304961 vision:qwen2.5vl:7b
+gid://shopify/Product/7884811468851 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0154877_ames-red-linen-stripe-wallpaper_baf855a4-5a59-4134-8700-54aa51a80688.jpg?v=1784041117 vision:qwen2.5vl:7b
+gid://shopify/Product/1497290408048 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/3232db827d30f9246cf2aa5e251e7d11.jpg?v=1572309632 vision:qwen2.5vl:7b
+gid://shopify/Product/7422943854643 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/P2017102_3_4bf633fe-15d6-4934-9a70-f9a4fd8ada02.jpg?v=1753291292 vision:qwen2.5vl:7b
+gid://shopify/Product/7855832596531 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R22044_interior1.jpg?v=1781029732 vision:qwen2.5vl:7b
+gid://shopify/Product/7430015156275 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/COUNTRYSIDE_PLAID_Leather_Wallpaper_52x1000cm_WP30012_aff6d562-8c90-472b-b56a-7dd3d8208b44.jpg?v=1748367778 vision:qwen2.5vl:7b
+gid://shopify/Product/7876826333235 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/36676_52_537b8fb0-647e-4b37-8b6f-d886a6d09071.jpg?v=1783273222 vision:qwen2.5vl:7b
+gid://shopify/Product/7865288818739 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/AT1451_a07da7bd-65fb-4c2c-a701-46020d37f311.jpg?v=1782002420 vision:qwen2.5vl:7b
+gid://shopify/Product/7817257386035 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/de04fe70614a41ed59865b7c5b15934a.jpg?v=1776041141 vision:qwen2.5vl:7b
+gid://shopify/Product/7855832629299 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R22045_interior1.jpg?v=1781029735 vision:qwen2.5vl:7b
+gid://shopify/Product/1497376325744 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/fbcba4b6e99eecef261e51dacba26324.jpg?v=1572309653 vision:qwen2.5vl:7b
+gid://shopify/Product/7876091674675 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0064871_flyga-light-blue-butterfly-bonanza-wallpaper_f08a7a9c-4235-4c8b-9fd5-aac07752d11f.jpg?v=1783111218 vision:qwen2.5vl:7b
+gid://shopify/Product/7876610424883 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/36673_1_b8a727ba-58b7-4b70-ab3d-582676c15bfd.jpg?v=1783222820 vision:qwen2.5vl:7b
+gid://shopify/Product/7885218742323 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T72867_7c5fcf67-1dbb-4e81-a3de-b52aa9dd6c45.jpg?v=1784101216 vision:qwen2.5vl:7b
+gid://shopify/Product/7851173871667 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R14701_interior1.webp?v=1780557629 vision:qwen2.5vl:7b
+gid://shopify/Product/7388468674611 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/AVR-011_ea75ebbb-e600-41b9-8e7e-1a56d301e222.jpg?v=1740077175 vision:qwen2.5vl:7b
+gid://shopify/Product/1497325731952 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/5f65d99c8bee38fdbd32406720dee1a0.jpg?v=1572309647 vision:qwen2.5vl:7b
+gid://shopify/Product/7424889552947 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/P8015123_424_1976c99c-9a18-4a68-95df-17c62e754155.jpg?v=1753290656 vision:qwen2.5vl:7b
+gid://shopify/Product/1501257662576 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/xhw-2010434-sample-hollywood-contemporary-cobblestone-hollywood-wallcoverings.jpg?v=1775717297 vision:qwen2.5vl:7b
+gid://shopify/Product/7424888766515 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/P8015121_114_6c928cba-aea7-42fa-ab49-452b0230920e.jpg?v=1753290689 vision:qwen2.5vl:7b
+gid://shopify/Product/7882835853363 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/f9c7d3d0f4094f5dcc09ca6790105654.jpg?v=1783881359 vision:qwen2.5vl:7b
+gid://shopify/Product/7534241185843 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/scroll-morris-and-co--wallpaper-210363-image01_32dd5290-a25d-4c78-b878-d4b4a7081885.jpg?v=1741111030 vision:qwen2.5vl:7b
+gid://shopify/Product/7785757704243 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/124080_TILE_01__25745.1769760678.jpg?v=1771818924 vision:qwen2.5vl:7b
+gid://shopify/Product/1496285610096 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/FFM-44449-sample-clean_c5e4b00e-f761-45fa-ac93-62e323088f14.jpg?v=1774479152 vision:qwen2.5vl:7b
+gid://shopify/Product/7868751052851 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0060174_wilma-green-floral-block-print-wallpaper_141adc3e-1e3c-43d1-9124-e1207e654fd1.jpg?v=1782460067 vision:qwen2.5vl:7b
+gid://shopify/Product/6944748109875 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T3656_9fb3d4f6-f081-45cc-8096-8dd1cfb5194f.jpg?v=1781202971 vision:qwen2.5vl:7b
+gid://shopify/Product/6936709103667 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-WN-06_898c5af8-1a06-4a83-9965-4e5a2a2f8e93.jpg?v=1733890019 vision:qwen2.5vl:7b
+gid://shopify/Product/7885719306291 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0163746_harrison-taupe-swirling-geometric-wallpaper.jpg?v=1784122682 vision:qwen2.5vl:7b
+gid://shopify/Product/7857594269747 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R19371_interior1.webp?v=1781115352 vision:qwen2.5vl:7b
+gid://shopify/Product/7879443382323 Chinoiserie https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Zeus_Ochre.jpg?v=1783546842 vision:qwen2.5vl:7b
+gid://shopify/Product/7375953100851 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_cd29adae-382c-4f82-957e-0873cbbc544b.png?v=1722456044 vision:qwen2.5vl:7b
+gid://shopify/Product/1497292243056 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/c4989cded8dc2dbcc2e47d1628740d26.jpg?v=1572309633 vision:qwen2.5vl:7b
+gid://shopify/Product/7384914395187 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Maya-50284-DesignerWallcoverings-Los-AngelesMaya-Romanoff-Wallpaper-MPS-01-1.jpg?v=1738861442 vision:qwen2.5vl:7b
+gid://shopify/Product/7896264441907 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/GWP-3743_1613.jpg?v=1784732421 vision:qwen2.5vl:7b
+gid://shopify/Product/7375686959155 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_9ff438ae-abe7-4168-a8c3-13100c9cfe78.png?v=1722464091 vision:qwen2.5vl:7b
+gid://shopify/Product/7584925122611 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ILLUSIVE-WALKING_STICK_LSV1-04_0c8b3349-c0b7-4da7-981d-4cb9f7bf755e.jpg?v=1751951425 vision:qwen2.5vl:7b
+gid://shopify/Product/7898834993203 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1299_70815356-181a-4838-ae23-23dfd6f8bded.jpg?v=1785083456 vision:qwen2.5vl:7b
+gid://shopify/Product/7833332252723 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/BrioPinkWallpaper_FallRuler_9896bc12-2cec-4018-b176-c063b6836414.jpg?v=1778629954 vision:qwen2.5vl:7b
+gid://shopify/Product/7879527727155 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/36903_155_79f4d680-843c-44cf-b7b9-f5ea9360f68f.jpg?v=1783561229 vision:qwen2.5vl:7b
+gid://shopify/Product/7884071338035 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/rural-self-adhesive-film-jeffrey-stevens.jpg?v=1783972445 vision:qwen2.5vl:7b
+gid://shopify/Product/7896220631091 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/06052020094240_panel.jpg?v=1784730636 vision:qwen2.5vl:7b
+gid://shopify/Product/7896220565555 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/06052020100846_panel.jpg?v=1784730606 vision:qwen2.5vl:7b
+gid://shopify/Product/7859484688435 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Lacca-LAC-701.jpg?v=1781282690 vision:qwen2.5vl:7b
+gid://shopify/Product/1496127471728 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/products/0a05a47159c80d80143aa870b162a9c8.jpg?v=1572309208 vision:qwen2.5vl:7b
+gid://shopify/Product/6832030580787 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920364-har-03.jpg?v=1781717301 vision:qwen2.5vl:7b
+gid://shopify/Product/1497236013168 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/fbd468cb1aa7e5df4beee7e41092fd22.jpg?v=1572309620 vision:qwen2.5vl:7b
+gid://shopify/Product/7864791793715 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/az52960im.jpg?v=1781894363 vision:qwen2.5vl:7b
+gid://shopify/Product/1498302152816 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/9eb150cc838f67a50ebe29a68388d637.jpg?v=1745458836 vision:qwen2.5vl:7b
+gid://shopify/Product/7388475195443 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/CRK-06_081ac7c7-2b87-4445-a4bc-7b2f507036b5.jpg?v=1740077107 vision:qwen2.5vl:7b
+gid://shopify/Product/7898836533299 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1120_f9c133d0-c79e-4bf3-9ca6-3c6073891056.jpg?v=1785083573 vision:qwen2.5vl:7b
+gid://shopify/Product/7375649767475 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_64704c3f-8f10-442e-bef0-6e2ac54b241e.png?v=1722467013 vision:qwen2.5vl:7b
+gid://shopify/Product/7882817470515 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/068d1489e54a4b24a7aa0bda8ab16acc.jpg?v=1783880109 vision:qwen2.5vl:7b
+gid://shopify/Product/7375649898547 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_e77236b8-6ea5-4718-9eb7-60c9c547891a.png?v=1722467007 vision:qwen2.5vl:7b
+gid://shopify/Product/1498301497456 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/99f90453bc7ea9833181aeb42badad29.jpg?v=1745458840 vision:qwen2.5vl:7b
+gid://shopify/Product/7864805916723 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/y47667sv.jpg?v=1781895166 vision:qwen2.5vl:7b
+gid://shopify/Product/7375649865779 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_ee4ded28-f363-4b1c-b3a2-11be3c68caf7.png?v=1722467009 vision:qwen2.5vl:7b
+gid://shopify/Product/1498304413808 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/e447032aea6dfeae7d3e8e54fdd77c65.jpg?v=1745458825 vision:qwen2.5vl:7b
+gid://shopify/Product/7880690532403 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T24135_e95e68ff-e60d-40a7-8511-07d550e1528a.jpg?v=1783712409 vision:qwen2.5vl:7b
+gid://shopify/Product/7430003130419 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/GOLDEN_RUSH_c5e4b7c2-4e65-43f6-b006-c1e847c028c2.jpg?v=1748368082 vision:qwen2.5vl:7b
+gid://shopify/Product/7897184567347 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Tarrant-SQ.jpg?v=1784829750 vision:qwen2.5vl:7b
+gid://shopify/Product/7422647959603 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3739_116_f61b9094-78fc-4b3c-9441-7415366ed525.jpg?v=1753292026 vision:qwen2.5vl:7b
+gid://shopify/Product/7896495652915 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/BBWX05.jpg?v=1784742872 vision:qwen2.5vl:7b
+gid://shopify/Product/7871411159091 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/A01-LL-03W_Love-Leopard-Wallpaper_Peach_f426fe74-3ed6-4135-a2cb-0a31e8c7d853.jpg?v=1782837663 vision:qwen2.5vl:7b
+gid://shopify/Product/7882806100019 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/6a4dc1cb091e8055d75f7be903c6123a.jpg?v=1783879302 vision:qwen2.5vl:7b
+gid://shopify/Product/7882801807411 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/a83c235773ebb0c1ebacce5309e536be.jpg?v=1783878976 vision:qwen2.5vl:7b
+gid://shopify/Product/7811695542323 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0063719_salamander-blue-woven-wallpaper.jpg?v=1775164134 vision:qwen2.5vl:7b
+gid://shopify/Product/7880968044595 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DWGL-100045.jpg?v=1783750156 vision:qwen2.5vl:7b
+gid://shopify/Product/6679620091955 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R13751_image2.jpg?v=1756328108 vision:qwen2.5vl:7b
+gid://shopify/Product/7855833055283 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R22407_interior1.jpg?v=1781029754 vision:qwen2.5vl:7b
+gid://shopify/Product/7877387780147 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0154842_moorland-ivory-wood-panel-wallpaper.jpg?v=1783399218 vision:qwen2.5vl:7b
+gid://shopify/Product/7877369004083 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/36831_11_8c8df16b-c25d-42e5-a2a8-2c342aa84b10.jpg?v=1783392040 vision:qwen2.5vl:7b
+gid://shopify/Product/6944728383539 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T41100.jpg?v=1781203153 vision:qwen2.5vl:7b
+gid://shopify/Product/7866122797107 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/map-xylography-green-repeated-patterns-coordonne.jpg?v=1782138616 vision:qwen2.5vl:7b
+gid://shopify/Product/7424928120883 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3837_1611_46e9bb4f-fef7-4916-b1dc-be03956368f8.jpg?v=1753290526 vision:qwen2.5vl:7b
+gid://shopify/Product/7866122666035 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/map-xylography-grey-repeated-patterns-coordonne.jpg?v=1782138606 vision:qwen2.5vl:7b
+gid://shopify/Product/7896510201907 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1106.jpg?v=1784744017 vision:qwen2.5vl:7b
+gid://shopify/Product/7882824286259 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/b3e596a426a464b29e9f10548b08d730.jpg?v=1783880535 vision:qwen2.5vl:7b
+gid://shopify/Product/7851175903283 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R19523_interior1.jpg?v=1780557683 vision:qwen2.5vl:7b
+gid://shopify/Product/4481155596339 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/SC_0001G1189_a3a713bb-9e69-46b3-9ba6-8d2a523f5a2e.jpg?v=1745348388 vision:qwen2.5vl:7b
+gid://shopify/Product/7796269416499 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Skintex-SF_Bastia_Blood_Orange.jpg?v=1773218566 vision:qwen2.5vl:7b
+gid://shopify/Product/7796269383731 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Skintex-SF_Bastia_Black.jpg?v=1773218563 vision:qwen2.5vl:7b
+gid://shopify/Product/7822320173107 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0067845_easy-linen-27-sandcastle_650.jpg?v=1776902453 vision:qwen2.5vl:7b
+gid://shopify/Product/7822320304179 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0067850_easy-linen-27-mohair_650.jpg?v=1776902458 vision:qwen2.5vl:7b
+gid://shopify/Product/7822320205875 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0067846_easy-linen-27-lush-fern_650.jpg?v=1776902454 vision:qwen2.5vl:7b
+gid://shopify/Product/1495213408368 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/cropped-4165766840432.jpg?v=1774339748 vision:qwen2.5vl:7b
+gid://shopify/Product/7882759536691 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0152289_lisle-toasted-almond-wallpaper.jpg?v=1783866185 vision:qwen2.5vl:7b
+gid://shopify/Product/7880338145331 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0159526_serenade-sea-green-ferns-wallpaper.jpg?v=1783669254 vision:qwen2.5vl:7b
+gid://shopify/Product/7880939896883 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/mural-wall-essence-de-liege-murm-munt-muco-muvp-wall-etincelle-essence-de-liege-wall-essence-de-liege-c21056f7189887c5115a81b02416.jpg?v=1783789462 vision:qwen2.5vl:7b
+gid://shopify/Product/7833329369139 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Serendipity-Blue-Silver-Wallpaper_06f7b494-91ec-4a3d-b971-03aee8b0fbea.jpg?v=1778629855 vision:qwen2.5vl:7b
+gid://shopify/Product/7775012552755 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/blackber.jpg?v=1770786391 vision:qwen2.5vl:7b
+gid://shopify/Product/7775012880435 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ice_fea647d6-3fe1-478c-af2e-93c242e14a40.jpg?v=1770786838 vision:qwen2.5vl:7b
+gid://shopify/Product/7775012945971 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/jet_44b562e2-a161-451f-be10-66ce630297c4.jpg?v=1770786927 vision:qwen2.5vl:7b
+gid://shopify/Product/7775013044275 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/limon.jpg?v=1770787015 vision:qwen2.5vl:7b
+gid://shopify/Product/7775013568563 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/sage.jpg?v=1770787463 vision:qwen2.5vl:7b
+gid://shopify/Product/6936710545459 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-ZN-10_b6d9478c-edb0-4ec5-b08c-f71ff214a389.jpg?v=1733889913 vision:qwen2.5vl:7b
+gid://shopify/Product/1497525682288 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/products/76a05c34d371483231bed65ff10f8ce6.jpg?v=1572309723 vision:qwen2.5vl:7b
+gid://shopify/Product/7896297570355 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/996039273210e3b4ddc0f2c947eeaf86.jpg?v=1784736903 vision:qwen2.5vl:7b
+gid://shopify/Product/7878350110771 Paisley https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0060416_electra-blush-leopard-spot-string-wallpaper.jpg?v=1783478416 vision:qwen2.5vl:7b
+gid://shopify/Product/7775014322227 Herringbone https://cdn.shopify.com/s/files/1/0015/4117/7456/files/19342-Platinum-300x300.jpg?v=1770788496 vision:qwen2.5vl:7b
+gid://shopify/Product/7775014354995 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/19344-Putty-300x300.jpg?v=1770788541 vision:qwen2.5vl:7b
+gid://shopify/Product/7584972931123 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/67120_00f9bd13-6f86-4776-a2a3-81b226286007.jpg?v=1751962319 vision:qwen2.5vl:7b
+gid://shopify/Product/7375684567091 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_fb4fc7f1-c82b-4e72-a412-5db67b41d3b5.png?v=1722464291 vision:qwen2.5vl:7b
+gid://shopify/Product/1497358663792 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/55feb680bb5f34ce31c1bb494fcbbfed.jpg?v=1572309650 vision:qwen2.5vl:7b
+gid://shopify/Product/7808271843379 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/JW2084-1_e6585146-a122-40c5-b2a7-0a6051e6b491.jpg?v=1774894582 vision:qwen2.5vl:7b
+gid://shopify/Product/7885131153459 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T72799_33d7ab5a-5c97-4640-91b9-84c8294ff6b0.jpg?v=1784076005 vision:qwen2.5vl:7b
+gid://shopify/Product/1498915438704 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/xju-47304-sample-berkeley-type-ii-vinyl-hollywood-wallcoverings.jpg?v=1775704191 vision:qwen2.5vl:7b
+gid://shopify/Product/7884355534899 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/berkley-blue-anti-fatigue-comfort-mat-jeffrey-stev.jpg?v=1783984761 vision:qwen2.5vl:7b
+gid://shopify/Product/7584896843827 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MARKET-STREET_NATURAL-LEATHER_SG04-09__KOROSEAL.jpg?v=1751952485 vision:qwen2.5vl:7b
+gid://shopify/Product/7896519966771 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ECA3404.jpg?v=1784744828 vision:qwen2.5vl:7b
+gid://shopify/Product/7896521211955 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/EFS4008.jpg?v=1784744927 vision:qwen2.5vl:7b
+gid://shopify/Product/1497396150384 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/611312fb1fb854ab32bc87a6823cf9f2.jpg?v=1572309668 vision:qwen2.5vl:7b
+gid://shopify/Product/7896521343027 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/EGA7602.jpg?v=1784744944 vision:qwen2.5vl:7b
+gid://shopify/Product/7896521900083 Herringbone https://cdn.shopify.com/s/files/1/0015/4117/7456/files/EGE7107.jpg?v=1784745007 vision:qwen2.5vl:7b
+gid://shopify/Product/7896522260531 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/EKN3607.jpg?v=1784745049 vision:qwen2.5vl:7b
+gid://shopify/Product/7896522063923 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/EKN3602.jpg?v=1784745028 vision:qwen2.5vl:7b
+gid://shopify/Product/7896523014195 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ERN2207.jpg?v=1784745132 vision:qwen2.5vl:7b
+gid://shopify/Product/7896523374643 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ERL2608.jpg?v=1784745173 vision:qwen2.5vl:7b
+gid://shopify/Product/1497368494192 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/b7d080e21ab4bbd76bd19a657aac6b3f.jpg?v=1572309652 vision:qwen2.5vl:7b
+gid://shopify/Product/7896523243571 Paisley https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ERL2604.jpg?v=1784745157 vision:qwen2.5vl:7b
+gid://shopify/Product/7896523636787 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/EMO3006.jpg?v=1784745202 vision:qwen2.5vl:7b
+gid://shopify/Product/7896523702323 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/EMO3008.jpg?v=1784745211 vision:qwen2.5vl:7b
+gid://shopify/Product/7896525471795 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ERE3509.jpg?v=1784745382 vision:qwen2.5vl:7b
+gid://shopify/Product/7584977911859 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MARMORINO_LARICE_7321-16_new_ef268813-68a9-4572-a302-c72c33c75875.jpg?v=1751949548 vision:qwen2.5vl:7b
+gid://shopify/Product/7584977977395 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MARMORINO_LAZULI_7321-18_new_e66b2730-a797-4ad1-8cf9-16e030ebf208.jpg?v=1751949544 vision:qwen2.5vl:7b
+gid://shopify/Product/7584977354803 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MARMORINO_MARMO_7321-05_new_4d11fed2-366e-4c0f-8826-75016ba7e550.jpg?v=1751949568 vision:qwen2.5vl:7b
+gid://shopify/Product/7584977256499 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MARMORINO_NEVE_7321-03_new_46f88402-59ad-4029-b577-46f9fbf73462.jpg?v=1751949571 vision:qwen2.5vl:7b
+gid://shopify/Product/7864785633331 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/az53124lv.jpg?v=1781894204 vision:qwen2.5vl:7b
+gid://shopify/Product/7515280638003 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/w7194-02_1_5c86b6fb-9499-4a83-8b93-6cbc84c021ab.webp?v=1782464433 vision:qwen2.5vl:7b
+gid://shopify/Product/7775012159539 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/pearl_dea97b1f-d0f2-41fc-a07d-d51c441df233.jpg?v=1770785913 vision:qwen2.5vl:7b
+gid://shopify/Product/7775012126771 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/off_white.jpg?v=1770785869 vision:qwen2.5vl:7b
+gid://shopify/Product/6936687247411 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-DC-27_3f37a75e-6ab7-45d9-9392-7b506d725d79.jpg?v=1733891483 vision:qwen2.5vl:7b
+gid://shopify/Product/6936687050803 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-DC-21_f640ab8f-44b3-40a4-92b9-e18ea06db188.jpg?v=1733891496 vision:qwen2.5vl:7b
+gid://shopify/Product/7851178360883 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R18847_interior1.webp?v=1780557766 vision:qwen2.5vl:7b
+gid://shopify/Product/7865527009331 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/5622806__05482.1759418772.jpg?v=1782085263 vision:qwen2.5vl:7b
+gid://shopify/Product/7851178754099 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R20623_interior1.webp?v=1780557779 vision:qwen2.5vl:7b
+gid://shopify/Product/7515286765619 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/w7555-03.jpg?v=1782461305 vision:qwen2.5vl:7b
+gid://shopify/Product/1498373914736 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/wbs-39606-sample-biscay-bay-birch-wood-grain-hollywood-wallcoverings.jpg?v=1775705196 vision:qwen2.5vl:7b
+gid://shopify/Product/1498375782512 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/wbs-39618-sample-biscay-bay-black-wood-grain-hollywood-wallcoverings.jpg?v=1775705222 vision:qwen2.5vl:7b
+gid://shopify/Product/1495546822768 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/products/017d5204865e68e79f2d66c5cfa07d9a.jpg?v=1572309082 vision:qwen2.5vl:7b
+gid://shopify/Product/3740354674753 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/hwc-61007-sample-block-party-vinyl-hollywood-wallcoverings.jpg?v=1775705803 vision:qwen2.5vl:7b
+gid://shopify/Product/7864793006131 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/az52865md.jpg?v=1781894402 vision:qwen2.5vl:7b
+gid://shopify/Product/7859485179955 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Materia-MAT-266.jpg?v=1781282700 vision:qwen2.5vl:7b
+gid://shopify/Product/7421877813299 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/92_1001_CS_875c21c2-2b8d-44f9-bf6c-f8f3c4c0041f.jpg?v=1753304205 vision:qwen2.5vl:7b
+gid://shopify/Product/7421462511667 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/107_11052_CS_814a480c-a589-45b9-9cdc-523696588503.jpg?v=1753306155 vision:qwen2.5vl:7b
+gid://shopify/Product/7865463308339 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/AT23114_3d4def11-a785-442b-ac9b-ef73d9ed337c.jpg?v=1782067225 vision:qwen2.5vl:7b
+gid://shopify/Product/7421316857907 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W4154_421_b711fdbf-bf1f-4a75-8f59-60ace8137d5e.jpg?v=1753320951 vision:qwen2.5vl:7b
+gid://shopify/Product/1496528781424 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/46ae6815d83812b8fb8f79ce217ff081.jpg?v=1572309299 vision:qwen2.5vl:7b
+gid://shopify/Product/7855820931123 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R20641_interior1.jpg?v=1781028876 vision:qwen2.5vl:7b
+gid://shopify/Product/7882803642419 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/1d9664356506718bca5bd162316c1943.jpg?v=1783879125 vision:qwen2.5vl:7b
+gid://shopify/Product/7882749378611 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0140312_nazca-wallpaper-almondpearlgold.jpg?v=1783865642 vision:qwen2.5vl:7b
+gid://shopify/Product/7514186121267 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/48036_c4032f5d-9c38-4486-8861-8fc5935bcd3a.webp?v=1782460595 vision:qwen2.5vl:7b
+gid://shopify/Product/1497593970800 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/products/c6042297e2ce59f5901dc53b869e9ea2.jpg?v=1572309754 vision:qwen2.5vl:7b
+gid://shopify/Product/1497594691696 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/products/735aad63cc9e226dc9b914b0133e03c9.jpg?v=1572309754 vision:qwen2.5vl:7b
+gid://shopify/Product/1497595084912 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/93da8c2dcadcbe888c32ee7f152eecba.jpg?v=1572309754 vision:qwen2.5vl:7b
+gid://shopify/Product/7864797724723 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/TIG-9113.webp?v=1781894667 vision:qwen2.5vl:7b
+gid://shopify/Product/7865371590707 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/7948251__91463.1756746720.jpg?v=1782034855 vision:qwen2.5vl:7b
+gid://shopify/Product/7796843118643 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/1703-115-03-Serena-Silver-scaled_eea23e4a-d2e1-4aec-bb3d-e065960da34c.jpg?v=1773305842 vision:qwen2.5vl:7b
+gid://shopify/Product/7778351120435 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Java_SlateBlue_WallpaperSample_Franquemont_948a1aaa-ae30-4eb1-85ab-0e00b2144f5f.webp?v=1771008254 vision:qwen2.5vl:7b
+gid://shopify/Product/1499565424752 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/51e35fb284ee745d62270a73418294bf.jpg?v=1745458112 vision:qwen2.5vl:7b
+gid://shopify/Product/7375960014899 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_8e1a1f66-9af9-4a1c-8329-a9f6ea838733.png?v=1722455706 vision:qwen2.5vl:7b
+gid://shopify/Product/7584951337011 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/KWC_67775_BOUCLETTE_51933e43-a56c-4f49-bfab-b9b35e5f3378.jpg?v=1751961209 vision:qwen2.5vl:7b
+gid://shopify/Product/4484578443315 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/WTT661508.jpg?v=1745346745 vision:qwen2.5vl:7b
+gid://shopify/Product/4484578246707 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/products/WTT661506.jpg?v=1745346752 vision:qwen2.5vl:7b
+gid://shopify/Product/7882755637299 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0149209_boulevard-wallpaper-nesting.jpg?v=1783865965 vision:qwen2.5vl:7b
+gid://shopify/Product/7882755670067 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0149212_boulevard-wallpaper-whitewash.jpg?v=1783865967 vision:qwen2.5vl:7b
+gid://shopify/Product/7534248165427 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/pimpernel-morris-and-co--wallpaper-216856-image01_f470b818-6b8d-406f-9a6a-1bbc63bfb917.jpg?v=1741111482 vision:qwen2.5vl:7b
+gid://shopify/Product/1496095359088 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/CORK-804-sample-clean.jpg?v=1774479004 vision:qwen2.5vl:7b
+gid://shopify/Product/6679583916083 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R10962_image2.jpg?v=1756329029 vision:qwen2.5vl:7b
+gid://shopify/Product/6679711219763 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS10962_image1.jpg?v=1756313729 vision:qwen2.5vl:7b
+gid://shopify/Product/6679711383603 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS10963_image1.jpg?v=1756313727 vision:qwen2.5vl:7b
+gid://shopify/Product/7420026585139 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3639_161_71d5c4d6-5cd9-4e8f-9376-41c05340e3e5.jpg?v=1753121978 vision:qwen2.5vl:7b
+gid://shopify/Product/7882756128819 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0149142_brindled-wallpaper-reservoir_8fb04c82-8c82-4bfc-b1a1-4eaf8b8717a5.jpg?v=1783865993 vision:qwen2.5vl:7b
+gid://shopify/Product/4484581720115 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/products/WTT661537.jpg?v=1745346600 vision:qwen2.5vl:7b
+gid://shopify/Product/4484581654579 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/products/WTT661536.jpg?v=1745346604 vision:qwen2.5vl:7b
+gid://shopify/Product/7859489210419 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Orient-OT-892.jpg?v=1781282842 vision:qwen2.5vl:7b
+gid://shopify/Product/7794229805107 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ZDAR312876_f8ef.jpg?v=1782057473 vision:qwen2.5vl:7b
+gid://shopify/Product/7375645212723 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_4a94d396-b8b2-471e-b045-27befa25ad0a.png?v=1722467325 vision:qwen2.5vl:7b
+gid://shopify/Product/4484601413683 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/products/SC_0008WP88419_7531057a-b7c3-4cba-a58e-1845b93ea852.jpg?v=1745346056 vision:qwen2.5vl:7b
+gid://shopify/Product/3740354871361 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/61015.jpg?v=1779251397 vision:qwen2.5vl:7b
+gid://shopify/Product/3740355067969 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/HWC-61021-sample-clean.jpg?v=1774485708 vision:qwen2.5vl:7b
+gid://shopify/Product/7513952911411 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/3827_fd457814-abb3-4c6f-b8b4-0c194bcbf7e8.webp?v=1782459831 vision:qwen2.5vl:7b
+gid://shopify/Product/7863634067507 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/buildings-steel-repeated-patterns-coordonne.jpg?v=1781716467 vision:qwen2.5vl:7b
+gid://shopify/Product/7882836934707 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ab9969e3ea4bfc5b330fbabfd94396cf.jpg?v=1783881429 vision:qwen2.5vl:7b
+gid://shopify/Product/7375672672307 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_136d24ac-0f0b-43f1-9571-0d83ddea0a08.png?v=1722465136 vision:qwen2.5vl:7b
+gid://shopify/Product/1500418769008 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/89839ba512a3c2a550fc9e4733850a85_e7b8fa0f-84af-4a10-92f4-752df10c58b8.jpg?v=1572310382 vision:qwen2.5vl:7b
+gid://shopify/Product/4484557537331 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/WRK1095CORT.jpg?v=1745347179 vision:qwen2.5vl:7b
+gid://shopify/Product/7800240963635 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Burnished_Silk_A198-347-Catalina.jpg?v=1773880095 vision:qwen2.5vl:7b
+gid://shopify/Product/6679635656755 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R14641_image2.jpg?v=1756327698 vision:qwen2.5vl:7b
+gid://shopify/Product/7874487484467 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0065742_vivi-teal-giraffe-wallpaper.jpg?v=1783064424 vision:qwen2.5vl:7b
+gid://shopify/Product/7420027011123 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3644_1601_023cdf9e-38a8-4bfc-bc8e-42fb261895e5.jpg?v=1753121958 vision:qwen2.5vl:7b
+gid://shopify/Product/7375628730419 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_6b0dd064-db74-4871-88d6-cb1dfac2f7a6.png?v=1722468325 vision:qwen2.5vl:7b
+gid://shopify/Product/6679644667955 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R15341_image2.jpg?v=1756327486 vision:qwen2.5vl:7b
+gid://shopify/Product/1497562546288 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/e6cc2af7b1aee7e0228bcfa932ef6290.jpg?v=1745459449 vision:qwen2.5vl:7b
+gid://shopify/Product/1497563562096 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/2067cefbd78c5abde868c1ce3266e5c2.jpg?v=1745459433 vision:qwen2.5vl:7b
+gid://shopify/Product/7882797416499 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/6ac2eb7529e4d09bd0ff486e5106594e.jpg?v=1783878690 vision:qwen2.5vl:7b
+gid://shopify/Product/7882797875251 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/abf4b4d8583984344ceb5be138205d98.jpg?v=1783878725 vision:qwen2.5vl:7b
+gid://shopify/Product/6936707039283 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-TX-04_510e01ff-9323-4d36-9438-10adc1602975.jpg?v=1733890172 vision:qwen2.5vl:7b
+gid://shopify/Product/6936757534771 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/CM145-2771.jpg?v=1733889436 vision:qwen2.5vl:7b
+gid://shopify/Product/7864795365427 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/az52813ss.jpg?v=1781894494 vision:qwen2.5vl:7b
+gid://shopify/Product/7584892813363 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/SGNY_SUNSET-PARK_LINEN_SG24-01__5X5_KOROSEAL.jpg?v=1751952651 vision:qwen2.5vl:7b
+gid://shopify/Product/7882106961971 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T34027_927933b8-b8b2-4e0d-8c34-51c0ee20ef0c.jpg?v=1783842010 vision:qwen2.5vl:7b
+gid://shopify/Product/7822325055539 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0068544_soho-linen-sunlight_650.jpg?v=1776902651 vision:qwen2.5vl:7b
+gid://shopify/Product/7882802167859 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/3aa0fabc020e9642e97e3e8da36de99e.jpg?v=1783879014 vision:qwen2.5vl:7b
+gid://shopify/Product/7896577605683 Ikat https://cdn.shopify.com/s/files/1/0015/4117/7456/files/KT-CASCADE_BY_TROVE-005_0.jpg?v=1784752362 vision:qwen2.5vl:7b
+gid://shopify/Product/7422638358579 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3659_611_5cd1fa18-8e69-433c-bac6-7a8f224d6396.jpg?v=1753292313 vision:qwen2.5vl:7b
+gid://shopify/Product/6936705957939 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-SL-03_730e8632-1d44-4317-b0f5-79497ea74c9c.jpg?v=1733890246 vision:qwen2.5vl:7b
+gid://shopify/Product/6679739170867 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS15461_image1.jpg?v=1756312691 vision:qwen2.5vl:7b
+gid://shopify/Product/1500513501296 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/products/f1efffb73dca7a18b9d8479029da7321_da7a0ca8-ac17-4238-a067-8a27793e575a.jpg?v=1572310390 vision:qwen2.5vl:7b
+gid://shopify/Product/7897187188787 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Willow.png?v=1784829926 vision:qwen2.5vl:7b
+gid://shopify/Product/7896578392115 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/KT-CHANT-005_0.jpg?v=1784752472 vision:qwen2.5vl:7b
+gid://shopify/Product/7478730096691 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ORI16_45852566-33d5-4949-9735-19007c0f5159.jpg?v=1745455202 vision:qwen2.5vl:7b
+gid://shopify/Product/1496883495024 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/products/948042118a16eb16311372bdde9f6595.jpg?v=1572309457 vision:qwen2.5vl:7b
+gid://shopify/Product/7876774461491 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0154856_ames-light-blue-linen-stripe-wallpaper.jpg?v=1783258824 vision:qwen2.5vl:7b
+gid://shopify/Product/7870659985459 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/6713802__40037.1730828227.jpg?v=1782772834 vision:qwen2.5vl:7b
+gid://shopify/Product/7375660843059 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_f3d74627-da9a-4c82-b809-7d0cafc1fe89.png?v=1722466080 vision:qwen2.5vl:7b
+gid://shopify/Product/6829075202099 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920654-pix-002.jpg?v=1781716326 vision:qwen2.5vl:7b
+gid://shopify/Product/6829007667251 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920028-alc-013.jpg?v=1781715447 vision:qwen2.5vl:7b
+gid://shopify/Product/7855826829363 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R18671_interior1.jpg?v=1781029350 vision:qwen2.5vl:7b
+gid://shopify/Product/7420028059699 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3669_16_ab70dfe6-348d-4f6d-ad10-7f6d0f4c65ce.jpg?v=1753121895 vision:qwen2.5vl:7b
+gid://shopify/Product/6829061472307 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920562-miz-008.jpg?v=1781716131 vision:qwen2.5vl:7b
+gid://shopify/Product/7775006425139 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Roman_Empire_Mist_a2882208-438c-4bfa-8a34-dd62f072b1cd.jpg?v=1770780421 vision:qwen2.5vl:7b
+gid://shopify/Product/6962314903603 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/HTWW112102.jpg?v=1739492492 vision:qwen2.5vl:7b
+gid://shopify/Product/7880942551091 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/mural-wall-rayures-jumelles-wall-pilastre-14b7406f4a81e25db328e6359e4a_3b3fa603-945e-49c4-a28b-7f1ebe035c9f.jpg?v=1783789860 vision:qwen2.5vl:7b
+gid://shopify/Product/4320949698611 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/VER-40504.jpg?v=1776180050 vision:qwen2.5vl:7b
+gid://shopify/Product/6829010059315 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920044-arp-002.jpg?v=1781715487 vision:qwen2.5vl:7b
+gid://shopify/Product/7422640914483 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3677_821_caf717b0-a57d-430c-b13b-355168c59980.jpg?v=1753292226 vision:qwen2.5vl:7b
+gid://shopify/Product/7855829024819 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R19760_interior2.jpg?v=1781029489 vision:qwen2.5vl:7b
+gid://shopify/Product/7865534939187 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/8406701__80145.1713201648.jpg?v=1782088843 vision:qwen2.5vl:7b
+gid://shopify/Product/6832022618163 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920205-cts-07.jpg?v=1781716927 vision:qwen2.5vl:7b
+gid://shopify/Product/1499716092016 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/hanami-vapor.jpg?v=1777480759 vision:qwen2.5vl:7b
+gid://shopify/Product/7858764415027 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T75175.jpg?v=1781226833 vision:qwen2.5vl:7b
+gid://shopify/Product/7898840989747 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DG1218_ef22fc62-725d-4f4a-b23e-a9fa8e55f9af.jpg?v=1785083961 vision:qwen2.5vl:7b
+gid://shopify/Product/7791132966963 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/New_Wave_Darby_Mocha.jpg?v=1772568423 vision:qwen2.5vl:7b
+gid://shopify/Product/7791133556787 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/New_Wave_Darby_Slate_1694553881.jpg?v=1772568433 vision:qwen2.5vl:7b
+gid://shopify/Product/7420037955635 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3789_116_9d1ed0d2-1994-49f2-9d0b-6bd5817f94d2.jpg?v=1753121409 vision:qwen2.5vl:7b
+gid://shopify/Product/1499898642544 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/5368a297f3fcded95388004e8d7625fe.jpg?v=1745457771 vision:qwen2.5vl:7b
+gid://shopify/Product/7882814980147 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/c7af98a6f1e39194ec6e3e804f9c7c01.jpg?v=1783879960 vision:qwen2.5vl:7b
+gid://shopify/Product/7884364120115 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/dark-oak-peel-stick-wood-floor-planks-jeffrey-stev.jpg?v=1783986885 vision:qwen2.5vl:7b
+gid://shopify/Product/7855837642803 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R21000_interior1.jpg?v=1781029959 vision:qwen2.5vl:7b
+gid://shopify/Product/7855837577267 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R21003_interior1.jpg?v=1781029953 vision:qwen2.5vl:7b
+gid://shopify/Product/7855837511731 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R20998_interior1.webp?v=1781029947 vision:qwen2.5vl:7b
+gid://shopify/Product/7855831449651 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R20052_interior1.webp?v=1781029652 vision:qwen2.5vl:7b
+gid://shopify/Product/7870328832051 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0068882_emerson-yellow-linen-wallpaper.jpg?v=1782718848 vision:qwen2.5vl:7b
+gid://shopify/Product/7384909021235 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/BD_1519_332cfed9-97f6-4929-a628-f5add92265fd.jpg?v=1738861626 vision:qwen2.5vl:7b
+gid://shopify/Product/7420030648371 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3689_11_d851c4f2-2a69-4ad5-aa05-154ab18c438b.jpg?v=1753121769 vision:qwen2.5vl:7b
+gid://shopify/Product/7884288393267 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/terracotta-matias-peel-and-stick-floor-tiles-jeffr.jpg?v=1783980980 vision:qwen2.5vl:7b
+gid://shopify/Product/1497258328176 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/c857f4d5fef51209afa5ae6b32ba60ed.jpg?v=1572309625 vision:qwen2.5vl:7b
+gid://shopify/Product/7791137030195 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Skintex_Distressd_Vanilla.jpg?v=1772568497 vision:qwen2.5vl:7b
+gid://shopify/Product/7422642716723 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3697_510_54cc2d32-d27f-4333-b469-eeaf8693a906.jpg?v=1753292165 vision:qwen2.5vl:7b
+gid://shopify/Product/6936698683443 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-LL-05_65201d7f-4f07-4a86-b2db-385e4d6da6f6.jpg?v=1733890812 vision:qwen2.5vl:7b
+gid://shopify/Product/1500416376944 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/products/5e3596a6463e926385c431f4b9c5ef4d_9b6ec03f-1835-4c80-9070-0769ea716613.jpg?v=1572310382 vision:qwen2.5vl:7b
+gid://shopify/Product/7866356367411 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/tessello-p2606-2-wallpapersmural-coordonne.jpg?v=1782183422 vision:qwen2.5vl:7b
+gid://shopify/Product/7876600037427 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PU2905-3-Emerald.jpg?v=1783219243 vision:qwen2.5vl:7b
+gid://shopify/Product/6936699142195 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-LS-06_a33fbe47-4e3e-47a9-a6f1-c49fc40c1aae.jpg?v=1733890776 vision:qwen2.5vl:7b
+gid://shopify/Product/6936699011123 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-LS-02_1465a020-9a8f-4ab7-b287-672721b2ca44.jpg?v=1733890785 vision:qwen2.5vl:7b
+gid://shopify/Product/7855840034867 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R22124_interior1.jpg?v=1781030120 vision:qwen2.5vl:7b
+gid://shopify/Product/7422644453427 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3702_13_8262e142-3a86-4198-9e94-4a9f9d7d5dd3.jpg?v=1753292123 vision:qwen2.5vl:7b
+gid://shopify/Product/7851180392499 Floral https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R21904_interior1.jpg?v=1780557837 vision:qwen2.5vl:7b
+gid://shopify/Product/6832023863347 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/4049b0fddf454e936feaa411651d718e.jpg?v=1783970066 vision:qwen2.5vl:7b
+gid://shopify/Product/1498982744176 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/xkz-47618-sample-earby-type-ii-vinyl-hollywood-wallcoverings.jpg?v=1775710502 vision:qwen2.5vl:7b
+gid://shopify/Product/7897184108595 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Seychelles---Vallon.jpg?v=1784829709 vision:qwen2.5vl:7b
+gid://shopify/Product/7855845376051 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R21733_interior1.jpg?v=1781030351 vision:qwen2.5vl:7b
+gid://shopify/Product/7882743873587 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0159235_eastwind-gold-texture-wallpaper.jpg?v=1783865303 vision:qwen2.5vl:7b
+gid://shopify/Product/1499876229232 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/xwt-53305-sample-eatonville-faux-linen-durable-hollywood-wallcoverings.jpg?v=1775710707 vision:qwen2.5vl:7b
+gid://shopify/Product/7552704675891 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T19698_e6836d6d-0277-4eb9-bf69-c8dc91e0a693.jpg?v=1781202433 vision:qwen2.5vl:7b
+gid://shopify/Product/7866349387827 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/el-pinar-de-las-dunas-1996-5-wallpapersrepeated-patterns-coordonne.jpg?v=1782182992 vision:qwen2.5vl:7b
+gid://shopify/Product/1497313476720 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/cd6068a26dceab303e83bb2376d92811.jpg?v=1572309637 vision:qwen2.5vl:7b
+gid://shopify/Product/1497313935472 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/07d1d07f0a47a21ecd32b2620b9809d8.jpg?v=1572309637 vision:qwen2.5vl:7b
+gid://shopify/Product/1497315213424 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/fa97f0783aca7026a2609e3053ed439d.jpg?v=1572309637 vision:qwen2.5vl:7b
+gid://shopify/Product/1497318293616 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/products/2f724916987dc707d39cc867b7242916.jpg?v=1572309645 vision:qwen2.5vl:7b
+gid://shopify/Product/1497319899248 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/c9937e6add7d6fdc7fea09618b2fa31c.jpg?v=1572309646 vision:qwen2.5vl:7b
+gid://shopify/Product/7817253584947 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/51b8dade2ecda991a032a459614dcce5.jpg?v=1776040999 vision:qwen2.5vl:7b
+gid://shopify/Product/7775011930163 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/blaze.jpg?v=1770785596 vision:qwen2.5vl:7b
+gid://shopify/Product/1497959858288 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/c9649832ba32f8b8ccfff2c3272b9945.jpg?v=1745459250 vision:qwen2.5vl:7b
+gid://shopify/Product/7375741911091 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_be7afff5-9c09-4d5e-b2b2-39939a7f9562.png?v=1722461459 vision:qwen2.5vl:7b
+gid://shopify/Product/7896579440691 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/KT-CONTACT-011_0.jpg?v=1784752914 vision:qwen2.5vl:7b
+gid://shopify/Product/4484545052723 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/products/WH000123315.jpg?v=1745347419 vision:qwen2.5vl:7b
+gid://shopify/Product/7885884686387 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T75116_b7dc1916-cf85-43ed-a48c-8bbc3477c2df.jpg?v=1784144410 vision:qwen2.5vl:7b
+gid://shopify/Product/7880942190643 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/mural-wall-marqueteries-wall-empreintes-0ded88a1dfea09e9d30fd8b8604b.jpg?v=1783789809 vision:qwen2.5vl:7b
+gid://shopify/Product/6832024158259 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920243-doj-05.jpg?v=1781717036 vision:qwen2.5vl:7b
+gid://shopify/Product/7420770713651 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3906_35_be16aaa6-b098-47e3-ac69-1d14ba717eae.jpg?v=1753322517 vision:qwen2.5vl:7b
+gid://shopify/Product/6936711692339 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/products/TR-LT-01_3cd95cab-bac9-49d0-ad1f-a8cc68c5322a.jpg?v=1733889822 vision:qwen2.5vl:7b
+gid://shopify/Product/6936753111091 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/CM155-2893.jpg?v=1733889739 vision:qwen2.5vl:7b
+gid://shopify/Product/7513944588339 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/12247_d78d0e95-58c8-4eb5-9299-ca6694f54839.webp?v=1782458982 vision:qwen2.5vl:7b
+gid://shopify/Product/7882796826675 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/6e4df81454d9cf4128c4c3bc58bc746b.jpg?v=1783878645 vision:qwen2.5vl:7b
+gid://shopify/Product/7513944916019 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/117270_9c5e5317-d051-4d52-b9ad-aab372fa1104.webp?v=1782459023 vision:qwen2.5vl:7b
+gid://shopify/Product/6936771690547 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/products/CM117-2384.jpg?v=1733888507 vision:qwen2.5vl:7b
+gid://shopify/Product/7584898220083 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ESPLANADE_BLUEGRASS_SG01-03__24X24_KOROSEAL.jpg?v=1751952419 vision:qwen2.5vl:7b
+gid://shopify/Product/7882830577715 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/3a768743d172263536e90cfe8993257b.jpg?v=1783881027 vision:qwen2.5vl:7b
+gid://shopify/Product/7787419009075 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Allures_Etamine_29252_Packshot_Web_HR-thumb-two-thirds.jpg?v=1772172408 vision:qwen2.5vl:7b
+gid://shopify/Product/6829087260723 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920733-rif-001.jpg?v=1781716597 vision:qwen2.5vl:7b
+gid://shopify/Product/6829087522867 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920735-rif-003.jpg?v=1781716604 vision:qwen2.5vl:7b
+gid://shopify/Product/6829088210995 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920739-rif-007.jpg?v=1781716618 vision:qwen2.5vl:7b
+gid://shopify/Product/1497830129776 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/a92002341e012b5bbd978895900e1fa5.jpg?v=1572309784 vision:qwen2.5vl:7b
+gid://shopify/Product/7422642487347 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3697_106_9acafa2f-d3a9-4f6e-a81e-003538290d51.jpg?v=1753292172 vision:qwen2.5vl:7b
+gid://shopify/Product/6679660724275 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R16511_image2.jpg?v=1756327111 vision:qwen2.5vl:7b
+gid://shopify/Product/1496345804912 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/9a188e9a20d109df51c46c8cf76165dc.jpg?v=1572309270 vision:qwen2.5vl:7b
+gid://shopify/Product/7878797262899 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0060461_rion-grey-trellis-wallpaper_55ddbe45-1315-426d-ba4e-a5547e9a0a60.jpg?v=1783485612 vision:qwen2.5vl:7b
+gid://shopify/Product/7822352121907 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0066820_grasmere-weave-light-toffee_650.jpg?v=1776905749 vision:qwen2.5vl:7b
+gid://shopify/Product/7880967585843 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DWGL-100031.jpg?v=1783750114 vision:qwen2.5vl:7b
+gid://shopify/Product/7375907258419 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_fff4c96a-c8f0-444f-8763-e29dd35cd991.png?v=1722458023 vision:qwen2.5vl:7b
+gid://shopify/Product/7429991301171 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/wp20077_-_coats_of_arms.jpg?v=1748368346 vision:qwen2.5vl:7b
+gid://shopify/Product/7884894273587 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/cream-nolan-peel-and-stick.jpg?v=1784045684 vision:qwen2.5vl:7b
+gid://shopify/Product/1498891681904 Floral https://cdn.shopify.com/s/files/1/0015/4117/7456/files/47225-1.webp?v=1779251690 vision:qwen2.5vl:7b
+gid://shopify/Product/6785295646771 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/VV244_art_deco_fans_NOIR_1075x_dfb24c19-c57c-48db-8ade-8791bd91b8a1.webp?v=1734414886 vision:qwen2.5vl:7b
+gid://shopify/Product/7869823942707 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/AT9604_28c2b7d0-e69a-4f5a-815a-02ab4fd89c84.jpg?v=1782643208 vision:qwen2.5vl:7b
+gid://shopify/Product/1499012399216 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/xlj-47755-sample-halewood-type-ii-vinyl-hollywood-wallcoverings.jpg?v=1775715578 vision:qwen2.5vl:7b
+gid://shopify/Product/1497100845168 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/8c4eadbc88f1c9bf6748df1ef1e62425.jpg?v=1572309558 vision:qwen2.5vl:7b
+gid://shopify/Product/1497102385264 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/c0b434db0eeb65349c7c74f314b02ab3.jpg?v=1572309559 vision:qwen2.5vl:7b
+gid://shopify/Product/7388481060915 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ITS-006_3e4f6a7b-76f1-4236-8cfa-46a537b64085.jpg?v=1740077015 vision:qwen2.5vl:7b
+gid://shopify/Product/7375721955379 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_b9db2826-fd9f-44e9-8007-e31509c1e866.png?v=1722462673 vision:qwen2.5vl:7b
+gid://shopify/Product/6679654727731 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R16051_image2.jpg?v=1756327232 vision:qwen2.5vl:7b
+gid://shopify/Product/7429009014835 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/64735310.jpg?v=1739303327 vision:qwen2.5vl:7b
+gid://shopify/Product/7884165939251 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/alfama-peel-stick-floor-tiles-jeffrey-stevens.jpg?v=1783975067 vision:qwen2.5vl:7b
+gid://shopify/Product/7822353498163 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0066928_braided-jute-egyptian-cotton_650.jpg?v=1776905806 vision:qwen2.5vl:7b
+gid://shopify/Product/7375645933619 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_5ab5cf3b-1dcf-4355-aa04-76cf69ccbc0c.png?v=1722467250 vision:qwen2.5vl:7b
+gid://shopify/Product/7375645999155 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_513938e2-3b60-434e-bf1f-954e780a80c4.png?v=1722467244 vision:qwen2.5vl:7b
+gid://shopify/Product/7887784083507 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/TWW10908_1c58b050-e7ec-41a9-93fa-ac053a8693b4.jpg?v=1784335213 vision:qwen2.5vl:7b
+gid://shopify/Product/7822353563699 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0066933_braided-jute-pure-white_650.jpg?v=1776905809 vision:qwen2.5vl:7b
+gid://shopify/Product/1497373868144 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/634ce7aea4506ff8955c6cb74fe8cb3c.jpg?v=1572309652 vision:qwen2.5vl:7b
+gid://shopify/Product/7585021853747 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/67335_e894f412-6bca-4127-b378-7204db753159.jpg?v=1751966859 vision:qwen2.5vl:7b
+gid://shopify/Product/7584986890291 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/RAMIE_SCHOOL_COLLECTION_TANGLE_8223-07_525064bf-739c-49a7-87f4-e4fab5245aef.jpg?v=1751949218 vision:qwen2.5vl:7b
+gid://shopify/Product/7883042586675 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T34090.jpg?v=1783896010 vision:qwen2.5vl:7b
+gid://shopify/Product/7866347880499 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/M4901-2_01.jpg?v=1782182878 vision:qwen2.5vl:7b
+gid://shopify/Product/6679708467251 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS10441_image1.jpg?v=1756313832 vision:qwen2.5vl:7b
+gid://shopify/Product/7375960145971 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_99590c7b-eb09-4fa5-b573-f52eb2c9a883.png?v=1722455702 vision:qwen2.5vl:7b
+gid://shopify/Product/7422645862451 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3704_315_b0dd3577-c1c1-4790-b801-f487344a0f9f.jpg?v=1753292088 vision:qwen2.5vl:7b
+gid://shopify/Product/7878154584115 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T14508.jpg?v=1783456825 vision:qwen2.5vl:7b
+gid://shopify/Product/7421459005491 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/106_4052_CS_10c59fd2-a4b3-4134-bf4a-9b9d7aa46598.jpg?v=1753306260 vision:qwen2.5vl:7b
+gid://shopify/Product/7866357874739 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/croci-pu2909-5-repeated-patterns-coordonne.jpg?v=1782183538 vision:qwen2.5vl:7b
+gid://shopify/Product/6944674742323 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T12817_b2617dde-8343-45be-bdf5-ef43d013b4de.jpg?v=1733896429 vision:qwen2.5vl:7b
+gid://shopify/Product/1496055939184 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/2182ea27d357d499e1e8370e5728e6cd.jpg?v=1775081685 vision:qwen2.5vl:7b
+gid://shopify/Product/7882758488115 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0149076_in-the-details-wallpaper-mineral.jpg?v=1783866127 vision:qwen2.5vl:7b
+gid://shopify/Product/7584990527539 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/RAKE-KAMI_CL01-12_3660c940-d5d7-45e3-9da1-2da626034ea0.jpg?v=1751949063 vision:qwen2.5vl:7b
+gid://shopify/Product/7880969093171 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DWGL-100077.jpg?v=1783750261 vision:qwen2.5vl:7b
+gid://shopify/Product/4502772908083 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RobertoCavalliWallpaper_dwrc17054.jpg?v=1587153620 vision:qwen2.5vl:7b
+gid://shopify/Product/1497305809008 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/bb976e595e4380deb1e264c94892beb8.jpg?v=1572309636 vision:qwen2.5vl:7b
+gid://shopify/Product/7882744168499 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0151232_elemental-thread-wallpaper-white-silver.jpg?v=1783865323 vision:qwen2.5vl:7b
+gid://shopify/Product/6829007503411 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920027-alc-012.jpg?v=1781715443 vision:qwen2.5vl:7b
+gid://shopify/Product/7375955066931 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_bd12e207-6fa7-43ac-887a-f167214ff375.png?v=1722455947 vision:qwen2.5vl:7b
+gid://shopify/Product/1497350799472 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/products/1cb9b9ea187a50640aed508d1b103dca.jpg?v=1572309649 vision:qwen2.5vl:7b
+gid://shopify/Product/4502773661747 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RobertoCavalliWallpaper_dwrc17081.jpg?v=1587153642 vision:qwen2.5vl:7b
+gid://shopify/Product/7872283312179 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Chinella_CH_04_98cb2cf3-ccca-4bc3-a49b-bd61dbd29d48.jpg?v=1782902441 vision:qwen2.5vl:7b
+gid://shopify/Product/4484536369203 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/SC_0005WP88368.jpg?v=1745347829 vision:qwen2.5vl:7b
+gid://shopify/Product/7877191499827 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0091461_anhe-abaca-greige.jpg?v=1783366062 vision:qwen2.5vl:7b
+gid://shopify/Product/7422640521267 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3676_16_5eca3bca-7a0f-4299-a297-11eb922b0452.jpg?v=1753292239 vision:qwen2.5vl:7b
+gid://shopify/Product/6679586701363 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R11251_image2.jpg?v=1756328963 vision:qwen2.5vl:7b
+gid://shopify/Product/7880948711475 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/mural-la-caravane-moshi-moshi-4123d9bafa648f852279500dbf33_14c7064e-6252-4b93-ba5f-0eeb00f28b77.jpg?v=1783790639 vision:qwen2.5vl:7b
+gid://shopify/Product/7797773500467 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/CROC-56566-SAMPLE-clean.jpg?v=1774486141 vision:qwen2.5vl:7b
+gid://shopify/Product/7897175621683 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Enchanted---Spellbound.jpg?v=1784829161 vision:qwen2.5vl:7b
+gid://shopify/Product/7375640854579 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_e0f14f89-73b5-47c7-a2d9-f3427b401027.png?v=1722467528 vision:qwen2.5vl:7b
+gid://shopify/Product/7797770485811 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/CROC-56562-SAMPLE-clean.jpg?v=1774486127 vision:qwen2.5vl:7b
+gid://shopify/Product/7797767045171 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/CROC-56557-SAMPLE-clean.jpg?v=1774486118 vision:qwen2.5vl:7b
+gid://shopify/Product/7791124545587 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Virtual_Crosshatch_Mahogany.jpg?v=1772568274 vision:qwen2.5vl:7b
+gid://shopify/Product/7429095948339 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/B00032_01_2_a9596258-da93-4a8f-b427-39aa9b89ce83.jpg?v=1739302648 vision:qwen2.5vl:7b
+gid://shopify/Product/7519954337843 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T183-11_TIMBERLINE-II_EBONY_PVC-FREE.jpg?v=1739409557 vision:qwen2.5vl:7b
+gid://shopify/Product/7882832412723 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/3e79fbfb9cb2ed4f5cd0a3b11418d579.jpg?v=1783881153 vision:qwen2.5vl:7b
+gid://shopify/Product/7787381391411 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MW111-02-papier-lake_03.jpg?v=1772164939 vision:qwen2.5vl:7b
+gid://shopify/Product/7867489779763 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MW111-09-papier-jasmine_03.jpg?v=1782333621 vision:qwen2.5vl:7b
+gid://shopify/Product/7797733294131 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/croc-56558-sample-crowley-s-crocodile-animal-skin-emboss-walls.jpg?v=1775709362 vision:qwen2.5vl:7b
+gid://shopify/Product/7865306611763 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/AT15120_fe03637d-518c-4770-b0fc-41b4d1600f4a.jpg?v=1782013240 vision:qwen2.5vl:7b
+gid://shopify/Product/7797768454195 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/croc-56556-sample-crowley-s-crocodile-animal-skin-emboss-walls.jpg?v=1775709377 vision:qwen2.5vl:7b
+gid://shopify/Product/6811742175283 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/CROC-56561-sample-clean.jpg?v=1774486102 vision:qwen2.5vl:7b
+gid://shopify/Product/7896495882291 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/BBWW04.jpg?v=1784742898 vision:qwen2.5vl:7b
+gid://shopify/Product/7897506578483 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/KT-GESSO-015_0.jpg?v=1784879229 vision:qwen2.5vl:7b
+gid://shopify/Product/7876691656755 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T10909_45998b76-d5f4-45e5-84d2-3bfe5be1fd97.jpg?v=1783251611 vision:qwen2.5vl:7b
+gid://shopify/Product/7883947999283 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/transparent-glossy-adhesive-film-jeffrey-stevens.jpg?v=1783969037 vision:qwen2.5vl:7b
+gid://shopify/Product/6936768282675 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/CM123-2468.jpg?v=1733888739 vision:qwen2.5vl:7b
+gid://shopify/Product/7874801041459 Floral https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0064824_dromma-sage-songbirds-and-sunflowers-wallpaper_5513b36d-c1c9-44c8-92d2-239f81aaef18.jpg?v=1783071622 vision:qwen2.5vl:7b
+gid://shopify/Product/7585023033395 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/67227_cb40545a-a18c-4e5d-a7bb-371420b81035.jpg?v=1751966956 vision:qwen2.5vl:7b
+gid://shopify/Product/7886390296627 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0158622_beau-dark-grey-faux-fabric-wallpaper.jpg?v=1784208996 vision:qwen2.5vl:7b
+gid://shopify/Product/7584969850931 Herringbone https://cdn.shopify.com/s/files/1/0015/4117/7456/files/67225_b42a7f17-c4c0-4b9f-b585-056ff96c28ab.jpg?v=1751962218 vision:qwen2.5vl:7b
+gid://shopify/Product/7797768683571 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/croc-56554-sample-crowley-s-crocodile-animal-skin-emboss-walls.jpg?v=1775709381 vision:qwen2.5vl:7b
+gid://shopify/Product/7883956584499 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0113084_garland-khaki-block-tulip-wallpaper.jpg?v=1783970543 vision:qwen2.5vl:7b
+gid://shopify/Product/7879122092083 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/indienne_wallpaper_henna_1.jpg?v=1783510845 vision:qwen2.5vl:7b
+gid://shopify/Product/7898841514035 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DG1196_18fa15cd-f7b7-4e6d-8b9b-1a524d2585ec.jpg?v=1785084008 vision:qwen2.5vl:7b
+gid://shopify/Product/7864798773299 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/az52694ma.jpg?v=1781894698 vision:qwen2.5vl:7b
+gid://shopify/Product/7811690790963 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0091874_parget-eklov-dark-green-textured-wallpaper.jpg?v=1775163895 vision:qwen2.5vl:7b
+gid://shopify/Product/4351292801075 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/NEWMOR_86615f09-7fc8-4ac9-b3a9-f611da9d915f.jpg?v=1573939737 vision:qwen2.5vl:7b
+gid://shopify/Product/7822322008115 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0067913_roma-leather-27-black-suede_650.jpg?v=1776902528 vision:qwen2.5vl:7b
+gid://shopify/Product/7424886865971 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/P8015108_11_8451178f-3a10-423a-bef7-dfdbd8b4f956.jpg?v=1753290752 vision:qwen2.5vl:7b
+gid://shopify/Product/6679738023987 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS15261_image1.jpg?v=1756312748 vision:qwen2.5vl:7b
+gid://shopify/Product/7874312962099 Floral https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0089182_cecilia-moss-tulip-and-daffodil-wallpaper_71771281-05dd-498a-bcc3-0131b9671fb3.jpg?v=1783039222 vision:qwen2.5vl:7b
+gid://shopify/Product/6936779128883 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/CM104-2169.jpg?v=1733887972 vision:qwen2.5vl:7b
+gid://shopify/Product/6829039058995 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920408-innovations_grit-gri-001-arkose-01.jpg?v=1781715906 vision:qwen2.5vl:7b
+gid://shopify/Product/7896277876787 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/C00132_01.jpg?v=1784734461 vision:qwen2.5vl:7b
+gid://shopify/Product/6829039550515 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920412-innovations_grit-gri-005-coquina-01.jpg?v=1781715920 vision:qwen2.5vl:7b
+gid://shopify/Product/7896290459699 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/EVIW112036.jpg?v=1784735456 vision:qwen2.5vl:7b
+gid://shopify/Product/6679720820787 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS12691_image1.jpg?v=1756313410 vision:qwen2.5vl:7b
+gid://shopify/Product/7896538447923 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ERH9704.jpg?v=1784746426 vision:qwen2.5vl:7b
+gid://shopify/Product/7855834300467 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R18607_interior1.jpg?v=1781029781 vision:qwen2.5vl:7b
+gid://shopify/Product/7292123709491 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/FA40809.jpg?v=1748380972 vision:qwen2.5vl:7b
+gid://shopify/Product/7375667626035 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_78b98e58-5c85-4700-a4b7-4ca482711d4e.png?v=1722465481 vision:qwen2.5vl:7b
+gid://shopify/Product/7882837590067 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/7d2bb0fedb1fcccc9ba14fe987f52290.jpg?v=1783881462 vision:qwen2.5vl:7b
+gid://shopify/Product/7874119598131 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/35423_11_e73d259f-a422-4e39-a378-2bdc897ec6fa.jpg?v=1782999635 vision:qwen2.5vl:7b
+gid://shopify/Product/7388483911731 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MTO-05_80a59721-ab3e-4351-9726-ca4d480dc5c4.jpg?v=1736207873 vision:qwen2.5vl:7b
+gid://shopify/Product/7882761863219 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0149189_meadowbrook-wallpaper-reservoir.jpg?v=1783866271 vision:qwen2.5vl:7b
+gid://shopify/Product/7855834562611 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R18609_interior1.webp?v=1781029787 vision:qwen2.5vl:7b
+gid://shopify/Product/7882808655923 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/275f13768ff118c7b8cb1b0e884c87bb.jpg?v=1783879503 vision:qwen2.5vl:7b
+gid://shopify/Product/7880943861811 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/mural-wall-hanji-wall-noto-917a69fe8987545c7acce71f57d5_ecc1f589-0c25-43c2-9f04-dadeef290c96.jpg?v=1783790027 vision:qwen2.5vl:7b
+gid://shopify/Product/7898806911027 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MCO2306.jpg?v=1785082609 vision:qwen2.5vl:7b
+gid://shopify/Product/7882804363315 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/d1ccc5c9463f18be2f7dabddb5a37ff2.jpg?v=1783879179 vision:qwen2.5vl:7b
+gid://shopify/Product/7882743545907 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0161864_crystal-cloud-sage-beaded-wallpaper.jpg?v=1783865283 vision:qwen2.5vl:7b
+gid://shopify/Product/7897187090483 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Elfin.jpg?v=1784829917 vision:qwen2.5vl:7b
+gid://shopify/Product/7864804540467 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DSTR-508.webp?v=1781892582 vision:qwen2.5vl:7b
+gid://shopify/Product/7880946319411 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/mural-marr-marr-magascar-8377a03522cc5fea062140f3b984_47a08347-6f69-482d-b690-b77d5e604a7c.jpg?v=1783790389 vision:qwen2.5vl:7b
+gid://shopify/Product/7897176211507 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Furrow---Polaris.jpg?v=1784829210 vision:qwen2.5vl:7b
+gid://shopify/Product/6936708874291 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-WD-09_49a5cb91-4021-408d-8f34-ba726e2b4a52.jpg?v=1733890033 vision:qwen2.5vl:7b
+gid://shopify/Product/7882746331187 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0159195_indra-sage-striated-wallpaper.jpg?v=1783865458 vision:qwen2.5vl:7b
+gid://shopify/Product/7882798694451 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/c675d407bd9f4b8275437231177ae433.jpg?v=1783878789 vision:qwen2.5vl:7b
+gid://shopify/Product/7859479183411 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/CRY3100.jpg?v=1781282583 vision:qwen2.5vl:7b
+gid://shopify/Product/7859479248947 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/CRY3104.jpg?v=1781282586 vision:qwen2.5vl:7b
+gid://shopify/Product/1499795718256 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/b981e43a3292ce56f4aa194d34103a7c.jpg?v=1745457863 vision:qwen2.5vl:7b
+gid://shopify/Product/7880943173683 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/mural-wall-rayures-jumelles-wall-parthenon-c4e1b377ed5cb8f91292f65a9f5b_a0d7c37f-4cd8-4a6c-b298-59b5f4f132bb.jpg?v=1783789935 vision:qwen2.5vl:7b
+gid://shopify/Product/7896503779379 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1306.jpg?v=1784743404 vision:qwen2.5vl:7b
+gid://shopify/Product/7887506702387 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0158731_rhett-green-striated-wallpaper.jpg?v=1784295475 vision:qwen2.5vl:7b
+gid://shopify/Product/7880943403059 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/mural-lin-platre-wall-himalaya-368cb9df4e2034a10a1fcafb710a.jpg?v=1783789965 vision:qwen2.5vl:7b
+gid://shopify/Product/7896511414323 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1190.jpg?v=1784744105 vision:qwen2.5vl:7b
+gid://shopify/Product/7880970502195 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DWGL-100119.jpg?v=1783750432 vision:qwen2.5vl:7b
+gid://shopify/Product/7865388826675 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/3968102__76540.1734622554.jpg?v=1782038452 vision:qwen2.5vl:7b
+gid://shopify/Product/7896510660659 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1125.jpg?v=1784744051 vision:qwen2.5vl:7b
+gid://shopify/Product/7864796577843 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/theb_11095.jpg?v=1781894589 vision:qwen2.5vl:7b
+gid://shopify/Product/7896388763699 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ivy-garland-sage-coordonne.jpg?v=1784738350 vision:qwen2.5vl:7b
+gid://shopify/Product/7859479380019 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/CRY3101.jpg?v=1781282590 vision:qwen2.5vl:7b
+gid://shopify/Product/7896512495667 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1265.jpg?v=1784744211 vision:qwen2.5vl:7b
+gid://shopify/Product/7896530911283 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ERT2010.jpg?v=1784745803 vision:qwen2.5vl:7b
+gid://shopify/Product/7870363533363 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Beton-cire-3-450x270-3-zilver-med-CC8012S.jpg?v=1782726033 vision:qwen2.5vl:7b
+gid://shopify/Product/7882801905715 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/9de674c55dc15f34a3c56018a9888cf3.jpg?v=1783878986 vision:qwen2.5vl:7b
+gid://shopify/Product/7871873089587 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/A02-SK-02W_Spiral-Chaos-Wallpaper_Blue_52b84876-c3bc-44a8-a2c9-7ae70c0457af.jpg?v=1782855620 vision:qwen2.5vl:7b
+gid://shopify/Product/1496943263856 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/d102396b472f5a9b9c9b4183a9acfb8c.jpg?v=1572309485 vision:qwen2.5vl:7b
+gid://shopify/Product/7879795179571 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Florika_Onyx.jpg?v=1783600818 vision:qwen2.5vl:7b
+gid://shopify/Product/1502197383280 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DUR-72067-sample-clean.jpg?v=1774484247 vision:qwen2.5vl:7b
+gid://shopify/Product/7898833059891 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1210_26660271-ea54-48b5-b74e-3b4ccb0b87d2.jpg?v=1785083373 vision:qwen2.5vl:7b
+gid://shopify/Product/7896507154483 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1172.jpg?v=1784743669 vision:qwen2.5vl:7b
+gid://shopify/Product/1496943558768 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/dc105cf4e4b1393e7ce2a5e347ac603d.jpg?v=1572309485 vision:qwen2.5vl:7b
+gid://shopify/Product/7896507252787 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1175.jpg?v=1784743683 vision:qwen2.5vl:7b
+gid://shopify/Product/7375648915507 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_5fc96477-662c-4883-9117-f6e39afffec8.png?v=1722467048 vision:qwen2.5vl:7b
+gid://shopify/Product/6562454536243 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/AZDPT042PVflat.jpg?v=1621360831 vision:qwen2.5vl:7b
+gid://shopify/Product/7864804507699 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/SOFT-146AW.jpg?v=1781895088 vision:qwen2.5vl:7b
+gid://shopify/Product/7896498077747 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1077.jpg?v=1784743110 vision:qwen2.5vl:7b
+gid://shopify/Product/7896498110515 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1078.jpg?v=1784743115 vision:qwen2.5vl:7b
+gid://shopify/Product/7896504795187 Chevron https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1025.jpg?v=1784743546 vision:qwen2.5vl:7b
+gid://shopify/Product/7584913719347 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/LINSEY_HOLLAND_SE21-08.jpg?v=1751951869 vision:qwen2.5vl:7b
+gid://shopify/Product/7896532090931 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ECT3102.jpg?v=1784745938 vision:qwen2.5vl:7b
+gid://shopify/Product/7896503975987 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1325.jpg?v=1784743439 vision:qwen2.5vl:7b
+gid://shopify/Product/7896532385843 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ECT3110.jpg?v=1784745972 vision:qwen2.5vl:7b
+gid://shopify/Product/7866347454515 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/M4904-5_01.jpg?v=1782182840 vision:qwen2.5vl:7b
+gid://shopify/Product/7896509481011 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DGC1372.jpg?v=1784743958 vision:qwen2.5vl:7b
+gid://shopify/Product/7884986679347 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/nolan-blue-peel-and-stick.jpg?v=1784054662 vision:qwen2.5vl:7b
+gid://shopify/Product/7882803052595 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/cf0ba4bc1a2a89a49a0bc4579b35832f.jpg?v=1783879081 vision:qwen2.5vl:7b
+gid://shopify/Product/7869255614515 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0068438_arian-blue-inkburst-wallpaper.jpg?v=1782556858 vision:qwen2.5vl:7b
+gid://shopify/Product/7789369393203 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W611-05-kaolin-_01_1ecc4a0e-08b7-46c9-9f03-5d1fc1706823.jpg?v=1772252173 vision:qwen2.5vl:7b
+gid://shopify/Product/7822351532083 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0066777_tweed-dried-wheat_650.jpg?v=1776905725 vision:qwen2.5vl:7b
+gid://shopify/Product/1495167860848 Herringbone https://cdn.shopify.com/s/files/1/0015/4117/7456/products/a34ddff25bb1d92e35fa14c120830456.jpg?v=1572308970 vision:qwen2.5vl:7b
+gid://shopify/Product/7390038786099 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DWYA-60020-DesignerWallcoverings-Los-AngelesMaya-Romanoff-Wallpaper-MR-NE-1X02Refined-Ash-1.jpg?v=1738861048 vision:qwen2.5vl:7b
+gid://shopify/Product/7898465796147 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/cmo-wca-01-70.jpg?v=1785005313 vision:qwen2.5vl:7b
+gid://shopify/Product/7855834824755 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R14013_interior1.webp?v=1781029796 vision:qwen2.5vl:7b
+gid://shopify/Product/6679570481203 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R14011_image2.jpg?v=1756329346 vision:qwen2.5vl:7b
+gid://shopify/Product/7866356564019 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/cucendum-p2603-2-wallpapersmural-coordonne-scaled.jpg?v=1782183438 vision:qwen2.5vl:7b
+gid://shopify/Product/7811688628275 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0062108_runes-orange-brushstrokes-wallpaper.jpg?v=1775163803 vision:qwen2.5vl:7b
+gid://shopify/Product/6679624745011 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R14012_image2.jpg?v=1756327976 vision:qwen2.5vl:7b
+gid://shopify/Product/7429993005107 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Inside_Book_taupe-WP20102_6dfaf905-91d2-4a54-a80a-3dba7721c4ea.jpg?v=1748368319 vision:qwen2.5vl:7b
+gid://shopify/Product/7897185648691 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Traccia---Melange.jpg?v=1784829827 vision:qwen2.5vl:7b
+gid://shopify/Product/7882754064435 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0162602_vanishing-point-grey-striated-wallpaper.jpg?v=1783865865 vision:qwen2.5vl:7b
+gid://shopify/Product/7882764681267 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0149747_vava-wallpaper-varlov.jpg?v=1783866441 vision:qwen2.5vl:7b
+gid://shopify/Product/7865331679283 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/8080152__02156.1761157099_359d5841-87dd-4717-836f-3ed71b8a670e.jpg?v=1782027668 vision:qwen2.5vl:7b
+gid://shopify/Product/7883957010483 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0155968_johnny-charcoal-wallpaper.jpg?v=1783970564 vision:qwen2.5vl:7b
+gid://shopify/Product/7896520753203 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ETL6608.jpg?v=1784744886 vision:qwen2.5vl:7b
+gid://shopify/Product/7534237417523 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/morris-seaweed-morris-and-co_9f24f226-9035-4e13-b836-e8f2a85b903f.jpg?v=1741110795 vision:qwen2.5vl:7b
+gid://shopify/Product/7896277286963 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/veraneo-golden-repeated-patterns-coordonne.jpg?v=1784734421 vision:qwen2.5vl:7b
+gid://shopify/Product/7893856813107 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0150115_painted-oasis-wallpaper-carbon-graphite.jpg?v=1784554731 vision:qwen2.5vl:7b
+gid://shopify/Product/7866350403635 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/selva-de-mar-1992-1-wallpapersrepeated-patterns-coordonne.jpg?v=1782183070 vision:qwen2.5vl:7b
+gid://shopify/Product/7864804016179 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/VNA-9435.webp?v=1781892541 vision:qwen2.5vl:7b
+gid://shopify/Product/7866350239795 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/selva-de-mar-1992-6-wallpapersrepeated-patterns-coordonne.jpg?v=1782183057 vision:qwen2.5vl:7b
+gid://shopify/Product/7794240225331 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ZRHW312926_f6e9.jpg?v=1782057423 vision:qwen2.5vl:7b
+gid://shopify/Product/7429971410995 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Vintage_letters-WP20017_61d7c70c-7cc6-41ce-959e-17d95d88732d.jpg?v=1748368410 vision:qwen2.5vl:7b
+gid://shopify/Product/4469057519667 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/MTG_403698_Vintage_letters-WP20017.jpg?v=1607115553 vision:qwen2.5vl:7b
+gid://shopify/Product/7429988679731 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Vintage_Signs_taupe-WP20036_24c23cbc-a588-496c-af13-9297e25bd2fe.jpg?v=1748368391 vision:qwen2.5vl:7b
+gid://shopify/Product/7430023381043 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/vintage_skiing_156x100cm_wp20696_2.jpg?v=1748367655 vision:qwen2.5vl:7b
+gid://shopify/Product/7375643639859 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_85fcd5f2-7614-4f7d-8b58-6704c343bf0c.png?v=1722467396 vision:qwen2.5vl:7b
+gid://shopify/Product/7584916832307 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PLUTA_TUNDRA_PL21-01__5x5_KOROSEAL_589ca2b1-f27b-4a4f-afff-f7c4a3a34eb7.jpg?v=1751951695 vision:qwen2.5vl:7b
+gid://shopify/Product/7375668740147 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_4cace5ff-4761-4a69-a054-3a370316938c.png?v=1722465407 vision:qwen2.5vl:7b
+gid://shopify/Product/6936711102515 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/products/TR-CL-08_9474fe5b-75a2-4cc3-97e3-5d5aa61198da.jpg?v=1733889876 vision:qwen2.5vl:7b
+gid://shopify/Product/7375653535795 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_c1730e77-8fcd-440e-b328-a150a13531c3.png?v=1722466647 vision:qwen2.5vl:7b
+gid://shopify/Product/7897185058867 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/TERRENE-Vasari-WEB2.jpg?v=1784829787 vision:qwen2.5vl:7b
+gid://shopify/Product/7375668543539 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_815fc888-2be8-4d77-965a-c64170133157.png?v=1722465430 vision:qwen2.5vl:7b
+gid://shopify/Product/7584781303859 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/KWC_SG33-12_ASTORIA-ACCENT.jpg?v=1751955161 vision:qwen2.5vl:7b
+gid://shopify/Product/7898780041267 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/BBTW03_0c22a8bf-2f59-41d5-b7aa-89cf5810ff1b.jpg?v=1785081310 vision:qwen2.5vl:7b
+gid://shopify/Product/7801631113267 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/CW10019_dae8ecb0-166f-4b62-bcde-81c4f0c31e0a.jpg?v=1781201823 vision:qwen2.5vl:7b
+gid://shopify/Product/7896456560691 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MDD3363.jpg?v=1784739082 vision:qwen2.5vl:7b
+gid://shopify/Product/7865306447923 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/AT15114_5e2d9379-b326-42bf-8c5f-3820642e8229.jpg?v=1782013220 vision:qwen2.5vl:7b
+gid://shopify/Product/1498774077552 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/e214795b05d7c47d7b248b580bda9c7a.jpg?v=1745458697 vision:qwen2.5vl:7b
+gid://shopify/Product/6679630643251 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R14291_image2.jpg?v=1756327817 vision:qwen2.5vl:7b
+gid://shopify/Product/4395702976563 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/2600_quadrat.jpg?v=1576118229 vision:qwen2.5vl:7b
+gid://shopify/Product/7375968206899 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_86657fb8-a7b0-4fb6-9d06-b146780fa058.png?v=1722455159 vision:qwen2.5vl:7b
+gid://shopify/Product/7864806113331 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/y47660sv.jpg?v=1781895182 vision:qwen2.5vl:7b
+gid://shopify/Product/7865331613747 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/8080101__50571.1761157099.jpg?v=1782027661 vision:qwen2.5vl:7b
+gid://shopify/Product/7421316694067 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W4154_106_f1dfb14f-2a1c-412c-b43b-d40de49fbbd5.jpg?v=1753320960 vision:qwen2.5vl:7b
+gid://shopify/Product/7375968141363 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_bd4b9da2-981a-4a70-ac68-e294b37a9f48.png?v=1722455165 vision:qwen2.5vl:7b
+gid://shopify/Product/7855830892595 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R20957_interior1.webp?v=1781029604 vision:qwen2.5vl:7b
+gid://shopify/Product/6679742382131 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS15951_image1.jpg?v=1756312574 vision:qwen2.5vl:7b
+gid://shopify/Product/7375968960563 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_215f98de-2027-4725-b7a9-eb424796a0e3.png?v=1722455135 vision:qwen2.5vl:7b
+gid://shopify/Product/7884129206323 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/gothic-peel-and-stick-floor-tiles-jeffrey-stevens.jpg?v=1783974491 vision:qwen2.5vl:7b
+gid://shopify/Product/7375759376435 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_8287d876-4af0-4e99-baf5-ec229e57edb5.png?v=1722461145 vision:qwen2.5vl:7b
+gid://shopify/Product/7882817208371 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ce8eadc3533ff0cd68052070c35c3182.jpg?v=1783880082 vision:qwen2.5vl:7b
+gid://shopify/Product/7896531238963 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/EBD3008.jpg?v=1784745838 vision:qwen2.5vl:7b
+gid://shopify/Product/7896491098163 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/BBTT07.jpg?v=1784742551 vision:qwen2.5vl:7b
+gid://shopify/Product/7882815799347 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/7a3ce3bde213b6168589b09e8e48526b.jpg?v=1783880010 vision:qwen2.5vl:7b
+gid://shopify/Product/7855835054131 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R19625_interior1.jpg?v=1781029806 vision:qwen2.5vl:7b
+gid://shopify/Product/7552741310515 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T75458_327fd527-a7bb-4d56-ad7e-81c10bf639b5.jpg?v=1781202011 vision:qwen2.5vl:7b
+gid://shopify/Product/7375765274675 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_83b47f1b-f34a-4198-b779-c9b802e52020.png?v=1722461028 vision:qwen2.5vl:7b
+gid://shopify/Product/1495534862448 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/cropped_291f5a1e-35d0-46c4-b707-25bb4f4f7bba.jpg?v=1775515232 vision:qwen2.5vl:7b
+gid://shopify/Product/7375656681523 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_4ff46a74-f641-4805-8212-61a1ba8a3a7c.png?v=1722466318 vision:qwen2.5vl:7b
+gid://shopify/Product/4484557668403 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/products/WRK0775CURT.jpg?v=1745347170 vision:qwen2.5vl:7b
+gid://shopify/Product/1494837428336 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/products/4b9822204513d4af6b5aacb352dd19f7.png?v=1572308907 vision:qwen2.5vl:7b
+gid://shopify/Product/7375656779827 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_679fa379-a6a2-4dac-9922-8f1f1a665551.png?v=1722466312 vision:qwen2.5vl:7b
+gid://shopify/Product/7877233115187 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/36808_13_40a98040-d093-4f2d-9b83-75d6ce92c029.jpg?v=1783374038 vision:qwen2.5vl:7b
+gid://shopify/Product/7375959719987 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_7f5fa63e-f16b-4cca-a612-de895f5f5a4b.png?v=1722455724 vision:qwen2.5vl:7b
+gid://shopify/Product/7375962865715 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_8604994c-9881-4060-9b01-dc69dc7370fb.png?v=1722455541 vision:qwen2.5vl:7b
+gid://shopify/Product/1498760478832 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/1072d5261c52323d039646dbefce155f.jpg?v=1745458781 vision:qwen2.5vl:7b
+gid://shopify/Product/7896525570099 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ESE7302.jpg?v=1784745395 vision:qwen2.5vl:7b
+gid://shopify/Product/7882827038771 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/9d9364b0fce8a0803032392a2697b98a.jpg?v=1783880762 vision:qwen2.5vl:7b
+gid://shopify/Product/7880018886707 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/glenwood-pewter_c744d18c-58ec-480c-91c8-d80538853416.jpg?v=1783646147 vision:qwen2.5vl:7b
+gid://shopify/Product/7808266043443 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/1715214174_19160b01-241a-407c-b00f-32e83579f136.jpg?v=1774894257 vision:qwen2.5vl:7b
+gid://shopify/Product/7896539332659 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ERX9004.jpg?v=1784746510 vision:qwen2.5vl:7b
+gid://shopify/Product/7866353287219 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/poissons-m2501-3-wallpapersmural-coordonne.jpg?v=1782183191 vision:qwen2.5vl:7b
+gid://shopify/Product/7864807063603 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/y47629dv.jpg?v=1781895236 vision:qwen2.5vl:7b
+gid://shopify/Product/7375670509619 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_821f6556-ce04-4c3d-a001-ae0ee4772f4c.png?v=1722465332 vision:qwen2.5vl:7b
+gid://shopify/Product/7880948482099 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/mural-bois-sculpte-ramille-4512f24f4c4f2094cb7ba0793cd8_6289675a-559f-4d14-860f-dbb6297cf562.jpg?v=1783790605 vision:qwen2.5vl:7b
+gid://shopify/Product/7375727067187 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_315478a0-b97d-4094-8bf2-d1dee0984bc2.png?v=1722462332 vision:qwen2.5vl:7b
+gid://shopify/Product/1497251446896 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/89fec42a65f6a3cce086b202920e4846.jpg?v=1572309624 vision:qwen2.5vl:7b
+gid://shopify/Product/4484557865011 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/WRK2268CURT.jpg?v=1745347162 vision:qwen2.5vl:7b
+gid://shopify/Product/7864803754035 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/bevl_11157.jpg?v=1781895047 vision:qwen2.5vl:7b
+gid://shopify/Product/6679732486195 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS14291_image1.jpg?v=1756312964 vision:qwen2.5vl:7b
+gid://shopify/Product/7870021337139 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/8529052__82361.1730991272.jpg?v=1782682841 vision:qwen2.5vl:7b
+gid://shopify/Product/7421318758451 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W4164_11_751b8310-29ec-429e-ad37-9e04a0a005c4.jpg?v=1753320870 vision:qwen2.5vl:7b
+gid://shopify/Product/7375964700723 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_5c8ea9a6-1abb-4bfa-9677-f360c6b0c21e.png?v=1722455405 vision:qwen2.5vl:7b
+gid://shopify/Product/7375754723379 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_9b57be6e-2165-40cd-8f72-4afecf92a6bb.png?v=1722461236 vision:qwen2.5vl:7b
+gid://shopify/Product/7375754264627 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_d9eba791-2db3-4129-9f4b-6692434a3834.png?v=1722461245 vision:qwen2.5vl:7b
+gid://shopify/Product/7388480962611 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ITS-005_e5b2cb7c-9026-48a8-8cb5-fdfc7bc27b7d.jpg?v=1740077017 vision:qwen2.5vl:7b
+gid://shopify/Product/7375726313523 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_e0b5159b-3606-4cd2-a332-f79c3b1da21f.png?v=1722462379 vision:qwen2.5vl:7b
+gid://shopify/Product/7855835316275 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R19860_interior1.webp?v=1781029824 vision:qwen2.5vl:7b
+gid://shopify/Product/7855835349043 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R19859_interior1.webp?v=1781029827 vision:qwen2.5vl:7b
+gid://shopify/Product/7375736406067 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_6e3e3f19-f0f4-4277-b53e-4854907407ec.png?v=1722461650 vision:qwen2.5vl:7b
+gid://shopify/Product/7375736471603 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_c755a777-8498-4c17-808b-4011826f49f2.png?v=1722461646 vision:qwen2.5vl:7b
+gid://shopify/Product/7692850364467 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/novasuede-blush-pink.jpg?v=1761251847 vision:qwen2.5vl:7b
+gid://shopify/Product/7866926858291 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/AT78791_a79740f1-bead-4cd2-943f-18286bfa06d4.jpg?v=1782261625 vision:qwen2.5vl:7b
+gid://shopify/Product/7375685320755 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_0919e9be-ecc6-4ac3-890e-0d7fcd24e28d.png?v=1722464233 vision:qwen2.5vl:7b
+gid://shopify/Product/7896262606899 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/GWP-3747_319.jpg?v=1784732297 vision:qwen2.5vl:7b
+gid://shopify/Product/1495229005936 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/products/2e41acf7af91b56e3af47fe83314cad2.jpg?v=1572308981 vision:qwen2.5vl:7b
+gid://shopify/Product/7855835283507 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R21091_interior1.jpg?v=1781029821 vision:qwen2.5vl:7b
+gid://shopify/Product/4469048410163 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/MTG_403171_CUTLERY_Copper_WP20247.jpg?v=1607114609 vision:qwen2.5vl:7b
+gid://shopify/Product/7375948546099 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_bbbdb092-c692-4622-a492-71c5b376e57d.png?v=1722456180 vision:qwen2.5vl:7b
+gid://shopify/Product/7375769894963 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_0017e3d4-91b0-48a4-99e6-872287e156e2.png?v=1722460942 vision:qwen2.5vl:7b
+gid://shopify/Product/7692850790451 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/novasuede-chrome-grey.jpg?v=1761251884 vision:qwen2.5vl:7b
+gid://shopify/Product/7897174605875 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Crystalline-HematiteII_embellished_-2CC.jpg?v=1784829075 vision:qwen2.5vl:7b
+gid://shopify/Product/7375652225075 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_a224abaa-8cae-477b-97e4-9acfe0e78eec.png?v=1722466754 vision:qwen2.5vl:7b
+gid://shopify/Product/7375661596723 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_038700c2-cfda-4063-8f92-6007e676602d.png?v=1722466009 vision:qwen2.5vl:7b
+gid://shopify/Product/7390038097971 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DWYA-60001-DesignerWallcoverings-Los-AngelesMaya-Romanoff-Wallpaper-MR-LK-2464Sesame-1.jpg?v=1738861082 vision:qwen2.5vl:7b
+gid://shopify/Product/6621006463027 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RM_410_88_0a7f27cc-7076-4b17-b159-09f032d09baf.jpg?v=1635521134 vision:qwen2.5vl:7b
+gid://shopify/Product/1500486402160 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/products/7c1e7c105d750c329128c6fc48894cbf_da053384-0d8c-4073-b903-2fca0368eb69.jpg?v=1745457247 vision:qwen2.5vl:7b
+gid://shopify/Product/7882836607027 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/f65b9b502e3c9921cf0599d11c28bf68.jpg?v=1783881401 vision:qwen2.5vl:7b
+gid://shopify/Product/7896536842291 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ELB2508.jpg?v=1784746277 vision:qwen2.5vl:7b
+gid://shopify/Product/7882838671411 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/d1743b19b8186a98d1b1b5ab12b68e57.jpg?v=1783881547 vision:qwen2.5vl:7b
+gid://shopify/Product/7800254595123 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Elowen_A212-624-Kindling.jpg?v=1773880505 vision:qwen2.5vl:7b
+gid://shopify/Product/7375623815219 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_cf685a99-3294-43b6-a8f1-bd8c3c4a9a77.png?v=1722468707 vision:qwen2.5vl:7b
+gid://shopify/Product/7872058425395 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/6745102__52782.1722975364.jpg?v=1782873636 vision:qwen2.5vl:7b
+gid://shopify/Product/7375650095155 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_ccce36e3-64bd-4fb8-aa91-32c8b67410f7.png?v=1722466993 vision:qwen2.5vl:7b
+gid://shopify/Product/7375650029619 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_2754ce6f-6f05-4ede-8cfd-8b8e257be4c1.png?v=1722466998 vision:qwen2.5vl:7b
+gid://shopify/Product/7375650193459 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_7a5979d3-a779-482d-b158-4636e3b06f6f.png?v=1722466973 vision:qwen2.5vl:7b
+gid://shopify/Product/7883956453427 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0113064_coleus-beige-leaves-wallpaper.jpg?v=1783970537 vision:qwen2.5vl:7b
+gid://shopify/Product/7534245707827 https://cdn.shopify.com/s/files/1/0015/4117/7456/files/fruit-morris-and-co--wallpaper-216484-image01_c1dfb68a-f94f-47b3-a3b4-8027500ecc85.jpg?v=1741111390 vision-ERR:HTTP Error 404: Not Found
+gid://shopify/Product/7375664971827 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_c6c26525-820d-4555-8a24-66d26f554f04.png?v=1722465729 vision:qwen2.5vl:7b
+gid://shopify/Product/7885658914867 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T75087_dc6c98b1-ecbd-4dbf-a33c-bcd21057cfea.jpg?v=1784115616 vision:qwen2.5vl:7b
+gid://shopify/Product/7692850888755 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/novasuede-cocoa.jpg?v=1761251894 vision:qwen2.5vl:7b
+gid://shopify/Product/4484547346483 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/WH000026443.jpg?v=1745347302 vision:qwen2.5vl:7b
+gid://shopify/Product/7375663956019 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_2846c7f6-1819-4737-a4ed-1e6ff55ef639.png?v=1722465798 vision:qwen2.5vl:7b
+gid://shopify/Product/7375967977523 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_9e893963-6d4f-42b6-a373-4d51ea64ba76.png?v=1722455184 vision:qwen2.5vl:7b
+gid://shopify/Product/7855831318579 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R21157_interior1.webp?v=1781029640 vision:qwen2.5vl:7b
+gid://shopify/Product/7375967813683 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_898b101d-b05b-4419-816c-46747f509f8d.png?v=1722455199 vision:qwen2.5vl:7b
+gid://shopify/Product/6679750246451 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS17123_image1.jpg?v=1756312268 vision:qwen2.5vl:7b
+gid://shopify/Product/7375650914355 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_f66fbe2d-4943-4278-a42d-1e5bde9efd81.png?v=1722466871 vision:qwen2.5vl:7b
+gid://shopify/Product/7692851544115 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/novasuede-grape.jpg?v=1761251949 vision:qwen2.5vl:7b
+gid://shopify/Product/1497847201904 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/9ea3af735005fa3c8b58a8e07e54f6db.jpg?v=1572309786 vision:qwen2.5vl:7b
+gid://shopify/Product/6679750279219 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS17124_image1.jpg?v=1756312266 vision:qwen2.5vl:7b
+gid://shopify/Product/4484588634163 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/products/WTW0447SAFA.jpg?v=1745346239 vision:qwen2.5vl:7b
+gid://shopify/Product/4484588601395 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/products/WTW0414SAFA.jpg?v=1745346242 vision:qwen2.5vl:7b
+gid://shopify/Product/7882746986547 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0153803_linen-levels-portabella-wallpaper.jpg?v=1783865494 vision:qwen2.5vl:7b
+gid://shopify/Product/7813310087219 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DE507__silver.jpg?v=1775511887 vision:qwen2.5vl:7b
+gid://shopify/Product/7859475644467 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Composizione-COM563.jpg?v=1781282511 vision:qwen2.5vl:7b
+gid://shopify/Product/7429096439859 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/B00044_01_2_778ece8e-2e4d-4f23-a23a-c33a7227c97f.jpg?v=1739302626 vision:qwen2.5vl:7b
+gid://shopify/Product/7876473880627 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T10527_dfde3af8-ca75-46dd-a9a9-aa1f8409c62a.jpg?v=1783186813 vision:qwen2.5vl:7b
+gid://shopify/Product/7882805018675 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/c6ec75b856053dcae870da5d8523d064.jpg?v=1783879219 vision:qwen2.5vl:7b
+gid://shopify/Product/7898782990387 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/BBPW03_15614292-203d-4254-bb88-c835514e0c69.jpg?v=1785081575 vision:qwen2.5vl:7b
+gid://shopify/Product/7375756001331 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_06c5c5cb-80a9-40e6-9c45-e439a7c37fb0.png?v=1722461214 vision:qwen2.5vl:7b
+gid://shopify/Product/6679750082611 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS17121_image1.jpg?v=1756312271 vision:qwen2.5vl:7b
+gid://shopify/Product/7375957327923 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_78c707d2-3fbc-4ed3-8221-351339f3d26e.png?v=1722455843 vision:qwen2.5vl:7b
+gid://shopify/Product/7375958048819 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_68c46c9c-9cdd-467e-99f4-ad7f53e01b1d.png?v=1722455816 vision:qwen2.5vl:7b
+gid://shopify/Product/7880544976947 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0159610_sagecrest-sage-sapling-wallpaper.jpg?v=1783690845 vision:qwen2.5vl:7b
+gid://shopify/Product/7375959425075 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_6a88d008-cc5b-4ac9-b4a9-81218a838112.png?v=1722455740 vision:qwen2.5vl:7b
+gid://shopify/Product/7375657435187 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_4e6941ae-bd73-41d7-a027-ad83636859e5.png?v=1722466256 vision:qwen2.5vl:7b
+gid://shopify/Product/7884811894835 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0155010_sainsbury-ruby-forest-wallpaper_789b4030-c968-4471-8818-af3abca5d329.jpg?v=1784041145 vision:qwen2.5vl:7b
+gid://shopify/Product/7375681814579 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_e415aa6a-66de-4ebf-a181-3db4b20ed00c.png?v=1722464471 vision:qwen2.5vl:7b
+gid://shopify/Product/6832029859891 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920346-gri-007.jpg?v=1781717270 vision:qwen2.5vl:7b
+gid://shopify/Product/7375908634675 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_0345c7bf-1f4a-4c2d-9184-02b9a3a88d5b.png?v=1722457945 vision:qwen2.5vl:7b
+gid://shopify/Product/7851166892083 Chinoiserie https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R21508_interior1.jpg?v=1780557391 vision:qwen2.5vl:7b
+gid://shopify/Product/7851167023155 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R21064_interior1.jpg?v=1780557396 vision:qwen2.5vl:7b
+gid://shopify/Product/7869415456819 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0068753_agave-light-blue-faux-grasscloth-wallpaper.jpg?v=1782567620 vision:qwen2.5vl:7b
+gid://shopify/Product/7851167547443 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R15492_interior1.jpg?v=1780557410 vision:qwen2.5vl:7b
+gid://shopify/Product/3740361752641 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/hwc-61041-sample-tratori-vinyl-hollywood-wallcoverings.jpg?v=1775735344 vision:qwen2.5vl:7b
+gid://shopify/Product/1496139366512 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/04209e6c690fcf3f6918f4610e8a06fa.jpg?v=1572309211 vision:qwen2.5vl:7b
+gid://shopify/Product/1496130945136 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/products/b283453a0a4b8a9bc91f4577bdea1a20.jpg?v=1572309209 vision:qwen2.5vl:7b
+gid://shopify/Product/1498133364848 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/c40ea318c88309e55f9dc58431f9976a.jpg?v=1572309859 vision:qwen2.5vl:7b
+gid://shopify/Product/1496126390384 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/326211e35532214c1a52b3274015d6a9.jpg?v=1572309208 vision:qwen2.5vl:7b
+gid://shopify/Product/7775007932467 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/GvgxHWqw_5138cda3-5e1c-4e12-a2d8-6b3680c8438f.jpg?v=1770781387 vision:qwen2.5vl:7b
+gid://shopify/Product/1496193106032 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/e6c8ab59600905a35de2ac6470986ae7.jpg?v=1572309221 vision:qwen2.5vl:7b
+gid://shopify/Product/6936684494899 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-BL-05_ef8c4eaa-699a-4b3e-85d1-544b57e92917.jpg?v=1733891657 vision:qwen2.5vl:7b
+gid://shopify/Product/7897173655603 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/crushedmetal_azeri.jpg?v=1784828992 vision:qwen2.5vl:7b
+gid://shopify/Product/6936700321843 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-LT-32_2e5a239b-67d9-4781-8bf2-647b5f4f78c6.jpg?v=1733890696 vision:qwen2.5vl:7b
+gid://shopify/Product/7871018827827 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0043891_maxwell-blue-geometric-wallpaper.jpg?v=1782823246 vision:qwen2.5vl:7b
+gid://shopify/Product/7822352252979 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0066829_grasmere-weave-cinnamon_650.jpg?v=1776905754 vision:qwen2.5vl:7b
+gid://shopify/Product/7375623127091 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_e24efcde-b202-44dd-b4ab-bb19b03e1984.png?v=1722468748 vision:qwen2.5vl:7b
+gid://shopify/Product/6936710185011 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-ZG-29_d8fd1e7b-8f09-4c3f-9825-4bb89534ff4b.jpg?v=1733889940 vision:qwen2.5vl:7b
+gid://shopify/Product/7585021165619 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/luz1-02_8bc851b7-9c26-42bf-9081-2e22adab2bf1.jpg?v=1751947762 vision:qwen2.5vl:7b
+gid://shopify/Product/7878185680947 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/36872_6_6f5085dc-99c1-4e24-b926-18aae9e0a5a4.jpg?v=1783460429 vision:qwen2.5vl:7b
+gid://shopify/Product/7851168071731 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R18132_interior1.jpg?v=1780557428 vision:qwen2.5vl:7b
+gid://shopify/Product/7851168038963 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R18133_interior1.webp?v=1780557428 vision:qwen2.5vl:7b
+gid://shopify/Product/7692853084211 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/novasuede-pebble.jpg?v=1761252082 vision:qwen2.5vl:7b
+gid://shopify/Product/6962292916275 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/products/HSAW112156.jpg?v=1739492602 vision:qwen2.5vl:7b
+gid://shopify/Product/7866351026227 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/amazonia-jo2708-2-wallpapersmurals-coordonne.jpg?v=1782183119 vision:qwen2.5vl:7b
+gid://shopify/Product/7794240061491 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ZRHW312922_e8c7.jpg?v=1782057439 vision:qwen2.5vl:7b
+gid://shopify/Product/7866348830771 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/EF4902-3_01.jpg?v=1782182949 vision:qwen2.5vl:7b
+gid://shopify/Product/1497287524464 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/57599c5c6832dec19e7dc802b940af7f.jpg?v=1572309631 vision:qwen2.5vl:7b
+gid://shopify/Product/6936709300275 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-WN-12_678e944a-3725-495b-82fe-c38297936bf8.jpg?v=1733890004 vision:qwen2.5vl:7b
+gid://shopify/Product/6829004488755 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920006-24024.jpg?v=1781715360 vision:qwen2.5vl:7b
+gid://shopify/Product/6839162667059 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920001-24004.jpg?v=1781717335 vision:qwen2.5vl:7b
+gid://shopify/Product/1495643684976 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/ba5992b1c25ab22cc218884acebb67b6.jpg?v=1572309111 vision:qwen2.5vl:7b
+gid://shopify/Product/7851168497715 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R21449_interior1.webp?v=1780557442 vision:qwen2.5vl:7b
+gid://shopify/Product/7871527092275 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/36569_7_13c5ac4c-ff4c-4f5e-a3db-0fbac909e5ba.jpg?v=1782841220 vision:qwen2.5vl:7b
+gid://shopify/Product/6679643717683 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R15271_image2.jpg?v=1756327510 vision:qwen2.5vl:7b
+gid://shopify/Product/4466674139187 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/ZIO-13.jpg?v=1736198964 vision:qwen2.5vl:7b
+gid://shopify/Product/7796252409907 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Galleria_Alamo_Shadow_1691508405.jpg?v=1773217313 vision:qwen2.5vl:7b
+gid://shopify/Product/7882759340083 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0152277_lisle-sapphire-wallpaper.jpg?v=1783866181 vision:qwen2.5vl:7b
+gid://shopify/Product/7692853608499 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/novasuede-sable.jpg?v=1761252123 vision:qwen2.5vl:7b
+gid://shopify/Product/7882759962675 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0152607_loom-latte-wallpaper.jpg?v=1783866198 vision:qwen2.5vl:7b
+gid://shopify/Product/7429005639731 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/6464911.jpg?v=1739303515 vision:qwen2.5vl:7b
+gid://shopify/Product/7865293668403 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/6680101__73128.1731005849.jpg?v=1782006059 vision:qwen2.5vl:7b
+gid://shopify/Product/7868367241267 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/2201-71.jpg?v=1782427555 vision:qwen2.5vl:7b
+gid://shopify/Product/1497239879792 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/fa21fa59bf0a269895a073efd17f3e4a.jpg?v=1572309621 vision:qwen2.5vl:7b
+gid://shopify/Product/7897182699571 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/REEDS---Luxor-Edit-CC-WEB.jpg?v=1784829597 vision:qwen2.5vl:7b
+gid://shopify/Product/7884407177267 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T5047_5fdb2264-9e0d-4043-aafc-6a55d612abbe.jpg?v=1783989608 vision:qwen2.5vl:7b
+gid://shopify/Product/7817253552179 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/7fd1ea394de9df6f5e11fc0c7bb0b2d0.jpg?v=1776040997 vision:qwen2.5vl:7b
+gid://shopify/Product/1499881537648 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/xwt-53316-sample-eatonville-faux-linen-durable-hollywood-wallcoverings.jpg?v=1775710801 vision:qwen2.5vl:7b
+gid://shopify/Product/1498304643184 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/bc8d9987f79e32e28b921a952a688076.jpg?v=1745458824 vision:qwen2.5vl:7b
+gid://shopify/Product/7692850462771 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/novasuede-buff.jpg?v=1761251856 vision:qwen2.5vl:7b
+gid://shopify/Product/4466657624115 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/DAI-001.jpg?v=1736199563 vision:qwen2.5vl:7b
+gid://shopify/Product/7883945836595 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/sand-static-window-film-jeffrey-stevens.jpg?v=1783968579 vision:qwen2.5vl:7b
+gid://shopify/Product/6829070155827 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920620-ori13.jpg?v=1781716258 vision:qwen2.5vl:7b
+gid://shopify/Product/6679644700723 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R15351_image2_cf1edbc3-48cf-404b-b940-6c3e17237624.jpg?v=1756327483 vision:qwen2.5vl:7b
+gid://shopify/Product/7692853936179 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/novasuede-sea-breeze.jpg?v=1761252151 vision:qwen2.5vl:7b
+gid://shopify/Product/7865248940083 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/3155402__73292.1713278509.jpg?v=1781984468 vision:qwen2.5vl:7b
+gid://shopify/Product/7851170889779 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R21900_interior1.webp?v=1780557525 vision:qwen2.5vl:7b
+gid://shopify/Product/7851171020851 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R21902_interior1.webp?v=1780557529 vision:qwen2.5vl:7b
+gid://shopify/Product/7851171053619 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R21600_interior1.jpg?v=1780557530 vision:qwen2.5vl:7b
+gid://shopify/Product/7851171643443 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R20658_interior1.jpg?v=1780557552 vision:qwen2.5vl:7b
+gid://shopify/Product/1495480893552 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/2d0a502017deae7d4d3b3b965c75844a.jpg?v=1572309073 vision:qwen2.5vl:7b
+gid://shopify/Product/6679590371379 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R11751_image2.jpg?v=1756328861 vision:qwen2.5vl:7b
+gid://shopify/Product/7817265381427 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/4e3f52b3077dce5bf70e1ac41050d703.jpg?v=1776041521 vision:qwen2.5vl:7b
+gid://shopify/Product/7851172462643 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R20231_interior1.webp?v=1780557580 vision:qwen2.5vl:7b
+gid://shopify/Product/7873280081971 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0089110_agave-blue-faux-grasscloth-wallpaper.jpg?v=1782942024 vision:qwen2.5vl:7b
+gid://shopify/Product/7865282297907 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/6740501__12294.1722971763.jpg?v=1781998846 vision:qwen2.5vl:7b
+gid://shopify/Product/7866927349811 Floral https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0037248_allison-pink-floral.jpg?v=1782261668 vision:qwen2.5vl:7b
+gid://shopify/Product/7814464438323 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/dwhd-502877-asilomar-cocoa-bean.jpg?v=1775701417 vision:qwen2.5vl:7b
+gid://shopify/Product/7814464766003 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/dwhd-502882-asilomar-deep-shadow.jpg?v=1775701433 vision:qwen2.5vl:7b
+gid://shopify/Product/7814464733235 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/dwhd-502881-asilomar-dawn.jpg?v=1775701430 vision:qwen2.5vl:7b
+gid://shopify/Product/7814465290291 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/dwhd-502898-asilomar-renaissance.jpg?v=1775701483 vision:qwen2.5vl:7b
+gid://shopify/Product/7896224399411 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/09062020091142_panel.jpg?v=1784730916 vision:qwen2.5vl:7b
+gid://shopify/Product/7880948252723 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/mural-bois-sculpte-volute-30149b1e07411969680c58118d76_5cb45c3b-3c45-43f2-9a9b-e708d45959fb.jpg?v=1783790580 vision:qwen2.5vl:7b
+gid://shopify/Product/7375623028787 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_07804c0a-239c-4507-8782-17ad020035d6.png?v=1722468756 vision:qwen2.5vl:7b
+gid://shopify/Product/7896257921075 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/KT-ASTERISK_II_BACKED-001_0.jpg?v=1784731765 vision:qwen2.5vl:7b
+gid://shopify/Product/7896258215987 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/KT-ASTERISK_II_BACKED-007_0.jpg?v=1784731825 vision:qwen2.5vl:7b
+gid://shopify/Product/7851172757555 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R18883_interior1.webp?v=1780557590 vision:qwen2.5vl:7b
+gid://shopify/Product/7796258668595 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Skintex-SF_Aspect_Powder.jpg?v=1773218064 vision:qwen2.5vl:7b
+gid://shopify/Product/7865272991795 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/6741403__76880.1722971996.jpg?v=1781995273 vision:qwen2.5vl:7b
+gid://shopify/Product/6936762089523 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/CM136-2647.jpg?v=1733889127 vision:qwen2.5vl:7b
+gid://shopify/Product/7868972924979 Herringbone https://cdn.shopify.com/s/files/1/0015/4117/7456/files/2203-51_2ed24900-c1d2-4505-bee3-ed14156ab64e.jpg?v=1782488969 vision:qwen2.5vl:7b
+gid://shopify/Product/6679737892915 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS15241_image1.jpg?v=1756312753 vision:qwen2.5vl:7b
+gid://shopify/Product/6829110493235 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/prw-920884-sum-222.jpg?v=1781716780 vision:qwen2.5vl:7b
+gid://shopify/Product/7420037890099 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/W3789_1_aedfece2-a57c-4e6e-94a5-e61917b4aea7.jpg?v=1753121415 vision:qwen2.5vl:7b
+gid://shopify/Product/6679742316595 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS15941_image1.jpg?v=1756312576 vision:qwen2.5vl:7b
+gid://shopify/Product/7883946590259 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/black-chalkboard-self-adhesive-film-jeffrey-steven.jpg?v=1783968658 vision:qwen2.5vl:7b
+gid://shopify/Product/6679734911027 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS14701_image1.jpg?v=1756312868 vision:qwen2.5vl:7b
+gid://shopify/Product/7851169972275 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R17483_interior1.jpg?v=1780557493 vision:qwen2.5vl:7b
+gid://shopify/Product/7791151153203 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Galleria_Hampton_Sunfire_1751391907.jpg?v=1772569234 vision:qwen2.5vl:7b
+gid://shopify/Product/6679740481587 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS15661_image1.jpg?v=1756312633 vision:qwen2.5vl:7b
+gid://shopify/Product/7851174035507 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R20945_interior1.jpg?v=1780557635 vision:qwen2.5vl:7b
+gid://shopify/Product/1497382027376 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/4e2b7773898441ab6ee8c31a3f214d8f.jpg?v=1572309666 vision:qwen2.5vl:7b
+gid://shopify/Product/1497382125680 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/e17a68a5fccd762f050e05debe7bf925.jpg?v=1572309666 vision:qwen2.5vl:7b
+gid://shopify/Product/1499012202608 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/xlj-47754-sample-halewood-type-ii-vinyl-hollywood-wallcoverings.jpg?v=1775715570 vision:qwen2.5vl:7b
+gid://shopify/Product/1497383108720 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/23a535cf07e0d69637390d94553ded27.jpg?v=1572309666 vision:qwen2.5vl:7b
+gid://shopify/Product/1497383272560 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/43d56bcc5bc8c730ae112505eb168de6.jpg?v=1572309666 vision:qwen2.5vl:7b
+gid://shopify/Product/1497386319984 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/84be7116217582e88d80f6f7ac01171e.jpg?v=1572309667 vision:qwen2.5vl:7b
+gid://shopify/Product/1497387040880 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/79523bb093581a5af246051017fab7b0.jpg?v=1572309667 vision:qwen2.5vl:7b
+gid://shopify/Product/7863635410995 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/bananeira-lima-repeated-patterns-coordonne.jpg?v=1781716569 vision:qwen2.5vl:7b
+gid://shopify/Product/4484584931379 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/WTT661573.jpg?v=1745346420 vision:qwen2.5vl:7b
+gid://shopify/Product/7851175411763 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R17871_interior3.jpg?v=1780557673 vision:qwen2.5vl:7b
+gid://shopify/Product/7851175084083 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R19647_interior1.webp?v=1780557668 vision:qwen2.5vl:7b
+gid://shopify/Product/6936753897523 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/CM154-2878.jpg?v=1733889694 vision:qwen2.5vl:7b
+gid://shopify/Product/7013455134771 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/IMG_8620.jpg?v=1702843333 vision:qwen2.5vl:7b
+gid://shopify/Product/6811312980019 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/GBS-20012_afd58456-eae7-4f0b-9590-e465213df5e4.jpg?v=1662074071 vision:qwen2.5vl:7b
+gid://shopify/Product/7584913981491 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/LINSEY_LOOM_SE2101-option-3.jpg?v=1751951844 vision:qwen2.5vl:7b
+gid://shopify/Product/7584965034035 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/69188_f9d5892c-a63f-4755-ad77-f4e1030eb2eb.jpg?v=1751961940 vision:qwen2.5vl:7b
+gid://shopify/Product/7584965394483 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/69185_addf37bb-ad20-4cd7-943d-e959b63be4f1.jpg?v=1751961974 vision:qwen2.5vl:7b
+gid://shopify/Product/7584964837427 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/69195_471a958c-51d1-4e04-84a4-f1b0bb85a4c5.jpg?v=1751961925 vision:qwen2.5vl:7b
+gid://shopify/Product/7775016157235 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/taupe_1c1f3009-1b8e-43e5-bba4-59b126251e1a.jpg?v=1770790894 vision:qwen2.5vl:7b
+gid://shopify/Product/7866352926771 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/grand-brocart-m2504-2-wallpapersmural-coordonne.jpg?v=1782183164 vision:qwen2.5vl:7b
+gid://shopify/Product/7865331122227 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/AT15156_aa403aa4-7e50-44ba-9fc8-e7a65c28bb2b.jpg?v=1782027608 vision:qwen2.5vl:7b
+gid://shopify/Product/7584965066803 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/69189_98c149b3-82a9-4ace-a277-3634778a13b5.jpg?v=1751961944 vision:qwen2.5vl:7b
+gid://shopify/Product/7878185353267 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0034690_alby-mint-geometric-wallpaper.jpg?v=1783460409 vision:qwen2.5vl:7b
+gid://shopify/Product/7429996740659 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/GRAND_EIFFEL_e02a43d9-4797-422a-a554-73717e642ec2.jpg?v=1748368230 vision:qwen2.5vl:7b
+gid://shopify/Product/7882839719987 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/T34079_f5074b61-a3e7-4aa3-99ef-331c476ffd80.jpg?v=1783881614 vision:qwen2.5vl:7b
+gid://shopify/Product/7375646916659 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_1bdd5eb5-0675-4c31-8fa3-1102f31be8f1.png?v=1722467142 vision:qwen2.5vl:7b
+gid://shopify/Product/1497325371504 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/eef6561016a39e9bac3185ce135fc6a5.jpg?v=1572309647 vision:qwen2.5vl:7b
+gid://shopify/Product/7897176473651 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/GEMMEUS-Lustrous-2.jpg?v=1784829232 vision:qwen2.5vl:7b
+gid://shopify/Product/7424791150643 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/LZW-30184_21562_64f12443-1dc8-4ca5-88a5-c69a5f036f66.jpg?v=1753290992 vision:qwen2.5vl:7b
+gid://shopify/Product/7863636000819 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/guacamayos-turquesa-repeated-patterns-coordonne.jpg?v=1781716611 vision:qwen2.5vl:7b
+gid://shopify/Product/7384920948787 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Maya-50417-DesignerWallcoverings-Los-AngelesMaya-Romanoff-Wallpaper-MP-25-1.jpg?v=1738861295 vision:qwen2.5vl:7b
+gid://shopify/Product/7880969125939 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DWGL-100078.jpg?v=1783750265 vision:qwen2.5vl:7b
+gid://shopify/Product/7388482830387 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/LDO-03_ab8ade43-92c3-4fd4-a4df-136a97953b2a.jpg?v=1736207770 vision:qwen2.5vl:7b
+gid://shopify/Product/7857592664115 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R22053_interior1.jpg?v=1781115236 vision:qwen2.5vl:7b
+gid://shopify/Product/6936705663027 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-SK-02_444f07f9-5fc5-40d5-821c-a5d75671c394.jpg?v=1733890268 vision:qwen2.5vl:7b
+gid://shopify/Product/7857593352243 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R18143_interior1.webp?v=1781115285 vision:qwen2.5vl:7b
+gid://shopify/Product/7857593516083 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R20583_interior3.jpg?v=1781115297 vision:qwen2.5vl:7b
+gid://shopify/Product/7857593843763 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R18927_interior1.jpg?v=1781115322 vision:qwen2.5vl:7b
+gid://shopify/Product/7857593974835 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R19370_interior1.webp?v=1781115330 vision:qwen2.5vl:7b
+gid://shopify/Product/7857594105907 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/R19373_interior1.webp?v=1781115342 vision:qwen2.5vl:7b
+gid://shopify/Product/7292515450931 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/2231908_8111bd2c-d882-4ff4-906f-ec9c5ec4cf23.jpg?v=1748379847 vision:qwen2.5vl:7b
+gid://shopify/Product/4656501227571 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/SC_0004WP88449.jpg?v=1744306873 vision:qwen2.5vl:7b
+gid://shopify/Product/7215597813811 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ScreenShot2024-04-29at12.12.39PM.png?v=1714417971 vision:qwen2.5vl:7b
+gid://shopify/Product/6679672520755 Toile https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R17201_image2_d3bcd3dd-6c96-4619-8851-c409af541f2d.jpg?v=1756326826 vision:qwen2.5vl:7b
+gid://shopify/Product/1500578218096 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/efb4019a1dbf0cfc9515ea752e0f384f_fd85ed92-6568-4d67-b10a-f7eb22714256.jpg?v=1572310396 vision:qwen2.5vl:7b
+gid://shopify/Product/7882827497523 Botanical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0cdfa6badf710c8c2ac4a7991190848c.jpg?v=1783880791 vision:qwen2.5vl:7b
+gid://shopify/Product/6847072862259 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/products/BeverlyHillsSuedeBHR74502.png?v=1666629872 vision:qwen2.5vl:7b
+gid://shopify/Product/1501377757296 Grasscloth https://cdn.shopify.com/s/files/1/0015/4117/7456/files/xhw-2010441-sample-hollywood-antique-wood-hollywood-wallcoverings.jpg?v=1775716963 vision:qwen2.5vl:7b
+gid://shopify/Product/6668210274355 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/static_GLMG-9604--SAMPLE.jpg?v=1783358418 vision:qwen2.5vl:7b
+gid://shopify/Product/6668210470963 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/static_GLMG-9614--SAMPLE.jpg?v=1783358436 vision:qwen2.5vl:7b
+gid://shopify/Product/7865331318835 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/files/AT15161_a8f5b45d-454d-430e-84be-a567216308af.jpg?v=1782027629 vision:qwen2.5vl:7b
+gid://shopify/Product/1501180461168 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/xhw-2010149-sample-hollywood-poolside-pebble-hollywood-wallcoverings.jpg?v=1775718357 vision:qwen2.5vl:7b
+gid://shopify/Product/1496315101296 Polka Dot https://cdn.shopify.com/s/files/1/0015/4117/7456/products/9eb5c5b21fd1a3de27905fbd47749c50.jpg?v=1572309253 vision:qwen2.5vl:7b
+gid://shopify/Product/1501376315504 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/xhw-2010401-sample-hollywood-tailored-hollywood-wallcoverings.jpg?v=1775719016 vision:qwen2.5vl:7b
+gid://shopify/Product/1501372285040 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/xhw-2010292-sample-hollywood-tile-hollywood-wallcoverings.jpg?v=1775719125 vision:qwen2.5vl:7b
+gid://shopify/Product/1499621982320 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/products/08988a9b23949a66ef877ddeaf39e702.jpg?v=1745458046 vision:qwen2.5vl:7b
+gid://shopify/Product/1497261834352 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/products/2b546d309284baa7de85b0eb4711c6ba.jpg?v=1572309626 vision:qwen2.5vl:7b
+gid://shopify/Product/7388476768307 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/FER-03_59844754-c865-402f-b346-a8b987e8a5ab.jpg?v=1736207325 vision:qwen2.5vl:7b
+gid://shopify/Product/7864806441011 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/az53225nl.jpg?v=1781895196 vision:qwen2.5vl:7b
+gid://shopify/Product/7877194645555 Stripe https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0091479_meilin-grasscloth-mocha.jpg?v=1783366659 vision:qwen2.5vl:7b
+gid://shopify/Product/7864785731635 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/files/az53123lv.jpg?v=1781894211 vision:qwen2.5vl:7b
+gid://shopify/Product/7877232820275 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0069772_cork-espresso-metallic-gold.jpg?v=1783374013 vision:qwen2.5vl:7b
+gid://shopify/Product/7822352023603 Tropical https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0066814_grasmere-weave-french-vanilla_650.jpg?v=1776905744 vision:qwen2.5vl:7b
+gid://shopify/Product/1496769724528 Herringbone https://cdn.shopify.com/s/files/1/0015/4117/7456/products/b17329c670716ed9bec30d41638f28da.jpg?v=1572309407 vision:qwen2.5vl:7b
+gid://shopify/Product/1496769822832 Geometric https://cdn.shopify.com/s/files/1/0015/4117/7456/products/3d4c27f72d9a1d585a742f16d9f262cb.jpg?v=1572309407 vision:qwen2.5vl:7b
+gid://shopify/Product/7388475588659 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/DEA-07_af3ee15b-253c-409c-8146-bd0e2ccb4235.jpg?v=1736207239 vision:qwen2.5vl:7b
+gid://shopify/Product/7388484042803 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MTO-09_b43c53f0-466b-4a3a-adbb-e9dee037e322.jpg?v=1736207890 vision:qwen2.5vl:7b
+gid://shopify/Product/7375689908275 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/files/PhillipJeffriesLogo_83f4e269-2f18-4668-9eb2-61bfef1a137a.png?v=1722463883 vision:qwen2.5vl:7b
+gid://shopify/Product/6785290600499 Damask https://cdn.shopify.com/s/files/1/0015/4117/7456/products/VV227_grille_BLACKGOLD_install_1000x_778d95ba-7be0-478b-bf67-760c133579bd.webp?v=1734414920 vision:qwen2.5vl:7b
+gid://shopify/Product/7887508504627 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0097767_ignatius-grey-ogee-wallpaper.jpg?v=1784295583 vision:qwen2.5vl:7b
+gid://shopify/Product/6936687706163 Trellis https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-DM-10_d5a66e6e-6d5e-42ae-b760-18e556132ca1.jpg?v=1733891451 vision:qwen2.5vl:7b
+gid://shopify/Product/7791143845939 Abstract https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Tekloom-Forte-Steel.jpg?v=1772568960 vision:qwen2.5vl:7b
← eb55c93d kravet: materialize DWKK roll prices into snapshot for whole
·
back to Designer Wallcoverings
·
auto-save: 2026-07-28T14:01:00 (12 files) — DW-Programming/D e0327d5c →